(57)【特許請求の範囲】
【請求項１】
実行されたテスト項目を一意に特定する情報であるテスト項目識別情報と、
テストの結果が合格か不合格かを示す情報である実施結果と、
当該テストの対象となったプログラムのバージョンと、
当該テストが実行された日付である実施日と
を有するテスト結果情報を記憶する記憶手段と、
複数のテスト結果情報をバージョン毎及びテスト項目に分類し、各バージョンの順序情報を決定し、この順序情報に基づいて、バージョンごとに分類された複数のテスト結果情報の並び変えを行い、グラフの表示に用いる集計値を算出し、同一バージョンに対して行われたテストのテスト結果情報が有する実施日のうち最先のものを、そのバージョンの順序情報として付与する第１の処理手段と、
前記集計値に基づいてグラフを表示させるために必要なデータを生成する第２の処理手段と
を有することを特徴とする、テスト管理装置。
【請求項２】
前記第１の処理手段は、同一バージョンについて同一テスト項目について行われた複数のテスト結果情報から集約化テスト結果情報を生成して元となったテスト結果情報に置き換える集約手段を備え、
この集約手段は、同一バージョンについて同一テスト項目について行われた複数のテスト結果情報の実施結果が全て合格であれば、集約化テスト結果情報の実施結果を合格にし、複数のテスト結果情報の実施結果のいずれか一つ以上が不合格であれば、集約化テスト結果情報の実施結果を不合格にする
ことを特徴とする、請求項１に記載のテスト管理装置。
【請求項３】
前記集計値は、
各バージョンの不合格の検出数を、順序情報が古いものから新しいものへと累積させた個数である累積不合格数、
各バージョンでの不合格の修正数を順序情報が古いものから新しいものへと累積させた個数である累積修正数、及び
各バージョンにおけるテストの実施数であるテスト実施数の少なくとも一つを含むことを特徴とする、請求項１又は２に記載のテスト管理装置。
【請求項４】
前記集計値は、
各バージョンにおける不合格のまま修正されていないテスト項目の数である不合格テスト項目数、
各バージョンにおける合格しているテスト項目の数である合格テスト項目数、
各バージョンについて未だ実施していないテスト項目の数である未実施テスト項目数、及び
順序情報が古いバージョンで実施結果が合格だったテスト項目が、該当するバージョンにおいてそのテスト項目の実施結果が不合格となった、テスト項目の数であるデグレード数
の少なくとも一つを含む
ことを特徴とする、請求項１又は２に記載のテスト管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書に記載の実施の形態は、テスト管理装置に関する。
【背景技術】
【０００２】
従来のテスト管理システムでは、テスト結果を登録し、テスト結果から進捗確認や今後の方針付けを行うための情報を提供することが行われていた。提供される情報は、システム管理システムに登録された順序で、テスト合格数やテスト不合格数を集計し、現在の状況や傾向を表示するものであった。また、従来のテスト管理システムは最新の合格件数・不合格件数・未実施件数を集計し、状況を表示するものもある。
【０００３】
従来のテスト管理システムでは、複数人のテスト担当者が、ソフトウェアのバージョンが変わる度にテストを行い、複数回の結果を登録するのが通常である。このようなテスト実施体制では、複数人でテスト結果を登録するため、テスト結果の登録順序が逆転することがある。例えば、v1.1の結果の後に、その前のバージョンのv1.0のテスト結果を登録することが生じうるのである。また、複数人でテスト結果を登録するため、テスト結果が重複することがある。例えば、Ａさんがあるバージョンについてのテスト結果を登録したのち、Ｂさんも同一バージョンのテスト結果を登録することが起こりえた。
【０００４】
従来のテスト管理システムにおいて、登録したテスト結果を選別せずに、登録した順序や登録日で集計をした場合に、下記の問題が発生することがある。
問題点１．
順序が逆転したテスト結果をそのまま集計すると、不合格の結果が合格の結果で上書きされ、正しいテスト状況（合格数や不合格数）が表示されない。例えば、同一のテスト項目に対して、先にバージョンv1.2の結果（不合格）を登録し、そのあとで前バージョンv1.1の結果（合格）が登録されることで、最新結果（v1.2）では不合格にも関わらず、テスト管理システムによる表示は、後に登録したv1.1の結果（合格）になってしまう。
問題点２．
１件の不合格が複数回の不合格として集計されてしまい、正確な不合格の増加傾向や減少傾向が把握できない。例えば、同一のテスト項目に対して、同一バージョンの結果として複数人で不合格を登録すると、不合格数は複数回カウントされ実際発生している不合格以上に、テスト管理システムによってカウントされる不合格数が増えてしまう。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−２５９１２０号公報
【特許文献２】特開平９−２１２３９２号公報
【特許文献３】特開２００８−２１２９６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明は、テストの状況をより適切に把握できるグラフに表示する技術を提供することにある。
【課題を解決するための手段】
【０００７】
一の実施の形態は、テスト管理装置として提案される。このテスト管理装置は、記憶手段、第１の処理手段、第２の処理手段を有し、バージョン毎に分類したテスト結果をグラフに表示している。
記憶手段は行われたテストごとに入力されるテスト結果情報を複数記憶している。各テスト結果情報は、実行されたテスト項目を一意に特定する情報であるテスト項目識別情報と、テストの結果が合格か不合格かを示す情報である実施結果と、テストの対象となったプログラムのバージョンとを有している。
【０００８】
第１の処理手段は、複数のテスト結果情報をバージョン毎及びテスト項目に分類し、各バージョンの順序情報を決定し、この順序情報に基づいて、バージョンごとに分類された複数のテスト結果情報の並び変えを行い、グラフの表示に用いる集計値を算出する。
第２の処理手段は、前記集計値に基づいてグラフを表示させるために必要なデータを生成する。
【図面の簡単な説明】
【０００９】
【図１】テスト実施システムの構成例を示すブロック図
【図２】登録されたテスト結果情報の例を示す図
【図３】図２に示した６つのテスト結果情報を分類した状態を示す図
【図４】テスト結果情報の集約の例を示す図
【図５】２つのテスト結果情報から集約化テスト結果情報が生成される例を示す図
【図６】２つのテスト結果情報から集約化テスト結果情報が生成される例を示す図
【図７】テスト管理装置によって用意される累積不合格グラフの例を示す図
【図８】テスト管理装置によって提供される進捗グラフの例を示す
【図９】テスト管理装置の構成例を示す機能ブロック図
【図１０】テスト項目情報のデータ構成例を示す図
【図１１】テスト結果情報のデータ構成例を示す図
【図１２】複数のテスト結果情報をテーブル形式で記憶するテスト結果テーブルの例を示した図
【図１３】テスト管理装置の主要な処理を示したフローチャート
【図１４】各テスト結果情報をテスト項目及びバージョン別に分類した結果生成されるデータの例を示す図
【図１５】順序情報の決定の例を示した図
【図１６】順序情報に従ってバージョンの並びかえを行った順序情報付き分類結果データを示す図
【図１７】集約化処理の例を示すフローチャート
【図１８】集約化処理前の並びかえ済み分類結果データを示す図
【図１９】図１８に示す並びかえ済み分類結果データの集約化処理後のデータを示す図
【図２０】累積不合格グラフのために算出された集計値が付加された、集約化後データの例を示す図
【図２１】集計値付きデータに基づいて表示される累積不合格グラフの例を示す図
【図２２】進捗グラフのために算出された集計値が付加された、集約化後データの例を示す図
【図２３】図２２に示した集計値付きデータに基づいて表示される進捗グラフの例を示す図
【図２４】累積不合格数と累積修正数の差が拡大している累積不合格グラフの例を示す図
【図２５】累積不合格数と累積修正数の差が縮小している累積不合格グラフの例を示す図
【図２６】十分にテストを行っているにもかかわらず、不合格が発生していない状況である場合の累積不合格グラフの例を示す図
【図２７】合格数の増加と未実施数及び不合格数の減少となっている状況の、進捗グラフの例を示す図
【図２８】合格数の増加と未実施数及び不合格数の減少となっている状況の、進捗グラフの例を示す図
【図２９】デグレードの発生数が増加した状況の進捗グラフの例を示す図
【図３０】にテストを長い間実施していない状況の、進捗グラフの例を示す図
【図３１】テスト項目を追加した際に、テスト追加分を実施していない状況の、進捗グラフの例を示す図
【発明を実施するための形態】
【００１０】
[用語の定義]
本明細書中で使用する用語のうち主要なものの定義を以下に掲げる。
【００１１】
[テスト]
「テスト」とは、ソフトウェアの開発において、実装したソースコード等が仕様通り動作することを確認する作業をいう。
【００１２】
[不合格]
「不合格」とは、テストを実施した結果、動作結果がテストで期待する結果にならないことをいう。不合格の原因は、ソースコード等の不具合であり、不合格と後述する不具合とは区別する。
【００１３】
[不具合]
「不具合」とは、ソースコード等の誤りをいう。欠陥やバグとも表現されることがある。「不具合」がテストの不合格の原因となる。
【００１４】
[デグレード]
「デグレード」とは、ソフトウェアの変更を行った後、一度テストに合格しているテスト項目を再度テストした際に、不合格になることをいう。
【００１５】
[テスト項目]
「テスト項目」とは、テストの実施の単位。１つのテスト項目には、チェックポイントや実施手順、期待する値などを記録する。なお、従来技術においては、「テストケース」と表現される場合もある。
【００１６】
[実施結果]
「実施結果」とは、テスト項目についてテストを実施した際の記録をいう。実施結果は、合格又は不合格のいずれかであり、後述するテスト結果情報に含まれる、テスト結果情報には、他に日付やバージョンなどの情報も同時に記録される。
【００１７】
[バージョン]
「バージョン」とは、テスト対象のソフトウェアと実施結果を対応付ける属性をいう。ユーザは、「バージョン」を元に、どの構成でテストを実施しているか把握することができる。ソフトウェアのビルドNoや、構成管理システムのリビジョンNo、マイルストーン毎につけるタグ（β版やRC版）などは、バージョンに相当する。なお、本実施の形態では、実施結果はバージョンに対して一意に定まるものとする。
【００１８】
[実施の形態]
以下、図面を参照して本発明の実施の形態に係るテスト実施システム及びテスト管理装置を説明する。
【００１９】
[テスト実施の概要]
まず、本実施の形態に係るテスト管理装置を用いたテスト実施システムの構成例、及び動作例について述べる。
図１は、テスト実施システムの構成例を示すブロック図である。テスト実施システム１０は、構成管理装置２０と、テスト管理装置３０と、構成管理装置２０及びテスト管理装置３０と通信可能な入出力端末装置４０とを有する。構成管理装置２０及びテスト管理装置３０と各入出力端末装置４０とは、ネットワーク５０を介して通信を確立し、データの送受信を行うことができるように構成される。
【００２０】
構成管理装置２０は、テストの対象となるソースコード又はプログラムなど（以下、単に「ソースコード」と略す）を、バージョンの変更が行われる毎にそのバージョンのソースコードを記憶し、入出力端末装置４０から指定されたバージョンのソースコードを入出力端末装置４０に送信し、入出力端末装置４０においてソースコードを実行を可能とする。
【００２１】
構成管理装置２０は、演算処理装置（ＣＰＵ）、主メモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、入出力装置（Ｉ／Ｏ）、必要な場合にはハードディスク装置等の外部記憶装置を具備している情報処理装置、或いはそのような情報処理装置を含む装置であって、例えばコンピュータ、ワークステーションなどである。
【００２２】
入出力端末装置４０は、構成管理装置２０からテスト対象としたいバージョンのプログラム（コンパイル前であるか、コンパイル後であるかは問わない。また、コンピュータの命令語の集合であればどのような称呼のものも含む。）をダウンロードし、テスト管理装置３０から前記ダウンロードしたバージョンに対して行うテスト項目の情報を取得し、テスト項目の内容に従って、ダウンロードしたバージョンに指定された処理を実行させ、この実行結果に基づいてテスト結果を生成し、テスト結果をテスト管理装置３０に送信し、テスト管理装置３０からバージョン毎に分類したテスト結果をテストの状況を把握できるグラフを受信し、これをユーザ（オペレータ、テスト実行者、管理者など）のために閲覧させる機能を有する。
【００２３】
入出力端末装置４０は、演算処理装置（ＣＰＵ）、主メモリ（ＲＡＭ）、読出し専用メモリ（ＲＯＭ）、入出力装置（Ｉ／Ｏ）、必要な場合にはハードディスク装置等の外部記憶装置を具備している情報処理装置、或いはそのような情報処理装置を含む装置であって、例えばコンピュータ、携帯電話機、いわゆるインターネット家電、テスト専用端末装置などである。
【００２４】
テスト管理装置３０は、テスト項目の内容に従って、ダウンロードしたバージョンに指定された処理を実行させ、この実行結果に基づいて生成されたテスト結果を入出力端末装置４０から受信し、受信したテスト結果を記憶し、記憶したテスト結果を基に、同一テスト項目に対する複数回のテスト結果が存在する場合、これらを集約して単一のテスト結果を生成し、且つバージョンの順序を元に、テスト結果の順序を修正する。
【００２５】
テスト管理装置３０は、バージョンを元に、複数回のテスト結果の集約と順序の補正を行う機能を有する。テスト管理装置３０は、記憶されたテスト結果を、日付に加えて「バージョン」を用いて分類する。テスト結果はバージョンに対して一意に定まるとしているため、テスト結果を分類するためにバージョンを利用する。「バージョン」は、どの時点（ソースコード/ビルド）のテスト結果か、対応付けられる属性である。例えば、「バージョン」として用いられる情報は、ビルド・ナンバー、リビジョン・ナンバー、各マイルストーンにおけるタグ(β、RC）などである。
【００２６】
また、テスト管理装置３０は、バージョン毎に分類したテスト結果を、ユーザがテストの状況を把握できる情報、例えばグラフを表示する。本実施の形態においては、テスト管理装置３０は、バージョン毎に分類したテスト結果をグラフの形式で入出力端末装置４０に表示させる機能を有する。本実施の形態では、グラフは累積不合格グラフと進捗グラフの二種類である。累積不合格グラフは、不合格の累積数と修正の累積数をテスト開始時点よりバージョン順に描画したグラフである。進捗グラフは、各バージョンでのテストの実施状況をテスト開始時点よりバージョン順に描画するグラフである。
また、テスト管理装置３０は、上記のグラフ形式での表示のほかに、複数の異なるテスト結果をテストの登録日毎に並べる表示形式や、グラフの横軸を日付でなくテストの実施日数（未実施日を省いて実施日だけで「x日目」と描画する）としたグラフ形式や、テスト実施数（実施回数を横軸にとって１００回実施した時の不合格数を表示するグラフ形式など、従来の表示形式をもユーザの選択により表示させることが可能である。
【００２７】
[テストの結果について]
ユーザは入出力端末装置４０より、1回のテストの結果について一つのテスト結果情報をテスト管理装置３０に登録できる。一つのテスト結果情報には、「テスト項目識別情報」、「実施結果」、「実施日」、「バージョン」が含まれる。「テスト項目識別情報」は、実施したテスト項目を一意に特定する情報であって例えばテスト項目ＩＤ番号（例：17）である。「実施結果」は、テストを実施した結果（合格／不合格）を示す情報であって、例えば、○(合格を示す記号）、×（不合格を示す記号）である。「実施日」は、そのテストが実施された日付であって、例えば、2010/10/03のような日付データである。「バージョン」は、テスト対象となったソフトウェアのバージョンを示す情報である（例えば、v1.1）。「バージョン」とは、どの時点のテスト結果か、対応付けられる属性である。
なお、テスト管理装置３０には、１つのテスト項目について、複数のテスト結果情報を登録できる。
【００２８】
図２に、登録されたテスト結果情報の例を示す。図２では、６つのテスト結果情報２００が登録されている。それぞれを区別するため、枝番を付してテスト結果情報２００＿１〜２００＿６と表示する。テスト結果情報２００＿１〜２００＿６のそれぞれは、「テスト項目識別情報」、「実施結果」、「実施日」、「バージョン」を有している。それぞれのテスト結果情報２００が有する「テスト項目識別情報（テスト項目ＩＤと略称する）」、「実施結果」、「実施日」、「バージョン」は図示の通りである。
【００２９】
図２に示した例では、テスト結果情報がテスト項目毎にまとめられている。テスト結果情報２００＿１及びテスト結果情報２００＿２はテストＡについてのテスト結果情報である。テスト結果情報２００＿３及びテスト結果情報２００＿４はテストＢについてのテスト結果情報である。テスト結果情報２００＿５及びテスト結果情報２００＿６はテストＣについてのテスト結果情報である。また、この例ではテストＡにテスト項目ＩＤとしてＩＤ番号：５が付与されており、テストＢにテスト項目識別ＩＤとしてＩＤ番号：１３が付与されており、テストＣにテスト項目ＩＤとしてＩＤ番号：１７が付与されている。
【００３０】
[バージョン毎の分類]
テスト管理装置３０は、全てのテスト結果情報をバージョン毎に分類し、各バージョンに順序情報を付与する。「順序情報」とは、ソフトウェアのバージョンの変更順序を示す情報である。本実施の形態では、「順序情報」として、そのバージョンについて初めてテストが行われた日が使用されるが、順序を示すその他の情報やその他の時間情報を順序情報として用いるようにしてもよい。「初めてテストが行われた日」以外の順序情報の例としては、例えば、各バージョンのリリースされた日、などである。
【００３１】
図３は、図２に示した６つのテスト結果情報２００＿１〜２００＿６をテスト管理装置３０が分類した状態を示す図である。テスト結果情報２００＿１〜２００＿６に含まれるバージョンは、「ｖ１．１」「ｖ１．２」「ｖ１．３」「ｖ１．５」の４つである。これをバージョン３００＿１〜３００＿４として図示する。バージョン３００＿１〜３００＿４には、そのバージョンに対して実施されたテストのテスト結果情報が格納される。図３に示した例では、バージョン３００＿１にはｖ１．１について実行されたテストのテスト結果情報２００＿６が格納され、バージョン３００＿２にはｖ１．２について実行されたテスト結果情報２００＿５が格納され、バージョン３００＿３にはｖ１．３について実行されたテスト結果情報２００＿１、２００＿３、２００＿４が格納され、バージョン３００＿４にはｖ１．５について実行されたテスト結果情報２００＿２が格納されることになる。
【００３２】
次に、バージョン３００＿１〜３００＿４には順序情報が付与される。順序情報は、バージョン３００＿１〜３００＿４それぞれに格納されたテスト結果情報の実施日のうち最先（最も日付が古いもの）の日付が付与される。すなわち、バージョン３００＿１の順序情報はテスト結果情報２００＿６の実施日である「2010/10/3」が順序情報として付与される。バージョン３００＿２の順序情報はテスト結果情報２００＿５の実施日である「2010/9/26」が順序情報として付与される。バージョン３００＿４の順序情報はテスト結果情報２００＿２の実施日である「2010/10/8」が順序情報として付与される。バージョン３００＿３には、３つのテスト結果情報２００＿１、２００＿３、２００＿４が含まれるので、３つのテスト結果情報２００＿１、２００＿３、２００＿４の実施日「2010/10/5」「2010/10/1」「2010/10/2」のうち最先のものである「2010/10/1」がバージョン３００＿３の順序情報として付与される。
各バージョンの順序は、順序情報に従って決定される。
【００３３】
[実施結果の集約]
テスト管理装置３０は、同一のバージョンにおいて、同じテスト項目、すなわち同一のテスト項目識別情報を有するテスト結果情報２００が複数登録されていた場合、複数のテスト結果情報を一つ(一回)のテスト結果情報に集約する。「集約する」とは、複数のテスト結果情報に代えて一つの集約化テスト結果情報を記憶する処理をいう。
【００３４】
テスト管理装置３０は、集約化テスト結果情報の実施結果を基となる複数のテスト結果情報の実施結果に基づいて決定する。具体例を挙げれば、テスト管理装置３０は、複数のテスト結果情報の実施結果が全て合格を示している場合、集約化テスト結果情報の実施結果を合格に設定し、
複数のテスト結果情報の実施結果に１つでも不合格がある場合、集約化テスト結果情報の実施結果を不合格に設定する。
【００３５】
図４は、テスト結果情報の集約の例を示す図である。図４に示した例は、図３のバージョン３００＿３「ｖ１．３」のテスト結果情報である。バージョン３００＿３「ｖ１．３」には、同一のテスト項目識別情報（この例では、テスト項目ＩＤ：１３）を有する２つのテスト結果情報２００＿３、２００＿４が集約の対象となる。残りのテスト結果情報２００＿１は、テスト項目識別情報（テスト項目ＩＤ：５）が異なるため集約の対象とはならない。
【００３６】
図５は、２つのテスト結果情報２００＿３、２００＿４から集約化テスト結果情報が生成される例を示す図である。２つのテスト結果情報２００＿３、２００＿４から一つの集約化テスト結果情報５００が生成される。集約化テスト結果情報５００は、テスト項目識別情報、実施結果、バージョンを有する。本実施の形態では、集約化テスト結果情報５００は、実施日は有さなくともよい。集約化テスト結果情報５００のテスト項目識別情報、バージョンは元となるテスト結果情報２００のものをそのまま引き継ぐ。実施結果については、一方の実施結果が合格、他方の実施結果が不合格であるので、集約化テスト結果情報５００の実施結果は不合格に設定される。
【００３７】
生成された集約化テスト結果情報５００は、２つのテスト結果情報２００＿３、２００＿４に代えてバージョン２００＿３「ｖ１．３」のテスト結果情報の一つとして格納される。
次に、複数のテスト結果情報の実施結果が全て合格である場合の、集約化テスト結果情報が生成される例を示す。図６は、２つのテスト結果情報２００＿３、２００＿４’から集約化テスト結果情報が生成される例を示す図である。テスト結果情報２００＿４’の実施結果は合格である点を除いて図５のテスト結果情報２００＿３、２００＿４の内容と同様である。図６に示す例では、複数のテスト結果情報の実施結果が全て合格を示しているので、集約化テスト結果情報６００の実施結果は合格に設定される。生成された集約化テスト結果情報６００は、２つのテスト結果情報２００＿３、２００＿４に代えてバージョン２００＿３「ｖ１．３」のテスト結果情報の一つとして格納される。
【００３８】
[テスト結果のグラフ表示]
テスト管理装置３０は、上記のテスト結果情報のバージョン毎の分類、及び集約化の後、バージョン毎に集計したテスト結果情報の内容をグラフ化する。本実施の形態では、表示可能なグラフとして、（１）累積不合格グラフ、（２）進捗グラフの２つが用意される。
【００３９】
[累積不合格グラフ]
累積不合格グラフは、ソフトウェアの品質向上の程度、不合格の修正の度合い、不合格の改善の度合いを可視化するためのグラフである。図７に、テスト管理装置３０によって提供される累積不合格グラフの例を示す。テスト管理装置３０は、バージョン毎の分類、及び集約化されたテスト結果情報(集約化テスト結果情報を含む)に基づいて、下記の情報からなるグラフである累積不合格グラフ７００を用意する。なお、累積不合格グラフ７００の横軸は日付であって、バージョンの順序情報を古い順に左から右に並べられるように設定される。累積不合格グラフ７００の縦軸は下記項目に関する個数を示す。
【００４０】
（１）累積不合格数
累積不合格数は、各バージョンの不合格の検出数を、順序情報が古いものから新しいものへと累積させた個数である。本実施の形態では折れ線７０１によって、累積不合格数がグラフ表示されている。但し、その他の表示形式によって累積不合格数を表示するようにしてもかまわない。
【００４１】
（２）累積修正数
累積修正数は、各バージョンでの不合格の修正数を順序情報が古いものから新しいものへと累積させた個数である。「修正数」は、あるバージョンのあるテスト項目において実施結果が合格である場合、そのバージョンより順序情報が古いバージョンにおける同一テスト項目の不合格の合計である。なお、順序情報が古いバージョンの実施結果に合格がある場合には、実施結果が合格であるバージョンのうち直近となるバージョンより新しい順序情報を有するバージョンの不合格数のみを合計する。本実施の形態では折れ線７０２によって、累積修正数がグラフ表示されているが、その他の表示形式によって累積修正数を表示するようにしてもかまわない。
【００４２】
（３）テスト実施数
テスト実施数は、各バージョンにおけるテストの実施数である。テストの実施数は集約化前のテスト結果情報の個数に等しい。本実施の形態では縦棒７０３によって、累積修正数がグラフ表示されているが、その他の表示形式によってテスト実施数を表示するようにしてもかまわない。
【００４３】
[進捗グラフ]
進捗グラフは、ソフトウェアの品質向上、品質や構成管理における問題点の発生、テストの実施状況、追加されたテスト項目の実施状況を可視化するためのグラフである。図８にテスト管理装置３０によって提供される進捗グラフの例を示す。テスト管理装置３０は、バージョン毎の分類、及び集約化されたテスト結果情報(集約化テスト結果情報を含む)に基づいて、下記（１）から（４）の情報からなるグラフである進捗グラフ８００を用意する。なお、進捗グラフ８００の横軸は日付であって、バージョンの順序情報を古い順に左から右に並べられるように設定される。進捗グラフ８００の縦軸は下記項目に関する個数を示す。本実施の形態では、進捗グラフ８００を積み上げ縦棒グラフの形式としたが、その他のグラフ形式で表示するようにもかまわない。
【００４４】
（１）不合格テスト項目数
不合格テスト項目数は、そのバージョンにおける不合格のまま修正されていないテスト項目の数である。本実施の形態では、縦棒の第1領域８０３として表示される。
【００４５】
（２）合格テスト項目数
合格テスト項目数は、そのバージョンにおける合格しているテスト項目の数である。本実施の形態では、縦棒の第２領域８０２として表示される。
【００４６】
（３）未実施テスト項目数
「未実施テスト項目数」は、そのバージョンのリリース時点で実施可能なテスト項目のうち、そのバージョンについて未だ実施していないテスト項目の数である。未実施のテスト項目であるか否かは、順序情報として使用された日付を基準として判断される。本実施の形態では、縦棒の第３領域８０１として表示される。
【００４７】
（４）デグレード数
「デグレード数」は、順序情報が古いバージョンで実施結果が合格だったテスト項目が、該当するバージョンにおいてそのテスト項目の実施結果が不合格となった、テスト項目の数である。
なお、本実施の形態では、デグレード数を前述の不合格テスト項目数の内数領域８０４として表示する形態としたが、このような表示形式に限定される趣旨ではない。
【００４８】
[テスト管理装置の構成例]
次に、テスト管理装置３０の構成例について説明する。図９にテスト管理装置３０の構成例を示す機能ブロック図を掲げる。テスト管理装置３０は、データ登録部９０１と、データ登録部に接続されたテスト結果記憶部９０２と、テスト項目・テスト結果記憶部９０２に接続された集計・集約部９０３と、集計・集約部９０３に接続されたグラフ生成部９０５と、集計・集約部９０３及びグラフ生成部９０５に接続された表示選択部９０４とを有している。データ登録部９０１、表示選択部９０４、グラフ生成部９０５は、ネットワーク５０を介して入出力端末装置４０のそれぞれと接続可能である。
【００４９】
ここで「接続」とは、データの授受が可能であることをいい、物理的に配線を介してつながれていることに限定されない。また、上記各構成要素は、テスト管理装置３０の主要機能を示したものであって、テスト管理装置３０がこれら構成要素に対応する機器、部品、回路、装置などを備えていることを意味するものではない。
【００５０】
テスト実施者は、あるバージョンについてあるテスト項目に従ったテストを実施し、実施した結果をテスト結果情報として入出力端末装置４０を用いて生成する。生成されたテスト結果情報は入出力端末装置４０からネットワーク５０を介してテスト管理装置３０に送信される。
【００５１】
データ登録部９０１は、テスト結果情報を受信し、受信したテスト結果情報をテスト項目・テスト結果記憶部９０２に書き込む機能を有する。
本実施の形態の記憶手段に相当するテスト項目・テスト結果記憶部９０２は、テスト項目の詳細を記述した情報である、テスト項目情報、テスト結果情報を記憶し、必要に応じて読み出し可能に記憶する機能を有する。
【００５２】
[テスト項目情報のデータ構成]
ここでテスト項目情報のデータ構成について説明する。図１０に、テスト項目情報のデータ構成例を示す。テスト項目情報１０００は、その内容としてテスト項目ＩＤ、フォルダＩＤ、タイトル、優先度、チェックポイント、テスト方法、成功条件、試験環境、タグ、特記事項、登録日、更新日、添付ファイルという要素を含んでいる。
【００５３】
テスト項目ＩＤは、テスト項目識別情報に相当する情報であって、テスト項目を一意に特定する情報である。テスト結果情報が有するテスト項目識別情報と共通である。
フォルダＩＤは、テスト項目情報の格納先を示す情報である。
タイトルは当該テスト項目の内容を示した標題である。
優先度は、そのテスト項目の実行優先順位を示す情報である。
チェックポイントは、そのテスト項目についてのテスト実行において確認すべき点に関する記述である。
テスト方法は、そのテスト項目のテスト実行において遵守すべき手順等に関する情報である。
テスト成功条件は、そのテスト項目におけるテストの実行結果を合格とする場合の条件の記述である。
試験環境は、そのテスト項目のテストを実行する場合に用いられるハードウエア、ソフトウェア環境に関する記述である。
タグは、そのテスト項目の分類や検索に使用されるラベル情報である。
特記事項は、テスト項目作成者がテスト実施者に伝えたい特別なメッセージの記述である。
登録日は、このテスト項目情報がテスト管理装置３０に登録された日付である。
更新日は、このテスト項目情報がテスト管理装置３０に登録された日後に改変等された日付である。
添付ファイルは、テストの実施に必要若しくは有用な情報を含むファイルの格納場所の記述である。例えば、実施結果が合格である場合に表示される画面内容の画像ファイルの格納場所を示すアドレスである。
【００５４】
[テスト結果情報のデータ構成]
次に、テスト結果情報のデータ構成例について説明する。図１１に、テスト結果情報のデータ構成例を示す。テスト結果情報１１００はその内容として、結果情報ＩＤ、テスト項目ＩＤ、実施結果、結果詳細、不具合情報、実施日、バージョン、担当、機種、工数、予定名、添付ファイルを有している。
【００５５】
結果情報ＩＤは、テスト結果情報を一意に特定する情報である。
テスト項目ＩＤは、そのテスト結果情報を得るために実行されたテスト項目を一意に特定する情報である。テスト項目ＩＤは、上述したテスト項目識別情報に対応する。
実施結果は、そのテスト結果情報を得るために行われたテストの結果（合格、不合格）を示す情報である。
結果詳細は、テスト項目の実行の結果としてなされた出力や起こった現象等に関する説明の記述である。
不具合情報は、不合格となった原因又は原因と推定される事項に関する記述である。
実施日は、このテスト結果情報を得るために行われたテストが実行された日付である。
バージョンは、このテスト結果情報を得るために行われたテストの対象となったソースコードのバージョンを記述した情報である。
担当は、このテスト結果情報を得るために行われたテストの実行者、若しくは責任者などを特定する情報である。
機種は、このテスト結果情報を得るために行われたテストを実行した装置の機種を特定する情報である。
工数は、このテスト結果情報を得るために行われたテストの実行に要した時間である。
予定名は、テスト項目毎に実施期間や担当者を別途管理するテストの実施予定を用いたとき、このテスト結果情報がどのテスト実施予定に属するかを特定する情報である。
添付ファイルは、このテスト結果情報に関する補足情報などを記述した文書ファイルの格納場所を示す情報である。
【００５６】
[テスト結果テーブル]
テスト管理装置３０は、複数のテスト結果情報１１００をテーブル形式で記憶していてもよい。図１２は、複数のテスト結果情報１１００をテーブル形式で記憶するテスト結果テーブルの例を示した図である。
テスト結果テーブル１２００は、一つのテスト結果情報１１００について一つのレコード１２０１を有する。各レコードは、結果情報ＩＤを格納する結果情報ＩＤ格納フィールド１２１１、テスト項目ＩＤを格納するテスト項目ＩＤ格納フィールド１２１２、実施結果を格納する実施結果格納フィールド１２１３、バージョンを示す情報を格納するバージョン格納フィールド１２１４、実施日を格納する実施日格納フィールド１２１５を有している。各フィールド１２１１〜１２１４には対応するテスト結果情報１１００に記述された情報が格納される。
以上でテスト項目・テスト結果記憶部９０２の説明を終了する。
【００５７】
図９に戻り、テスト管理装置３０の構成要素の説明を続ける。
［集計・集約部］
本実施の形態の第１の処理手段に相当する集計・集約部９０３は、複数のテスト結果情報をバージョン毎に分類し、各バージョンの順序情報を決定し、必要な場合には複数のテスト結果情報から集約化テスト結果情報を生成し、元となったテスト結果情報に置き換え、さらに累積不合格グラフの表示に必要となる諸情報、すなわち累積不合格数、累積修正数、テスト実施数を算出し、進捗グラフの表示に必要な諸情報、すなわち不合格テスト項目数、合格テスト項目数、未実施テスト項目数、デグレード数を算出する機能を有する。
【００５８】
表示選択部９０４は、入出力端末装置４０からいずれのグラフを表示させるかに関する命令を受信し、この命令に応じてグラフ生成部９０５に要求されたグラフ等の生成を命令する機能を有する。
【００５９】
本実施の形態の第２の処理手段に相当するグラフ生成部９０５は、表示選択部９０４の命令に応じて、指定されたグラフを生成するためのデータを集計・集約部９０３から取得し、取得したデータに基づいてグラフを描画するためのデータ（以下、グラフデータ）を生成し、このグラフデータを入出力端末装置４０にネットワーク５０を介して送信する機能を有する。なお、グラフデータを受信した入出力端末装置４０は、その表示手段（液晶ディスプレイ装置など）にグラフを表示する。
また、グラフ生成部９０５は、複数の異なるテスト結果をテストの登録日毎に並べる表示形式や、グラフの横軸を日付でなくテストの実施日数（未実施日を省いて実施日だけで「x日目」と描画する）としたグラフ形式や、テスト実施数（実施回数を横軸にとって１００回実施した時の不合格数を表示するグラフ形式などの表示用データを生成し、入出力端末装置４０における表示手段（液晶ディスプレイ装置など）に表示させる機能も有する。
以上で、テスト管理装置３０の構成例の説明を終了する。
【００６０】
［テスト管理装置の動作］
次に、テスト管理装置３０の動作例について説明する。図１３は、テスト管理装置３０の主要な処理を示したフローチャートである。以下、図１３のフローチャートを参照しながら、テスト管理装置３０の動作例を説明する。
【００６１】
［累積不合格グラフ表示時の動作］
いずれかの入出力端末装置４０から累積不合格グラフの表示の要求をテスト管理装置３０が受信したものとする。テスト管理装置３０、より詳しくは表示選択部９０４は、集計・集約部９０３に累積不合格グラフ表示のためのデータ生成を命令する。
【００６２】
このデータ生成の命令を受け取った集計・集約部９０３はテスト項目・テスト結果記憶部９０２から、全てのテスト結果情報を取得する（Ｓ１０）。ここでは、図１２に示したテスト結果テーブル１２００と同様のデータ形式のテスト結果情報が用いられるものとする。
【００６３】
次に、集計・集約部９０３は各テスト結果情報をテスト項目及びバージョン別に分類する（Ｓ２０）。図１４に、各テスト結果情報をテスト項目及びバージョン別に分類した結果生成されるデータ（分類結果データと呼ぶ）の例を示す。
【００６４】
この実施の形態では、分類結果データ１４００は表形式のデータ構成であり、各行はテスト項目（=テスト項目ＩＤ）に対応し、各列はバージョンに対応している。図１４では、テスト結果情報の実施結果に相当する「○」「×」のみ表示したが、各セルには実施結果のみでなく、取得したテスト結果情報の各項目（結果情報ＩＤ，テスト項目ＩＤ，実施結果、バージョン、実施日）が格納されている。
【００６５】
テスト項目ＩＤ及びバージョンが同じであるテスト結果情報が複数存在する場合には、分類結果データ１４００の対応するセルに複数のテスト結果情報が格納されることになる。例えば、分類結果データ１４００のセル１４０１（図中、破線枠で囲っている）には、バージョンを「β」、テスト項目ＩＤを「１」としている３つの異なるテスト結果情報が格納されている。
【００６６】
次に、集計・集約部９０３はバージョン毎に順序情報を決定し、バージョンに対応付ける（Ｓ３０）。前述の通り、順序情報は、そのバージョンに関して実施されたテストのテスト結果情報に含まれる実施日のうち最先のものである。集計・集約部９０３は分類結果データ１４００の同一列の全てのセルに格納されたテスト結果情報の実施日を検査し、それらのうち最先の日付の実施日をそのバージョンの順序情報として選択し、記録する。
【００６７】
図１５は、順序情報の決定の例を示した図である。図１５にしめした分類結果データは図１４に示したものと同一である。いま、集計・集約部９０３はバージョン「ｖ０．５」について順序情報を決定しようとしているものとする。集計・集約部９０３は、バージョン「ｖ０．５」に対応する行に含まれるセル全て（枠１５０１で示す）に格納されるテスト結果情報の実施日を検査する。この例では、３つのテスト結果情報（枠１５０１内の「○」に相当する）が対象になり、集計・集約部９０３はテスト結果情報の実施日を検査し、それらのうち最先の日付の実施日（この例では「2010/10/16」）をこのバージョンの順序情報として記述する（枠１５０２参照）。集計・集約部９０３は全てのバージョンについて同様の処理を行い、各バージョンの順序情報を決定し、記述する。図１５に示した、順序情報が各バージョンについて記述された分類結果データを順序情報付き分類結果データ１５００と呼ぶこととする。
【００６８】
次に、集計・集約部９０３は順序情報に従ってバージョンの並びかえを行う。図１６に、図１５に示した順序情報付き分類結果データ１５００を順序情報に従ってバージョンの並びかえを行った順序情報付き分類結果データ（並び変え済み分類結果データと呼ぶ）を示す。図１５に示した例ではバージョン「ｖ０．６」の順序情報は「2010/11/6」、バージョン「α」の順序情報は「2010/10/28」であり、集計・集約部９０３はこのバージョンに対応する２つの列の並びかえを行う。図１６に示す並び変え済み結果分類データ１６００では、図１５と比べバージョン「ｖ０．６」の列はバージョン「α」の列の後になるよう並び変えられている。
【００６９】
次に、集計・集約部９０３は並び変え済み結果分類データ１６００の各セルについて集約化処理を行う。集約化処理は、一のセルに二以上のテスト結果情報が格納されている場合、これらを一の集約化テスト結果情報に置き換える処理である。図１７に、集約化処理の例を示すフローチャートを掲げる。集計・集約部９０３はあるセルについて格納されているテスト結果情報が二以上か否かを判定する（Ｓ１１０）。テスト結果情報が二以上でないと判定した場合（Ｓ１１０、Ｎｏ）、集計・集約部９０３は集約化処理を終了する。
【００７０】
テスト結果情報が二以上であると判定した場合、集計・集約部９０３は格納されているいずれかの一以上のテスト結果情報の実施結果が不合格であるか否かを判定する（Ｓ１２０）。いずれかの一以上のテスト結果情報の実施結果が不合格であると判定した場合（Ｓ１２０、Ｙｅｓ）、集計・集約部９０３は実施結果を不合格とする１つの集約化テスト結果情報を生成する（Ｓ１３０）。その後集計・集約部９０３は従前格納されていた複数のテスト結果情報に代えてステップＳ１３０にて生成した集約化テスト結果情報をそのセルに格納し（Ｓ１４０）、集約化処理を終了する。
【００７１】
前述のステップＳ１２０において、いずれかの一以上のテスト結果情報の実施結果が不合格でない（全部合格である）と判定した場合（Ｓ１２０、Ｎｏ）、集計・集約部９０３は実施結果を合格とする１つの集約化テスト結果情報を生成する（Ｓ１５０）。その後集計・集約部９０３は従前格納されていた複数のテスト結果情報に代えてステップＳ１３０にて生成した集約化テスト結果情報をそのセルに格納し（Ｓ１４０）、集約化処理を終了する。
【００７２】
図１８に集約化処理前の並びかえ済み分類結果データを示し、図１９に図１８に示す並びかえ済み分類結果データの集約化処理後のデータ（集約化後データと呼ぶ）を示す。集約化前、実施結果が合格であるテスト結果情報が一つのみであるセル１８０１は、テスト結果情報がそのまま維持される。集約化前、実施結果が不合格であるテスト結果情報が一つのみであるセル１８０２は、テスト結果情報がそのまま維持される。集約化前、実施結果が合格であるテスト結果情報が一つ、不合格であるテスト結果情報が一つであるセル１８０４は、実施結果を不合格とする集約化テスト結果情報のみが格納される。集約化前、実施結果が不合格であるテスト結果情報が３つであるセル１８０３は、実施結果を不合格とする集約化テスト結果情報のみが格納される。実施結果が合格であるテスト結果情報が２つであるセル１８０５は、実施結果を合格とする集約化テスト結果情報のみが格納される。
この集約化処理により、複数のテスト結果情報が存在する場合であっても単一の実施結果に集約化されることになる。
【００７３】
図１３に戻り、テスト管理装置３０の動作の説明を続ける。  
ステップＳ５０の集約化処理に続いて、テスト管理装置３０は集計値の算出を行う（Ｓ６０）。図２０は、累積不合格グラフのために算出された集計値が付加された、集約化後データ（集計値付きデータと呼ぶ）の例を示す図である。集計値付きデータ２０００には、集約化後データ１６００＿１に、各バージョンについて累積不合格数、累積修正数、テスト実施数のそれぞれの値が付加されたデータとなる。
【００７４】
累積不合格数は、各列の全セルに含まれる不合格「×」の数に左隣のバージョンの累積不合格数を加算することにより算出される。
累積修正数は、各列について当該バージョンでは合格である場合、左側のバージョンのセルに不合格「×」がある場合に不合格の数をカウントすることにより算出される。但し、一つでも合格「○」のセルがあるい場合には、それ以降（右側の列）の不合格の数のみカウントする。
テスト実施数は、各列について不合格「×」又は合格「○」が格納されているセルの数をカウントすることにより算出される。
【００７５】
図１３に戻り、テスト管理装置３０の動作の説明を続ける。
ステップＳ６０の後、テスト管理装置３０はグラフ表示を要求してきた入出力端末装置４０に、グラフ表示に必要なデータを送信する（Ｓ７０）。グラフ表示に必要なデータを受信した入出力端末装置４０は、所望の累積不合格グラフの表示をすることができる。図２１に、集計値付きデータ２０００に基づいて表示される累積不合格グラフの例を示す。
【００７６】
［進捗グラフの場合］
次に、進捗グラフの表示を要求された場合のテスト管理装置３０の動作を説明する。進捗グラフの表示の場合も、前述のステップＳ１０からステップＳ５０は同様であるので、これらステップの説明は省略する。
【００７７】
ステップＳ５０の集約化処理に続いて、テスト管理装置３０は集計値の算出を行う（Ｓ６０）。図２２は、進捗グラフのために算出された集計値が付加された、集約化後データ（集計値付きデータと呼ぶ）の例を示す図である。集計値付きデータ２２００には、集約化後データ１６００＿１に、各バージョンについて未実施テスト項目数、合格テスト項目数、不合格テスト項目数、デグレード数のそれぞれの値が付加されたデータとなる。未実施テスト項目数、合格テスト項目数、不合格テスト項目数は該当列の未実施、合格、不合格それぞれのセル数である。但し、以前（図中の左隣のセル）に合格／不合格の実施結果が格納されている場合、そのセルが未実施となっているときは、左隣のセルの実施結果を承継しているものとして該当行の合格、不合格それぞれのセル数のカウントを行う。例えば、該当列のセルが未実施（空欄）であって、左隣のセルが不合格である場合は、該当列のセルを不合格のセルであるとしてカウントする。
【００７８】
デグレード数は、以下のように算出する。その列のある行のセルが不合格、その左隣列の同一行のセルが合格である場合に、その列のデグレード数を１カウントする。これをテスト項目ごとに行い、カウントされた値の合計値をその列（バージョン）のデグレード数とする。
【００７９】
ステップＳ６０の後、テスト管理装置３０はグラフ表示を要求してきた入出力端末装置４０に、グラフ表示に必要なデータを送信する（Ｓ７０）。グラフ表示に必要なデータを受信した入出力端末装置４０は、所望の進捗グラフの表示をすることができる。
図２３に、図２２に示した集計値付きデータ２２００に基づいて表示される進捗グラフの例を示す。
【００８０】
［本実施の形態の利点］
（Ａ）累積不合格グラフにより得られる利点
累積不合格グラフから、下記のテスト状況を把握できる。
（１）累積不合格数と累積修正数の差が拡大しているか、縮小しているかを把握することで、ソフトウェアの品質が向上していることを確認できる。図２４に、累積不合格数と累積修正数の差が拡大している累積不合格グラフの例を掲げ、図２５に累積不合格数と累積修正数の差が縮小している累積不合格グラフの例を掲げる。図２４に示す累積不合格グラフの例では、バージョンｖ０．６における累積不合格数と累積修正数の差２４０１よりも、最新のバージョンであるβにおける累積不合格数と累積修正数の差２４０２の方が若干拡大している。これは、不合格の増大に修正が追い付いていないことを示し、ソフトウェアの品質がうまく向上していないことが把握できる。図２５に示す累積不合格グラフの例では、バージョンｖ０．６における累積不合格数と累積修正数の差２５０１よりも、最新のバージョンであるβおける累積不合格数と累積修正数の差２５０２の方が縮小している。これは、不合格の増大より修正対応が上まわっていることを示し、ソフトウェアの品質が向上していることが把握できる。
【００８１】
（２）不合格を長い期間修正していないことを確認できる。
図２６に不合格が長い期間修正されていない場合の累積不合格グラフの例を示す。この例では、バージョンｖ０．６以後不合格の修正が行われていない期間（修正不実施期間）が生じていることが把握できる。
【００８２】
（３）十分にテストを行っているにもかかわらず、不合格が発生していない状況を確認できる。図２７に、十分にテストを行っているにもかかわらず、不合格が発生していない状況である場合の累積不合格グラフの例を示す。この例では、バージョン「β」以降バージョンｖ１．０に至るまで累積不合格数を示す折れ線は横ばい状態であり、不合格が発生していない。これはソフトウェアの修正がうまく行われており、ソフトウェアの品質の向上が図られていることを意味する。
【００８３】
（Ｂ）進捗グラフにより得られる利点
進捗グラフから、下記のテスト状況を把握できる。
【００８４】
（１）ソフトウェアが更新される毎に、合格や不合格の増減を確認し、ソフトウェアの品質が向上していることを確認できる。図２８に、合格数の増加と未実施数及び不合格数の減少となっている状況の、進捗グラフの例を示す。
【００８５】
（２）デグレードの発生数から、ソフトウェアの品質や構成管理における問題点を確認できる。図２９にデグレードの発生数が増加した状況の進捗グラフの例を示す。この例ではバージョン「ｖ１．３」においてはデグレード発生は皆無であったが、最新のバージョン「１．４」においてデグレード発生が見て取れる。デグレードの発生から、解決すべき問題点が存在することが把握できる。
【００８６】
（３）テストを長い間実施していないことを確認できる。図３０にテストを長い間実施していない状況の、進捗グラフの例を示す。
【００８７】
（４）テスト項目を追加した際に、テスト追加分を確実に実施していることを確認できる。図３１にテスト項目を追加した際に、テスト追加分を実施していない状況の、進捗グラフの例を示す。この例では、ひとつ前のバージョンであるｖ１．４では未実施数が０になっていたのに、最新のバージョンであるｖ１．５の未実施数が増加していることが把握できる。これは新たなテスト項目が追加されたが、実施されていないことを示している。
【００８８】
[その他]
以上、本発明の実施の形態を説明したが、本発明はこれらに限定されるものではなく、発明の趣旨を逸脱しない範囲内において、種々の変更、追加、組み合わせ等が可能である。例えば、累積不合格グラフと進捗グラフを一つのグラフとして表示させるテスト管理装置を実施することも可能である。
【符号の説明】
【００８９】
１０・・・テスト実施システム；  ２０・・・構成管理装置；  ３０・・・テスト管理装置；  ４０・・・入出力端末装置；  ９０１・・・データ登録部；  ９０２・・・テスト項目・テスト結果記憶部；  ９０３・・・集計・集約部；  ９０４・・・表示選択部；  ９０５・・・グラフ生成部
【図２】
0005613571.tif 000002
【図３】
0005613571.tif 000003
【図４】
0005613571.tif 000004
【図５】
0005613571.tif 000005
【図６】
0005613571.tif 000006
【図９】
0005613571.tif 000007
【図１０】
0005613571.tif 000008
【図１１】
0005613571.tif 000009
【図１２】
0005613571.tif 000010
【図１３】
0005613571.tif 000011
【図１４】
0005613571.tif 000012
【図１５】
0005613571.tif 000013
【図１６】
0005613571.tif 000014
【図１７】
0005613571.tif 000015
【図１８】
0005613571.tif 000016
【図１９】
0005613571.tif 000017
【図２０】
0005613571.tif 000018
【図２２】
0005613571.tif 000019
【図１】
0005613571.tif 000020
【図７】
0005613571.tif 000021
【図８】
0005613571.tif 000022
【図２１】
0005613571.tif 000023
【図２３】
0005613571.tif 000024
【図２４】
0005613571.tif 000025
【図２５】
0005613571.tif 000026
【図２６】
0005613571.tif 000027
【図２７】
0005613571.tif 000028
【図２８】
0005613571.tif 000029
【図２９】
0005613571.tif 000030
【図３０】
0005613571.tif 000031
【図３１】
0005613571.tif 000032