(57)【要約】【課題】  多くのプログラムのバグ特性を把握し、その結果からテスト観点を容易に且つ効率的に作成すること【解決手段】  バグが発生した各プログラムのチェックリスト密度、バグ密度の目標値と実績値の乖離幅を算出する第一工程と、算出された乖離幅に基づきテスト観点の作成を対象とするプログラムを抽出する第二工程と、抽出された各プログラムについてバグ票毎の評点が算出される第三工程と、算出されたバグ作込技術的原因コードおよびバグ作込動機的要因コードの評点に対して評点の多い順にランク付けを行う第四工程と、ランク付けされた件数をコード毎に集計して合計件数が多い順にテスト観点の優先順位を設定する第五工程と、前記バグ作込技術的原因コードおよびバグ作込動機的要因コードの各コードについて、評点が高い順にプログラムを並べ替える第六工程とを有するものである。【選択図】  図２ 
2005107561.tif 000002
【特許請求の範囲】
【請求項１】
各プログラムで発生したバグの情報が記録されたバグ票一覧と、各プログラムの品質管理表一覧に記録された情報に基づいてテスト観点を作成するテスト観点作成支援方法であって、
バグが発生した各プログラムのチェックリスト密度、バグ密度の目標値と実績値の乖離幅を算出する第一工程と、
算出された乖離幅に基づきテスト観点の作成を対象とするプログラムを抽出する第二工程と、
抽出された各プログラムについてバグ票毎の評点が算出される第三工程と、
算出されたバグ作込技術的原因コードおよびバグ作込動機的要因コードの評点に対して評点の多い順にランク付けを行う第四工程と、
ランク付けされた件数をコード毎に集計して合計件数が多い順にテスト観点の優先順位を設定する第五工程と、
前記バグ作込技術的原因コードおよびバグ作込動機的要因コードの各コードについて、評点が高い順に全対象プログラムを並べ替える第六工程と、
を有することを特徴とするテスト観点作成支援方法。
【請求項２】
各プログラムで発生したバグの情報が記録されたバグ票一覧と、各プログラムの品質管理表一覧に記録された情報に基づいてテスト観点を作成するテスト観点作成支援システムであって、
バグが発生した各プログラムのチェックリスト密度、バグ密度の目標値と実績値の乖離幅を算出する乖離幅算出機能と、
前記乖離幅算出機能により算出された乖離幅に基づきテスト観点の作成を対象とするプログラムを抽出する対象プログラム抽出機能と、
前記対象プログラム抽出機能により抽出された各プログラムについてバグ票毎の評点が算出される評点算出機能と、
前記評点算出機能により算出されたバグ作込技術的原因コードおよびバグ作込動機的要因コードの評点に対して評点の多い順にランク付けを行うランク付け機能と、
前記ランク付け機能によりランク付けされた件数をコード毎に集計して合計件数が多い順にテスト観点の優先順位を設定する上位ランク件数集計機能と、
前記バグ作込技術的原因コードおよびバグ作込動機的要因コードの各コードについて、評点が高い順に全対象プログラムを並べ替えるコード別プログラム順位設定機能と、
を備えたことを特徴とするテスト観点作成支援システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムの品質評価を行う際のテスト観点作成の支援を行うプログラムのテスト観点作成支援方法およびテスト観点作成支援システムに関するものである。
【背景技術】
【０００２】
ソフトウェア開発において、一般的な品質管理の手法としては、品質管理値（チェックリスト密度、バグ密度、カバレージ取得率など）の予実績管理が挙げられる。そして、この品質管理におけるバグの件数のカウントは、バグ票を記載しその件数を集計することにより行われている。このバグ票には、現象、原因、対策などバグに関する詳細な情報が記載されるが、その他にバグの現象、バグを作りこむ技術的原因および動機的要因を分析しやすくするために、各種コードが設定されている。そして、バグ件数から算出するバグ密度の予実績管理だけではなく、この各種コードを集計、分析することにより、プログラムの定性的な評価が実施されている。
【０００３】
ここで、ソフトウェア開発においては、開発するプログラム本数は、各開発プロジェクトの内容により異なるが、数百本や数千本に達し、場合によっては数千本以上になることもある。そして、その多くのプログラムの中から品質に問題のあるプログラムを抽出することは、既存の予実績管理で行うことが可能である。
【０００４】
しかしながら、プログラムの品質を向上させるためにどのようなテスト観点を設定してテスト作業を行えば良いかを容易に示すことは、予実績管理ではできないといった問題があった。多くのプログラムの多岐にわたるバグ傾向からテスト観点を絞り込むことは非常に困難であるが、多くのプログラムのバグ特性を把握したテスト観点を作成することが、ソフトウェア開発における作業の効率化の実現には必要不可欠である。そして、上記問題を解決すべく下記先行技術文献に記載の発明がある。
【特許文献１】特開２００３−５８３７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記先行技術文献に記載の発明では、入力する情報（標準テスト項目、プログラム機能等）が数種類に及ぶため、その情報を収集して入力する工数を減少させるという点で改善の余地があると言える。また、この点を改善することにより、一層の作業の効率化が実現可能となる。
【０００６】
本発明の目的は、多くのプログラムのバグ特性を把握し、その結果からテスト観点を容易に且つ効率的に作成するためのテスト観点作成支援方法およびテスト観点作成支援システムを提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明のテスト観点作成支援方法は、各プログラムで発生したバグの情報が記録されたバグ票一覧と、各プログラムの品質管理表一覧に記録された情報に基づいてテスト観点を作成するテスト観点作成支援方法であって、バグが発生した各プログラムのチェックリスト密度、バグ密度の目標値と実績値の乖離幅を算出する第一工程と、算出された乖離幅に基づきテスト観点の作成を対象とするプログラムを抽出する第二工程と、抽出された各プログラムについてバグ票毎の評点が算出される第三工程と、算出されたバグ作込技術的原因コードおよびバグ作込動機的要因コードの評点に対して評点の多い順にランク付けを行う第四工程と、ランク付けされた件数をコード毎に集計して合計件数が多い順にテスト観点の優先順位を設定する第五工程と、前記バグ作込技術的原因コードおよびバグ作込動機的要因コードの各コードについて、評点が高い順に全対象プログラムを並べ替える第六工程とを有するものである。
【０００８】
また、本発明のテスト観点作成支援システムは、各プログラムで発生したバグの情報が記録されたバグ票一覧と、各プログラムの品質管理表一覧に記録された情報に基づいてテスト観点を作成するテスト観点作成支援システムであって、バグが発生した各プログラムのチェックリスト密度、バグ密度の目標値と実績値の乖離幅を算出する乖離幅算出機能と、前記乖離幅算出機能により算出された乖離幅に基づきテスト観点の作成を対象とするプログラムを抽出する対象プログラム抽出機能と、前記対象プログラム抽出機能により抽出された各プログラムについてバグ票毎の評点が算出される評点算出機能と、前記評点算出機能により算出されたバグ作込技術的原因コードおよびバグ作込動機的要因コードの評点に対して評点の多い順にランク付けを行うランク付け機能と、前記ランク付け機能によりランク付けされた件数をコード毎に集計して合計件数が多い順にテスト観点の優先順位を設定する上位ランク件数集計機能と、前記バグ作込技術的原因コードおよびバグ作込動機的要因コードの各コードについて、評点が高い順に全対象プログラムを並べ替えるコード別プログラム順位設定機能とを備えるものである。
【発明の効果】
【０００９】
本発明のテスト観点作成支援方法およびテスト観点作成支援システムによれば、前記テスト観点作成優先順位一覧と、テスト観点作成プログラム一覧とが作成されることによって、テスト担当者は、どのテスト観点からテストを行うことが効率的であり、しかも各テスト観点によるテストをどのプログラムから順に行えばよいかが把握でき、バグ特性を評価したテスト観点作成支援を容易に行うことができる。また、このようにテスト観点の設定作業の効率化が図られることとなるため、最終的には、テスト作業の効率化をも実現することが可能となる。さらに、通常作成する品質管理表一覧およびバグ票一覧に記載されているバグ関連データを入力しておけば良いため、情報を収集し入力する工数を省くことができる。
【発明を実施するための最良の形態】
【００１０】
以下、本発明のテスト観点作成支援システム１０４について図面を参照して説明する。
【００１１】
［構成］
本発明のテスト観点作成支援システム１０４は、テスト実施者がこのテスト観点作成支援システム１０４に、各プログラムの品質管理値を記録した品質管理表一覧１０１と、各プログラムのバグ票の一覧を記録したバグ票一覧１０２とに記載されているバグ関連データを入力することで、テスト担当者マシン１０３からの入力指示に基づき、このテスト観点作成支援システム１０４の各種機能によって、図９のような構成の後述のテスト観点作成優先順位一覧１０５と、図１０のような構成の後述のテスト観点作成プログラム一覧１０６とを出力するものである。ここで、このテスト観点作成支援システム１０４の各種機能とは、バグが発生した各プログラムのチェックリスト密度、バグ密度の目標値と実績値の乖離幅を算出する乖離幅算出機能と、乖離幅に基づきテスト観点の作成を対象とするプログラムを抽出する対象プログラム抽出機能と、抽出された各プログラムについてバグ票毎の評点が算出される評点算出機能と、算出されたバグ作込技術的原因コードおよびバグ作込動機的要因コードの評点に対して評点の多い順にランク付けを行うランク付け機能と、ランク付けされた件数をコード毎に集計して上位１位から３位までの合計件数が多い順にテスト観点の優先順位を設定する上位ランク件数集計機能と、バグ作込技術的原因コードおよびバグ作込動機的要因コードの各コードについて、評点が高い順にプログラムを並べ替えるコード別プログラム順位設定機能と、である。
【００１２】
また、前記品質管理表一覧１０１は、例えば図５のように、各プログラムの開発規模、開発言語、チェックリスト件数、チェックリスト密度、バグ件数、バグ密度といった各項目からなる構成となっており、前記バグ票一覧１０２は、例えば図４のように、各プログラムにおいて発生した全てのバグの発生日、バグの内容コメント（現象、原因、対策）、各種バグ票コード（重要度コード、現象コード、不良形態コード、バグ作込技術的原因コード、バグ作込動機的要因コード）原因判明日、対策完了日といった各項目からなる構成となっている。尚、この各種バグ票コードは、例えば図３のように設定されているものである。
【００１３】
［処理手順］
以下、本発明のテスト観点作成支援システムによる処理について具体的な説明を行う。
【００１４】
まず、本システムを用いたテスト観点作成処理を行う前に、テスト担当者は、プログラムでバグが発生した場合には通常、１件毎にバグ票を起票する。このとき、このバグ票にはバグの発生日、現象、原因、対策などの詳細な文章を記録すると共に、前記各種バグ票コード（重要度コード、現象コード、バグ作込技術的原因コード、バグ作込動機的要因コード、不良形態コード）をも併せて記録する。そしてテスト担当者は、１件毎に起票したバグ票を一覧にまとめた図４のようなバグ票一覧を作成し、本システムに入力する。
【００１５】
そして、前記バグ票およびバグ票一覧を作成すると共に、テスト担当者は、図５のような品質管理表一覧を作成し、プログラム毎に、開発規模、チェックリスト件数、バグ件数の各目標値および実績値と、チェックリスト密度、バグ密度を本システムに入力する。
【００１６】
こうして品質管理表一覧およびバグ票一覧に記載されているバグ関連データが入力された状態で、本システムによる処理が行われる。
【００１７】
まず、本システムでは、前記乖離幅算出機能により、プログラム毎にチェックリスト密度、バグ密度の目標値と実績値の乖離幅が算出され、続いて、前記対象プログラム抽出機能により、上述のように算出された乖離幅に基づいて、テスト観点の作成を対象とするプログラムの抽出処理が行われる（ステップ２０１）。尚、この抽出処理において参照されるプログラム抽出条件は、テスト実施者によりテスト担当者用マシンから入力され、例えば図６のように設定されるものである。よってテスト担当者は、例えば「チェックリスト密度の乖離幅が±２５％以上で、且つバグ密度の乖離幅が±５０％以上のプログラムを抽出する」というように抽出条件を設定することができる。尚、全プログラムを抽出対象にするような抽出条件を設定入力ことも可能である。
【００１８】
そして、抽出条件に基づく抽出処理により抽出されたプログラム毎に、前記評点算出機能により、バグ票一覧を入力情報としてバグ票毎に評点が算出される（ステップ２０２）。ここで、この評点は、バグ票のバグ作込技術的原因コード、バグ作込動機的要因コードに対してコード毎に算出されるものとする。また、この評点は、図７のように重要度コードおよび不良形態コードについて予め設定された重み付け係数を乗じて算出され、その結果、コード毎の重み付けがなされる。
【００１９】
以下、この評点の算出手順について、バグ票に以下のコードが設定されていた場合を一例として説明する。
【００２０】
［バグ票コード一例］
重要度コード  ：Ａ
不良形態コード：新規不良
バグ作込技術的原因コード：判定処理不正
バグ作込動機的要因コード：業務仕様理解不足
【００２１】
この場合、重要度コードが「Ａ」なので、バグ票１件に対して係数５を乗じて評点５が算出される。また、不良形態コードが「新規不良」なので、評点５に対して係数１を乗じる。この結果、このバグ票の評点は５と算出され、バグ作込技術的原因コードの「判定処理不正」は評点５となる。また同様に、バグ作込動機的要因コードの「業務仕様理解不足」も評点５となる。
【００２２】
このようにして、抽出した全プログラムの全てのバグ票について評点算出処理が行われると、前記評点算出機能により、抽出した全プログラムについて、バグ作込技術的原因コード、バグ作込要因コードの各コードにおける評点が集計される。
【００２３】
こうしてプログラム毎に算出されたバグ作込技術的原因コードの評点に対し、前記ランク付け機能により、例えば図８のように、評点の多い順にランク付けが行われ、上位３位以内のコードに対してランクを示す印（例えば、１位のコードには◎、２位のコードには○、３位のコードには△、等）が付与される（ステップ２０３）。また、プログラム毎に算出したバグ作込動機的要因コードの評点に対しても、上述のバグ作込技術的原因コードの場合と同様のランク付け処理および印付け処理が行われる（ステップ２０４）。
【００２４】
そして、以上のようなランク付け処理および印付け処理が、抽出した全てのプログラムに対して行われると（ステップ２０５）、前記上位ランク件数集計機能により、各プログラムにランク付けされた件数が、バグ作込技術的原因コードのコード毎に集計され、さらに上位１位から３位までの順位ごとの件数と、上位１位から３位までの合計件数とが集計される。そして、集計したコードの合計件数が多い順に、テスト観点及び見直し観点作成における優先順位が設定される（ステップ２０６）。また、バグ作込動機的要因コードに対しても、同様の集計処理および優先順位の設定処理が行われる（ステップ２０７）。こうして算出・設定された結果は、図９のようなテスト観点作成優先順位一覧として出力される（ステップ２０８）。
【００２５】
この図９のバグ作込技術的原因コード別のテスト観点作成優先順位一覧によれば、上位１位から３位までの合計件数が最も多かった「処理抜け」についてのテストを一番目に行い、二番目には「カウンタ処理不正」についてのテストを行うべきである、といったテスト観点が示唆されることとなる。また、バグ作込動機的要因コード別のテスト観点作成優先順位一覧によれば、上位１位から３位までの合計件数が最も多かった「仕様不明確」についてのテストを一番目に行い、二番目には「共通モジュール理解不足」についてのテストを行うべきである、といったテスト観点が示唆されることとなる。
【００２６】
また、前記コード別プログラム順位設定機能により、上述の如く算出された各コードにおける評点および設定された優先順位に基づき、バグ作込技術的原因コードおよびバグ作込動機的要因コードの各コードについて評点が高い順にプログラムを並べて表示したテスト観点作成プログラムが、図１０のようなテスト観点作成プログラム一覧として出力される（ステップ２０８）。
【００２７】
この図１０のバグ作込技術的原因コード別のテスト観点作成プログラム一覧によれば、優先順位１位の「処理抜け」についてのテストを行う際には、プログラムＡについて最初に行い、その後、プログラムＢ、プログラムＦ、プログラムＪ、プログラムＥ…と順次行えばよい、ということが示唆されることとなる。また、優先順位２位の「カウンタ処理不正」についてのテストを行う際には、プログラムＢについて最初に行い、その後、プログラムＦ、プログラムＡ、プログラムＥ、プログラムＣ…と順次行えばよい、ということが示唆されることとなる。
【００２８】
以上のように本システムによれば、前記テスト観点作成優先順位一覧と、テスト観点作成プログラム一覧とが作成されることによって、テスト担当者は、どのテスト観点からテストを行うことが効率的であり、しかも各テスト観点によるテストをどのプログラムから順に行えばよいかが把握できるため、テスト観点の設定作業の効率化が図られることとなり、最終的には、テスト作業の効率化をも実現することが可能となる。また、通常作成する品質管理表一覧およびバグ票一覧に記載されているバグ関連データを入力しておけば良いため、情報を収集し入力する工数を省くことができる。
【図面の簡単な説明】
【００２９】
【図１】本発明のテスト観点作成支援システムの全体概略構成図である。
【図２】本発明のテスト観点作成支援システムを用いたテスト観点作成の処理手順を示すフローチャートである。
【図３】バグ票に記す各コードの設定例を示す図である。
【図４】本発明のテスト観点作成支援システムで入力するバグ票一覧の入力例を示す図である。
【図５】本発明のテスト観点作成支援システムで入力する品質管理表一覧の入力例を示す図である。
【図６】対象プログラムを抽出するための抽出条件の設定例を示す図である。
【図７】バグ票の各コードの重み付け係数の設定例を示す図である。
【図８】バグ票の各コードのランク付けおよび印付けの一例を示す図である。
【図９】本発明のテスト観点作成支援システムが出力する帳票（テスト観点作成優先順位一覧）の出力例を示す図である。
【図１０】本発明のテスト観点作成支援システムが出力するテスト観点作成プログラム一覧の出力例を示す図である。
【符号の説明】
【００３０】
１０１…品質管理表一覧ファイル、１０２…バグ票一覧ファイル、１０３…テスト担当者用マシン、１０４…テスト観点作成支援システム、１０５…、テスト観点作成優先順位一覧１０６…テスト観点作成プログラム一覧、３０１…バグ票コード、４０１…バグ票一覧、５０１…品質管理表一覧、６０１…プログラム抽出条件表、９０１…テスト観点作成優先順位一覧（バグ作込技術的原因コード別）、９０２…テスト観点作成優先順位一覧（バグ作込動機的要因コード別）、１００１…テスト観点作成プログラム一覧（バグ作込技術的原因コード別）、１００２…テスト観点作成プログラム一覧（バグ作込動機的要因コード別）。
【図１】
2005107561.tif 000003
【図２】
2005107561.tif 000004
【図３】
2005107561.tif 000005
【図４】
2005107561.tif 000006
【図５】
2005107561.tif 000007
【図６】
2005107561.tif 000008
【図７】
2005107561.tif 000009
【図８】
2005107561.tif 000010
【図９】
2005107561.tif 000011
【図１０】
2005107561.tif 000012