(57)【要約】【課題】複数のテストプロセス間に渡ってテスト全体を最適化するとともに、ある製品のテストプロセスを通して得られたテストのやり方についての問題点からテストプロセスを見直し、次の製品のテストプロセスの設計を支援できるようにする。【解決手段】テスト項目毎に登録された、テストの実行プロセス及び実行順序を管理するテスト項目管理部と、前記テスト項目をそれぞれ実行したテスト結果毎に登録された、今回のテストの結果判定と、次回のテストを実行する次回実行プロセスとを管理するテスト結果管理部とを備え、テスト結果管理部に登録されたテスト結果毎の次回実行プロセスに基づいて、テスト項目管理部で管理されているテスト項目毎の登録情報を更新し、テスト項目を再分類する。【選択図】  図４
2004246794.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェアプログラムをテストするための複数のテスト項目のそれぞれを、複数のテストプロセスのいずれかにおいて実行するために、前記テスト項目を分類して管理するテストプロセス管理装置において、
前記テスト項目毎に登録された、テストの実行プロセス及び実行順序を管理するテスト項目管理部と、
前記テスト項目をそれぞれ実行したテスト結果毎に登録された、今回のテストの結果判定と、次回のテストを実行する次回実行プロセスとを管理するテスト結果管理部とを備え、
前記テスト結果管理部に登録された前記テスト結果毎の前記次回実行プロセスに基づいて、前記テスト項目管理部で管理されている前記テスト項目毎の登録情報を更新し、前記テスト項目を再分類することを特徴とするテストプロセス管理装置。
【請求項２】
前記テスト結果管理部に登録された任意のテスト結果について、
登録済みの情報を更新できるテスト結果更新機能を備えることを特徴とする請求項１に記載のテストプロセス管理装置。
【請求項３】
前記テスト結果管理部において、前記テスト項目毎にさらに、次回実行プロセスを変更した理由を登録して管理することを特徴とする請求項１または２に記載のテストプロセス管理装置。
【請求項４】
前記テスト結果更新機能により更新された情報において、
今回のテストを実行したプロセスと前記次回実行プロセスが異なっている場合、それを所定の通知先に所定の通知方法で通知するテストプロセス変更内容通知機能を備えることを特徴とする請求項２または３に記載のテストプロセス管理装置。
【請求項５】
前記テストプロセス管理装置はネットワークに接続されており、
前記通知方法は、前記ネットワークを使用することを特徴とする請求項４に記載のテストプロセス管理装置。
【請求項６】
前記通知方法は電子メールであることを特徴とする請求項５に記載のテストプロセス管理装置。
【請求項７】
前記通知先として、少なくともテストプロセスの管理者を含むことを特徴とする請求項４ないし６のいずれか１項に記載のテストプロセス管理装置。
【請求項８】
ソフトウェアプログラムをテストするための複数のテスト項目のそれぞれを、複数のテストプロセスのいずれかにおいて実行するために、前記テスト項目を分類して管理するテストプロセス管理方法において、
前記テスト項目毎に登録された、テストの実行プロセス及び実行順序を管理するテスト項目管理ステップと、
前記テスト項目をそれぞれ実行したテスト結果毎に登録された、今回のテストの結果判定と、次回のテストを実行する次回実行プロセスとを管理するテスト結果管理ステップとを備え、
前記テスト結果管理部に登録された前記テスト結果毎の前記次回実行プロセスに基づいて、前記テスト項目管理部で管理されている前記テスト項目毎の登録情報を更新し、前記テスト項目を再分類するテスト項目登録情報更新ステップとを備えたことを特徴とするテストプロセス管理方法。
【請求項９】
請求項８に記載のテストプロセス管理方法をコンピュータに実行させることを特徴とするテストプロセス管理プログラム。
【請求項１０】
請求項９に記載のテストプロセス管理プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ソフトウェアプログラムのテストを管理し、テスト精度を上げるためのテストプロセス管理装置、テストプロセス管理方法、及びテストプロセス管理プログラム、並びにテストプロセス管理プログラムを記録した記録媒体に関する。
【０００２】
【従来の技術】
情報処理システムにおけるプログラム試験の精度を高める従来技術の一つとして「試験プログラム実行制御装置、試験プログラム実行方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体」が提案されている（例えば、特許文献１参照。）。
【０００３】
これは、所定の情報処理システムに対する試験プログラムの実行を制御する試験プログラム実行制御装置において、前記所定の情報処理システムに対して実行した試験プログラムの試験項目毎の試験結果をその試験日程とともに蓄積する蓄積手段と、前記蓄積手段に蓄積された試験結果のうち、任意の試験期間での試験結果に基づいて前記所定の情報処理システムの動作状況を判断する動作状況判断手段と、を備えたことを特徴とするものである。
【０００４】
ここで提案されている技術によれば、各試験項目をエラーの発生頻度に応じた回数だけ実行したり、エラー発生頻度の高い試験項目から昇順に実行順序を決定したり、エラー発生間隔が短い試験項目から昇順に実行順序を決定したり、エラー発生日付の新しい試験項目から昇順に実行順序を決定したりできるようになっている。
【０００５】
【特許文献１】
特開平１１−３０６０３９号公報
【０００６】
【発明が解決しようとする課題】
ところが、ソフトウェアプログラムが複雑化してテスト項目が増えてくると、ソフトウェアプログラム全体を対象にして、単一のテストプロセスですべてのテスト項目を実行することは、あまり適切とは言えなくなってくる。
【０００７】
そこで、テスト対象となるソフトウェアプログラム全体を個々の機能モジュールに分割し、必要に応じて部分的なテストも行うとともに、単一のテストプロセスを複数のテストプロセスに分けて段階的にテストを実施することが必要となる。なお、各テスト項目については、複数のテストプロセスのうちのいずれかで実行するように分類しておく。
【０００８】
例えば、最初に機能モジュール毎に単体での動作を検証する単体テスト（プロセスＡ）を実行し、その次に機能モジュールを統合した状態において、機能モジュール間の相互作用などを検証する統合テスト（プロセスＢ）を実施する。そして最後に、ソフトウェアプログラム全体の動作をくまなく検証するための全体テスト（プロセスＣ）を実施する。各テスト項目については、あらかじめ、これらの３つのプロセスのうちのいずれで実行するのが適切かを判断し、分類しておく。同じプロセスに分類されたテスト項目は、それぞれのプロセスでまとめて実行されることになる。
【０００９】
ソフトウェアプログラムが大規模になると、テスト項目もテストプロセスも増大し、テストプランの策定がかなりの業務量となる上、テストプランの出来栄えが全体の完成度に大きな影響を与えるようになる。
【００１０】
それぞれのテストプロセスにおいて上述の特許文献１のような従来技術を応用すれば、個々のプロセスでの効率的なテストを行うことはできるが、テスト全体を見たときには必ずしも最適化されているとは言えなかった。このため、今回のテストプロセスを通して得られたテストのやり方の問題点などからテストプロセスを見直し、それを次回開発する製品のテストに生かすこともできなかった。
【００１１】
従来技術のこのような課題を鑑み、本発明は、複数のテストプロセス間に渡ってテスト全体を最適化するとともに、ある製品のテストプロセスを通して得られたテストのやり方についての問題点からテストプロセスを見直し、次の製品のテストプロセスの設計を支援するテストプロセス管理装置、テストプロセス管理方法、及びテストプロセス管理プログラム、並びにテストプロセス管理プログラムを記録した記録媒体を提供することを目的とする。
【００１２】
【課題を解決するための手段】
上記目的を達成するため、本発明のテストプロセス管理装置は、ソフトウェアプログラムをテストするための複数のテスト項目のそれぞれを、複数のテストプロセスのいずれかにおいて実行するために、前記テスト項目を分類して管理するテストプロセス管理装置において、前記テスト項目毎に登録された、テストの実行プロセス及び実行順序を管理するテスト項目管理部と、前記テスト項目をそれぞれ実行したテスト結果毎に登録された、今回のテストの結果判定と、次回のテストを実行する次回実行プロセスとを管理するテスト結果管理部とを備え、前記テスト結果管理部に登録された前記テスト結果毎の前記次回実行プロセスに基づいて、前記テスト項目管理部で管理されている前記テスト項目毎の登録情報を更新し、前記テスト項目を再分類することを特徴とする。
【００１３】
この発明のテストプロセス管理装置によれば、テスト結果管理部へのテスト結果毎に次回のテストを実行する次回実行プロセスを登録できる。この次回実行プロセスは、今回のテストを実行したプロセスとは必ずしも同じでなくてよい。テスト担当者がテスト結果毎の登録を行う際、結果判定やテスト項目の内容などを考慮して、対応するテスト項目が本来別のプロセスで実行すべきであると気づいた場合には、次回実行プロセスとして今回実行したプロセスとは異なるプロセスを指定できる。そして、すべてのテスト結果の登録終了後に、登録されたテスト結果毎の次回実行プロセスに基づいて、テスト項目管理部に登録して管理されているテスト項目毎の実行プロセスが更新され、更新された実行プロセスに基づいてテスト項目が再分類される。
【００１４】
これにより、個々のテスト項目がそれぞれ、より適切なテストプロセスに自動的に移動するため、複数のテストプロセスに渡ってテスト全体の最適化が行われ、次回からはより適切なテストが行えるようになる。
【００１５】
また、前記テスト結果管理部に登録された任意のテスト結果について、登録済みの情報を更新できるテスト結果更新機能を備えることを特徴としてもよい。
【００１６】
この発明のテストプロセス管理装置によれば、テスト結果管理部に一度登録したテスト結果毎の登録情報について、登録後でも情報の更新ができる。この更新は、テスト結果を最初に登録したテスト担当者以外によるものであってもよい。このため、テスト担当者にテストプロセスの変更を指示できるスキルがない場合や変更の意思がない場合でも、別の担当者やテストの管理者が結果一覧を参照した際に内容を閲覧して再度判断し、別のテストプロセスに直接変更したり、変更を指示したりできる。これにより、テストプロセスの改善の機会が増えて、より広範囲での見直しが行われることになる。
【００１７】
また、前記テスト結果管理部において、前記テスト項目毎にさらに、次回実行プロセスを変更した理由を登録して管理することを特徴としてもよい。
【００１８】
この発明のテストプロセス管理装置によれば、テスト結果の登録を行ったテスト担当者が、次回実行プロセスを変更した際の理由を、管理者などが登録後に確認できる。これにより、変更の是非の判断材料にすることができるばかりか、テスト担当者のスキルも確認することができる。
【００１９】
また、前記テスト結果更新機能により更新された情報において、今回実行プロセスと次回実行プロセスが異なっている場合、それを所定の通知先に所定の通知方法で通知するテストプロセス変更内容通知機能を備えることを特徴としてもよい。
【００２０】
ここで、通知方法としてはネットワークを使用することが考えられ、例えば電子メールでもよいが、これに限るものではない。通知先としては、テストの管理者が考えられるが、これに限るものではない。
【００２１】
この発明のテストプロセス管理装置によれば、次回実行プロセスが変更されたことがテストプロセス管理者などに通知されることにより、管理者などによる変更状況の確実な把握が保証される。これにより、テスト担当者の判断ミスなどによる次回実行プロセスの不適切な変更が放置されるのを防止するとともに、必要であれば、管理者などが次回実行プロセスを再度見直すことで、データの精度がより一層向上する。
【００２２】
あるいは、上記目的を達成するため、本発明のテストプロセス管理方法は、ソフトウェアプログラムをテストするための複数のテスト項目のそれぞれを、複数のテストプロセスのいずれかにおいて実行するために、前記テスト項目を分類して管理するテストプロセス管理方法において、前記テスト項目毎に登録された、テストの実行プロセス及び実行順序を管理するテスト項目管理ステップと、前記テスト項目をそれぞれ実行したテスト結果毎に登録された、今回のテストの結果判定と、次回のテストを実行する次回実行プロセスとを管理するテスト結果管理ステップとを備え、前記テスト結果管理部に登録された前記テスト結果毎の前記次回実行プロセスに基づいて、前記テスト項目管理部で管理されている前記テスト項目毎の登録情報を更新し、前記テスト項目を再分類するテスト項目登録情報更新ステップとを備えたことを特徴とする。
【００２３】
この発明のテストプロセス管理方法によれば、テスト結果管理部へのテスト結果毎に次回のテストを実行する次回実行プロセスを登録できる。この次回実行プロセスは、今回のテストを実行したプロセスとは必ずしも同じでなくてよい。テスト担当者がテスト結果毎の登録を行う際、結果判定などを考慮して、対応するテスト項目が本来別のプロセスで実行すべきであると気づいた場合には、次回実行プロセスとして今回実行したプロセスとは異なるプロセスを指定できる。そして、すべてのテスト結果の登録終了後に、登録されたテスト結果毎の次回実行プロセスに基づいて、テスト項目管理部に登録して管理されているテスト項目毎の実行プロセスが更新され、更新された実行プロセスに基づいてテスト項目が再分類される。
【００２４】
これにより、個々のテスト項目が適切なテストプロセスに自動的に移動するため、毎回テストプロセス全体を見直すことができ、次回からより適切なテストが行えるようになる。
【００２５】
あるいは、上記目的を達成するため、本発明のテストプロセス管理プログラムは、コンピュータに前記テストプロセス管理方法を実行させることを特徴とする。
【００２６】
この発明のテストプロセス管理プログラムによれば、プログラムが実行可能なコンピュータ環境さえあれば、どこにおいても本発明のテストプロセス管理装置を実現することができる。さらに、このテストプロセス管理プログラムを汎用的なコンピュータで実行可能なものにしておけば、本発明のテストプロセス管理装置を実現するために専用のコンピュータ環境を準備する必要もなくなり、本発明のテストプロセス管理プログラムの有用性が高まる。
【００２７】
あるいは、上記目的を達成するため、本発明のテストプロセス管理プログラムを記録した記録媒体は、コンピュータ読み取り可能な記録媒体であって、前記テストプロセス管理プログラムを記録していることを特徴とする。
【００２８】
この発明のテストプロセス管理プログラムを記録した記録媒体によれば、本発明のテストプロセス管理装置を様々な場所や環境で実現することが容易になり、本発明のテストプロセス管理方法の汎用性を高めることができる。
【００２９】
【発明の実施の形態】
以下、本発明の実施の形態を、図面を参照して説明する。
【００３０】
＜実施形態の構成＞
図１は、本発明の１実施形態におけるテストプロセス管理装置１０１の全体構成を示すブロック図である。
【００３１】
図１に示すように、テストプロセス管理装置１０１はその主要部が、テスト項目管理部１０２と、テスト一覧表示部１０３と、テスト結果管理部１０４とから構成されており、ユーザーインターフェイスとしてディスプレイ１０５やキーボード１０６を備えている。また、記憶装置としてハードディスク装置１０７を備え、テスト項目を管理するテスト項目データベース１０８や、テスト結果を管理するテスト結果データベース１０９をこのハードディスク装置１０７上に記憶している。さらに、外部のネットワーク１１０と接続されており、ネットワーク１１０を介して外部との情報交換や他者との連絡が可能になっている。
【００３２】
テスト項目管理部１０２は、ハードディスク装置１０７上に記憶されるテスト項目データベース１０８を管理するためのインターフェイスを備えており、キーボード１０６からの指示入力により、テスト項目の登録、保存、内容の更新、削除など一連の処理を行う機能を有する。
【００３３】
テスト一覧表示部１０３は、テスト項目データベース１０８やテスト結果データベース１０９に記憶されている内容を、ディスプレイ１０５上に適当な形式で表示する機能を持つ。
【００３４】
テスト結果管理部１０４は、ハードディスク装置１０７上に記憶されるテスト結果データベース１０９を管理するためのインターフェイスを備えており、キーボード１０６からの指示入力により、テスト結果の登録、保存、内容の更新、削除など一連の処理を行う機能を有する。
【００３５】
ハードディスク装置１０７上に記憶されているテスト項目データベース１０８には、テスト項目が図２に示すレコード形式で登録されており、一方、テスト結果データベース１０９には、テスト結果が図３に示すレコード形式で登録されているが、詳細については後述する。
【００３６】
図２は、テスト項目データベース１０８のレコード形式とレコードの状態の例を示している。
【００３７】
図２に示すように、テスト項目を管理するテスト項目データベース１０８のレコードは、以下のフィールドから構成されている。すなわち、テストＩＤ、実行プロセス、実行順序、テスト内容である。なお、以下の説明では、これらのフィールド名は「」で囲んで明示する。
【００３８】
ここで、「テストＩＤ」はテスト項目毎にユニークなＩＤ番号で、テスト項目の識別を行う。「テスト内容」はテスト項目の具体的な内容を示す。
【００３９】
「実行プロセス」はそのテスト項目がどのプロセスで実行されるかを示す。「実行順序」は同一プロセスで実行されるテスト項目の中での実行の順序を示し、プロセス毎にユニークな連番である。このように、それぞれのテスト項目は「実行プロセス」に基づいてプロセス毎に分類され、さらにそれぞれのプロセス内での実行順序が定められている。
【００４０】
図２に示す例では、テスト項目データベース１０８には６つのレコード（「テストＩＤ」のＩＤ番号が１〜６）がすでに登録されている。
【００４１】
このうち、最初の３つのレコード（「テストＩＤ」のＩＤ番号が１〜３）では、「実行プロセス」のフィールド値はすべて“プロセスａ”であり、これらの３項目のテストが“プロセスａ”において実行されることを示している。「実行順序」の番号は「テストＩＤ」のＩＤ番号の昇順に１、２、３であり、“プロセスａ”において、「テストＩＤ」のＩＤ番号が１のテスト項目（テスト内容１）が最初に実行され、次に「テストＩＤ」のＩＤ番号が２のテスト項目（テスト内容２）が実行され、最後に「テストＩＤ」のＩＤ番号が３のテスト項目（テスト内容３）が実行されることを示している。
【００４２】
続く２つのレコード（「テストＩＤ」のＩＤ番号が４、５）では、「実行プロセス」のフィールド値はともに“プロセスｂ”であり、これらの２項目のテストが“プロセスｂ”において実行されることを示している。「実行順序」の番号は「テストＩＤ」のＩＤ番号の昇順に１、２であり、“プロセスｂ”において、「テストＩＤ」のＩＤ番号が４のテスト項目が最初に実行され、次に「テストＩＤ」のＩＤ番号が５のテスト項目が実行されることを示している。
【００４３】
残りの１つのレコード（「テストＩＤ」のＩＤ番号が６）では「実行プロセス」のフィールド値は“プロセスｃ”であり、この１項目のテストが“プロセスｃ”で実行されることを示している。「実行順序」の番号は１であるが、“プロセスｃ”ではこの１項目のみが実行されるため、実質的な意味はないことになる。
【００４４】
図３は、テスト結果データベース１０９のレコード形式とレコードの状態の例を示している。
【００４５】
図３に示すように、テスト結果を管理するテスト結果データベース１０９のレコードは、以下のフィールドから構成されている。すなわち、テスト結果ＩＤ、テストセットＩＤ、テストＩＤ、実行日、担当者、結果判定、今回実行プロセス、次回実行プロセス、プロセス変更理由である。なお、以下の説明では、これらのフィールド名は「」で囲んで明示する。
【００４６】
ここで、「テスト結果ＩＤ」はテスト結果毎にユニークなＩＤ番号で、テスト結果の識別を行う。「テストセットＩＤ」は一連のテスト項目をまとめて管理するためのＩＤ番号である。「テストＩＤ」はテスト結果がどのテスト項目に対応しているかを示すもので、テスト項目データベース１０８（図２参照）の「テストＩＤ」に該当する。「実行日」は対応するテスト項目が実行された日付を示し、「担当者」は対応するテスト項目の実行担当者の氏名を示す。「結果判定」は対応するテスト項目の実行結果の判定であり、問題が何ら検出されなかった場合は“ＯＫ”、何らかの問題が検出されたときは“ＮＧ”となる。「今回実行プロセス」は、対応するテスト項目が今回はどのプロセスで実行されたかを示し、「次回実行プロセス」は、対応するテスト項目が次回はどのプロセスで実行されるべきかを示している。「プロセス変更理由」は、「次回実行プロセス」を「今回実行プロセス」とは異なるプロセスに変更する際にその理由を入力するためのフィールドであるが、詳しくは後述する。
【００４７】
図３に示す例では、テスト結果データベース１０９には３つのレコード（「テスト結果ＩＤ」のＩＤ番号が１〜３）がすでに登録されている。
【００４８】
「テストセットＩＤ」のＩＤ番号はすべて１であり、これらの３つのレコードのテスト結果は、一連のテスト項目（「テストセットＩＤ」のＩＤ番号が１）としてまとめて管理されていることを示している。
【００４９】
最初のレコード（「テスト結果ＩＤ」のＩＤ番号が１）では、「テストＩＤ」のＩＤ番号が４であり、テスト項目データベース１０８において「テストＩＤ」のＩＤ番号が４として管理されているテスト項目に対応していることを示している。「実行日」の日付は“０２／９／１”であり、「担当者」の氏名は“担当Ａ”で、「結果判定」のフィールド値は“ＮＧ”である。「今回実行プロセス」のフィールド値が“プロセスｃ”で、「次回実行プロセス」のフィールド値が“プロセスｂ”であるので、対応するテスト項目が今回は“プロセスｃ”で実行されたものの、次回は“プロセスｂ”で実行されるべきであると判断されたことを示している。「プロセス変更理由」には、その判断の理由（理由１）が入力されている。
【００５０】
２番目のレコード（「テスト結果ＩＤ」のＩＤ番号が２）では、「テストＩＤ」のＩＤ番号が５であり、テスト項目データベース１０８において「テストＩＤ」のＩＤ番号が５として管理されているテスト項目に対応していることを示している。「実行日」の日付は“０２／９／２”であり、「担当者」の氏名は“担当Ｂ”で、「結果判定」のフィールド値は“ＯＫ”である。「今回実行プロセス」のフィールド値が“プロセスｂ”で、「次回実行プロセス」のフィールド値も“プロセスｂ”であるので、対応するテスト項目が今回は“プロセスｂ”で実行され、次回もそのまま“プロセスｂ”で実行されるべきであると判断されたことを示している。「プロセス変更理由」には、その判断の理由（理由２）が入力されている。
【００５１】
３番目のレコード（「テスト結果ＩＤ」のＩＤ番号が３）では、「テストＩＤ」のＩＤ番号が６であり、テスト項目データベース１０８において「テストＩＤ」のＩＤ番号が６として管理されているテスト項目に対応していることを示している。「実行日」の日付は“０２／９／２”であり、「担当者」の氏名は“担当Ｃ”で、「結果判定」のフィールド値は“ＯＫ”である。「今回実行プロセス」のフィールド値が“プロセスａ”で、「次回実行プロセス」のフィールド値が“プロセスｃ”であるので、対応するテスト項目が今回は“プロセスａ”で実行されたものの、次回は“プロセスｃ”で実行されるべきであると判断されたことを示している。「プロセス変更理由」には、その判断の理由（理由３）が入力されている。
【００５２】
＜テスト実施前の準備＞
図４は、本発明の１実施形態におけるテストプロセス管理装置１０１によるプロセス管理動作を説明するフローチャートであり、図５は、新規テストセット作成直後のテスト結果データベース１０９のレコードの状態である。
【００５３】
なお、テスト項目データベース１０８に登録すべきテスト項目レコードは、テスト対象となる製品（機種）のテストプロセス全体を管理する管理者によりテスト開始前に既に作成と登録が済んでおり、これが図２に示した状態であるとして説明する。また、図１に示した本発明におけるテストプロセス管理装置１０１の全体構成を示すブロック図、及び、図３に示したテスト結果データベース１０９のレコード形式とレコードの状態の例も合わせて参照する。
【００５４】
図４に示すように、まず、管理者がキーボード１０６にて新規テストセットの作成を指示（ステップ４０１）すると、テスト結果管理部１０４により、テスト項目データベース１０８に登録済みのテスト項目のレコードの内容に基づいて、登録済みのテスト項目のレコードと同じ数のテスト結果レコードが、テスト結果データベース１０９において新たに作成（ステップ４０２）される。
【００５５】
図２に示したように、テスト項目データベース１０８には６つのレコード（「テストＩＤ」のＩＤ番号が１〜６）が登録されているので、作成されるテスト結果レコードのレコード数は６である。これらのテスト結果レコードの内容は次の通りである。
【００５６】
図５に示すように、「テスト結果ＩＤ」には、テスト結果レコード内でユニークな連番が入る。テスト結果データベース１０９にはすでに３つのレコード（「テスト結果ＩＤ」のＩＤ番号が１〜３）が登録済み（図３参照）なので、新たに作成される６つのレコードの「テスト結果ＩＤ」のＩＤ番号は順に４〜９となる。
【００５７】
「テストセットＩＤ」には、テスト結果データベース１０９内の「テストセットＩＤ」としてまだ利用されていない新規のユニークな番号が与えられるが、新たに作成されたレコードにはすべて同じ番号が入る。テスト結果データベース１０９に登録済みの３つのレコードの「テストセットＩＤ」のＩＤ番号はすべて１なので（図３参照）、ここで追加される６つのレコードの「テストセットＩＤ」のＩＤ番号はすべて２となる。
【００５８】
「テストＩＤ」には、テスト項目データベース１０８に登録済みのテスト項目の各レコードの「テストＩＤ」のＩＤ番号（１〜６）が順に入る。
【００５９】
「今回実行プロセス」と「次回実行プロセス」には、この時点では、テスト項目データベース１０８に登録済みのテスト項目レコードの「実行プロセス」に入れられているものと同じフィールド値が、両方に順に入れられる。
【００６０】
すなわち、「テスト結果ＩＤ」のＩＤ番号が４〜６の３つのレコードでは、「今回実行プロセス」と「次回実行プロセス」のフィールド値はともに“プロセスａ”となる。
【００６１】
「テスト結果ＩＤ」のＩＤ番号が７、８の２つのレコードでは、「今回実行プロセス」と「次回実行プロセス」のフィールド値はともに“プロセスｂ”となる。
【００６２】
「テスト結果ＩＤ」のＩＤ番号が９のレコードでは、「今回実行プロセス」と「次回実行プロセス」のフィールド値はともに“プロセスｃ”となる。
【００６３】
新たに作成されたテスト結果レコードにおける「実行日」、「担当者」、「結果判定」、及び「プロセス変更理由」の各フィールドについては、この時点では空のままである。
【００６４】
＜テスト実施後のテスト結果の処理＞
各テスト担当者は、管理者の指示を受け、テスト対象機種についてテストを実施する。テストを終えたテスト担当者は、テスト結果をテスト結果データベース１０９の該当するテスト結果レコードに次のようにして入力する。
【００６５】
テスト担当者が「テストセットＩＤ」の特定のＩＤ番号を指示（ステップ４０３）すると、テスト結果管理部１０４により、テスト結果データベース１０９に登録されているテスト結果レコードの中から、テスト担当者によって指示されたＩＤ番号と同一のＩＤ番号を「テストセットＩＤ」に持つテスト結果レコードが抽出される。そして、テスト一覧表示部１０３によって、テスト項目一覧がディスプレイ１０５に表示される（ステップ４０４）。なお、この一覧の表示には、従来技術として参照した特許文献１に示されているような日付などによる絞り込みが可能である。
【００６６】
次に、テスト担当者が「テストＩＤ」の特定のＩＤ番号を指示（ステップ４０５）すると、指示されたＩＤ番号を「テストＩＤ」に持つテスト結果レコードの各フィールドの詳細内容がディスプレイ１０５に表示される（ステップ４０６）。このとき、「実行日」には現在の日付が初期値として入力された状態となる。
【００６７】
テスト担当者は、表示された各フィールドの内容をキーボード１０６にて適宜編集し、データを登録（ステップ４０７）する。テスト結果レコードのうち、内容を変更できるフィールドは「実行日」、「担当者」、「結果判定」、「次回実行プロセス」、及び「プロセス変更理由」である。
【００６８】
このとき、テスト担当者は今回のテスト対象機種で実行した各テスト項目の内容を吟味する。そして、そのテスト項目は次回の新機種のテストの際には別のプロセスで行われるべきだと判断したら、「次回実行プロセス」のフィールド値を変更して適切と思われるプロセスを入力するとともに、「プロセス変更理由」にそのように判断した理由を入力する。
【００６９】
このような入力が行われた後にテスト結果レコードの変更内容が登録されると、テスト結果管理部１０４は登録されたテスト結果レコードにおいて、「今回実行プロセス」と「次回実行プロセス」のフィールド値が異なるかどうかを判定（ステップ４０８）し、異なる場合にはその旨を管理者宛に通知（ステップ４０９）する。
【００７０】
ここで、通知方法としては、例えば電子メールが考えられるが、これに限るものではない。他にも、インスタントメッセージングや、各種グループウェアに備えられている通知機能などを利用してもかまわない。また、通知先も管理者だけに限る必要はない。
【００７１】
管理者は、テスト結果レコードの「次回実行プロセス」のフィールド値が変更されたことが通知されてきた場合、その変更内容や変更理由を確認する。そして、この変更が適切かどうかを判断し、変更が適切でないと判断した場合には、内容を修正する（ステップ４１０）。
【００７２】
以上で説明したステップ４０１〜４１０で、１つの項目のテスト項目に対するテスト結果の処理が終了する。
【００７３】
全てのテスト項目についての処理が終了したかどうかを判定（ステップ４１１）し、処理が終了していないテスト項目が残っている場合には、ステップ４０５に戻って残りのテスト項目についての処理を続行する。
【００７４】
＜テストセットの処理終了＞
図６は、全テスト項目のテスト結果の処理が終了したときのテスト結果データベースのレコードの状態を示している。
【００７５】
図６に示すように、テスト結果データベース１０９において「テストセットＩＤ」のＩＤ番号が２である６つのレコード（「テスト結果ＩＤ」のＩＤ番号が４〜９）の内容が、新規テストセットを作成したときの状態（図５参照）から更新されている。
【００７６】
「テスト結果ＩＤ」のＩＤ番号が４であるレコードでは、「実行日」の日付は“０２／９／３”であり、「担当者」の氏名は“担当Ａ”で、「結果判定」のフィールド値は“ＯＫ”である。「今回実行プロセス」と「次回実行プロセス」のフィールド値はともに“プロセスａ”であるので、対応するテスト項目が今回は“プロセスａ”で実行され、次回もそのまま“プロセスａ”で実行されるべきであると判断されたことを示している。
【００７７】
「テスト結果ＩＤ」のＩＤ番号が５であるレコードでは、「実行日」の日付は“０２／９／３”であり、「担当者」の氏名は“担当Ｂ”で、「結果判定」のフィールド値は“ＯＫ”である。「今回実行プロセス」と「次回実行プロセス」のフィールド値はともに“プロセスａ”であるので、対応するテスト項目が今回は“プロセスａ”で実行され、次回もそのまま“プロセスａ”で実行されるべきであると判断されたことを示している。
【００７８】
「テスト結果ＩＤ」のＩＤ番号が６であるレコードでは、「実行日」の日付は“０２／９／３”であり、「担当者」の氏名は“担当Ｃ”で、「結果判定」のフィールド値は“ＮＧ”である。「今回実行プロセス」のフィールド値が“プロセスａ”で、「次回実行プロセス」のフィールド値が“プロセスｃ”であるので、対応するテスト項目が今回は“プロセスａ”で実行されたものの、次回は“プロセスｃ”で実行されるべきであると判断されたことを示している。「プロセス変更理由」には、その判断の理由（理由４）が入力されている。
【００７９】
「テスト結果ＩＤ」のＩＤ番号が７であるレコードでは、「実行日」の日付は“０２／９／４”であり、「担当者」の氏名は“担当Ｄ”で、「結果判定」のフィールド値は“ＯＫ”である。「今回実行プロセス」のフィールド値が“プロセスｂ”で、「次回実行プロセス」のフィールド値が“プロセスａ”であるので、対応するテスト項目が今回は“プロセスｂ”で実行されたものの、次回は“プロセスａ”で実行されるべきであると判断されたことを示している。「プロセス変更理由」には、その判断の理由（理由５）が入力されている。
【００８０】
「テスト結果ＩＤ」のＩＤ番号が８であるレコードでは、「実行日」の日付は“０２／９／４”であり、「担当者」の氏名は“担当Ｄ”で、「結果判定」のフィールド値は“ＮＧ”である。「今回実行プロセス」と「次回実行プロセス」のフィールド値はともに“プロセスｂ”であるので、対応するテスト項目が今回は“プロセスｂ”で実行され、次回もそのまま“プロセスｂ”で実行されるべきであると判断されたことを示している。
【００８１】
「テスト結果ＩＤ」のＩＤ番号が９であるレコードでは、「実行日」の日付は“０２／９／５”であり、「担当者」の氏名は“担当Ｅ”で、「結果判定」のフィールド値は“ＯＫ”である。「今回実行プロセス」のフィールド値が“プロセスｃ”で、「次回実行プロセス」のフィールド値が“プロセスｂ”であるので、対応するテスト項目が今回は“プロセスｃ”で実行されたものの、次回は“プロセスｂ”で実行されるべきであると判断されたことを示している。「プロセス変更理由」には、その判断の理由（理由６）が入力されている。
【００８２】
ステップ４０３で指示された「テストセットＩＤ」の特定のＩＤ番号に対応するテストセットに含まれる全テスト項目のテスト結果の処理が終了したと管理者が判断した場合には、テストセットの処理終了を指示（ステップ４１２）する。
【００８３】
＜テスト項目レコードの更新＞
図７は、更新後のテスト項目データベース１０８におけるテスト項目レコードの状態を示している。
【００８４】
図７に示すように、テスト項目データベース１０８に登録されている６つのレコードのうち３つのレコード（「テストＩＤ」のＩＤ番号が３、４、６）の内容が、新規テストセットを作成する前の状態（図２参照）から更新されている。
【００８５】
ステップ４１２でテストセットの処理終了が指示されると、テスト項目管理部１０２によって、ステップ４０３で指示されたＩＤ番号を「テストセットＩＤ」に持つすべてのテスト結果レコードの中から、「今回実行プロセス」と「次回実行プロセス」のフィールド値が異なっているテスト結果レコードのみが抽出される。そして、テスト項目データベース１０８において、抽出されたテスト結果レコードの「テストＩＤ」のＩＤ番号に対応する各テスト項目レコードを対象として、「実行プロセス」のフィールド値を、抽出されたテスト結果レコードの「次回実行プロセス」のフィールド値でそれぞれ更新する。
【００８６】
テスト結果データベース１０９における「テストセットＩＤ」のＩＤ番号が２であるテスト結果レコードは６つあり、それらの「テスト結果ＩＤ」のＩＤ番号は４〜９である。そのうち、「今回実行プロセス」と「次回実行プロセス」のフィールド値が異なっている３つのテスト結果レコードが抽出され、それらの「テスト結果ＩＤ」のＩＤ番号は６、７、９である。
【００８７】
まず、「テスト結果ＩＤ」のＩＤ番号が６であるテスト結果レコードにおいて、「テストＩＤ」のＩＤ番号は３であり、「次回実行プロセス」のフィールド値は“プロセスｃ”である。これにより、テスト項目データベース１０８において、「テストＩＤ」のＩＤ番号が３であるテスト項目レコードの「実行プロセス」のフィールド値が“プロセスａ”から“プロセスｃ”に更新される。
【００８８】
次に、「テスト結果ＩＤ」のＩＤ番号が７であるテスト結果レコードにおいて、「テストＩＤ」のＩＤ番号は４であり、「次回実行プロセス」のフィールド値は“プロセスａ”である。これにより、テスト項目データベース１０８において、「テストＩＤ」のＩＤ番号が４であるテスト項目レコードの「実行プロセス」のフィールド値が“プロセスｂ”から“プロセスａ”に更新される。
【００８９】
最後に、「テスト結果ＩＤ」のＩＤ番号が９であるテスト結果レコードにおいて、「テストＩＤ」のＩＤ番号は６であり、「次回実行プロセス」のフィールド値は“プロセスｂ”である。これにより、テスト項目データベース１０８において、「テストＩＤ」のＩＤ番号が６であるテスト項目レコードの「実行プロセス」のフィールド値が“プロセスｃ”から“プロセスｂ”に更新される。
【００９０】
このような更新によって、テスト項目データベースにおけるテスト項目レコードの「実行プロセス」のフィールド値が変更されると、同一プロセス内で実行されるテスト項目間の順序を示していた「実行順序」の番号も変更が必要になる。
【００９１】
そこで、テスト項目データベース１０８において、テスト項目レコードを「実行プロセス」の更新後のフィールド値によって再分類する。同一フィールド値を持ち、同一プロセスに対応するテスト項目レコードをそれぞれまとめ、それらの「実行順序」の番号が各プロセス内でユニークな連番となるように、「実行順序」の番号を更新（ステップ４１３）する。
【００９２】
この更新のアルゴリズムについては様々なものが考えられるが、単にテスト項目レコードが並んでいる順に１から連番をつけてもよいし、従来技術として参照した特許文献１に示されているように、実行した日付の新しいテスト項目レコードから昇順に並ぶようにしてもよい。
【００９３】
上述した更新が行われた後のテスト項目データベースにおいて、「実行プロセス」のフィールド値が“プロセスａ”であるテスト項目レコードは３つあり、それらの「テストＩＤ」のＩＤ番号は１、２、４である。ここでは、これらの３つのレコードの「実行順序」には、ＩＤ番号の昇順に１、２、３を入れる。
【００９４】
「実行プロセス」のフィールド値が“プロセスｂ”であるテスト項目レコードは２つあり、それらの「テストＩＤ」のＩＤ番号は５、６である。これらの２つのレコードの「実行順序」には、ＩＤ番号の昇順に１、２を入れる。
【００９５】
「実行プロセス」のフィールド値が“プロセスｃ”であるテスト項目レコードは残りの１つであり、その「テストＩＤ」のＩＤ番号は３である。このレコードの「実行順序」には１を入れる。
【００９６】
以上の説明のようにして、各テスト項目レコードの「実行プロセス」や「実行順序」が更新されると、すべてのテスト項目に渡ってテストの実行プロセスが見直されるため、テスト全体が最適化されることになる。それを次回開発する製品に適用すれば、今回よりもさらに適切なプロセスにて製品のテストが実施されることになる。
【００９７】
＜プログラム及び記録媒体＞
以上で説明した本発明のテストプロセス管理装置は、コンピュータでテストプロセス管理の処理を実行させるテストプロセス管理プログラムによって実現されている。コンピュータとしては、パーソナルコンピュータやワークステーションなどの汎用的なものが考えられるが、これに限るものではない。
【００９８】
これにより、テストプロセス管理プログラムが実行可能なコンピュータ環境さえあれば、どこにおいても本発明のテストプロセス管理装置を実現することができる。
【００９９】
テストプロセス管理プログラムを汎用的なコンピュータで実行可能なものにしておけば、本発明のテストプロセス管理装置を実現するために専用のコンピュータ環境を準備する必要もなくなる。既存のコンピュータなどを有効利用することが可能になるとともに、コンピュータを本発明のテストプロセス管理装置として利用しないときは、他の用途にも転用可能である。コンピュータがマルチタスク動作可能なシステムであれば、本発明のテストプロセス管理装置として利用しながら同時に他の用途にも使用できるなど、本発明の有用性は高いものとなる。
【０１００】
また、そのようなテストプロセス管理プログラムは、コンピュータに読み取り可能な記録媒体に記録されていてもよい。記録媒体としては、メモリ、例えばＲＯＭのように、そのもの自体がプログラムメディアであってもよいし、また、外部記憶装置としてコンピュータ読み取り装置が設けられ、そこに記憶媒体、例えばＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなどを挿入することで読み取り可能なプログラムメディアであってもよい。
【０１０１】
いずれの場合においても、格納されているプログラムは、マイクロプロセッサがアクセスして実行させる構成であってもよい。あるいは、まずプログラムを読み出し、読み出されたプログラムが不図示のコンピュータプログラム記憶領域にロードされて、そのプログラムが実行される方式であってもよい。なお、このロード用プログラムは予め装置本体に格納されているものとする。
【０１０２】
ここで、上記プログラムメディアは、本体と分離可能に構成される記録媒体であり、磁気テープやカセットテープなどのテープ系、ＦＤ（フレキシブルディスク）やＨＤ（ハードディスク）などの磁気ディスク系、ＣＤ−ＲＯＭ／ＭＯ／ＭＤ／ＤＶＤなどの光ディスク系、ＩＣカード／メモリカード／光カードなどのカード系、あるいは、マスクＲＯＭ／ＥＰＲＯＭ／ＥＥＰＲＯＭ／フラッシュＲＯＭなどによる半導体メモリを含めた固定的にプログラムを坦持する媒体であってもよい。
【０１０３】
これにより、本発明のテストプロセス管理装置を様々な場所や環境で実現することが容易になり、本発明のテストプロセス管理方法の汎用性を高めることができる。
【０１０４】
また、本発明において、インターネットを含む通信ネットワークと接続可能なシステム構成である場合、通信ネットワークからプログラムをダウンロードするように流動的にプログラムを坦持する媒体であってもよい。そのように通信ネットワークからプログラムをダウンロードする場合には、そのダウンロード用プログラムは予め装置本体に格納しておくか、あるいは別の記録媒体からインストールされるものであってもよい。なお、記録媒体に格納されている内容としてはプログラムに限定されず、データであってもよい。
【０１０５】
これにより、物理的な記録媒体の必要なしに、本発明のテストプロセス管理装置を様々な場所や環境で実現することが容易になり、本発明のテストプロセス管理方法の汎用性を一層高めることができる。
【０１０６】
なお、ここでは本発明を上述した実施の形態により説明したが、この発明の主旨の範囲内で種々の変形が可能であり、これらをこの発明の範囲から排除するものではない。
【０１０７】
【発明の効果】
以上詳述した通り、本発明のテストプロセス管理装置及びテストプロセス管理方法によれば、テスト結果管理部へのテスト結果毎に次回のテストを実行する次回実行プロセスを登録できる。この次回実行プロセスは、今回のテストを実行したプロセスとは必ずしも同じでなくてよい。テスト担当者がテスト結果毎の登録を行う際、結果判定やテスト項目の内容などを考慮して、対応するテスト項目が本来別のプロセスで実行すべきであると気づいた場合には、次回実行プロセスとして今回実行したプロセスとは異なるプロセスを指定できる。そして、すべてのテスト結果の登録終了後に、登録されたテスト結果毎の次回実行プロセスに基づいて、テスト項目管理部に登録して管理されているテスト項目毎の実行プロセスが更新され、更新された実行プロセスに基づいてテスト項目が再分類される。
【０１０８】
これにより、個々のテスト項目がそれぞれ、より適切なテストプロセスに自動的に移動するため、複数のテストプロセスに渡ってテスト全体の最適化が行われ、次回からはより適切なテストが行えるようになる。
【０１０９】
なお、任意のテスト結果について登録済みの情報を更新できるテスト結果更新機能を備えるようにすれば、テスト結果管理部に一度登録したテスト項目毎の登録情報について、登録後でも情報の更新ができる。この更新は、最初の登録を行ったテスト担当者以外によるものであってもよい。このため、テスト担当者にテストプロセスの変更を指示できるスキルがない場合や変更の意思がない場合でも、別の担当者や管理者が結果一覧を参照した際に内容を閲覧して再度判断し、別のプロセスに直接変更したり、変更を指示したりできる。これにより、プロセスの改善の機会が増えて、より広範囲での見直しが行われることになる。
【０１１０】
あるいは、テスト結果登録部にて登録する項目として、プロセス変更理由を持つようにすれば、テスト結果の登録を行ったテスト担当者が、次回実行プロセスを変更した際の理由を、管理者などが登録後に確認できる。これにより、変更の是非の判断材料にすることができるばかりか、テスト担当者のスキルも確認することができる。
【０１１１】
あるいは、今回実行プロセスと次回実行プロセスに異なる値が入力された場合に、その旨を所定の通知先、例えばテストプロセス管理者などに、所定の通知方法で通知するテストプロセス変更内容通知機能を備えるようにすれば、管理者などによる変更状況の確実な把握が保証される。これにより、テスト担当者の判断ミスなどによる次回実行プロセスの不適切な変更が放置されるのを防止するとともに、必要であれば、管理者などが次回実行プロセスを再度見直すことで、データの精度がより一層向上する。
【０１１２】
また、本発明のテストプロセス管理プログラムによれば、プログラムが実行可能なコンピュータ環境さえあれば、どこにおいても本発明のテストプロセス管理装置を実現することができる。さらに、このテストプロセス管理プログラムを汎用的なコンピュータで実行可能なものにしておけば、本発明のテストプロセス管理装置を実現するために専用のコンピュータ環境を準備する必要もなくなり、本発明のテストプロセス管理プログラムの有用性が高まる。
【０１１３】
また、本発明のテストプロセス管理プログラムを記録した記録媒体によれば、本発明のテストプロセス管理装置を様々な場所や環境で実現することが容易になり、本発明のテストプロセス管理方法の汎用性を高めることができる。
【図面の簡単な説明】
【図１】本発明の１実施形態におけるテストプロセス管理装置の全体構成を示すブロック図である。
【図２】テスト項目データベースのレコード形式とレコードの状態の例を示している。
【図３】テスト結果データベースのレコード形式とレコードの状態の例を示している。
【図４】本発明の１実施形態におけるテストプロセス管理装置によるプロセス管理動作を説明するフローチャートである。
【図５】新規テストセット作成直後のテスト結果データベースのレコードの状態である。
【図６】全テスト項目のテスト結果の処理が終了したときのテスト結果データベースのレコードの状態を示している。
【図７】更新後のテスト項目データベース１０８におけるテスト項目レコードの状態を示している。
【符号の説明】
１０１  テストプロセス管理装置
１０２  テスト項目管理部
１０３  テスト一覧表示部
１０４  テスト結果管理部
１０５  ディスプレイ
１０６  キーボード
１０７  ハードディスク装置
１０８  テスト項目データベース
１０９  テスト結果データベース
１１０  ネットワーク
【図１】
2004246794.tif 000003
【図２】
2004246794.tif 000004
【図３】
2004246794.tif 000005
【図４】
2004246794.tif 000006
【図５】
2004246794.tif 000007
【図６】
2004246794.tif 000008
【図７】
2004246794.tif 000009