(57)【要約】【課題】コードレビュー表および試験項目表を作成することができる情報処理装置、情報処理方法及びプログラムを提供する。【解決手段】評価対象となるプログラムのソースコードを記憶し、前記ソースコードに対して定義情報を参照して、定義に合致するか判定し、その判定の結果を用いてソースコードのステップ数を分類して計数した結果と、前記ソースコードとソースコードに対するコードレビュー表と試験項目表とを対比可能に表示し、前記ソースコードに対して前記定義情報を参照してコードレビューの対象行に合致するかを判定し、合致する場合は該当するコードレビューの内容を前記コードレビュー表に表示し、前記ソースコードに対して前記定義情報を参照して試験項目の対象行に合致するかを判定し、合致する場合は該当する前記試験項目の内容を試験項目表に表示することを特徴とした単体試験支援装置。【選択図】図３
2011134270.tif 000002
【特許請求の範囲】
【請求項１】
単体試験前に行うコードレビュー表および試験項目表の作成を支援するための単体試験支援装置であって、
ソースコードを評価するための定義情報を記憶した定義情報記憶手段と、
評価対象となるプログラムの第一のソースコードを記憶した第一のソースコード記憶手段と、
前記第一のソースコードに対して前記定義情報記憶手段に記憶された定義情報を参照して、定義に合致するか判定する判定手段と、
前記判定手段による判定の結果を用いて第一のソースコードのステップ数を分類して計数する計数手段と、
前記計数手段で計数した結果と、前記第一のソースコードとソースコードに対するコードレビュー表と試験項目表とを対比可能に表示する表示手段と、
前記第一のソースコードに対して前記定義情報記憶手段に記憶された定義情報を参照してコードレビューの対象行に合致するかを判定し、合致する場合は該当するコードレビューの内容を前記コードレビュー表に表示するコードレビュー表作成手段と、
前記第一のソースコードに対して前記定義情報記憶手段に記憶された定義情報を参照して試験項目の対象行に合致するかを判定し、合致する場合は該当する前記試験項目の内容を試験項目表に表示する試験項目表作成手段と
を備えることを特徴とした単体試験支援装置。
【請求項２】
前記第一のソースコードを比較対象とする第二のソースコードを記憶するソースコード記憶手段を備え、
前記表示手段は、計数手段で計数した結果と、前記第一のソースコードと第一のソースコードに対するコードレビュー表と試験項目表と、第二のソースコードとを対比可能に表示すること
を特徴とした請求項１記載の単体試験支援装置。
【請求項３】
表示項目の表示切替指示を受け付ける表示切替指示手段と、
前記表示切替指示手段で受け付けた表示項目に基づき表示または非表示を判定する表示項目判定手段を備え、
前記表示手段は、前記項目判定手段で判定された結果に基づき表示または非表示することを特徴とする請求項１または２記載の単体試験支援装置。
【請求項４】
検索キーワードを受け付ける検索キーワード入力手段と、
前記検索キーワード入力手段により受け付けたキーワードを検索条件として、第一のソースコードから条件に合致する行を検索する検索手段とを備え、
前記計数手段は、前記検索手段で検索された結果を対象に計数することを特徴とした請求項１乃至３のいずれか一項に記載の単体試験支援装置。
【請求項５】
前記表示手段は、前記分類手段で分類された結果に応じて識別可能に表示することを特徴とした請求項１乃至４のいずれか一項に記載の単体試験支援装置。
【請求項６】
単体試験前に行うコードレビュー表および試験項目表の作成を支援するための単体試験支援方法であって、
ソースコードを評価するための定義情報を記憶する定義情報記憶ステップと、
評価対象となるプログラムの第一のソースコードを記憶する第一のソースコード記憶ステップと、
前記第一のソースコードに対して前記定義情報記憶ステップで記憶した定義情報を参照して、定義に合致するか判定する判定ステップと、
前記判定ステップによる判定の結果を用いて第一のソースコードのステップ数を分類して計数する計数ステップと、
前記計数ステップで計数した結果と、前記第一のソースコードとソースコードに対するコードレビュー表と試験項目表とを対比可能に表示する表示ステップと、
前記第一のソースコードに対して前記定義情報記憶ステップで記憶した定義情報を参照してコードレビューの対象行に合致するかを判定し、合致する場合は該当するコードレビューの内容を前記コードレビュー表に表示するコードレビュー表作成ステップと、
前記第一のソースコードに対して前記定義情報記憶ステップで記憶した定義情報を参照して試験項目の対象行に合致するかを判定し、合致する場合は該当する前記試験項目の内容を試験項目表に表示する試験項目表作成ステップと
を備えることを特徴とした単体試験支援方法。
【請求項７】
前記第一のソースコードを比較対象とする第二のソースコードを記憶するソースコード記憶ステップを備え、
前記表示ステップは、計数ステップで計数した結果と、前記第一のソースコードと第一のソースコードに対するコードレビュー表と試験項目表と、第二のソースコードとを対比可能に表示すること
を特徴とした請求項６記載の単体試験支援方法。
【請求項８】
表示項目の表示切替指示を受け付ける表示切替指示ステップと、
前記表示切替指示ステップで受け付けた表示項目に基づき表示または非表示を判定する表示項目判定ステップとを備え、
前記表示ステップは、前記項目判定ステップで判定された結果に基づき表示または非表示することを特徴とする請求項６または７に記載の単体試験支援方法。
【請求項９】
検索キーワードを受け付ける検索キーワード入力ステップと、
前記検索キーワード入力ステップで受け付けたキーワードを検索条件として、第一のソースコードから条件に合致する行を検索する検索ステップとを備え、
前記計数ステップは、前記検索ステップで検索された結果を対象に計数することを特徴とした請求項６乃至８のいずれか一項に記載の単体試験支援方法。
【請求項１０】
前記表示ステップは、前記分類ステップで分類した結果に応じて識別可能に表示することを特徴とした請求項６乃至９のいずれか一項に記載の単体試験支援方法。
【請求項１１】
単体試験前に行うコードレビュー表および試験項目表の作成を支援するための単体試験支援装置で実行が可能なプログラムであって、
ソースコードを評価するための定義情報を記憶した定義情報記憶手段と、
評価対象となるプログラムの第一のソースコードを記憶した第一のソースコード記憶手段と、
前記第一のソースコードに対して前記定義情報記憶手段に記憶された定義情報を参照して、定義に合致するか判定する判定手段と、
前記判定手段による判定の結果を用いて第一のソースコードのステップ数を分類して計数する計数手段と、
前記計数手段で計数した結果と、前記第一のソースコードとソースコードに対するコードレビュー表と試験項目表とを対比可能に表示する表示手段と、
前記第一のソースコードに対して前記定義情報記憶手段に記憶された定義情報を参照してコードレビューの対象行に合致するかを判定し、合致する場合は該当するコードレビューの内容を前記コードレビュー表に表示するコードレビュー表作成手段と、
前記第一のソースコードに対して前記定義情報記憶手段に記憶された定義情報を参照して試験項目の対象行に合致するかを判定し、合致する場合は該当する前記試験項目の内容を試験項目表に表示する試験項目表作成手段と
して単体試験支援装置を機能させることを特徴としたプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェア開発において、単体試験前に行うコードレビュー表および試験項目表の作成を支援するための単体試験支援装置、方法及びプログラムに関する。
【背景技術】
【０００２】
ソフトウェアの開発では、開発したプログラムに対して動作を確認するための単体試験を実行する前段階の作業として、コードレビュー表および試験項目表の作成を行っている。
【０００３】
コードレビュー表の作成を支援するソースコード解析支援装置が特許文献１で開示されている。特許文献１のソースコード解析支援装置によれば、ソースコードの自動解析を実行して得られた解析結果と目視による解析結果を一元的に管理し、効率的なソフトウェア開発ができるようになる。
【０００４】
また、試験項目表の作成を支援する試験項目表の作成方法が特許文献２で開示されている。特許文献２の試験項目表の作成方法によれば、構文を解析して分岐ブロックごとの繋がりを抽出し、これにより分岐ルートを通る試験項目を抽出することができるようになる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−１４６２０７号公報
【特許文献２】特開平８−２７２６４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に記載のソースコード解析支援装置は、ソースコードの自動解析を実行して得られた解析結果と目視による解析結果を同一画面上にリスト化して表示しているが、それぞれの結果の妥当性を確認する作業には、ソースコードとの対比が不可欠になる。この作業についてはソースコードとコードレビュー表を別々に見ながら目視でチェックすることになるため、開発担当者や確認者には負担であったとともに、見落としが発生するなどの品質上の問題があった。また、確認者は、レビューの結果を反映してソースコードが適切に修正されているか否か判断する場合も、開発担当者などの負担と品質上の問題があった。
【０００７】
さらに、特許文献２の試験項目表の作成方法でも、同様に開発担当者などの負担と品質上の問題があった。特に、大規模開発において特許文献２のようにソースコード内に試験項目用のコメントを組込む方法では、試験項目表作成時間の削減ができてもソースコード内に組込む時間が掛かり現実的でなく非効率であるといえる。
【０００８】
一方で、試験項目を確認する中で、ソースコードの不備を発見しようとする場合もある。しかし、それらに対する対応は開発担当者の目視によるチェックに頼らざるをえず、開発担当者などの負担と品質上の問題が残るものであった。
【０００９】
本発明は、上記に鑑みてなされたものであって、ソースコードの自動解析を実行して得られたコードレビュー表と試験項目表をソースコードとを対比可能に表示させることで、開発担当者などの負荷を軽減し、品質を確保しながらコードレビュー表および試験項目表を作成することができる単体試験支援装置、方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、本発明は、単体試験前に行うコードレビュー表および試験項目表の作成を支援するための単体試験支援装置であって、ソースコードを評価するための定義情報を記憶した定義情報記憶手段と、評価対象となるプログラムの第一のソースコードを記憶した第一のソースコード記憶手段と、前記第一のソースコードに対して前記定義情報記憶手段に記憶された定義情報を参照して、定義に合致するか判定する判定手段と、  前記判定手段による判定の結果を用いて第一のソースコードのステップ数を分類して計数する計数手段と、前記計数手段で計数した結果と、前記第一のソースコードとソースコードに対するコードレビュー表と試験項目表とを対比可能に表示する表示手段と、前記第一のソースコードに対して前記定義情報記憶手段に記憶された定義情報を参照してコードレビューの対象行に合致するかを判定し、合致する場合は該当するコードレビューの内容を前記コードレビュー表に表示するコードレビュー表作成手段と、前記第一のソースコードに対して前記定義情報記憶手段に記憶された定義情報を参照して試験項目の対象行に合致するかを判定し、合致する場合は該当する前記試験項目の内容を試験項目表に表示する試験項目表作成手段とを備えることを特徴とする。
【００１１】
また、単体試験前に行うコードレビュー表および試験項目表の作成を支援するための単体試験支援方法であって、ソースコードを評価するための定義情報を記憶する定義情報記憶ステップと、評価対象となるプログラムの第一のソースコードを記憶する第一のソースコード記憶ステップと、前記第一のソースコードに対して前記定義情報記憶ステップで記憶した定義情報を参照して、定義に合致するか判定する判定ステップと、前記判定ステップによる判定の結果を用いて第一のソースコードのステップ数を分類して計数する計数ステップと、前記計数ステップで計数した結果と、前記第一のソースコードとソースコードに対するコードレビュー表と試験項目表とを対比可能に表示する表示ステップと、  前記第一のソースコードに対して前記定義情報記憶ステップで記憶した定義情報を参照してコードレビューの対象行に合致するかを判定し、合致する場合は該当するコードレビューの内容を前記コードレビュー表に表示するコードレビュー表作成ステップと、前記第一のソースコードに対して前記定義情報記憶ステップで記憶した定義情報を参照して試験項目の対象行に合致するかを判定し、合致する場合は該当する前記試験項目の内容を試験項目表に表示する試験項目表作成ステップとを実行することを特徴とする。
【００１２】
また、単体試験前に行うコードレビュー表および試験項目表の作成を支援するための単体試験支援装置で実行が可能なプログラムであって、ソースコードを評価するための定義情報を記憶した定義情報記憶手段と、評価対象となるプログラムの第一のソースコードを記憶した第一のソースコード記憶手段と、前記第一のソースコードに対して前記定義情報記憶手段に記憶された定義情報を参照して、定義に合致するか判定する判定手段と、前記判定手段による判定の結果を用いて第一のソースコードのステップ数を分類して計数する計数手段と、前記計数手段で計数した結果と、前記第一のソースコードとソースコードに対するコードレビュー表と試験項目表とを対比可能に表示する表示手段と、前記第一のソースコードに対して前記定義情報記憶手段に記憶された定義情報を参照してコードレビューの対象行に合致するかを判定し、合致する場合は該当するコードレビューの内容を前記コードレビュー表に表示するコードレビュー表作成手段と、前記第一のソースコードに対して前記定義情報記憶手段に記憶された定義情報を参照して試験項目の対象行に合致するかを判定し、合致する場合は該当する前記試験項目の内容を試験項目表に表示する試験項目表作成手段として単体試験支援装置を機能させることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、開発担当者などの負荷を軽減し、品質を確保しながらコードレビュー表および試験項目表を作成することができる単体試験支援装置、方法及びプログラムを提供することが可能である。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態における単体試験支援システムの構成を示す図である。
【図２】本発明の実施形態における単体試験支援装置のハードウェア構成を示す図である。
【図３】本発明の実施形態における単体試験支援装置の機能ブロックを示す図である。
【図４】本発明の実施形態における単体試験支援装置の基本的な処理フローを示す図である。
【図５】本発明の実施形態における単体試験支援装置のソース表示処理フローを示す図である。
【図６】本発明の実施形態における操作者への表示や指示を受け取るための各種操作画面を示す図である。
【図７】本発明の実施形態におけるステップ数計数処理結果を表示する画面を示す図である。
【図８】本発明の実施形態における追加・改修行抽出結果を表示する画面を示す図である。
【図９】本発明の実施形態における経路分岐行抽出結果を表示する画面を示す図である。
【図１０】本発明の実施形態におけるコードレビュー行抽出結果を表示する画面を示す図である。
【図１１】本発明の実施形態における試験項目を表示する画面を示す図である。
【図１２】本発明の実施形態における試験項目行抽出結果を表示する画面を示す図である。
【図１３】本発明の実施形態におけるコードレビューを表示する画面を示す図である。
【図１４】本発明の実施形態におけるコードレビュー表印刷結果を示す図である。
【図１５】本発明の実施形態における試験項目印刷結果を示す図である。
【図１６】本発明の実施形態における単体試験支援装置が管理するデータテーブルを示す図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照して、本発明の実施形態を詳細に説明する。
図１は、本発明の実施形態における単体試験支援システムの構成を示す図である。
【００１６】
本実施例における単体試験支援システムは、図１に示すように、単体試験支援装置１０１とプリンター１０２とはネットワーク１０３で接続されている構成である。
【００１７】
単体試験支援装置１０１は、単体試験支援システム全体を統括的に制御する装置であり、操作者への表示や指示を受け取るための各種操作画面を管理する。また、操作者から受け取った指示に応じて、各種処理を実行する装置である。
【００１８】
プリンター１０２は、単体試験支援装置１０１からネットワーク１０３を介して受信したコードレビュー表および試験項目表などの印刷データを印刷出力する装置である。
【００１９】
なお、図１のネットワーク１０３に接続される各種端末の構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。例えば、ここでは１台の単体試験支援装置１０１で説明したが、複数で構成するものであってもよい。
次に、単体試験支援装置１０１の内部のハードウェア構成について図２を用いて説明する。
図２は、単体試験支援装置１０１の基本的なハードウェア構成を示す図である。
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００２０】
また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ(Basic Input / Output System)やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
また、入力コントローラ（入力Ｃ）２０５は、ＫＢ２０９や不図示のマウス等のポインティングデバイスからの入力を制御する。
【００２１】
ビデオコントローラ（ＶＣ）２０６は、ＣＲＴディスプレイ（ＣＲＴ）２１０等の表示器への表示を制御する。表示器はＣＲＴだけでなく、液晶ディスプレイでも構わない。これらは必要に応じて管理者が使用するものである。本発明には直接関係があるものではない。
【００２２】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフロッピーディスク（登録商標  ＦＤ）或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュメモリ等の外部メモリ２１１へのアクセスを制御する。
【００２３】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００２４】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上の不図示のマウスカーソル等での操作者指示を可能とする。
【００２５】
本発明を実現するためのプログラムは外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイル及び各種情報テーブルは外部メモリ２１１に格納されており、これらについての詳細な説明は後述する。
次に、単体試験支援装置１０１の機能構成について図３を用いて説明する。
【００２６】
図３は、単体試験支援装置１０１の機能構成を示す図である。単体試験支援装置１０１は入力部３０１、表示制御部３０２、データ記憶部３０３、データ処理部３０４、印刷制御部３０５から構成されている。
入力部３０１はＫＢ２０９を通じて開発担当者や確認者などの操作者からの入力を受け付け、その情報をデータ処理部３０４に送る。
【００２７】
表示制御部３０２は、データ処理部３０４からの指示に基づき、ＣＲＴディスプレイ（ＣＲＴ）２１０にコードレビュー表および試験項目表作成の画面を表示する制御をする。
【００２８】
データ記憶部３０３は、データ処理部３０４からの指示に基づき、記憶されているデータを読み出したり、記憶したりする。管理するデータとしては、評価対象となるプログラムを記憶したソースコードファイル３３１、コードレビューの結果を記憶したコードレビュー表ファイル３３２、試験項目を抽出した結果を記憶した試験項目表ファイル３３３がある。さらにコードレビュー表と試験項目表を作成するときの作業用データを記憶した単体試験作業ファイル３３４やそれぞれの処理に必要な各種の定義情報を記憶している。
【００２９】
データ処理部３０４は、入力部３０１から受け取った情報に基づき、表示制御部３０２やデータ記憶部３０３、さらに印刷制御部３０５を制御しながら、各々の処理を実行する機能を有する。
【００３０】
印刷制御部３０５は、データ処理部３０４からの指示に基づき、ネットワーク１０３を介してプリンター１０２にコードレビュー表や試験項目表を印刷するための出力制御をする。
【００３１】
上述したように、単体試験支援装置１０１は、各種操作画面を介して開発担当者や確認者などの操作者の指示を受け取り、コードレビュー表と試験項目表の作成に係る各種処理を実行する。その一例について、以下に説明する。
まず、単体試験支援装置１０１おけるコードレビュー表と試験項目表を作成する基本的な処理フローについて、図4を用いて説明する。
図４は、本発明の一実施形態の単体試験支援装置におけるコードレビュー表および試験項目表を作成に関する基本的な処理フローを示す図である。
【００３２】
まず、ステップＳ４０１では、入力部３０１は操作者により指定された評価対象のプログラムを特定する情報を受け取りデータ処理部３０４に送る。データ処理部３０４は受け取ったプログラムを特定する情報に基づき、評価対象のプログラムをソースコードファイル３３１から読み込む。また、先に作成したコードレビュー表および試験項目表を使って、修正版ソースコードファイル３３５を評価する場合であれば単体試験作業ファイル３３４も読み込む。ここでは、新規のプログラムを評価するものとして説明する。
ステップＳ４０２では、読み込んだプログラムのソースコードを表示する。このステップＳ４０２の詳細な処理について図５を用いて説明する。
図５は、図４のステップＳ４０２におけるソースコード表示処理の詳細な処理フローの一例を示す図である。
【００３３】
まず、ステップＳ５０１では、データ処理部３０４は新規のソースコードを評価するのか、修正版のソースコードを評価するのかを判断し、新規のソースコードを評価するのであれば、ステップＳ５０２に進む。
【００３４】
ステップＳ５０２では、データ処理部３０４は読み込んだソースコードの表示データを作成し表示制御部３０２に送る。表示制御部３０２は受け取った画面データをＣＲＴディスプレイ（ＣＲＴ）２１０に表示させる。画面例を図６に示す。
【００３５】
図６は、ステップＳ５０２で表示するコードレビュー表および試験項目表作成において操作者に表示する画面の一例を示す図である。ソースコードのステップ数を表示するソースステップ数表示部６０１、ソースコードを表示するソースコード表示部６０２、コードレビューの結果を表示するコードレビュー表示部６０３、試験項目の結果を表示する試験項目表示部６０４、さらに比較対象となる修正版ソースコードを表示する修正版ソースコード表示部６０５からなる。さらに、コードレビュー表および試験項目表の作成において必要となる表示切替のための表示切替ボタン６１０などを備える。なお、ここステップＳ５０２では、ソースコード表示部６０２にソースコードを表示する。
【００３６】
操作者は、このようにソースコードとコードレビュー表と試験項目表を対比可能に表示されていることで、注目する部分を容易に認識することが可能となり、作業負荷が軽減され、品質も確保しやすくなる。
【００３７】
ステップＳ５０４では、  データ処理部３０４はソースコードを一行ずつ読み込み、データ記憶部３０３に記憶されている図１６に示す分類判定定義テーブル１６１０を参照して各行の定義付をする。
【００３８】
ステップＳ５０５では、データ処理部３０４は、あらかじめ登録された、例えば、コメント行であれば灰色の設定とし、経路分岐行であれば水色を設定とするなど、操作者に対し識別可能に表示するよう表示制御部３０２に指示し、ソース表示処理を終える。
図４の説明に戻る。
【００３９】
ステップＳ４０３では、データ処理部３０４はステップ数の計数処理を行う。ここでは、ステップＳ５０４で定義された、ぞれぞれの定義に基づき、総ステップ数とともに、手続き部以外のステップ数であるプロシージャー以外ステップ数、手続き部ステップ数であるプロシージャーステップ数、ソースコード全体のコメントステップ数であるコメントステップ数を計数する。さらに、プログラム標準化された評価済みのコードであるSKLTONステップ数、手続き部のSKLTONステップを除いたステップ数であるSKLTON除くステップ数、新規・改修した手続き部のコメントを抜いたステップ数流用・未改修した手続き部のコメントを抜いたステップ数を計数する。また、ソースコード内のTHEN、ELSE、WHEN等の分岐コードを含む行の数である経路網羅数を計数する。それぞれの計数結果については、図７の全体計数結果表示部７０５や経路網羅数表示部７０６に表示するべく、画面データを表示制御部３０２に送る。表示制御部３０２は受け取った画面データをＣＲＴディスプレイ（ＣＲＴ）２１０に表示させる。
【００４０】
ステップＳ４０４では、データ処理部３０４はソースコードを一行ずつ読み込み、データ記憶部３０３に記憶されている図１６に示す文法ルール定義テーブル１６２０を参照して各行のエラー有無の判定をする。このとき、エラーの種類に応じてあらかじめ登録されたコードを、例えば、仕様通りのコードでない場合はＳ１、コードがルールから外れている場合はＥ１、誤記である場合はＤ１といったように特定する。操作者は、この自動作成されたコードレビュー表を基にプログラム全体を通して仕様通り作成されているかのレビューを実施する。自動作成されたものに加えて目視チェックを行う事で品質確保を実現する事が可能となる。
【００４１】
その判定の結果については、ソースコードの表示と対応した対象行の図６のコードレビュー表示部６０３に文法ルール定義テーブル１６０２で定義された内容を表示するべく、画面データを表示制御部３０２に送る。表示制御部３０２は受け取った画面データをＣＲＴディスプレイ（ＣＲＴ）２１０に表示させる。
【００４２】
ステップＳ４０５では、データ処理部３０４はソースコードを一行ずつ読み込み、データ記憶部３０３に記憶されている図６に示す試験項目定義テーブル１６３０を参照して、試験項目に該当するかの判断をする。このとき、試験項目に定義づけされた行であれば、それに応じた試験項目をソースコードの表示と対応した対象行の図６の試験項目表示部６０４に試験項目定義テーブル１６０３で定義された内容を表示するべく、画面データを表示制御部３０２に送る。表示制御部３０２は受け取った画面データをＣＲＴディスプレイ（ＣＲＴ）２１０に表示させる。
【００４３】
ステップＳ４０６では、操作者により検索キーワード入力部７０１にキーワードが入力されキーワード検索ボタン６１１が押下されたことを入力部３０１が受け付けると、そのキーワードデータをデータ処理部３０４に送り、ステップＳ４０７に進む。
【００４４】
ステップＳ４０７では、データ処理部３０４は、キーワードを検索条件として合致する行を検索する。例えば、ソースコード改修時に追加・改修作業した行には、ソース行識別欄である１桁目から6桁目に日付などを記録することを通常行われているが、この日付をキーワードとして抽出する。抽出された行に対して、ステップＳ４０３で行った計数処理と同様に、手続き部以外のステップ数であるプロシージャー以外ステップ数、手続き部ステップ数であるプロシージャーステップ数などを計数する。それぞれの計数結果については、図７のプロシージャー以外ステップ数表示部７０２やプロシージャーステップ数表示部７０３に表示するべく、画面データを表示制御部３０２に送る。表示制御部３０２は受け取った画面データをＣＲＴディスプレイ（ＣＲＴ）２１０に表示させる。
【００４５】
また、追加・改修欄に"YES"が入力された行に対し、改修ステップの改造合計表示部に表示するべく、画面データを表示制御部３０２に送る。表示制御部３０２は受け取った画面データをＣＲＴディスプレイ（ＣＲＴ）２１０に表示させる。
【００４６】
なお、改修項目に対する改修ステップ数を表示することにより、操作者がコードレビュー検出件数／試験項目数を発注先所定の評価基準値をクリアさせる場合の計算値として利用することが可能となり、プログラムの品質を確保することにつながる。
【００４７】
つまり、発注先所定のコードレビュー検出件数基準値が指定されることがあり、例えば、命令1000ステップに対し20件以上のコードレビュー検出数の指定がされた場合に当該プログラムに課せられたコードレビュー検出数を割り出す事が容易に可能となる。
【００４８】
また、発注先所定の試験項目数基準値指定で、例えば、命令1000ステップに対し100項目以上の試験項目数の指定がされた場合に当該プログラムに課せられた試験項目数を割り出す事が容易に可能となる。
【００４９】
さらに、データ処理部３０４は、改修行を抽出し表示する画面データを作成する。この処理は、検索キーワードとソースコード行のソース行識別欄の１桁目から6桁目が同じものを表示対象とし、違う行を非表示行の設定を行って改修した行のみを表示させる処理である。図８は改修行のみ対象として表示させた一例を示す図である。改修行のみ表示を行う事によりコードレビュー／試験項目入力作業を行う操作者にとり、指摘漏れや試験項目漏れを効率的に防ぐ事が可能となる。つまり、この処理により、操作者はソースコード全体と追加・改修された部分を比較しながらコードレビュー表および試験項目入力作業を行うことができるので、作業の効率化を図ることが可能となる。
【００５０】
ステップＳ４０８では、表示切替ボタン６１０のいずれかが押下されたことを入力部３０１が受け付けると、その表示切替指示をデータ処理部３０４に送り、ステップＳ４０９に進む。
【００５１】
ステップＳ４０９では、データ処理部３０４は、受け取った表示切替指示データに基づき、表示項目判定し、ソースコード行やコードレビュー表および試験項目表の表示または非表示を判定し、画面データを作成する。
【００５２】
例えば、経路分岐表示ボタン６１３が押下されたことで表示切替指示データが経路分岐指示であれば、分岐行を抽出し表示する画面データを作成する。この処理は、ソースコード行のIF、THEN、ELSE、EVALUATE、WHEN等の分岐コードを持つ行のみを表示対象とし、違う行を非表示行の設定を行って分岐コード行のみを表示させる処理である。図９は分岐行のみ対象として表示させた一例を示す図である。経路分岐のみ表示を行う事によりコードレビュー／試験項目入力作業を行う操作者にとり、指摘漏れや試験項目漏れを防ぐ為の注意喚起を行う事が可能となる。つまり、この処理により、操作者はソースコード全体から経路分岐に対する複雑性／問題性を把握するよりも、対象行を認識しやすいことから、より精度よく複雑性／問題性を把握することが可能となる。
【００５３】
また、ステップ４０９で、コードレビューボタン６１４が押下されたことで表示切替指示データがコードレビュー表示指示であれば、コードレビュー表を抽出し表示する画面データを作成する。この処理は、コードレビュー列に注目できるように試験項目表示部６０４の試験項目列を非表示列として非表示とする画面データを作成する。コードレビュー表への入力作業を行う操作者にとり、コードレビュー表作成時には試験項目表示部６０４を非表示とすることで簡易な画面となり、操作性を良くすることが可能となる。つまり、この処理により、操作者はソースコードとコードレビュー列との比較参照が容易になり、作業の効率化を図ることが可能となる。
【００５４】
また、ステップ４０９で、入力部表示ボタン６１５が押下されたことで表示切替指示データがコードレビュー入力行表示指示であれば、コードレビューにデータが存在する行を抽出し表示する画面データを作成する。この処理は、コードレビュー入力行を表示対象とし、試験項目表示部６０４の試験項目列を非表示列として非表示にする処理である。図１０はコードレビュー入力行を対象として表示させた一例を示す図である。コードレビュー入力行表示を行う事によりコードレビュー入力作業を行う操作者にとり、コードレビュー入力有り行のみ表示させる事によりレビュー内容の把握を容易にすることができる。つまり、この処理により、操作者はソースコード全体からコードレビュー入力行確認作業を行うよりも、対象行を認識しやすいことからより精度よく複雑性／問題性を把握することが可能となる。
【００５５】
また、ステップ４０９で、試験項目ボタン６１６が押下されたことで表示切替指示データが試験項目表示指示であれば、試験項目表を抽出し表示する画面データを作成する。この処理は、試験項目列を表示対象とし、コードレビュー表示部６０３のコードレビュー列を非表示列として非表示にする処理である。図１１は試験項目列を対象として表示させた表示させた一例を示す図である。試験項目列入力作業を行う操作者にとり、試験項目表作成時にはコードレビュー表示部６０３が非表示とすることで簡易な画面となり、操作性を良くすることが可能となる。つまり、この処理により、コードレビュー列表示機能と同様で、操作者はソースコードと試験項目列との比較参照が容易になり、作業の効率化を図ることが可能となる。
【００５６】
また、ステップ４０９で、入力部表示ボタン６１７が押下されたことで表示切替指示データが試験項目入力行表示指示であれば、試験項目にデータが存在する行を抽出し表示する画面データを作成する。この処理は、試験項目入力行を表示対象とし、表示画面６００のコードレビュー表示部６０３を非表示列として非表示にする処理である。図１２は試験項目入力行を対象として表示させた一例を示す図である。試験項目入力作業を行う操作者にとり、試験項目入力有り行のみ表示させる事で、より試験項目の内容の把握を容易にすることができる。つまり、この処理により、操作者はソースコード全体から試験項目入力行確認作業を行うよりも、対象行を認識しやすいことからより精度よく確認作業を行うことが可能となる。
【００５７】
このような処理を繰り返しながら、操作者からのコードレビュー表や試験項目表への担当名やコメントの入力指示を受け付け、記録することで作成する。
【００５８】
ステップＳ４１０では、登録ボタン６１８が押下されたことを入力部３０１が受け付けると、登録指示をデータ処理部３０４に送り、ステップＳ４１１に進む。
【００５９】
ステップＳ４１１では、データ処理部３０４は、データ記憶部３０３に単体試験作業ファイルとして記憶する。また、コードレビュー表示部６０３に表示されていた形式でコードレビュー表を作成し、データ記憶部３０３に記憶する。さらに、試験項目表示部６０４に表示されていた形式で試験項目表を作成し、データ記憶部３０３に記憶する。
【００６０】
なお、このとき、データ処理部３０４は、コードレビュー表および試験項目表を印刷するために、印刷制御部３０５に印刷データを送る。印刷制御部３０５は受け取った印刷データをプリンターにネットワーク１０３を介して送信し、印刷を指示する。
図１４は、コードレビュー表を印刷した結果の一例を示す図である。
また、図１５は、試験項目表を印刷した結果の一例を示す図である。
ステップＳ４１２では、終了指示があるまでステップＳ４０６に戻り処理を繰り返す。
【００６１】
上記説明においては、ステップS５０１でおこなった判断で、新規のソースコードを評価する場合の処理を説明した。次に、一度評価したことのあるソースコード、例えばレビューでの指摘事項を反映した修正版のソースコードを再評価する場合や確認者が開発担当者の作成した、コードレビュー表や試験項目表の確認作業を行う場合の処理について説明する。
【００６２】
図４のステップＳ４０１では、修正版のソースコードを評価する場合なので、修正版ソースコードファイル３３５を読み込むのとともに、単体試験作業ファイル３３４も先の評価結果のファイルを読み込む。
【００６３】
ステップＳ５０１では、新規のソースコードを評価するのか、修正版のソースコードを評価するのかを判断するが、ここでは修正版のソースコードを評価するということで、ステップＳ５０３に進む。
【００６４】
ステップＳ５０３では、データ処理部３０４は読み込んだ修正版ソースコードの表示データを表示制御部３０２に送る。表示制御部３０２は受け取った画面データをＣＲＴディスプレイ（ＣＲＴ）２１０に表示させる。画面例を図１３に示す。なお、ソースコード表示部６０２には先に評価したソースコードを表示し、修正版ソースコード表示部６０５には今回比較対象として参照する修正版ソースコードを表示する。
【００６５】
ステップＳ５０４、さらにステップS５０５では、さらに、上述したステップＳ４０９の処理を行ない、操作者からの指示を受け付け結果欄へのデータ記録や、確認者の記録処理を行ないコードレビュー表と試験項目表とを作成する。
【００６６】
このように、先のソースコードとコードレビューの結果と修正版ソースコードとを比較可能に表示することで、コードレビュー表の作成を行う操作者にとって、ソースコードに対するレビューを容易にし、加えてコードレビューでの指摘事項が修正版ソースコードに反映されているかの確実な確認をも容易にすることが可能となる。特に、確認者にとっては、確認作業が容易になるのとともに、より確実になる。
【００６７】
上記実施形態によれば、  開発担当者などの負荷を軽減し、品質を確保しながらコードレビュー表および試験項目表を作成することができる単体試験支援装置、方法及びプログラムを提供することが可能となる。
【００６８】
また、本発明の目的は、以下の処理を実行することによっても達成される。即ち、上述した実施形態の機能を実現するソフトウェアのプログラムを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムを読み出す処理である。この場合、記憶媒体から読み出されたプログラム自体が前述した実施の形態の機能を実現することになり、そのプログラム及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【００６９】
また、プログラムを供給するための記憶媒体としては、次のものを用いることができる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリーカード、ＲＯＭ等である。または、プログラムをネットワークを介してダウンロードしてもよい。
【００７０】
また、コンピュータが読み出したプログラムを実行することにより、上記実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【００７１】
更に、前述した実施形態の機能が以下の処理によって実現される場合も本発明に含まれる。即ち、記憶媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリーに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行う場合である。
【００７２】
また、コンピュータが読み出したプログラムを実行することにより、前述した各実施の形態の機能が実現される場合も本発明に含まれる。加えて、そのプログラムの指示に基づき、コンピュータ上で稼働しているＯＳなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現する場合も含まれる。この場合、上記プログラムは、該プログラムを記憶した記憶媒体から直接、またはインターネット、商用ネットワーク、若しくはローカルエリアネットワーク等に接続された不図示の他のコンピュータやデータベース等からダウンロードすることにより供給される。
【００７３】
上記プログラムの形態は、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳ（オペレーティングシステム）に供給されるスクリプトデータ等の形態から成ってもよい。
【符号の説明】
【００７４】
１０１  単体試験支援装置
１０２  プリンター
１０３  ネットワーク
３０１  入力部
３０２  表示制御部
３０３  データ記憶部
３０４  データ処理部
３０５  印刷制御部
【図１】
2011134270.tif 000003
【図２】
2011134270.tif 000004
【図３】
2011134270.tif 000005
【図４】
2011134270.tif 000006
【図５】
2011134270.tif 000007
【図６】
2011134270.tif 000008
【図７】
2011134270.tif 000009
【図８】
2011134270.tif 000010
【図９】
2011134270.tif 000011
【図１０】
2011134270.tif 000012
【図１１】
2011134270.tif 000013
【図１２】
2011134270.tif 000014
【図１３】
2011134270.tif 000015
【図１４】
2011134270.tif 000016
【図１５】
2011134270.tif 000017
【図１６】
2011134270.tif 000018