(57)【特許請求の範囲】
【請求項１】
ソフトウェアを開発する工程で作成される成果物と、不具合に関する情報と、該不具合が発生した試験に関する情報とを登録する登録部と、
前記不具合が発生した試験に関する情報に基づき、前記成果物内の前記不具合が発生した試験に対応した不具合箇所を特定し、前記不具合が発生した試験に関する情報と、前記不具合箇所に関する情報と、前記不具合に関する情報とを関連付けた関連付け情報を作成する関連付け部と、
前記関連付け情報に基づき、前記不具合に関する情報と、前記不具合が発生した試験に関する情報と、前記不具合箇所に関する情報とを表示の項目として、それぞれ対応付けて表示する表示部とを有し、
前記成果物は、ソフトウェアを開発する各工程で作成され、階層的に構成されるドキュメントを少なくとも含み、
前記関連付け部は、さらに、前記ドキュメント内のセクション番号を前記不具合箇所に関する情報として、前記関連付け情報を作成し、該関連付け情報に基づいて前記不具合が発生した試験に関する情報に対応するドキュメントのセクションの上位の階層に含まれる全てのセクションに対応する試験に関する情報を特定し、該特定された試験に関する情報も関連付けて関連付け情報を作成し、
前記表示部は、さらに、前記特定された試験に関する情報も項目として、対応付けて表示することを特徴とするソフトウェア開発支援システム。
【請求項２】
請求項１に記載のソフトウェア開発支援システムにおいて、さらに、
前記表示部によって表示された項目のうちから選択された項目に対応する実体データを表示する実体表示部と、
前記実体表示部によって表示された実体データに対する修正を受け付け、修正後に前記実体データを保存する修正部と、
を有するソフトウェア開発支援システム。
【請求項３】
請求項２に記載のソフトウェア開発支援システムにおいて、さらに、
前記修正された実体データを用いて、前記不具合が発生した試験を実施する検証部を有するソフトウェア開発支援システム。
【請求項４】
請求項１乃至請求項３のいずれか１項に記載のソフトウェア開発支援システムにおいて、
前記関連付け部は、さらに、ユーザに関する情報も関連付けて関連付け情報を作成し、
前記表示部は、さらに、前記関連付け情報に基づき、該表示部を用いるユーザに応じて、表示する、または表示しない項目を選択し、表示すると選択した項目のみを一覧表示するソフトウェア開発支援システム。
【請求項５】
請求項２または３に記載のソフトウェア開発支援システムにおいて、
前記関連付け部は、さらに、ユーザに関する情報も関連付けて関連付け情報を作成し、
前記表示部は、さらに、前記関連付け情報に基づき、該表示部を用いるユーザに応じて、表示する、または表示しない項目を選択し、表示すると選択した項目のみを一覧表示し、
前記実体表示部は、前記表示部によって表示された項目のうちから選択された項目に対応する実体データを表示し、
前記修正部は、さらに、前記関連付け情報に基づき、ユーザに応じて前記実体表示部によって表示された実体データに対する修正を許可するか否かを判定するソフトウェア開発支援システム。
【請求項６】
請求項３に記載のソフトウェア開発支援システムにおいて、
前記関連付け部は、さらに、前記不具合が発生した試験に関する情報に関連する試験に関する情報を特定し、該特定された試験に関する情報も関連付けて関連付け情報を作成し、
前記検証部は、さらに、該関連付け情報に基づき、前記不具合が発生した試験に関連する試験も実施するソフトウェア開発支援システム。
【請求項７】
ソフトウェアを開発する工程で作成される成果物と、不具合に関する情報と、該不具合が発生した試験に関する情報とを記憶部に記憶させ、
前記不具合が発生した試験に関する情報に基づき、前記成果物内の前記不具合が発生した試験に対応した不具合箇所を特定し、前記不具合が発生した試験に関する情報と、前記不具合箇所に関する情報と、前記不具合に関する情報とを関連付けた関連付け情報を作成し、記憶部に記憶させ、
前記関連付け情報に基づき、前記不具合に関する情報と、前記不具合が発生した試験に関する情報と、前記不具合箇所に関する情報とを表示の項目として、それぞれ対応付けて表示する処理をコンピュータに実行させ、
前記成果物は、ソフトウェアを開発する各工程で作成され、階層的に構成されるドキュメントを少なくとも含み、
前記関連付け情報の作成において、前記ドキュメント内のセクション番号を前記不具合箇所に関する情報として、前記関連付け情報を作成し、該関連付け情報に基づいて前記不具合が発生した試験に関する情報に対応するドキュメントのセクションの上位の階層に含まれる全てのセクションに対応する試験に関する情報を特定し、該特定された試験に関する情報も関連付けて関連付け情報を作成し、
前記項目の表示において、前記特定された試験に関する情報も項目として、対応付けて表示することを特徴とするソフトウェア開発支援プログラム。
【請求項８】
コンピュータが、
ソフトウェアを開発する工程で作成される成果物と、不具合に関する情報と、該不具合が発生した試験に関する情報とを記憶部に記憶させ、
前記不具合が発生した試験に関する情報に基づき、前記成果物内の前記不具合が発生した試験に対応した不具合箇所を特定し、前記不具合が発生した試験に関する情報と、前記不具合箇所に関する情報と、前記不具合に関する情報とを関連付けた関連付け情報を作成し、記憶部に記憶させ、
前記関連付け情報に基づき、前記不具合に関する情報と、前記不具合が発生した試験に関する情報と、前記不具合箇所に関する情報とを表示の項目として、それぞれ対応付けて表示し、
前記成果物は、ソフトウェアを開発する各工程で作成され、階層的に構成されるドキュメントを少なくとも含み、
前記関連付け情報の作成において、前記ドキュメント内のセクション番号を前記不具合箇所に関する情報として、前記関連付け情報を作成し、該関連付け情報に基づいて前記不具合が発生した試験に関する情報に対応するドキュメントのセクションの上位の階層に含まれる全てのセクションに対応する試験に関する情報を特定し、該特定された試験に関する情報も関連付けて関連付け情報を作成し、
前記項目の表示において、前記特定された試験に関する情報も項目として、対応付けて表示することを特徴とするソフトウェア開発支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ソフトウェアの開発を支援する技術に関する。
【背景技術】
【０００２】
ソフトウェアの開発は、まず要件を定義し、その後、設計、製造、試験の工程順で行われ、各工程でドキュメントやソースコード等が作成される。また、開発規模が大きくなる程、開発に携わる担当者の数も増加する。
【０００３】
関連する技術として、以下の文献が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００４−２５２７１９号公報
【特許文献２】特開２００９−５３７７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
開発期間短縮を図るに際し、開発対象ソフトウェアの不具合修正工数の占める割合が問題となる。また、既存のソフトウェアを流用して開発するときに、今回の開発範囲外の機能についての不具合が発生した場合、その機能を熟知していない担当者が修正するケースも少なくない。大規模開発や短納期開発でも同様に、機能を開発した担当者（設計担当／コーディング担当）と不具合を修正する担当者（試験工程での不具合修正担当者）が異なるケースが多い。
【０００６】
また、開発担当外の不具合修正担当者に対し不具合に関連する該当ドキュメントが提供されない場合もある。この場合、不具合修正担当者は、自ら該当資料やソースコード内の該当箇所を探すこととなり修正に時間がかかることとなる。また、試験担当者と不具合修正担当者との間で、不具合の内容や最新仕様の認識に齟齬がある場合、不具合修正工数の増加が発生することとなる。
【０００７】
また、異なる表現で報告された同じ不具合を複数の人間が修正するといった重複時間や、後戻り作業時間、各担当者間での認識合わせのための時間など、ソフトウェア開発の後工程では、開発に携わるメンバーが多くなることに起因する工数が多くなる。
【０００８】
本発明の実施形態は、上述した問題点を解決するためになされたものであり、不具合の修正を行う際に、開発担当者や不具合修正者が修正箇所や正しい修正内容を効率よく特定できるように支援する技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決するため、本実施形態のソフトウェア開発支援システムは、登録部と、関連付け部と、表示部とを有する。登録部は、ソフトウェアを開発する工程で作成される成果物と、不具合に関する情報と、不具合が発生した試験に関する情報とを登録する。関連付け部は、不具合が発生した試験に関する情報に基づき、成果物内の不具合が発生した試験に対応した箇所を特定し、不具合が発生した試験に関する情報と、特定箇所に関する情報と、不具合に関する情報とを関連付けた関連付け情報を作成する。表示部は、関連付け情報に基づき、不具合に関する情報と、不具合が発生した試験に関する情報と、特定箇所に関する情報とを表示の項目として、それぞれ対応付けて表示する。
【図面の簡単な説明】
【００１０】
【図１】実施形態に係るソフトウェア開発支援システムの構成の一例を示す機能ブロック図である。
【図２】実施形態で用いられる要件定義書、設計書、ソースコードの一例を示す図である。
【図３】実施形態で用いられる試験仕様書、試験データの一例を示す図である。
【図４】実施形態で用いられる不具合情報の一例を示す図である。
【図５】実施形態に係る関連付け情報作成部の動作の一例を示すフローチャートである。
【図６】実施形態に係る関連付け情報作成部が作成する関連付け情報の一例を示す図である。
【図７】実施形態に係るソフトウェア開発支援システムの表示例、画面遷移の一例を示す図である。
【図８】実施形態に係る、担当とユーザＩＤとの対応例、および関連付け情報に開示ユーザＩＤが関連付けられた場合の一例を示す図である。
【図９】実施形態に係る編集部、検証部、不具合情報更新部を用いたソースコードの修正、再試験の処理例を示すフローチャートである。
【図１０】実施形態に係る関連付け情報に、関連試験項目が関連付けられた場合の一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態について図面を参照しつつ説明する。
【００１２】
図1に、本実施の形態に係るソフトウェア開発支援システムの機能ブロックの一例を示す。ソフトウェア開発支援システム１００は、ユーザからの情報入力を受け付けるキーボードやマウス、ユーザに情報を表示するモニター、および、ＣＰＵ（Central Processing Unit）、メモリ、ＨＤＤ（Hard disk drive）を有するコンピュータの各ハードウェアによって構成されており、これら各ハードウェア資源と、ＨＤＤに予め導入されたプログラムとが協働することで、図１に示した各機能部が実現される。
【００１３】
登録部１は、ユーザの指示に応じて、各工程で作成された成果物である実体ファイル群Ａ（要件定義書、設計書、試験仕様書の各ドキュメントファイル、ソースコードや試験実施時に用いられる試験データ）や、試験実施時に発生した不具合に関する情報である不具合情報Ｂを記憶部９に記憶する。登録部１は、不具合情報Ｂを記憶部９に記憶させる不具合登録部１１、実体ファイル群Ａを記憶部９に記憶させる関連ファイル登録部１２を有する。また、登録部１は、不具合登録部１１、関連ファイル登録部１２の登録処理に際し、いずれのファイルを登録するか等のユーザの選択操作を支援する操作部１３を有する。
【００１４】
関連付け情報作成部２は、記憶部９に記憶されている要件定義書、設計書、試験仕様書内のセクション番号（章番号、節番号）、ページ番号および識別符号と、ソースコードのステップ番号、関数名と、不具合情報Ｂ内のデータ（例えば試験の識別符号、不具合の識別符号）を関連付けた情報である関連付け情報８を記憶部９内に作成する。関連付け情報作成部２は、ソフトウェア開発支援システム１００自身が関連付けを行う自動関連付け部２１と、ユーザによる手動操作で関連付けを行う手動関連付け部２２、手動関連付操作部２３とを有する。
【００１５】
表示部３は、関連付け情報８で関連付けられた情報に基づき、不具合項目ごとに、その不具合項目に関連付けられたドキュメントのセクション番号やソースコードの該当箇所（具体的にはソースコードファイル名、関数名であるが、ステップ番号でもよい）を、対応付けて一覧表示する。表示部３の不具合関連情報一覧表示作成部３２は、ドキュメント、各ソースコード等の該当箇所が特定できる情報（例えばセクション番号や関数名）がそれぞれ対応付けられた画面イメージを作成する。また、表示部３の一覧表示画面３１は、この作成された画面イメージを一覧表示する。
【００１６】
実体表示部４は、表示部３が表示している表示一覧から、ユーザに選択されたドキュメントのセクションやソースコードの該当箇所、試験データや不具合情報Ｂなどの実体データを表示する。実体表示部４は、既存のアプリケーションを起動する手段だけを有する場合も含む。実体表示部４は、ユーザによるデータの選択を支援し、一覧表示画面から選択された項目を取得し、該当する実体を記憶部９から取得する実体選択操作部４２を有し、また、選択されたデータの実体を表示する実体表示画面４１を有する。
【００１７】
編集部５は、ユーザによるソースコードやドキュメントなどの修正を支援する編集機能と、編集後のデータを保存する機能を有する。編集部５は、実体表示画面４１で表示された実体データに対しての修正を支援するソース修正操作部５１、ドキュメント修正操作部５２を有し、また修正されたデータをファイルに更新する編集結果保存部５３を有する。これらの機能は、既存のアプリケーションで提供されてもよい。
【００１８】
検証部６は、試験データを用いて試験を実施する機能部である。検証部６は、新規、または修正されたソースコードをコンパイル、ビルドし、実行形式のモジュールファイルを作成する実行モジュール作成部６１を有し、手動または実施手順が定義されたスクリプトを実行することで自動的に試験を行う試験実行部６２を有する。検証部６は、いずれの不具合についての試験を実行するかをユーザに問い合わせ、試験の実行許可を取得し、試験実行部６２による試験結果を表示するユーザ操作部６３を有する。
【００１９】
不具合情報更新部７は、検証部６によって行われた検証の結果を元に、不具合情報Ｂを更新する。
【００２０】
次に、本実施の形態で使用する各種データの一例を、図２〜図４に示す。以下の例では、「情報配信システム」を開発対象のシステムとし、特に、「情報配信システム」の「メール送信機能」を一例として説明する。
【００２１】
図２（Ａ）は、要件定義書の一例を示しており、図２（Ｂ）は設計書、図２（Ｃ）は、ソースコードの一例を示している。要件定義書のセクション、設計書のセクションには、手動またはトレーサビリティ技術を用いて、それぞれ識別符号（以下、ＩＤと称する）が付される。例えば章項目の「通知機能」の場合、ＲＤ０００１、ＳＤ０１＿ＲＤ０００１のＩＤが要件定義書、設計書それぞれに付されており、節項目の「メール送信機能」にはＲＤ０００１０１、ＳＤ＿ＲＤ０００１０１のＩＤが要件定義書、設計書それぞれに付されている。図２（Ａ）、図２（Ｂ）に示すように、例えば要件定義書の章「通知機能」のＩＤはＲＤ０００１であり、設計書の章「通知機能」のＩＤはＲＤ０００１を含んだ符号、すなわちＳＤ０１＿ＲＤ０００１となっている等、設計書に付されるＩＤは、要件定義書に付されるＩＤを含んだものとなっている。
【００２２】
また本実施形態の設計書には、「関数名：」の後に当該機能を実装するための実際の関数名が記されている（図２（Ｂ）参照）。尚、図２（Ｃ）において、ソースコードファイルには本来ステップ番号は付されていないが、図２（Ｃ）には便宜上ステップ番号を付してある。
【００２３】
図３（Ａ）は、試験仕様書の一例を示しており、図３（Ｂ）は、試験を行うときに用いられるデータの一例を示している。本例において、試験仕様書では、「メール送信機能」に新たなＩＤ：０００９が付されており、試験項目の「決められた時間に送信する」には、０００９−１のＩＤが付されている。また試験仕様書内には、試験ごとに、関連図書の情報として、要件定義書の該当するセクション番号、設計書の該当するセクション番号、および、これらに付されたＩＤが記される。
【００２４】
また、図３（Ｂ）にも示すように、試験仕様書の各項目に付されたＩＤと同じフォルダ名やフォルダ構成となるようにフォルダを記憶部９に作成し、その中に試験データが格納される。
【００２５】
図２、図３は、試験を行う前に登録部１により事前に記憶部９に記憶された情報であり、一方、図４に示す不具合情報は、試験を行った結果の情報である。不具合情報は、不具合ＩＤ、不具合の内容を短文で示した「不具合項目」、試験仕様書で記されたＩＤと同一のＩＤとなる「試験ＩＤ」、機能名や機能の簡単な説明文を示す「関連項目キー」、および試験結果、試験の詳細内容で構成されている。
【００２６】
次に、これらの各ドキュメント、ソースコードをソフトウェア開発支援システム１００が関連付ける処理の動作例を、図５のフローチャートを用いて説明する。
【００２７】
まず、登録部１は、ユーザが入力した不具合情報Ｂを取得し、記憶部９にこの情報を記憶させる（Ｓ１）。ユーザは、図４で示した情報を、モニター上に表示された入力用フォームから手動で入力してもよいし、所定形式でファイルとして作成し、所定フォルダに格納してもよい。また、不具合情報の登録は、試験成績書（試験仕様書に合否結果が記述されたもの）などに基づき自動的に生成、登録されてもよい。
【００２８】
関連付け情報作成部２は、不具合情報Ｂから試験ＩＤを取得し、試験ＩＤに基づき、関連する情報（要件仕様書関連箇所、設計書記述箇所、ソースコードの関数名の場所、試験データ、試験手順など）を特定し、これらを不具合ＩＤと対応付けた関連付け情報８を作成する（Ｓ２）。
【００２９】
図２から図４で示した各データを例にＳ２について説明すると、関連付け情報作成部２は、不具合情報Ｂ内の試験ＩＤ：０００９−１で試験仕様書内を検索し、該当するセクション（「メール通知機能」の章、節）を特定する。また関連付け情報作成部２は、試験仕様書内の該当箇所に記されている「関連図書」を参照することで、要件定義書内の該当節番号（６．１）およびＩＤ（ＲＤ０００１０１）を特定し、設計書内の該当節番号（１０．１）およびＩＤ（ＳＤ０１＿ＲＤ０００１０１）を特定する。関連付け情報作成部２は、さらに設計書内の該当節内から「関数名：」の文字を検索し、当該関数が定義されているソースコードのファイル名、およびソースコードのファイル内の該当箇所（ステップ番号）を特定する。試験データは、当該試験データが格納されているフォルダ名、フォルダ構成より特定される。
【００３０】
次に、関連付け情報作成部２は、不具合情報Ｂ内の関連項目キーから各種情報と関連付けを行う（Ｓ３）。関連付け情報作成部２は、不具合情報Ｂから関連項目キーを取得し、関連項目キーに基づき、関連する情報（要件仕様書関連箇所、設計書記述箇所、ソース関数名の場所、試験データ、試験手順など）を特定し、これらを不具合ＩＤと対応付けた関連付け情報８を作成する。
【００３１】
図２から図４で示した各データを例にＳ３について説明する。関連付け情報作成部２は、不具合情報Ｂ内の関連項目キー：「決められた時間に送信する」の文字列を、試験仕様書内から検索し、該当セクション（「メール通知機能」の章、節）を特定する。また関連付け情報作成部２は、試験仕様書内から特定されたセクションのセクション名である「メール送信機能」の文字列を取得し、この「メール送信機能」の文字列を要件定義書内、設計書内から検索し、それぞれ該当節番号を特定する。関連付け情報作成部２は、さらに設計書内の該当節内から「関数名：」の文字を検索し、当該関数が定義されているソースコードのファイル名、およびソースコードのファイル内の該当箇所（ステップ番号）を特定する。試験データは、当該試験データが格納されているフォルダ名、フォルダ構成より特定される。
【００３２】
関連付け情報作成部２は、Ｓ２、Ｓ３の両方の処理により関連付けを行うか、またはいずれか片方のみでもよい。両方で行うか、または片方のみで関連付けを行うかは設定などにより選択可能とする。
【００３３】
関連付け情報作成部２は、Ｓ２、Ｓ３によって特定された各箇所を対応づけた関連付け情報８を作成する（Ｓ４）。図６に、関連付け情報の一例を示す。関連付け情報は、不具合IDごとに、試験ＩＤなど各ドキュメントの該当箇所やソースコードの該当箇所が定義されている。本実施形態では、該当箇所としてドキュメントファイル名、ページ番号、章番号（節番号）や、ソースコードのファイル名、ステップ番号が関連付け情報８内に登録される。
【００３４】
このように、関連付け情報作成部２は、手動またはトレーサビリティ技術により要件定義書、設計書、試験仕様書、ソースコード間の関連付けが行われている場合は、その情報を利用する。また、関連付け情報作成部２は、関連項目キーを各種仕様書または仕様データから全文（全データ）検索、章節検索、キー検索などを行うことで関連する箇所を検出する。関連付け情報作成部２は、関連項目キーから検出される設計書から関数名やクラス名、メソッド名を抽出してさらにソースコードとの関連付けをする。
【００３５】
図７は、一覧表示部３、実体表示部４によって表示される画面の一例である。図７を参照しつつ、表示部３、実体表示部４による画面遷移および表示内容について説明する。メイン画面（ＭＧ）上には、全プロジェクトツリー（Ｇ１）など複数の画面が一覧表示部３によって表示される。メイン画面（ＭＧ）のメニュー（図示せず）から「不具合関連情報一覧表示機能」がユーザによって選択されると、一覧表示部３は不具合項目一覧（Ｇ２）を表示する。不具合項目一覧は、記憶部９に登録された不具合情報Ｂの「不具合項目」、「不具合ＩＤ」の一覧である。不具合項目一覧（Ｇ２）のうちの１項目が選択（例えばマウスによるクリック）された場合、一覧表示部３、実体表示部４は、関連付け情報８での対応付けに基づき、Ｇ３のように選択された不具合項目に対応する関連情報を一覧表示する。尚、例えば関数名「Ｓ＿ｍａｉｌ（  ）」については関連付け情報８に対応付けされていないが、ソースコードのファイル名およびステップ番号から特定でき、また設計書内から特定することができる。尚、一覧される表示項目を全て事前に対応付けてあってもよい。また、表示形式は、本実施形態では階層図としているが、表形式であってもよい。
【００３６】
一覧情報（Ｇ３）上のひとつ、例えば「Ｓ＿ｍａｉｌ（  ）」が選択された場合、実体表示部４はその実体（Ｇ４）を表示する。ドキュメントの場合も同様であり、例えば「要件定義箇所：６．１」が選択された場合、実体表示部４は、ドキュメントファイルから該当するセクションを特定し、その実体（Ｇ５）を表示する。
【００３７】
尚、一覧表示する前に、一覧表示部３がユーザ認証を行いユーザに応じて表示すべき項目を選定する実装であってもよい。例えば図８（Ａ）のように、担当別にユーザＩＤが定義されている場合、関連付け情報作成部２は、例えば「試験担当者には要件定義書の修正および設計書の閲覧／修正は不可とする」等の、事前に定義された閲覧ポリシーに基づき、図８（Ｂ）のように関連付け情報８に開示ユーザＩＤを関連付けてもよい。すなわち、一覧表示部３は、ログインしたユーザに応じて、表示する、または表示しない項目を選択し、選択結果で表示可の項目のみを一覧表示する。図８の例では、マネージャ、開発者、試験担当者でユーザ分けを行ったが、開発する機能別にユーザを分けてもよい。編集部５も同様に、図８（Ｂ）の関連付け情報８の「編集ユーザＩＤ」に登録されていないユーザがログインした場合は、そのユーザに対しての編集を拒否する。図８の例では、試験担当者は要件定義書の閲覧は可能であるが編集は不可となる。このように編集部５は、図８（Ｂ）のように関連付け情報８の対応関係に基づき、ログインしたユーザに応じて修正を可とするか不可とするかを判断し、不可である場合はアクセス（編集）を拒否する。
【００３８】
次に、ソースコードやドキュメントの修正から再試験までの動作について、図９のフローチャートを参照しつつ説明する。
【００３９】
まず、実体表示部４によって表示されたソースコードやドキュメントに対し、編集部５を介してユーザにより修正が行われる（Ｓ１１）。ソースコードが修正された場合、検証部６は、コンパイルやビルドをすることで修正されたソースコードの実行形式モジュールを作成する（Ｓ１２）。本実施形態では、ソフトウェア開発支援システム１００上からモジュールを作成できるものとする。また、不具合に対する修正箇所のみをビルドの対象にするか、他の修正も含めてビルドするかは選択可能とする。
【００４０】
次に、検証部６は、ユーザの選択により試験の対象（試験の範囲）を設定する（Ｓ１３）。検証部６は、以下の２項目のうち一方をユーザに選択させる。
１．修正した試験項目のみを試験する。
２．修正した試験項目、およびその試験項目に関連する試験項目を試験する。
【００４１】
上記１．は、例えば、ソースコードが修正された場合はそのソースコード単体のみ試験し、また設計書が修正された場合はその修正箇所通りの動作となるか、要件定義書が修正された場合は、その要件を満たしているかの試験が行われる。
【００４２】
上記２．に関して、関連する試験項目を特定する方法について説明する。検証部６（関連付け情報作成部２であってもよい）は、試験を行う試験項目に対応する設計書内の節を特定し（図２（Ｂ）の例では「１０．１  メール送信機能」）、その上位の章を特定する（図２（Ｂ）では「１０  通知機能」）。検証部６は、特定した上位の章に含まれる全ての節を特定し（図２（Ｂ）の例では「１０．２  不通メール確認機能」）、この特定された全ての節と対応関係にある試験項目を、関連する試験項目とする。その他の方法として、検証部６は同じソースコードファイル内の他のクラス名や関数名、関連キーで特定してもよい。この関連する試験項目を特定する処理は、関連付け情報作成部２が関連付け処理を行う際に行われてもよい。この場合、例えば図１０に示すように、関連試験項目に対応した試験ＩＤが関連付け情報８内に保持され、一覧表示部３は関連試験項目も一覧に含めて表示する（対応付けて表示する）。また、どのような方法で関連試験項目を特定するかをユーザに指定させてもよい。
【００４３】
検証部６は、修正されたモジュールが所望の動作となるかを確認するための試験を実行する（Ｓ１４）。関連する試験仕様をユーザが確認しながら、ユーザの手動で試験が行われてもよいし、あらかじめ試験手順が定義されたスクリプト等が用意されていれば、その試験手順に沿って自動的に試験が行われてもよい。また、検証部６は、上述のように実施の対象である試験と関連する試験のＩＤが関連付け情報８に登録されている場合、関連付け情報８に基づき、実施の対象である試験に関連した試験も設定により実施可能とする。
【００４４】
自動的に試験が行われた場合、不具合情報更新部７は、不具合情報Ｂ内の合否の結果を更新する（Ｓ１５）。尚、手動で不具合情報が更新されてもよい。また、手動で試験実行された場合は手動で不具合情報が更新されるものとする。
【００４５】
尚、成果物は、ソフトウェア開発の各工程で作成されるものであり、要件定義書、設計書、ソースコード、試験仕様書や試験データのうちの少なくとも一つ、一部、もしくは全てである。また、上述では、不具合に関する情報（不具合ＩＤや不具合項目）と、不具合が発生した試験に関する情報（試験ＩＤ）および、各工程で作成されて全ての成果物とを関連付け、一覧表示するものとして説明したが、例えばソースコードのみ、設計書のみと関連付けて一覧表示するという実装であってもよい。
【００４６】
関連付け情報８には、本実施形態では不具合ＩＤ、試験ＩＤが、それぞれ不具合に関する情報、不具合が発生した試験に関する情報として登録されるものとして説明したが、不具合の内容が一意と決する情報（本実施形態では不具合項目等）、試験の内容が一意と決する情報であればよい。また、関連付け情報８には、各ドキュメントのドキュメント名（ファイル名）、セッション番号、ページ番号、ソースコードのファイル名、ステップ番号が、成果物における不具合が発生した試験に対応した箇所として登録されるものとしたが、これらも記載箇所が特定できる情報であればよい。
【００４７】
以上より、本実施形態では、成果物の該当箇所を不具合の項目や不具合ＩＤに対応付けて一覧で表示することができるので、開発担当者や不具合修正者が修正箇所や修正内容を効率よく特定できる。
【００４８】
上述した機能をハードウェアと協働して実現するソフトウェア開発支援プログラムは、コンピュータ読み取り可能な記録媒体に格納されていても良い。このコンピュータ読み取り可能な記録媒体は、ディスク、半導体メモリを含む。その形態は、ソフトウェア開発支援システム１００の内部に設けられた記憶装置、ソフトウェア開発支援システム１００の外部に設けられた記憶装置、可搬型記録媒体、他のコンピュータの記憶装置を含む。例えば、可搬型記録媒体がソフトウェア開発支援プログラムを格納し、ソフトウェア開発支援システム１００がこの可搬型記録媒体の読み取り装置を有する場合、ソフトウェア開発支援システム１００はこの記録媒体からソフトウェア開発支援プログラムを読み取っても良い。あるいは、他のコンピュータがソフトウェア開発支援プログラムを格納し、ソフトウェア開発支援システム１００が通信インタフェースを有し、通信インタフェースが他のコンピュータに接続されている場合、ソフトウェア開発支援システム１００は他のコンピュータからソフトウェア開発支援プログラムを受信しても良い。
【００４９】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００５０】
１  登録部、２  関連付け情報作成部、３  一覧表示部、４  実体表示部、５  編集部、６  検証部、７  不具合情報更新部、８  関連付け情報、９  記憶部、１００  ソフトウェア開発支援システム。
【図１】
0005502696.tif 000002
【図２】
0005502696.tif 000003
【図３】
0005502696.tif 000004
【図４】
0005502696.tif 000005
【図５】
0005502696.tif 000006
【図６】
0005502696.tif 000007
【図７】
0005502696.tif 000008
【図８】
0005502696.tif 000009
【図９】
0005502696.tif 000010
【図１０】
0005502696.tif 000011