(57)【要約】【課題】ソフトウェア開発における要件や機能の変更に伴い仕様書及びソースコードへの修正が過不足なく実施されたかを確認できるソフトウェア修正漏れ確認システムを提供する。【解決手段】サーバ８は、サーバ８内に、仕様書を管理する仕様書管理用テーブル１と、ソースコードを管理するソースコード管理用テーブル２と、仕様書間、及び仕様書-ソースコード間での項目間の関連を定義する仕様書・ソースコード関連テーブル３と、ベースライン管理するベースライン管理テーブル４と、修正対象となる仕様書やソースコードを特定する処理を行う修正対象仕様書・ソースコード特定処理部５と、修正対象一覧を作成し表示するための処理を行う修正対象一覧作成処理部６と、各仕様書に対する修正報告書の自動作成処理を行う修正報告書作成処理部７と、を含む。【選択図】図１
2008004029.tif 000002
【特許請求の範囲】
【請求項１】
ソフトウェア開発に関わる仕様書及びソースコードのトレーサビリティの確保を可能とするシステムにおいて、
要件や機能を示した図表に対して修正を要する要件や機能を入力する入力手段と、
入力された前記修正を要する要件や機能について、ソフトウェア開発により作成された仕様書及びソースコードの構成管理を行うデータベースと各仕様書間及び仕様書とソースコード間のトレーサビリティ管理やベースライン管理を行う管理テーブルとに格納された各種情報に基づいて修正対象仕様書及びソースコードを特定処理する修正対象特定処理手段と、
前記特定処理に基づいて修正対象一覧を作成し表示する修正対象一覧作成手段と、
表示された前記修正対象一覧を確認し修正対象仕様書及びソースコードの修正を実施する修正実施手段と、
前記修正を実施した際に修正対象間での関連を維持しつつ、修正対象と修正済項目を識別可能な形式で表した修正報告書を作成し出力する修正報告書作成出力手段と、
を備えることを特徴とするソフトウェア修正漏れ確認システム。
【請求項２】
ソフトウェアの修正が必要な開発システム名を選択する選択手段を有し、該選択手段でソフトウェアの修正が必要な開発システム名を選択した場合には、前記管理テーブルに格納された当該開発システムに係るレコードを当該管理テーブルの異なる領域に複製することを特徴とする請求項１に記載のソフトウェア修正漏れ確認システム。
【請求項３】
前記管理テーブルは仕様書管理用テーブルを含み、該仕様書管理用テーブルは、修正対象であることを示す情報とともに修正の実施の未／済を示す情報を有することを特徴とする請求項１に記載のソフトウェア修正漏れ確認システム。
【請求項４】
前記管理テーブルはソースコード管理用テーブルを含み、該ソースコード管理用テーブルは、修正対象であることを示す情報とともに修正の実施の未／済を示す情報を有することを特徴とする請求項１に記載のソフトウェア修正漏れ確認システム。
【請求項５】
前記管理テーブルは仕様書・ソースコード関連テーブルを含み、該仕様書・ソースコード関連テーブルは、前記複製が行われたときに複製後のデータについて仕様書間、及び仕様書-ソースコード間についての関連付けを行うことを特徴とする請求項２に記載のソフトウェア修正漏れ確認システム。
【請求項６】
ソフトウェア開発に関わる仕様書及びソースコードのトレーサビリティの確保を可能とするシステムにおいて、
要件や機能を示した図表に対して修正を要する要件や機能を入力する過程と、
入力された前記修正を要する要件や機能について、ソフトウェア開発により作成された仕様書及びソースコードの構成管理を行うデータベースと各仕様書間及び仕様書とソースコード間のトレーサビリティ管理やベースライン管理を行う管理テーブルとに格納された各種情報に基づいて修正対象仕様書及びソースコードを特定処理する過程と、
前記特定処理に基づいて修正対象一覧を作成し表示する過程と、
表示された前記修正対象一覧を確認し修正対象仕様書及びソースコードの修正を実施する過程と、
前記修正を実施した際に修正対象間での関連を維持しつつ、修正対象と修正済項目を識別可能な形式で表した修正報告書を作成し出力する過程と、
を含むことを特徴とするソフトウェア修正漏れ確認方法。
【請求項７】
ソフトウェアの修正が必要な開発システム名を選択する過程と、開発システム名が選択された後に、前記管理テーブルに格納された当該開発システムに係るレコードを当該管理テーブルの異なる領域に複製する過程と、をさらに含むことを特徴とする請求項６に記載のソフトウェア修正漏れ確認方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェアの開発プロセスにおいて修正が発生した際に、過不足なく前記修正が行えているかを確認できるようにしたソフトウェア修正漏れ確認システムおよび方法に関する。
【背景技術】
【０００２】
ソフトウェア開発プロセスでのトレーサビリティの確保を目的とした技術において、従来、特許文献１では、不具合の報告に伴うソースコードの修正・変更と修正報告書の作成とともに、ソースコードの修正・変更に対する内部設計書と単体試験規格書の修正作業を連動して行い、修正作業ごとに開発成果物の対応するバージョンを管理することにより、各種の仕様書間でのトレーサビリティを確保する技術を開示している。
【０００３】
また、従来、特許文献２では、各開発フェーズの直接の成果物以外の資料と、各開発フェーズにおいて生成される成果物とを相互に関連付ける関連付け情報を統合データベースにおいて管理し、設計内容の背景の確認と、設計方針の誤った解釈によるミスを減らすことにより、各種の仕様書間でのトレーサビリティを確保する技術を開示している。
【０００４】
さらに、従来、仕様書間のリンクの管理や変更管理を可能とする構成管理ツールも市販されており、必要ならいつでも利用可能とされている。
【特許文献１】特開２００２−１８２９０８号公報
【特許文献２】特開平９−１６３９２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ソフトウェア開発プロセスにおいて修正が発生した際に、上述した特許文献１などの従来技術によって修正及び変更する要件（機能）に関連する仕様書項目やソースコードについての情報を取得することはできるが、上記従来技術によっては関連により特定した仕様書項目やソースコードに対し、実際に過不足なく修正が行えているかを確認することができない。このため上述した特許文献１などの従来技術では、不必要な部位への修正や、修正の抜けが生じるという課題があった。
【０００６】
そこで本発明は、ソフトウェア開発における要件や機能の変更に伴い仕様書、及びソースコードへの修正が過不足なく実施されたかを確認できるソフトウェア修正漏れ確認システムおよび方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
この課題を解決するために本発明は、ソフトウェア開発に関わる仕様書及びソースコードのトレーサビリティの確保を可能とするシステムにおいて、要件や機能を示した図表に対して修正を要する要件や機能を入力する入力手段と、入力された前記修正を要する要件や機能について、ソフトウェア開発により作成された仕様書及びソースコードの構成管理を行うデータベースと各仕様書間及び仕様書とソースコード間のトレーサビリティ管理やベースライン管理を行う管理テーブルとに格納された各種情報に基づいて修正対象仕様書及びソースコードを特定処理する修正対象特定処理手段と、前記特定処理に基づいて修正対象一覧を作成し表示する修正対象一覧作成手段と、表示された前記修正対象一覧を確認し修正対象仕様書及びソースコードの修正を実施する修正実施手段と、前記修正を実施した際に修正対象間での関連を維持しつつ、修正対象と修正済項目を識別可能な形式で表した修正報告書を作成し出力する修正報告書作成出力手段と、を備えることを特徴とする。
【発明の効果】
【０００８】
本発明により、要件や機能の変更に伴い仕様書、及びソースコードへの修正が過不足なく実施されているかを確認できるため、不必要な修正や、修正漏れを防ぐことができソフトウェア開発における信頼性を向上させることができる。また、仕様書間、及び仕様書-ソースコード間でのリンクにより、修正の影響範囲を確実に把握できるため、ソフトウェア開発における見積もり精度の向上も期待できる上、人為的なミスの軽減を図ることができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施の形態を、図面を参照しながら説明する。
図１は、本発明の実施形態に係るソフトウェア修正漏れ確認システムの構成を示すブロック図である。図１において本発明の実施形態に係るソフトウェア修正漏れ確認システムは、仕様書データを格納し、仕様書を管理する仕様書管理用テーブル１と、ソースコードデータを格納し、ソースコードを管理するソースコード管理用テーブル２と、仕様書間、及び仕様書-ソースコード間での項目間の関連を定義する仕様書・ソースコード関連テーブル３と、関連する一連の最新版数のドキュメントを一括管理してベースライン管理するベースライン管理テーブル４と、修正対象となる仕様書やソースコードを特定する処理を行う修正対象仕様書・ソースコード特定処理部５と、修正対象一覧を作成し表示するための処理を行う修正対象一覧作成処理部６と、各仕様書に対する修正報告書の自動作成処理を行う修正報告書作成処理部７と、プログラム(図示せず)を格納し上記各処理部の制御を行うサーバ８と、サーバ８とクライアント１０を連携するネットワーク９と、ネットワーク９経由でサーバ８に繋がれ、データの入力や処理の起動、データの表示を行うクライアント１０から構成されている。
【００１０】
図２Ａ及び図２Ｂは、本発明の実施形態に係るソフトウェア修正漏れ確認システムに用いる各種テーブルの構造を示す図である。図２Ａにおいて仕様書管理用テーブル１は、仕様書の内容を格納し、仕様書を管理するテーブルで、格納すべきデータ項目としては、システムＮＯ（ナンバー）、システム名のほか、仕様書種別、章、項、記述内容、版数、仕様書ファイル名、修正対象フラグ、修正実施フラグ、等である。上記仕様書種別で扱う内容としては、特性ダイヤグラム、要求仕様書、試験仕様書、設計仕様書、等が含まれている。
【００１１】
図２Ｂにおいてソースコード管理用テーブル２は、ソースコードデータを格納し、ソースコードを管理するためのテーブルで、格納するデータ項目としては、システムＮＯ（ナンバー）、システム名のほか、ソースファイル名、版数、修正対象フラグ、修正実施フラグ、等である。
【００１２】
また図２Ｂにおいて仕様書・ソースコード関連テーブル３は、仕様書間、及び仕様書-ソースコード間の関連を示したテーブルで、格納するデータ項目としては、システムＮＯ（ナンバー）のほか、参照される側の仕様書項目（仕様書F_ID）、参照する側の仕様書項目（仕様書T_ID）、参照する側のソースコード（ソースT_ID）、等である。ここで、仕様書間の項目の関連は「仕様書F_ID」と「仕様書T_ID」で、仕様書-ソースコード間の関連は「仕様書F_ID」と「ソースT_ID」にて表す。なお、本明細書では図６Ａまたは図６Ｂに示すような相関関係にある各種ドキュメント、及びソースコードの連携形態を‘関連’として扱う。
【００１３】
また図２Ｂにおいてベースライン管理テーブル４は、ベースラインを管理するためのテーブルで、格納するデータ項目としては、システムＮＯ（ナンバー）のほか、対象システムの仕様書、及びソースコードの最新版数である。
【００１４】
図３は、本発明の実施形態に係るソフトウェア修正漏れ確認システムの処理動作を説明するためのフローチャートである。図３の説明においては図１の構成および図２Ａ又は図２Ｂの各種テーブルを適宜参照する。図３の説明に入る前に、まず本システムの使用に先立ち、予め各開発システムは要求仕様書に基づいて開発システムの要件や機能の相関を表す図４Ａに示すような特性ダイヤグラムが作成されている上に、各種仕様書、及びソースコードを管理する構成管理環境が整備されそれらがいつでも使用可能な状態にあることを前提とする。なおここでは、開発システムの要件や機能の相関を示す手段として、図４Ｂに示すような機能展開図を用いても良い。機能展開図は階層化した機能表現である特性ダイヤグラムと同様にソフトウェア開発分野では普通に用いられているものである。
【００１５】
ここから図３の説明に入る。なお図ではステップをＳと略記する。開発システムにおいて、ソフトウェアの修正や変更が必要となった場合に、当該開発システムの名称を選択する(ステップ１)。これに伴い、仕様書管理用テーブル１(図１、図２Ａ参照)、及びソースコード管理用テーブル２(図１、図２Ｂ参照)に格納された当該開発システムのレコードを、IDと版数データを除いて複製する(ステップ２)。さらに、複製した新しい仕様書とソースコードの関連を示すデータを、仕様書・ソースコード関連テーブル３(図１、図２Ｂ参照)に作成する。
【００１６】
ここまでの処理について、図５を用いて処理の流れについて具体例をもって説明する。図５は、本発明の実施形態に係る各種仕様書と仕様書管理用テーブルの関係を示す図である。図５に示すように、例えばシステムAAAAに係る要求仕様書、設計仕様書、試験仕様書などを修正する場合は、仕様書管理用テーブル１(図１、図２Ａ参照)のID番号1〜100までのレコード（ID、版数データ以外）を全て複製し、新たなID（ここでは201〜300）を割付けて仕様書管理用テーブル１に登録する。図示していないがソースコード管理用テーブル２(図１、図２Ｂ参照)も同様にして複製して、新たなIDを割付けてソースコード管理用テーブル２に登録する。そして、仕様書・ソースコード関連テーブル３(図１、図２Ｂ参照)の仕様書F_ID、仕様書T_IDには複製後に割付けられた新規ID（複製前の値に200を加えた値）をデータとし、ソースT_IDも同様にソースコード管理用テーブル２(図１、図２Ｂ参照)における複製レコードの新規IDをデータとするレコードを作成し、複製されたデータを改めて関連付ける（上記ステップ２参照）。
【００１７】
図３に戻って、ステップ３では、ステップ１で選択した開発システム名をもとに、当該システムの特性ダイヤグラムを表示し、これに対しユーザ（クライアント１０）が修正を行う要件、及び機能を指定し修正する。なお、ここで取扱う特性ダイヤグラムは、要求仕様書、設計仕様書、試験仕様書などの他の仕様書と共に、仕様書管理用テーブル１(図１、図２Ａ参照)の仕様書種別、仕様書ファイル名に格納されている。次のステップ４では、上記で指定した特性ダイヤグラム内の要件、機能に対し、仕様書・ソースコード関連テーブル３(図１、図２Ｂ参照)を用いて、関連する項目を仕様書毎に特定すると共に、関連するソースコードファイルを特定する。なおこれらの特定処理は、図１に示した修正対象仕様書・ソースコード特定処理部５を用いて実行される。
【００１８】
ここで図６Ａを参照しながら修正対象仕様書・ソースコード特定処理部５を用いた処理を説明すると、図６Ａに示すように、特性ダイヤグラムにおける[入金鑑別]を修正する必要があるとユーザが指定したときには、修正対象仕様書・ソースコード特定処理部５は、紐付けされた一連のドキュメント、すなわち要求仕様書(システムテスト仕様書にリンクされている)、設計仕様書(設計テスト仕様書にリンクされている)、詳細設計仕様書(詳細設計テスト仕様書にリンクされている)、さらにはソースコードを特定し、修正が必要な関連する一連のドキュメントとして体系を維持した状態で一連のドキュメントデータを読み込む。なお特性ダイヤグラムに代えて図６Ｂに示す機能展開図を用いた場合でも同様である。
【００１９】
次にステップ５では、ステップ４で特定処理した情報（各仕様書名、章、項、等）から修正対象一覧を作成して表示する。修正対象一覧を作成して表示する処理は、図１に示した修正対象一覧作成処理部６を用いて実行される。なお、この時の表示対象は、該当する要件や機能について記された試験仕様書を含む下位ドキュメントまでのすべてとなる。また、作成された修正対象一覧から対象案件を表示し、上位、及び下位のドキュメントへと関連をたどることができる仕組みとしても良い。
【００２０】
修正対象一覧の抽出処理は、ステップ４で修正すべき要件、機能と関連する仕様書の項目、及びソースコードを特定した際に、仕様書管理用テーブル１、及びソースコード管理用テーブル２の修正対象フラグをON(=1)とし、ステップ５の修正対象一覧作成表示時に、修正対象フラグの値が１であるレコードを抽出し、それに基づいて修正対象一覧表示を行う。
【００２１】
次にステップ６では、これまでのプロセスにより明らかになった、修正すべき仕様書、及びソースコードを修正する。仕様書項目やソースコードに対し修正を行うと、仕様書管理用テーブル１(図１、図２Ａ参照)、及びソースコード管理用テーブル２(図１、図２Ｂ参照)における該当レコードの修正実施フラグがON(=1)となる。なお、これは新規項目を追加する際も同様で、新規レコード追加と共に、修正実施フラグがONになる。
【００２２】
そして最終的に、ステップ７において、特性ダイヤグラムにて指定された要件や機能の変更内容と共に、修正対象、及び修正済を示すデータをもとに、実際に修正された仕様書、及びソースコードから修正対象部と修正済部を抽出した内容を修正報告書に盛り込んで出力することで、仕様書間、および仕様書-ソースコード間の関連を保ちつつ、修正すべき項目が過不足なく修正できているかを確認することが可能となる。修正報告書を作成して出力するには図１に示した修正報告書作成処理部７を用いて実行される。
【００２３】
ここで再び図５を用いてステップ６およびステップ７における処理の流れについて具体例をもって説明する。上記ステップ２までの説明で、システムAAAAに係る要求仕様書、設計仕様書、試験仕様書などを修正する場合に、仕様書管理用テーブル１のID番号1〜100までのレコード（ID、版数データ以外）を全て複製し、新たなID（ここでは201〜300）を割付けて仕様書管理用テーブル１に登録することについては既に説明したので、ここでは再度説明しない。ステップ６において修正すべき仕様書、及びソースコードを修正した結果、要求仕様書、設計仕様書、試験仕様書内に修正内容を含んだ修正版システムAAAAに係る一連のドキュメントが作成されることとなる。また、ステップ７において修正報告書を作成して出力することにより、報告書内容に修正対象部と修正済部を含んだ修正報告書が自動作成されることとなる。
【図面の簡単な説明】
【００２４】
【図１】本発明の実施形態に係るソフトウェア修正漏れ確認システムの構成を示すブロック図である。
【図２Ａ】本発明の実施形態に係るソフトウェア修正漏れ確認システムに用いる各種テーブルの構造を示す図である。
【図２Ｂ】本発明の実施形態に係るソフトウェア修正漏れ確認システムに用いる各種テーブルの構造を示す図である。
【図３】本発明の実施形態に係るソフトウェア修正漏れ確認システムの処理動作を説明するためのフローチャートである。
【図４Ａ】本発明の実施形態に係る特性ダイヤグラム例を示す図である。
【図４Ｂ】本発明の実施形態に係る機能展開図を示す図である。
【図５】本発明の実施形態に係る各種仕様書と仕様書管理用テーブルの関係を示す図である。
【図６Ａ】本発明の実施形態に係る特性ダイヤグラム、各種仕様書及びソースコードの関連について示す図である。
【図６Ｂ】本発明の実施形態に係る機能展開図、各種仕様書及びソースコードの関連について示す図である。
【符号の説明】
【００２５】
１  仕様書管理用テーブル
２  ソースコード管理用テーブル
３  仕様書・ソースコード関連テーブル
４  ベースライン管理用テーブル
５  修正対象仕様書・ソースコード特定処理部
６  修正対象一覧作成処理部
７  修正報告書作成処理部
８  サーバ
９  ネットワーク
１０  クライアント
【図１】
2008004029.tif 000003
【図２Ａ】
2008004029.tif 000004
【図２Ｂ】
2008004029.tif 000005
【図３】
2008004029.tif 000006
【図４Ａ】
2008004029.tif 000007
【図４Ｂ】
2008004029.tif 000008
【図５】
2008004029.tif 000009
【図６Ａ】
2008004029.tif 000010
【図６Ｂ】
2008004029.tif 000011