説明

ソフトウェア検証支援装置、ソフトウェア検証支援方法、およびソフトウェア検証支援プログラム

【課題】ソフトウェアの検証において、検証者の労力軽減、開発期間の短縮化、検証の高精度化を同時に図ること。
【解決手段】ソフトウェア検証支援装置100は、表示部201と、実行部202と、特定部203と、表示制御部204と、を備える。表示部201は、検証対象となるソフトウェアに関するGUI画面を表示する。実行部202は、GUI画面が表示されているときにソフトウェアのGUI処理を実行する。特定部203は、GUI画面の中から、実行部202によって実行されたGUI処理に関連するGUI要素を特定する。表示制御部204は、GUI画面を制御して、GUI画面のうち特定部203によって特定されたGUI要素を含む表示領域を強調表示する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は、検証対象となるソフトウェアの検証(デバッグ)を支援するソフトウェア検証支援装置、ソフトウェア検証支援方法、およびソフトウェア検証支援プログラムに関する。
【背景技術】
【0002】
従来、GUI(Graphical User Interface)処理を有するソフトウェア(以下、「GUIソフトウェア」という)の検証においては、当該ソフトウェアのプログラムの妥当性と、当該プログラムに基づいたGUI処理が設計通りにGUI画面上でおこなわれているかの妥当性(以下、「GUI画面の妥当性」という)との2点の検証が必要とされる。ソフトウェアのプログラムの妥当性の検証は、たとえば、プログラムのバグの発見や修正を支援するソフトウェア検証支援ツール、いわゆる、デバッガを用いることにより検証をおこなっている(たとえば、下記特許文献1を参照。)。
【0003】
一方、GUI画面の妥当性の検証は、デバッガでは検証しきれないこともあるため、検証者が実際にプログラムを実行させて、GUI画面を目視して確認することにより検証をおこなっている。
【0004】
図13は、従来技術によるソフトウェアの検証の一例を示す説明図である。図13で示した一例は、GUI画面上1300上のGUI要素1301〜1303のうち、GUI要素1303が非表示となるソフトウェアの検証である。まず、たとえば、検証者は、検証対象となるソフトウェアのプログラムを実行する。実行されたプログラムは、デバッガにより、その妥当性が検証される。
【0005】
つぎに、検証者は、GUI要素1303を非表示とするGUI処理が、設計通りにGUI画面1300上でおこなわれているかを目視して確認する。このように、検証者は、プログラムとGUI画面上の変化とを照らし合わせ、プログラムが正常に動作してGUI処理がおこなわれ、設計通りのGUI画面となったか、GUI画面の妥当性を検証する。
【0006】
【特許文献1】特開2004−192293号公報
【発明の開示】
【発明が解決しようとする課題】
【0007】
しかしながら、上述した従来技術では、GUIソフトウェアの検証をおこなう場合、プログラムの妥当性の検証とGUI画面の妥当性の検証はそれぞれ独立しておこなわれているため、GUI画面の妥当性の検証は、検証者の熟練度に左右されることとなる。すなわち、熟練度が低い検証者は、GUI処理に関連する(たとえば非表示となる)GUI要素を推測することができず、検証者の作業負担が増大するとともに開発期間が長期化するという問題があった。また、熟練度が高い検証者は、GUI処理に関連するGUI要素を経験や勘により推測することになるが、GUI処理が膨大であるため、検証者の作業負担が増大するとともに設計期間が長期化するという問題があった。また、このように、検証者の推測に依存する作業は煩雑であり、検証者の見落としが発生するため、検証精度が低下するという問題があった。
【0008】
また、プログラムの妥当性の検証とGUI画面の妥当性の検証とがそれぞれ独立しておこなわれているため、GUI画面上に不具合を発見した場合、不具合の原因となるGUI処理を多数のプログラムの中から探す必要があり、該当するGUI処理を直ちに発見できないなど、多くの手間と時間が必要とされ、開発が非効率的となるという問題があった。
【0009】
また、手間や時間をかけず、このような検証を簡略化した場合には、直ちには発見できない不具合を見落とすことがある。たとえば、設計にはない不要なGUI要素が他のGUI要素の下に隠蔽された場合などの、直ちには発見できない不具合は見落とす可能性が高い。不要なGUI要素が残ってしまった場合、ソフトウェアを組み込んだ際に、コンピュータ装置のハードウェア資源の無駄遣いとなり、パフォーマンスの低下につながるという問題があった。
【0010】
この発明は、上述した従来技術による問題点を解消するため、プログラムの妥当性の検証と関連づけてGUI画面の妥当性の検証を同時に実現することにより、検証者の労力軽減、開発期間の短縮、および検証の高精度化を同時に図ることができるソフトウェア検証支援装置、ソフトウェア検証支援方法、およびソフトウェア検証支援プログラムを提供することを目的とする。
【課題を解決するための手段】
【0011】
上述した課題を解決し、目的を達成するため、この発明にかかるソフトウェア検証支援装置は、検証対象となるソフトウェアに関するGUI画面を表示する表示手段と、前記GUI画面が表示されているときに前記ソフトウェアのGUI処理を実行する実行手段と、前記GUI画面の中から、前記実行手段によって実行されたGUI処理に関連するGUI要素を特定する特定手段と、前記GUI画面を制御して、前記GUI画面のうち前記特定手段によって特定されたGUI要素を含む表示領域を強調表示する表示制御手段と、を備えることを特徴とする。
【0012】
この発明によれば、実行されたGUI処理と関連するGUI要素を、GUI処理を実行しながら、視覚的に明確にすることができる。
【0013】
また、上記に記載の発明において、前記GUI画面の中から、前記GUI処理が実行されたことにより変化するGUI要素を特定することとしてもよい。
【0014】
この発明によれば、実行されたGUI処理によって、直接的または間接的に影響を受けて変化するGUI要素を、GUI処理を実行しながら視覚的に明確にすることができる。
【0015】
また、上記に記載の発明において、前記GUI画面の中のGUI要素のうち、前記GUI処理が実行されたことにより消失するGUI要素を特定することとしてもよい。
【0016】
この発明によれば、実行されたGUI処理により直接的に影響を受けて、消失するGUI要素を、GUI処理を実行しながら視覚的に明確にすることができる。
【0017】
また、上記に記載の発明において、前記GUI画面の中から、前記GUI処理が実行されたことによりあらたに出現するGUI要素を特定することとしてもよい。
【0018】
この発明によれば、実行されたGUI処理により直接的に影響を受けて、あらたに出現するGUI要素を、GUI処理を実行しながら視覚的に明確にすることができる。
【0019】
また、上記に記載の発明において、前記GUI画面の中のGUI要素のうち、前記GUI処理が実行されたことにより文字列、色、形状、またはサイズが変化するGUI要素を特定することとしてもよい。
【0020】
この発明によれば、GUI処理により直接的に影響を受けて、文字列、色、形状、またはサイズが変化するGUI要素を、GUI処理を実行しながら視覚的に明確にすることができる。
【0021】
また、上記に記載の発明において、前記GUI画面の中のGUI要素のうち、前記GUI処理が実行されたことにより移動または回転するGUI要素を特定することとしてもよい。
【0022】
この発明によれば、GUI処理により直接的に影響を受けて、移動または回転するGUI要素を、GUI処理を実行しながら視覚的に明確にすることができる。
【0023】
また、上記に記載の発明において、前記GUI画面の中のGUI要素のうち、前記GUI処理が実行されたことにより消失または移動するGUI要素によって出現するGUI要素を特定することとしてもよい。
【0024】
この発明によれば、GUI処理により間接的に影響を受けて、出現するGUI要素を、GUI処理を実行しながら視覚的に明確にすることができる。
【0025】
また、上記に記載の発明において、前記GUI画面の中のGUI要素のうち、前記GUI処理が実行されたことにより出現または移動するGUI要素に隠蔽されるGUI要素を特定することとしてもよい。
【0026】
この発明によれば、GUI処理により間接的に影響を受けて、隠蔽されるGUI要素を、GUI処理を実行しながら視覚的に明確にすることができる。
【0027】
また、上記に記載の発明において、前記GUI処理の実行後に、前記GUI処理とは異なる他のGUI処理を実行し、前記特定手段は、前記表示制御手段によって前記表示領域(以下、「第1の表示領域」という)が強調表示されたGUI画面の中から、前記他のGUI処理に関連するGUI要素を特定し、前記表示制御手段は、前記GUI画面を制御して、前記第1の表示領域が強調表示されたGUI画面のうち前記特定手段によって特定されたGUI要素を含む第2の表示領域を強調表示することを特徴とする。
【0028】
この発明によれば、複数のGUI処理に対して、それぞれに対応するGUI要素を、GUI処理を実行しながら視覚的に明確にすることができる。
【0029】
また、上記に記載の発明において、前記他のGUI処理の実行指示を受け付ける受付手段を備え、前記実行手段は、前記受付手段によって実行指示が受け付けられた他のGUI処理を実行することを特徴とする。
【0030】
この発明によれば、検証者の任意のタイミングで他のGUI処理を実行させることができる。
【0031】
また、上記に記載の発明において、前記GUI画面を制御して、前記第1の表示領域の強調表示を解除することを特徴とする。
【0032】
この発明によれば、必要に応じて強調表示を解除することができる。
【0033】
また、上記に記載の発明において、前記GUI画面を制御して、前記第1および第2の表示領域を相対的に異なるように強調表示することを特徴とする。
【0034】
この発明によれば、相対的に異なるように強調表示し、複数のGUI処理に対して、それぞれに対応するGUI要素をより視覚的に明確にすることができる。
【発明の効果】
【0035】
この発明にかかるソフトウェア検証支援装置、ソフトウェア検証支援方法、およびソフトウェア検証支援プログラムによれば、プログラムの妥当性の検証と関連づけてGUI画面の妥当性の検証を同時に実現することにより、検証者の労力軽減、開発期間の短縮、および検証の高精度化を同時に図ることができるという効果を奏する。
【発明を実施するための最良の形態】
【0036】
以下に添付図面を参照して、この発明にかかるソフトウェア検証支援装置、ソフトウェア検証支援方法、およびソフトウェア検証支援プログラムの好適な実施の形態を詳細に説明する。
【0037】
(ソフトウェア検証支援装置の概要)
まず、この発明の実施の形態にかかるソフトウェア検証支援装置の概要について説明する。この発明の実施の形態にかかるソフトウェア検証支援装置は、たとえば、あらかじめ用意されたプログラムをパーソナル・コンピュータなどのコンピュータ装置にインストールし、実行させることにより実現される。
【0038】
ソフトウェア検証支援装置は、検証対象となるソフトウェアに関するGUI画面において、GUI処理が実行された場合に、実行されたGUI処理と関連したGUI要素を含んだ表示領域を強調表示させることにより、実行されたGUI処理と当該GUI処理に関連するGUI要素とを同時に検証することができ、ソフトウェアの検証の効率化を図る。
【0039】
(ソフトウェア検証支援装置のハードウェア構成)
つぎに、この発明の実施の形態にかかるソフトウェア検証支援装置のハードウェア構成について説明する。図1は、この発明の実施の形態にかかるソフトウェア検証支援装置のハードウェア構成を示すブロック図である。
【0040】
図1において、ソフトウェア検証支援装置100は、CPU101と、ROM102と、RAM103と、HDD(ハードディスクドライブ)104と、HD(ハードディスク)105と、R/W(リーダ/ライタ)106と、着脱可能な記録媒体の一例としてのDVD107と、ディスプレイ108と、I/F(インターフェース)109と、キーボード110と、マウス111と、スキャナ112と、プリンタ113と、を備えている。また、各構成部はバス120によってそれぞれ接続されている。
【0041】
CPU101は、コンピュータ装置の全体の制御を司る。ROM102は、ブートプログラムなどのプログラムを記録している。RAM103は、CPU101のワークエリアとして使用される。HDD104は、CPU101の制御にしたがってHD105に対するデータのリード/ライトを制御する。HD105は、HDD104の制御で書き込まれたデータを記録する。
【0042】
R/W106は、CPU101の制御にしたがってDVD107に対するデータのリード/ライトを制御する。DVD107は、R/W106の制御で書き込まれたデータを記録したり、DVD107に記録されたデータをコンピュータ装置に読み取らせたりする。
【0043】
また、着脱可能な記録媒体として、DVD107のほか、CD−ROM(CD−R、CD−RW)、MO(Magneto Optical Disk)、FD(フレキシブルディスク)、メモリーカードなどであってもよい。ディスプレイ108は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ108は、たとえば、CRT、TFT液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【0044】
I/F109は、通信回線を通じてインターネットなどのネットワークに接続され、このネットワークを介して他の装置に接続される。そして、I/F109は、ネットワークと内部のインターフェースを司り、外部装置からのデータの入出力を制御する。I/F109には、たとえばモデムやLANアダプタなどを採用することができる。
【0045】
キーボード110は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス111は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【0046】
スキャナ112は、画像を光学的に読み取り、コンピュータ装置内に画像データを取り込む。なお、スキャナ112は、OCR機能を持たせてもよい。また、プリンタ113は、画像データや文書データを印刷する。プリンタ113には、たとえば、レーザプリンタやインクジェットプリンタを採用することができる。
【0047】
(ソフトウェア検証支援装置の機能的構成)
つぎに、この発明の実施の形態にかかるソフトウェア検証支援装置の機能的構成について説明する。図2は、この発明の実施の形態にかかるソフトウェア検証支援装置の機能的構成を示すブロック図である。図2に示したように、この発明の実施の形態にかかるソフトウェア検証支援装置100は、表示部201と、実行部202と、特定部203と、表示制御部204とを備えている。
【0048】
表示部201は、検証対象となるソフトウェアに関するGUI画面を表示する機能を有する。検証対象となるソフトウェアに関するGUI画面とは、たとえば、検証対象とされたソフトウェアのプログラムによって表示される画面である。GUI画面には、たとえば、指示や命令を記号化した図形(いわゆる、アイコン)や、文字列が表示される図形(いわゆる、テキストボックス)などのGUI要素が表示される(たとえば、図9−1〜9−8を参照。)。表示部201は、たとえば、ディスプレイ108によって実現される。
【0049】
実行部202は、ソフトウェア検証支援装置100に関する各種の動作を実行する機能を有する。実行部202は、具体的には、たとえば、ソフトウェアの検証の支援や、検証対象となるソフトウェアのGUI処理などを実行する。実行部202は、たとえば、表示部201によって、GUI画面が表示されているときにソフトウェアのGUI処理を実行する。
【0050】
ここで、GUI処理とは、たとえば、或るGUI要素を変化させる処理や、或るGUI要素を移動させる処理など、GUI要素の表示に関する処理である。GUI処理は、具体的には、プログラムによって記述され、ROM102などに記録された当該プログラムをCPU101が読み込むことにより実行される。
【0051】
特定部203は、実行部202によって実行されたGUI処理に関連するGUI要素を特定する機能を有する。特定部203は、たとえば、GUI処理が実行されたことにより非表示となるGUI要素を特定する。ここで、非表示とは、GUI画面上に表示されたGUI要素が、視認不可能な状態になることである。具体的には、たとえば、GUI処理の実行によってその対象となるGUI要素の、VRAMからの消去、アルファ値の変更による透明化、またはZバッファ法による隠蔽化などである。
【0052】
また、特定部203は、GUI処理が実行されたことによりあらたに出現するGUI要素を特定してもよい。ここで、出現とは、非表示であったGUI要素が、視認可能となる状態になることである。具体的には、たとえば、GUI処理の実行によってその対象となるGUI要素の、VRAMへの描き込み、アルファ値の変更による着色、またはZバッファ法を用いた前面化などである。
【0053】
たとえば、携帯電話において所定の時刻に音を鳴らすアラーム機能の設定に関するGUI処理が実行された場合、ディスプレイに表示されるGUI画面には、アラームをあらわすGUI要素(たとえば、ベルのマーク)が出現する。また、たとえば、アラーム機能の設定の解除に関するGUI処理が実行された場合、GUI画面では、アラームをあらわすGUI要素が非表示となる。
【0054】
また、特定部203は、GUI処理が実行されたことにより文字列、色、形状、またはサイズが変化するGUI要素を特定してもよい。ここで、文字列、色、形状、またはサイズの変化とは、具体的に、テキストボックスなどのGUI要素が有する文字列を異なる文字列にしたり、表示されたGUI要素のRGBを変更して当該GUI要素の色を異なる色としたりすることである。
【0055】
たとえば、現在時刻の計時機能に関するGUI処理が実行されている場合、GUI画面には、時刻をあらわすGUI要素(たとえば、○○:△△、○○は時、△△は分)が表示される。時刻をあらわすGUI要素は、1分経過するごとに、あらたな時刻(たとえば、12:34から12:35)に更新される。
【0056】
また、特定部203は、GUI処理が実行されたことにより移動または回転するGUI要素を特定してもよい。ここで、移動とは、GUI画面上に表示されたGUI要素のGUI画面上の座標を変化させることである。たとえば、GUI画面上に表示されたマウスポインタは、マウス操作に関するGUI処理が実行された場合、GUI画面上を移動する。
【0057】
また、ここで、回転とは、GUI要素の表示される角度を変化させることである。たとえば、音楽を再生させる音楽再生ソフトウェアのGUI画面において、表示されたボリュームを調整するノブをあらわすGUI要素は、ユーザ操作による音量増減に関するGUI処理が実行された場合に回転する。
【0058】
また、特定部203は、隠蔽していたGUI要素が非表示または移動することによって出現するGUI要素を特定することとしてもよい。ここで、隠蔽とは、具体的に、GUI画面上において、2つのGUI要素が重複して配置され、一方の上面に配置されたGUI要素によって、他方のGUI要素が非表示となる状態である。すなわち、特定部203は、上面に配置された一方のGUI要素が非表示または移動することにより、出現する他方のGUI要素を特定する。
【0059】
また、特定部203は、出現または移動するGUI要素によって隠蔽されるGUI要素を特定してもよい。すなわち、特定部203は、一方のGUI要素が他方のGUI要素上に出現または移動してくることにより他方のGUI要素に重複して、非表示とされた他方のGUI要素を特定する。
【0060】
たとえば、マウスポインタが或るGUI要素上にある場合に、所定のキー(たとえば、右クリック)の入力を受け付けると、当該GUI要素のコンテキストメニューの表示に関するGUI処理が実行されて、マウスポインタの付近にコンテキストメニューが表示される。コンテキストメニューは、GUI画面上において常に最前面に表示され、コンテキストメニューと重複するGUI要素はコンテキストメニューによって隠蔽される。
【0061】
また、コンテキストメニューは、コンテキストメニュー中に表示された何らかコマンドが選択された場合、そのGUI処理より、GUI画面上で非表示となる。これにともなって、隠蔽されていたGUI要素は、再びGUI画面上に出現する。
【0062】
表示制御部204は、特定部203によって特定されたGUI要素を含む表示領域を強調表示して表示部201に表示させる機能を有する。強調表示とは、特定されたGUI要素を含む表示領域を、実行されたGUI処理による表示とは異なるように表示することである。たとえば、特定されたGUI要素を含む表示領域を点灯、または点滅させて、検証者が容易に認識できるように表示する。表示制御部204は、たとえば、ROM102などに記録された各種のプログラムをCPU101によって実行させることにより実現される。
【0063】
(ソフトウェア検証支援装置の処理手順)
つぎに、この発明の実施の形態にかかるソフトウェア検証支援装置の処理手順について説明する。図3は、この発明の実施の形態にかかるソフトウェア検証支援装置の処理手順を示すフローチャートである。図3に示したフローチャートは、たとえば、検証者によって、検証開始の指示を受け付けた場合に開始される。
【0064】
まず、この発明の実施の形態にかかるソフトウェア検証支援装置100は、たとえば、検証者によって検証開始の指示を受け付けた場合に、未処理のGUI処理があるか否かを判定する(ステップS301)。未処理のGUI処理とは、たとえば、まだ検証がおこなわれていないGUI処理である。
【0065】
ステップS301において、未処理のGUI処理があると判定された場合(ステップS301:Yes)には、検証対象となるソフトウェアのプログラムに基づいてGUI処理を実行する(ステップS302)。具体的には、実行部202が、検証対象となるソフトウェアのプログラムの中から検証するGUI処理を実行する。
【0066】
ステップS302において、GUI処理が実行されたのち、実行されたGUI処理に関連したGUI要素を特定する(ステップS303)。具体的には、特定部203が、実行部202によって実行されたGUI処理から、当該GUI処理に関連したGUI要素を特定する。
【0067】
ステップS303において、関連したGUI要素が特定されたのち、特定されたGUI要素を含んだ表示領域が強調表示されたGUI画面を表示する(ステップS304)。具体的には、表示制御部204が、表示部201を制御して、特定部203によって特定されたGUI要素を含んだ表示領域を強調表示し、強調表示されたGUI画面を表示する。
【0068】
ステップS304において、強調表示したのち、ステップS301へ戻り、再び、未処理のGUI処理があるか否かを判定する。未処理のGUI処理があると判定された場合には、上記と同様の処理を繰り返し、未処理のGUI処理がないと判定された場合(ステップS301:No)には、そのまま一連の処理を終了する。
【0069】
(ソフトウェア検証支援装置による具体的な表示例)
(ソフトウェア検証支援装置による強調表示)
つぎに、ソフトウェア検証支援装置による具体的な表示例について説明する。まず、この発明の実施の形態にかかるソフトウェア検証支援装置による強調表示について説明する。図4および図5は、この発明の実施の形態にかかるソフトウェア検証支援装置による強調表示を説明する説明図(その1)、(その2)である。なお、図4および図5では、一例として、関連するGUI要素を非表示とするGUI処理を実行して、関連するGUI要素を非表示に変化させた場合の例を図示している。
【0070】
まず、図4において、表示されたGUI要素401に対して、ソフトウェア検証支援装置100が、GUI要素401を非表示とするGUI処理を実行する。ソフトウェア検証支援装置100がGUI処理を実行することにより、GUI要素401を非表示としたあらたなGUI要素401aが作成される。また、GUI要素401を含んでいた表示領域に、所定の色を有した矩形の点灯要素402が作成される。
【0071】
GUI要素401aおよび点灯要素402が作成されたのち、GUI要素401aと点灯要素402とが合成される。ここで、合成とは、作成された2つの要素を重ね合わせることである。合成されたGUI要素401aと点灯要素402とは、強調表示要素(点灯)403として、GUI画面上に表示される。なお、強調表示要素(点灯)403は、所定の時間(たとえば、表示されてから100ms間)だけ表示される。
【0072】
強調表示要素(点灯)403が表示されて所定の時間が経過後、図5において、点灯要素402の輪郭線上に点滅要素404が作成される。点滅要素404は、たとえば、点灯要素402と同一の色を有した点線によって作成される。点滅要素404が作成されたのち、GUI要素401aと点滅要素404とが合成され、強調表示要素(点滅)405として、GUI画面上に表示される。なお、強調表示要素(点滅)405は、所定の時間間隔(たとえば、500ms間隔)で点滅するように表示される。
【0073】
以上に説明したように、この発明の実施の形態にかかるソフトウェア検証支援装置100による強調表示は、強調表示要素(点灯)403と、強調表示要素(点滅)405とを表示させることよりおこなわれる。なお、強調表示要素(点灯)403と、強調表示要素(点滅)405とは、GUI画面上において最前面、すなわち、GUI要素に隠蔽されることなく表示される。
【0074】
(表示色の設定)
また、この発明の実施の形態にかかるソフトウェア検証支援装置100は、GUI処理の処理内容と、当該処理内容に応じた表示色とを、あらかじめ関連づけておくことができる。これにより、処理内容に応じて異なる表示色を用いて、点灯要素402および点滅要素404を表示させることができる。
【0075】
図6は、GUI処理の処理内容とそれに対応する表示色とを関連づけた状態を説明する説明図である。図6に示したように、GUI処理の処理内容に応じて、対応する表示色が関連づけられている。たとえば、この発明にかかる実施の形態のソフトウェア検証支援装置100は、GUI要素を表示・非表示とするGUI処理の場合には表示領域を黄色により強調表示し、GUI要素を移動させるGUI処理の場合には表示領域を緑色により強調表示するように関連づけられている。
【0076】
なお、これらの表示色は、ソフトウェア検証支援装置100製造側によって、あらかじめ設定されていてもよいし、検証者によって任意に設定されてもよい。また、各表示色においてRGBで指定される色以外に、透明度を表すアルファ値(alpha value)を設定可能とし、アルファ値も任意に変更できることとしてもよい。アルファ値とは、公知の技術であるため詳細な説明は省略するが、透過度に関する情報である。
【0077】
アルファ値を設定した場合、ソフトウェア検証支援装置100は、アルファブレンディングを用いて強調表示することができる。アルファブレンディングとは、公知の技術のため詳細な説明は省略するが、半透明の画像(たとえば、強調表示)とほかの画像(たとえば、GUI要素)とを重ね合わせて表示させることである。これにより、たとえば、強調表示された場合においても、強調表示の下に配置されたGUI要素が視認可能となる。
【0078】
(ソフトウェア検証支援装置のユーザインターフェース)
つぎに、この発明の実施の形態にかかるソフトウェア検証装置のユーザインターフェースについて説明する。図7および図8は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースを示す説明図(その1)、(その2)である。
【0079】
図7および8に示したように、この発明の実施の形態にかかるソフトウェア検証装置100のユーザインターフェース700は、表示ウィンドウ701と、メニュー702と、操作ボタン703とによって構成される。ユーザインターフェース700は、たとえば、ディスプレイ108上に表示される。
【0080】
表示ウィンドウ701には、検証対象となるソフトウェアに関するGUI画面が表示される。GUI画面には、GUI要素や、強調表示要素(点灯)や、強調表示要素(点滅)などが表示される。
【0081】
メニュー702には、ソフトウェア検証支援装置100に与える各種のコマンドがあらかじめカテゴリーごとに分類されて階層的に表示される。コマンドとは、たとえば、ソフトウェア検証支援装置100に実行させる処理である。たとえば、図7および図8で示したように、ユーザインターフェース700には、まず、最上位の階層のメニューとして、「ファイル」や「デバッグ」が表示される。ここで、たとえば、図8に示したように、「デバッグ」を選択した場合、「デバッグ」に分類されたコマンドである、「開始」、「開始(ステップ実行)」、「中断」、および「クリア」がプルダウンメニューによって表示される。
【0082】
検証者は、メニュー702から、コマンドを選択することにより、ソフトウェア検証支援装置100に所望の処理を実行させることができる。なお、ソフトウェア検証支援装置100の検証支援の際における代表的なコマンドについては後述する。
【0083】
操作ボタン703は、それぞれ対応するコマンドと関連づけられ、メニュー702からコマンドを選択することなく、直接、対応するコマンドを実行させることのできる、いわゆるショートカットキーである。操作ボタン703は、たとえば、検証者が頻繁に使用するコマンドと関連づけられる。図7に示した操作ボタン703は、左からそれぞれ、「開始」、「中断」、「開始(ステップ実行)」、「ステップ実行」、「クリア」のコマンドと関連づけられて設定されている。
【0084】
(ソフトウェア検証支援装置の代表的なコマンド)
つぎに、ソフトウェア検証支援装置の検証支援の際における代表的なコマンドについて説明する。「開始」は、強調表示をおこなって、ソフトウェアを検証させる。すなわち、「開始」により、GUI処理の実行にあわせて、関連するGUI要素を含んだ表示領域の強調表示がおこなわれる。「中断」は、「開始」の選択をすることによって開始されたソフトウェアの検証を中断させる。
【0085】
「開始(ステップ実行)」は、GUI処理の実行を1ステップずつ(たとえば、プログラムを1行ずつ)おこない、実行された1ステップのGUI処理と関連したGUI要素を含んだ表示領域を強調表示して、ソフトウェアを検証させる。ステップ実行は、検証対象となるソフトウェアのプログラムに基づいて、GUI処理の実行を1ステップずつ実行する。「クリア」は、強調表示された表示領域の強調表示を解除する。
【0086】
(ユーザインターフェースに表示される具体的な表示例)
つぎに、上述したユーザインターフェース700に表示される具体的な表示例について説明する。図9−1〜9−8は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その1)〜(その8)である。
【0087】
(あらたなGUI要素が表示される場合の表示例)
まず、図9−1を用いて、あらたなGUI要素が表示される場合の表示例について説明する。図9−1は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その1)である。図9−1に示したように、ユーザインターフェース700の表示ウィンドウ701には、検証対象となるソフトウェアに関するGUI画面900が表示されている。また、GUI画面900には、長方形のGUI要素901と、三角形のGUI要素902とが表示されている。
【0088】
ここで、たとえば、あらたなGUI要素として、円形のGUI要素903を表示させた場合、円形のGUI要素903が表示されるとともに、当該円形のGUI要素903を含む表示領域903aが強調表示される。すなわち、円形のGUI要素903が表示され、同時に、表示領域903aに上述した強調表示要素(点灯)および強調表示要素(点滅)が表示される。また、図6で示したように、GUI要素の表示・非表示と関連づけられた表示色が「黄」である場合には、強調表示要素(点灯)および強調表示要素(点滅)は黄色を用いて表示される。
【0089】
(表示されているGUI要素を非表示とする場合の表示例)
つぎに、図9−2を用いて、表示されているGUI要素を非表示とする場合の表示例について説明する。図9−2は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その2)である。図9−2に示したように、ユーザインターフェース700の表示ウィンドウ701には、検証対象となるソフトウェアに関するGUI画面900が表示されている。また、GUI画面900には、長方形のGUI要素901と、三角形のGUI要素902と、円形のGUI要素903とが表示されている。
【0090】
ここで、たとえば、表示されているGUI要素のうち、円形のGUI要素903を非表示とさせた場合、円形のGUI要素903が非表示とされるとともに、当該円形のGUI要素903を含む表示領域903aが強調表示される。すなわち、円形のGUI要素903が非表示とされ、同時に、表示領域903aに上述した強調表示要素(点灯)および強調表示要素(点滅)が表示される。また、図6で示したように、GUI要素の表示・非表示と関連づけられた表示色が「黄」である場合には、強調表示要素(点灯)および強調表示要素(点滅)は黄色を用いて表示される。
【0091】
(表示されているGUI要素を移動させた場合の表示例)
つぎに、図9−3を用いて、表示されているGUI要素を移動させた場合の表示例について説明する。図9−3は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その3)である。図9−3に示したように、ユーザインターフェース700の表示ウィンドウ701には、検証対象となるソフトウェアに関するGUI画面900が表示されている。また、GUI画面900には、長方形のGUI要素901と、三角形のGUI要素902と、円形のGUI要素903とが表示されている。なお、これらの各GUI要素901〜903は、静止した状態で表示されている。
【0092】
ここで、たとえば、表示されているGUI要素のうち、円形のGUI要素903を移動させた場合、円形のGUI要素903が移動されるとともに、当該円形のGUI要素903を含む表示領域903aが強調表示される。すなわち、円形のGUI要素903が所定の位置まで移動され、同時に、表示領域903aに上述した強調表示要素(点灯)および強調表示要素(点滅)が表示される。また、図6で示したように、GUI要素の移動と関連づけられた表示色が「緑」である場合には、強調表示要素(点灯)および強調表示要素(点滅)は緑色を用いて表示される。
【0093】
(表示されているGUI要素の形状を変更する場合の表示例)
つぎに、図9−4を用いて、表示されているGUI要素の形状を変更する場合の表示例について説明する。図9−4は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その4)である。図9−4に示したように、ユーザインターフェース700の表示ウィンドウ701には、検証対象となるソフトウェアに関するGUI画面900が表示されている。また、GUI画面900には、長方形のGUI要素901と、三角形のGUI要素902と、円形のGUI要素903とが表示されている。
【0094】
ここで、たとえば、表示されているGUI要素のうち、三角形のGUI要素902の形状を変更させた場合、三角形のGUI要素902の形状が変更されて星型のGUI要素904が表示されるとともに、当該星形のGUI要素904を含む表示領域904aが強調表示される。すなわち、三角形のGUI要素902が星型のGUI要素904に形状を変更され、同時に、表示領域904aに上述した強調表示要素(点灯)および強調表示要素(点滅)が表示される。また、図6で示したように、GUI要素の形状の変更と関連づけられた表示色が「赤」である場合には、強調表示要素(点灯)および強調表示要素(点滅)は赤色を用いて表示される。
【0095】
(表示されているGUI要素を回転させた場合の表示例)
つぎに、図9−5を用いて、表示されているGUI要素を回転させた場合の表示例について説明する。図9−5は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その5)である。図9−5に示したように、ユーザインターフェース700の表示ウィンドウ701には、検証対象となるソフトウェアに関するGUI画面900が表示されている。また、GUI画面900には、長方形のGUI要素901と、三角形のGUI要素902と、円形のGUI要素903とが表示されている。なお、これらの各GUI要素901〜903は、静止した状態で表示されている。
【0096】
ここで、たとえば、表示されているGUI要素のうち、三角形のGUI要素902を回転させた場合、三角形のGUI要素902が回転されるとともに、当該三角形のGUI要素902を含んだ表示領域902aが強調表示される。すなわち、三角形のGUI要素902が所定の角度分だけ回転され、同時に、表示領域902aに上述した強調表示要素(点灯)および強調表示要素(点滅)が表示される。また、図6で示したように、GUI要素の回転と関連づけられた表示色が「青」である場合には、強調表示要素(点灯)および強調表示要素(点滅)は青色を用いて表示される。
【0097】
(表示されているGUI要素のサイズを変更(拡大)させた場合の表示例)
つぎに、図9−6を用いて、表示されているGUI要素のサイズを変更(拡大)させた場合の表示例について説明する。図9−6は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その6)である。図9−6に示したように、ユーザインターフェース700の表示ウィンドウ701には、検証対象となるソフトウェアに関するGUI画面900が表示されている。また、GUI画面900には、長方形のGUI要素901と、三角形のGUI要素902と、円形のGUI要素903とが表示されている。
【0098】
ここで、たとえば、表示されているGUI要素のうち、円形のGUI要素903のサイズを拡大させた場合、円形のGUI要素903のサイズが拡大されるとともに、当該円形のGUI要素903を含む表示領域903aが強調表示される。すなわち、円形のGUI要素903が円形のGUI要素903bに拡大され、同時に、表示領域903aに上述した強調表示要素(点灯)および強調表示要素(点滅)が表示される。また、図6で示したように、GUI要素の拡大・縮小と関連づけられた表示色が「オレンジ」である場合には、強調表示要素(点灯)および強調表示要素(点滅)はオレンジ色を用いて表示される。
【0099】
(表示されているGUI要素のサイズを変更(縮小)させた場合の表示例)
つぎに、図9−7を用いて、表示されているGUI要素のサイズを変更(縮小)させた場合の表示例について説明する。図9−7は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その7)である。図9−7に示したように、ユーザインターフェース700の表示ウィンドウ701には、検証対象となるソフトウェアに関するGUI画面900が表示されている。また、GUI画面900には、長方形のGUI要素901と、三角形のGUI要素902と、円形のGUI要素903とが表示されている。
【0100】
ここで、たとえば、表示されているGUI要素のうち、円形のGUI要素903のサイズを縮小させた場合、円形のGUI要素903のサイズが縮小されるとともに、当該円形のGUI要素903を含む表示領域903cが強調表示される。すなわち、円形のGUI要素903が円形のGUI要素903dに縮小され、同時に、表示領域903cに上述した強調表示要素(点灯)および強調表示要素(点滅)が表示される。また、図6で示したように、GUI要素の拡大・縮小と関連づけられた表示色が「オレンジ」である場合には、強調表示要素(点灯)および強調表示要素(点滅)はオレンジ色を用いて表示される。
【0101】
(表示されているGUI要素(テキスト)の文字列を変更させた場合の表示例)
つぎに、図9−8を用いて、表示されているGUI要素(テキスト)の文字列を変更させた場合の表示例について説明する。図9−8は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その8)である。図9−8に示したように、ユーザインターフェース700の表示ウィンドウ701には、検証対象となるソフトウェアに関するGUI画面900が表示されている。また、GUI画面900には、GUI要素としてテキストボックスのGUI要素905と、三角形のGUI要素902と、円形のGUI要素903とが表示されている。
【0102】
ここで、たとえば、テキストボックスのGUI要素905に表示されている文字列を変更させた場合、テキストボックスのGUI要素905に表示されている文字列が変更されるとともに、当該テキストボックスのGUI要素905を含む表示領域905aが強調表示される。すなわち、テキストボックスのGUI要素905に表示されている文字列が所定の文字列に変更され、同時に、表示領域905aに上述した強調表示要素(点灯)および強調表示要素(点滅)が表示される。また、図6で示したように、テキスト表示の変更と関連づけられた表示色が「ピンク」である場合には、強調表示要素(点灯)および強調表示要素(点滅)はピンク色を用いて表示される。なお、テキストボックスのGUI要素905に表示されている文字列が流れ文字機能を用いて変更された場合には、紫色を用いて表示される。
【0103】
(他のGUI要素の影響によってあらたにGUI要素が出現する場合の表示例)
つぎに、図9−9を用いて、非表示または移動するGUI要素の影響によってあらたなGUI要素が出現した場合の表示例について説明する。図9−9は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その9)である。図9−9に示したように、ユーザインターフェース700の表示ウィンドウ701には、検証対象となるソフトウェアに関するGUI画面900が表示されている。また、GUI画面900には、GUI要素として長方形のGUI要素901と、三角形のGUI要素902と、円形のGUI要素903とが表示されている。また、円形のGUI要素903の下には、星型のGUI要素906が配置されている。
【0104】
ここで、たとえば、円形のGUI要素903を非表示とした場合、円形のGUI要素903の下に配置されていた星型のGUI要素906が出現するとともに、星型のGUI要素906を含む表示領域906aが強調表示される。すなわち、円形のGUI要素903が非表示となることによって星型のGUI要素906が出現し、同時に、表示領域906aに上述した強調表示要素(点灯)および強調表示要素(点滅)が表示される。また、図6で示したように、GUI要素の表示・非表示と関連づけられた表示色が「黄」である場合には、強調表示要素(点灯)および強調表示要素(点滅)は黄色を用いて表示される。なお、非表示とされた円形のGUI要素903を含む表示領域も強調表示することとしてもよい。
【0105】
(他のGUI要素の影響によってGUI要素が隠蔽される場合の表示例)
つぎに、図9−10を用いて、出現または移動するGUI要素の影響によってGUI要素が隠蔽された場合の表示例について説明する。図9−10は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その10)である。図9−10に示したように、ユーザインターフェース700の表示ウィンドウ701には、検証対象となるソフトウェアに関するGUI画面900が表示されている。また、GUI画面900には、GUI要素として長方形のGUI要素901と、三角形のGUI要素902と、星型のGUI要素906とが表示されている。
【0106】
ここで、たとえば、円形のGUI要素903を星型のGUI要素906上に表示させた場合、星型のGUI要素906は円形のGUI要素903の下に配置されて隠蔽されるとともに、星型のGUI要素906を含む表示領域906aが強調表示される。すなわち、円形のGUI要素903が表示されることによって星型のGUI要素906が隠蔽され、同時に、表示領域906aに上述した強調表示要素(点灯)および強調表示要素(点滅)が表示される。また、図6で示したように、GUI要素の表示・非表示と関連づけられた表示色が「黄」である場合には、強調表示要素(点灯)および強調表示要素(点滅)は黄色を用いて表示される。なお、表示された円形のGUI要素903を含んだ表示領域も強調表示することとしてもよい。
【0107】
(ソフトウェア検証支援装置の具体的な処理手順(その1))
つぎに、この発明の実施の形態にかかるソフトウェア検証支援装置100の具体的な処理手順を説明する。図10は、この発明の実施の形態にかかるソフトウェア検証支援装置の具体的な処理手順を示すフローチャート(その1)である。図10に示したフローチャートは、たとえば、検証者によってデバッグ開始が指示された場合に開始される。
【0108】
まず、この発明の実施の形態にかかるソフトウェア検証支援装置100は、イベントが発生するまで待機する(ステップS1001:Noのループ)。イベントとは、たとえば、検証をおこなうためにGUI処理を実行させる各種のコマンド(たとえば、上述した「開始」や「開始(ステップ実行」など)である。
【0109】
ステップS1001において、イベントが発生したと判定された場合(ステップS1001:Yes)には、つぎに、全GUI要素の強調表示フラグをOFFにする(ステップS1002)。具体的には、GUI画面上に強調表示された表示領域があるか否かを判定し、GUI画面上に強調表示された表示領域があった場合には、該当する表示領域の強調表示を解除する。強調表示された表示領域がない場合には、そのまま、つぎのステップへと進む。
【0110】
ステップS1002において、全GUI要素の強調表示フラグをOFFとしたのち、全GUI要素の強調表示がOFFとされたGUI画面を保存する(ステップS1003)。
【0111】
ステップS1003において、GUI画面を保存したのち、未処理のGUI処理があるか否かを判定する(ステップS1004)。また、たとえば、検証対象となるソフトウェアのGUI処理のうち、検証させるGUI処理の範囲(たとえば、1番目〜10番目までのGUI処理)を指定させ、指定された範囲内において、未処理のGUI処理があるか否かを判定させることとしてもよい。
【0112】
ステップS1004において、未処理のGUI処理があると判定された場合(ステップS1004:Yes)には、検証対象となるソフトウェアのプログラムに基づいてGUI処理を実行する(ステップS1005)。
【0113】
ステップS1005において、検証対象となるソフトウェアのプログラムに基づいてGUI処理を実行されたのち、当該GUI処理に関連したGUI要素を特定し、特定されたGUI要素の強調表示フラグをONにする(ステップS1006)。具体的には、図9−1を用いて説明したように、円形のGUI要素903を表示させるGUI処理であった場合には、関連したGUI要素として、あらたに表示された円形のGUI要素903が特定され、円形のGUI要素903を含む表示領域904の強調表示フラグがONとされる。
【0114】
ステップS1006において、関連したGUI要素が特定され、強調表示フラグがONとされたのち、強調表示フラグがONとなった状態のGUI画面を仮想VRAMに描画する(ステップS1007)。仮想VRAMとは、レンダリングされたGUI画面をVRAM(Video RAM)へ転送する前に、一時的に記録するためのバッファ領域である。仮想VRAMに描画したのち、ステップS1004へ戻り、再び、未処理のGUI処理があるか否かを判定し、未処理のGUI処理がないと判定された場合には、仮想VRAMに描画されたGUI画面をVRAMへ転送(ステップS1008)し、一連の処理を終了する。
【0115】
(ソフトウェア検証支援装置の具体的な処理手順(その2))
また、この発明の実施の形態にかかるソフトウェア検証支援装置100は、上述したステップ実行のコマンドを用いて、検証者の任意のタイミングで、1ステップずつGUI処理を実行させ、GUI処理の実行にあわせて、関連するGUI要素を含んだ表示領域を強調表示することができる。
【0116】
図11は、この発明の実施の形態にかかるソフトウェア検証支援装置の具体的な処理手順を示すフローチャート(その2)である。図11に示したフローチャートは、たとえば、検証者によってデバッグ開始が指示された場合に開始される。なお、ここでは、図10で示したフローチャートと同一の処理は、同一符号とし、説明を省略する。
【0117】
ステップS1007において、強調表示フラグがONとなった状態のGUI画面が仮想VRAMに描画したのち、ステップ実行開始の指示が受け付けられたか否かを判定する(ステップS1101:Noのループ)。ステップ実行開始の指示を受け付けた場合(ステップS1101:Yes)には、強調表示フラグがONとなった状態のGUI画面をVRAMへ転送し、ディスプレイ108上に表示したのち、ステップS1004へ戻り、再び、未処理のGUI処理があるか否かを判定し、未処理のGUI処理がないと判定された場合には、そのまま一連の処理を終了する。
【0118】
(前回画面との比較)
また、この発明の実施の形態にかかるソフトウェア検証支援装置100は、GUI処理を実行する前のGUI画面を保存しておくことにより、GUI処理を実行する前のGUI画面と、GUI処理を実行した後のGUI画面とを並べて表示することができる。これにより、検証者は並べて表示されたGUI処理を実行する前のGUI画面と、GUI処理を実行した後のGUI画面とを比較して、検証をおこなうことができる。
【0119】
図12は、この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その11)である。図12に示したように、ユーザインターフェース700の表示ウィンドウ701には、検証対象となるソフトウェアに関するGUI画面900が表示されている。
【0120】
このとき、検証者は、あらかじめ設定された所定の指示により、GUI処理を実行する前のGUI画面をGUI画面900と並べて表示させることができる。たとえば、上述したキーボード110に設けられた「Ctrlキー」と「←キー」とを同時に押下することにより、GUI処理を実行する前のGUI画面1200が、GUI画面900の背面から左側方向に向かってスライドするように徐々に現れ、GUI画面900の左側に並んで表示される。GUI処理を実行する前のGUI画面1200には、GUI要素として長方形のGUI要素901と、三角形のGUI要素902と、円形のGUI要素903とが表示されている。
【0121】
これにより、検証者は、GUI処理を実行する前のGUI画面1200と、GUI処理を実行した後のGUI画面900とを比較することにより、GUI処理によって円形のGUI要素903が非表示とされたことを容易に確認することができる。
【0122】
また、GUI処理を実行する前のGUI画面1200は、GUI画面に対し、たとえば、「Ctrlキー」と「↑キー」では上側、「Ctrlキー」と「↓キー」では下側といったように、表示される位置をあらかじめ設定しておくことができる。これにより、理検証者の任意の位置に、GUI処理を実行する前のGUI画面1200を表示させることができる。また、GUI画面900には強調表示がされることとして、当該強調表示とGUI処理を実行する前のGUI画面1200とを同時に参照することにより、検証をおこなうことができるようにしてもよい。
【0123】
上述したように、この発明の実施の形態にかかるソフトウェア検証支援装置100によれば、実行されたGUI処理に関連したGUI要素が特定され、特定されたGUI要素を含む表示領域が強調表示されるため、検証者は、実行されたGUI処理と当該GUI処理に関連するGUI要素とを同時に検証することができ、GUI処理とGUI要素との関連を同時に的確に知ることができるので、ソフトウェアの検証を正確かつ短時間でおこなうことができる。
【0124】
具体的には、この発明の実施の形態にかかるソフトウェア検証支援装置100によれば、GUI処理を実行することにより、消失したGUI要素や、あらたに出現するGUI要素や、文字列、色、形状、またはサイズが変化するGUI要素や、移動または回転するGUI要素などを含む表示領域が強調表示されるため、これらのGUI要素を同時に容易に検証することができる。
【0125】
また、この発明の実施の形態にかかるソフトウェア検証支援装置100によれば、実行されたGUI処理の処理内容にあわせて、異なる表示色を用いて、強調表示させることにより、検証者はより直感的に、GUI処理とGUI要素との関連を的確に知ることができるので、ソフトウェアの検証を正確かつ短時間でおこなうことができる。
【0126】
また、本実施の形態では、強調表示されるGUI要素として、GUI処理が実行されることにより、直接的に変化のあったGUI要素としたが、これに限らない。たとえば、GUI処理を実行することにより、消失または移動するGUI要素によって出現するGUI要素を含む表示領域が強調表示されることとしてもよい。
【0127】
また、GUI処理を実行することにより、出現または移動するGUI要素に隠蔽されるGUI要素を含む表示領域が強調表示されることとしてもよい。これにより、GUI処理を実行することにより変化のあったGUI要素の影響によって、間接的に変化させられた(たとえば、GUI処理を実行することにより変化のあったGUI要素により遮蔽されることによって非表示とされた)他のGUI要素も強調表示とすることができる。
【0128】
これにより、検証者はGUI処理と当該GUI処理によって間接的に影響のあるGUI要素との関連を的確に知ることができるので、ソフトウェアの検証を正確かつ短時間でおこなうことができる。また、隠蔽されたGUI要素を含む表示領域が強調表示されるため、隠蔽されたGUI要素も見落とすことなく、検証することができる。これにより、ソフトウェアから無駄なGUI要素を削減し、パフォーマンスを向上させることができる。
【0129】
また、この発明の実施の形態にかかるソフトウェア検証支援装置100よれば、複数のGUI処理に対して、それぞれに対応するGUI要素を容易かつ同時に検証することができる。これにより、検証者は、それぞれのGUI処理とそれぞれのGUI要素との関連を的確に知ることができるので、ソフトウェアの検証を正確かつ短時間でおこなうことができる。
【0130】
また、この発明の実施の形態にかかるソフトウェア検証支援装置100よれば、ステップ実行を用いて、GUI処理が実行されたのち、検証者の任意のタイミングで他のGUI処理を実行させるため、検証者の任意のタイミングでソフトウェアの検証をおこなうことができる。これにより、ソフトウェアの検証を正確におこなうことができる。
【0131】
また、この発明の実施の形態にかかるソフトウェア検証支援装置100では、強調表示を強調表示要素(点灯)と、強調表示要素(点滅)とを用いて表示することとしたが、これに限るものではない。強調表示は、検証者が容易に視認できればよく、それを満たすならば、表示の仕方は何でもよい。
【0132】
以上に説明したように、この発明にかかるソフトウェア検証支援装置、ソフトウェア検証支援方法、およびソフトウェア検証支援プログラムによれば、プログラムの妥当性の検証と関連づけてGUI画面の妥当性の検証を同時に実現することにより、検証者の労力軽減、開発期間の短縮、検証の高精度化を同時に図ることができる。
【0133】
なお、本実施の形態で説明したソフトウェア検証支援方法は、あらかじめ用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。このプログラムは、ハードディスク、フレキシブルディスク、CD−ROM、MO、DVD等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。またこのプログラムは、インターネット等のネットワークを介して配布することが可能な媒体であってもよい。
【産業上の利用可能性】
【0134】
以上のように、本発明にかかるソフトウェア検証支援装置、ソフトウェア検証支援方法、およびソフトウェア検証支援プログラムは、ソフトウェアの検証を支援する際に有用であり、特に、GUIが採用されたソフトウェアの検証に適している。
【図面の簡単な説明】
【0135】
【図1】この発明の実施の形態にかかるソフトウェア検証支援装置のハードウェア構成を示すブロック図である。
【図2】この発明の実施の形態にかかるソフトウェア検証支援装置の機能的構成を示すブロック図である。
【図3】この発明の実施の形態にかかるソフトウェア検証支援装置の処理手順を示すフローチャートである。
【図4】この発明の実施の形態にかかるソフトウェア検証支援装置による強調表示を説明する説明図(その1)である。
【図5】この発明の実施の形態にかかるソフトウェア検証支援装置による強調表示を説明する説明図(その2)である。
【図6】GUI処理の処理内容とそれに対応する表示色とを関連づけた状態を説明する説明図である。
【図7】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースを示す説明図(その1)である。
【図8】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースを示す説明図(その2)である。
【図9−1】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その1)である。
【図9−2】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その2)である。
【図9−3】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その3)である。
【図9−4】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その4)である。
【図9−5】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その5)である。
【図9−6】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その6)である。
【図9−7】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その7)である。
【図9−8】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その8)である。
【図9−9】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その9)である。
【図9−10】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その10)である。
【図10】この発明の実施の形態にかかるソフトウェア検証支援装置の具体的な処理手順を示すフローチャート(その1)である。
【図11】この発明の実施の形態にかかるソフトウェア検証支援装置の具体的な処理手順を示すフローチャート(その2)である。
【図12】この発明の実施の形態にかかるソフトウェア検証支援装置のユーザインターフェースに表示される具体的な表示例を示す説明図(その11)である。
【図13】従来技術によるソフトウェアの検証の一例を示す説明図である。
【符号の説明】
【0136】
100 ソフトウェア検証支援装置
201 表示部
202 実行部
203 特定部
204 表示制御部

【特許請求の範囲】
【請求項1】
検証対象となるソフトウェアに関するGUI画面を表示する表示手段と、
前記GUI画面が表示されているときに前記ソフトウェアのGUI処理を実行する実行手段と、
前記GUI画面の中から、前記実行手段によって実行されたGUI処理に関連するGUI要素を特定する特定手段と、
前記GUI画面を制御して、前記GUI画面のうち前記特定手段によって特定されたGUI要素を含む表示領域を強調表示する表示制御手段と、
を備えることを特徴とするソフトウェア検証支援装置。
【請求項2】
前記特定手段は、
前記GUI画面の中から、前記GUI処理が実行されたことにより変化するGUI要素を特定することを特徴とする請求項1に記載のソフトウェア検証支援装置。
【請求項3】
前記特定手段は、
前記GUI画面の中のGUI要素のうち、前記GUI処理が実行されたことにより消失するGUI要素を特定することを特徴とする請求項2に記載のソフトウェア検証支援装置。
【請求項4】
前記特定手段は、
前記GUI画面の中から、前記GUI処理が実行されたことによりあらたに出現するGUI要素を特定することを特徴とする請求項2に記載のソフトウェア検証支援装置。
【請求項5】
前記特定手段は、
前記GUI画面の中のGUI要素のうち、前記GUI処理が実行されたことにより文字列、色、形状、またはサイズが変化するGUI要素を特定することを特徴とする請求項2に記載のソフトウェア検証支援装置。
【請求項6】
前記特定手段は、
前記GUI画面の中のGUI要素のうち、前記GUI処理が実行されたことにより移動または回転するGUI要素を特定することを特徴とする請求項2に記載のソフトウェア検証支援装置。
【請求項7】
前記特定手段は、
前記GUI画面の中のGUI要素のうち、前記GUI処理が実行されたことにより消失または移動するGUI要素によって出現するGUI要素を特定することを特徴とする請求項1に記載のソフトウェア検証支援装置。
【請求項8】
前記特定手段は、
前記GUI画面の中のGUI要素のうち、前記GUI処理が実行されたことにより出現または移動するGUI要素に隠蔽されるGUI要素を特定することを特徴とする請求項1に記載のソフトウェア検証支援装置。
【請求項9】
前記実行手段は、
前記GUI処理の実行後に、前記GUI処理とは異なる他のGUI処理を実行し、
前記特定手段は、
前記表示制御手段によって前記表示領域(以下、「第1の表示領域」という)が強調表示されたGUI画面の中から、前記他のGUI処理に関連するGUI要素を特定し、
前記表示制御手段は、
前記GUI画面を制御して、前記第1の表示領域が強調表示されたGUI画面のうち前記特定手段によって特定されたGUI要素を含む第2の表示領域を強調表示することを特徴とする請求項1〜8のいずれか一つに記載のソフトウェア検証支援装置。
【請求項10】
前記他のGUI処理の実行指示を受け付ける受付手段を備え、
前記実行手段は、
前記受付手段によって実行指示が受け付けられた他のGUI処理を実行することを特徴とする請求項9に記載のソフトウェア検証支援装置。
【請求項11】
前記表示制御手段は、
前記GUI画面を制御して、前記第1の表示領域の強調表示を解除することを特徴とする請求項9または10に記載のソフトウェア検証支援装置。
【請求項12】
前記表示制御手段は、
前記GUI画面を制御して、前記第1および第2の表示領域を相対的に異なるように強調表示することを特徴とする請求項9または10に記載のソフトウェア検証支援装置。
【請求項13】
検証対象となるソフトウェアに関するGUI画面が表示されているときに前記ソフトウェアのGUI処理を実行する実行工程と、
前記GUI画面の中から、前記実行工程によって実行されたGUI処理に関連するGUI要素を特定する特定工程と、
前記GUI画面のうち前記特定工程によって特定されたGUI要素を含む表示領域を強調表示する表示工程と、
を含んだことを特徴とするソフトウェア検証支援方法。
【請求項14】
コンピュータを、
検証対象となるソフトウェアに関するGUI画面が表示されているときに前記ソフトウェアのGUI処理を実行する実行手段、
前記GUI画面の中から、前記実行手段によって実行されたGUI処理に関連するGUI要素を特定する特定手段、
前記GUI画面のうち前記特定手段によって特定されたGUI要素を含む表示領域を強調表示する表示制御手段、
として機能させることを特徴とするソフトウェア検証支援プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9−1】
image rotate

【図9−2】
image rotate

【図9−3】
image rotate

【図9−4】
image rotate

【図9−5】
image rotate

【図9−6】
image rotate

【図9−7】
image rotate

【図9−8】
image rotate

【図9−9】
image rotate

【図9−10】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2009−223412(P2009−223412A)
【公開日】平成21年10月1日(2009.10.1)
【国際特許分類】
【出願番号】特願2008−64512(P2008−64512)
【出願日】平成20年3月13日(2008.3.13)
【出願人】(594081294)株式会社アイ・エル・シー (12)
【Fターム(参考)】