JP2007128123A - 影響範囲抽出システム - Google Patents

影響範囲抽出システム Download PDF

Info

Publication number
JP2007128123A
JP2007128123A JP2005317870A JP2005317870A JP2007128123A JP 2007128123 A JP2007128123 A JP 2007128123A JP 2005317870 A JP2005317870 A JP 2005317870A JP 2005317870 A JP2005317870 A JP 2005317870A JP 2007128123 A JP2007128123 A JP 2007128123A
Authority
JP
Japan
Prior art keywords
information file
information
checklist
source code
change
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005317870A
Other languages
English (en)
Inventor
Keigo Kajima
啓吾 鹿島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2005317870A priority Critical patent/JP2007128123A/ja
Publication of JP2007128123A publication Critical patent/JP2007128123A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】ソフトウェア開発において仕様変更が発生した際に仕様変更がもたらすチェックリスト及びプログラムソースコードへの影響範囲を抽出する。
【解決手段】成果物である仕様書102とデータ項目辞書101から仕様書情報を抽出し、システム開発の成果物であるチェックリスト107と仕様書情報から仕様書102とチェックリスト107の関連情報および成果物のプログラムソースコード109と仕様書情報から仕様書102とソースコード109の関連情報を抽出する。仕様変更発生時に、仕様変更前と仕様変更後の仕様書情報と比較し、仕様変更部分の情報を抽出する。仕様変更部分の情報と仕様書102とチェックリスト107の間の関連情報から、仕様変更に伴うチェックリスト107への影響範囲の情報を抽出する。仕様変更部分の情報と仕様書102とソースコード109の間の関連情報から、仕様変更に伴うソースコード109への影響範囲を抽出する。
【選択図】図1

Description

本発明は、ソフトウェア開発において仕様変更が発生した際に、開発の中で作成されたプログラムの処理結果の確認テストに用いるチェックリストおよびソフトウェアプログラムのソースコードに対して、発生した仕様変更が与える影響範囲を抽出する技術に関するものである。
開発作業において、作業の流れの途中で仕様などに変更が生じたとき、その影響範囲を抽出するシステムとしては特許文献1の方法が提案されている。これは、作業の流れで発生するドキュメントなどの成果物の構成を構造形態を用いて管理している際、作業途中に成果物の一部に仕様変更が生じたとき、影響を受ける成果物を抽出するシステムである。このことは、例えば、特許文献1に記載されている。
特開平9−223008号公報
上記従来の影響範囲抽出法では、影響範囲の抽出をドキュメント等の成果物単位で行うシステムであるため、各種成果物に対して影響の有無の情報のみしか取得することができず、成果物中のどの部分に影響があるのかという詳細情報までは抽出することができなかった。
本発明は上記課題を解決し、ソフトウェア開発において仕様変更が生じた際に、プログラムのチェックリストおよびソフトウェアのプログラムソースコードへの影響範囲を抽出する方法を提供することを目的とする。また本発明の他の目的は、仕様変更が生じた際に、その変更に伴いチェックリストおよびプログラムソースコードの修正が完了しているかどうかの情報を抽出することである。
上記課題を解決するために、請求項1および請求項2に記載した発明では、データ項目と対応した各プログラム言語用の項目名が登録されているデータ項目辞書と、システム開発における成果物の1つである仕様書とデータ項目辞書から仕様書情報を抽出する手段と、システム開発における成果物であるチェックリストと仕様書情報から仕様書とチェックリストの関連情報を抽出する手段と、プログラムソースコードと仕様書情報から仕様書とソースコードの関連情報を抽出する手段と、仕様変更時に仕様変更前の仕様書情報と比較して変更されている部分を抽出する手段と、仕様変更情報と仕様書とチェックリストの間の関連情報から仕様変更に伴うチェックリストへの影響範囲情報を抽出する手段と、仕様変更情報と仕様書とソースコードの間の関連情報から仕様変更に伴うプログラムソースコードへの影響範囲情報を抽出する手段とを設ける。
本発明の仕様変更に伴う影響範囲の抽出は次のような手順で行う。まずデータ項目辞書にあらかじめソフトウェア開発において使用されるデータ項目と各プログラム言語用の項目名を登録しておく。データ項目辞書は複数の言語用の項目名を登録可能であるため、ソフトウェアを開発したときに用いたプログラム言語の種類によらない言語非依存のシステムである。
影響範囲の抽出処理を行うにあたり、まずソフトウェア開発における成果物である仕様書、チェックリスト、プログラムソースコードおよびデータ項目辞書から仕様書とチェックリストの関連情報、仕様書とソースコードの関連情報を抽出し、それぞれ仕様書-チェックリスト関連情報ファイル、仕様書-ソースコード関連情報ファイルに格納する処理を以下の手順で実施する。
まず、システム開発時の成果物である仕様書を読み込み、データ項目辞書に登録されているデータ項目を抽出し、一文単位に分割して各分割単位ごとに仕様書IDを付加し、これらの情報を仕様書情報ファイルに格納する。仕様書情報ファイルのレコード形式は仕様書IDと分割済仕様書情報と関連データ項目から構成される。
次に、仕様書情報ファイルとチェックリストから仕様書とチェックリストの間の関連情報を取得する。仕様書情報ファイルの各レコードの関連データ項目名をキーとしてチェックリストの内容を検索し、キーに該当するデータ項目を含むチェックリスト項目を抽出する。ここで仕様書情報ファイルレコードのデータ項目が複数存在する場合は、チェックリスト項目の中に1つでも該当するデータ項目が存在する場合は仕様書-チェックリスト関連情報ファイルに格納する。仕様書-チェックリスト関連情報ファイルのレコード形式は、仕様書ID、チェックリストIDから構成される。
次に、仕様書情報ファイルとプログラムソースコードから仕様書とソースコードの間の関連情報を抽出する。仕様書情報ファイルの各レコードの関連データ項目名をキーとしてデータ項目辞書を参照し、対象プログラム言語の項目名を取得する。取得した項目名をキーとして各言語仕様に沿った言語解析を行い、キーである項目と関連する部分をプログラムソース中から抽出し、仕様書-ソースコード関連情報ファイルに格納する。仕様書-ソースコード関連情報ファイルのレコード形式は、データ項目名以外の項目については各プログラム言語に依存することとなる。例えばCOBOL言語である場合は、データ項目名の他に、プログラムID、シーケンス番号、メインプログラム・呼び出し先プログラムフラグから構成される。オブジェクト指向プログラム言語の場合にはデータ項目名、クラス名、メソッド名、行番号から構成される。
上記までの処理により、ソフトウェア開発時の成果物である仕様書とチェックリスト、ソースコードとの間の関連情報が抽出される。仕様変更が発生した場合は、これらの関連情報を利用して影響範囲を抽出することとなる。
次に、仕様変更が発生した場合に仕様変更に伴う影響範囲情報を抽出する処理は以下の手順で実施する。
まず、仕様変更前の仕様書情報ファイルの分割済仕様書情報をキーとして仕様変更後の仕様書から作成された仕様書情報ファイルを検索して、仕様書情報が変更されている仕様書IDを抽出する。検索方法は仕様変更前の仕様書情報ファイルレコードの分割済仕様書情報と完全に一致するものが仕様変更後の仕様書情報ファイルに含まれているかどうかで行う。仕様変更が発生した部分は仕様書に反映されるので完全一致の検索方法を採用することで仕様変更箇所を抽出することが可能になる。検索した結果、完全に一致する仕様書情報が仕様変更後の仕様書情報ファイルに含まれていない場合は、仕様変更が行われた部分と考えられるため、仕様書変更箇所情報ファイルに格納する。仕様書変更箇所情報ファイルのレコード形式は、仕様書IDと関連データ項目名で構成される。検索した結果が、完全に一致する仕様書情報が仕様変更後の仕様書情報ファイルに含まれていた場合は、その部分は仕様変更が行われていないと考えられるため、仕様変更箇所情報ファイルに格納しない。
次に、仕様書-チェックリスト情報ファイルと仕様変更箇所情報ファイルから仕様変更に伴うチェックリストへ影響部分の情報および仕様書-ソースコード情報ファイルと仕様変更箇所情報ファイルから仕様変更に伴うソースコードへ影響の影響部分の情報を抽出する。
まず、仕様変更に伴うチェックリストへの影響を受ける情報の抽出は以下の手順で行う。仕様変更箇所情報ファイルを読み込み、仕様変更による影響がある仕様書IDを取得する。取得した仕様書IDをキーとして仕様書-チェックリスト関連情報ファイルから影響するチェックリストIDを取得する。仕様書-チェックリスト関連情報ファイルは仕様書IDごとに影響するチェックリストIDが格納されているため、仕様書IDをキーとして仕様変更に伴うチェックリストへの影響範囲情報を取得することが可能である。取得したチェックリストIDをチェックリスト影響範囲情報ファイルとして生成する。このチェックリスト影響範囲情報ファイルを参照することによりユーザは仕様変更に伴い、再確認が必要なチェックリスト項目情報を得ることが可能となる。
続いて、ソースコードへの影響情報の抽出は以下の手順で行う。仕様変更箇所情報ファイルを読み込み、仕様変更により影響を受ける関連データ項目を取得する。取得した関連データ項目名をキーとして仕様書-ソースコード関連情報ファイルから影響するソースコード部分を取得する。仕様書-ソースコード関連情報ファイルはデータ項目ごとに影響するソースコードの情報が格納されているため、データ項目名のみをキーとして影響範囲情報を取得することが可能である。取得した影響範囲情報をソースコード影響範囲情報ファイルとして生成することでユーザは仕様変更に伴い、再確認が必要なソースコード部分を得ることが可能となる。上記のようにしてユーザは仕様変更に伴うチェックリストおよびソースコードへの影響範囲情報を取得すること可能となり、効率的にチェックリストおよびソースコードの再確認、修正作業を行うことが可能となる。
以上本発明の仕様変更に伴う影響範囲抽出方法の実施によれば、ソフトウェア開発の中で仕様変更が発生した際に、仕様書を修正する作業を行うだけで、仕様変更によるチェックリストへの影響範囲情報およびソースコードへの影響範囲情報を抽出することが可能となる。影響範囲情報を参照することにより再確認が必要なチェックリスト項目が洗い出されるため、品質確保のために再テストが必要なチェックリスト項目を漏れなく確認できるため、品質向上が期待できる。さらに仕様変更による影響を受けないチェックリスト項目に対する無駄な再テストを行うことを防ぐことができるため、工数削減も期待できる。また、ソースコードへの影響範囲情報を参照することで、修正範囲をあらかじめ抽出できるため、ソースコードを初めから解読して影響範囲を探す工数が削減することが可能であるため工数削減の効果があると考えられる。また、プログラムの修正漏れを防ぐことができるため品質向上が期待できる。
以下本発明の実施の一形態を図面を使用して説明する。図1は本発明の仕様変更に伴う影響範囲抽出システムの実施例の機能ブロック図である。
図1において、仕様変更に伴う影響範囲抽出システム100は本システムの全体を示しており、データ項目辞書101、仕様書情報取得処理部103、仕様書-チェックリスト関連情報取得処理部105、仕様書-ソースコード関連情報取得処理部106、仕様変更情報取得処理部113、チェックリスト影響範囲抽出処理部115、ソースコード影響範囲抽出処理部116から構成される。データ項目辞書101はデータ項目の名称と各プログラム言語の名称を登録してある。102は外部入力として与えるシステム開発における仕様書である。103は仕様書情報取得処理部であり、データ項目101と仕様書102から既定のフォーマットに変換した仕様書情報ファイル104を作成する。100は仕様書関連情報取得部であり、仕様書-チェックリスト関連情報取得処理部105と仕様書-ソースコード関連情報取得処理部106を備える。107と108は外部入力として与えるシステム開発の成果物であるチェックリスト107とプログラムソースコード108である。仕様書関連情報取得部100の仕様書-チェックリスト関連情報取得処理部105ではデータ項目辞書101と仕様書情報ファイル104とチェックリスト107から仕様書-チェックリスト関連情報ファイル109を生成する。仕様書-ソースコード関連情報取得処理部106ではデータ項目辞書101と仕様書情報ファイル104とプログラムソースコード108から仕様書-ソースコード関連情報ファイル110を生成する。なお、仕様書関連情報取得部100には仕様書-チェックリスト関連情報取得処理部105と仕様書-ソースコード関連情報取得処理部106の2つの処理部を備えているため、チェックリスト107とソースコード108の両方を入力する必要性はない。上記までの過程でシステム開発時における成果物である仕様書102とチェックリスト107との間の関連情報である仕様書-チェックリスト関連情報ファイル109と仕様書102とプログラムソースコード108との間の関連情報である仕様書-ソースコード関連情報ファイル110を抽出する。
続いて仕様変更発生時の影響範囲を抽出する処理を説明する。発生した仕様変更を反映した仕様書111から仕様書情報取得処理部103で変更後の仕様書情報ファイル112を生成する。仕様書変更情報取得処理部113では仕様変更前に生成した仕様書情報ファイル104と変更後に生成した仕様書情報ファイル112を入力として仕様書変更箇所情報ファイル114を生成する。チェックリスト影響範囲抽出処理部115では仕様書-チェックリスト関連情報ファイル109と仕様変更箇所情報ファイル114からチェックリスト影響範囲情報ファイル117を生成する。ソースコード影響範囲抽出処理部116では仕様書-ソースコード関連情報ファイル110と仕様変更箇所情報ファイル114からソースコード影響範囲情報ファイル118を生成する。上記の過程で生成されたチェックリスト影響範囲情報ファイル117を参照することにより、開発者は仕様変更によってチェックリストの確認項目を修正しなければならないチェックリスト項目および再テストの必要性があるチェックリスト項目の情報を得ることが可能となる。ソースコード影響範囲情報ファイル118を参照することにより、開発者は仕様変更によって影響を受ける可能性を含むソースコードの部分の情報を得ることが可能となる。
以下、本実施例の動作について説明する。例として、図2が示す仕様書の一部を利用して動作の説明を行う。
図3は、データ項目辞書100の構成例である。データ項目辞書100の各レコードはデータ項目名と各プログラム言語の項目名から構成される。システム開発において利用されたプログラム言語の項目名を登録する。図3では例としてCOBOLとJava(登録商標)の情報をレコード情報に含めている。データ項目辞書100は言語に依存しないため、多言語に対応可能である。
図4と図5はそれぞれ図2の仕様書に基づいてソフトウェア開発が行われた際の成果物であるチェックリスト107とプログラムソースコード108の一部を示している。図4に示すようにチェックリストはチェックリストIDとチェックリスト確認項目からなる。チェックリスト107のチェックリストIDは一意であり、確認項目にはプログラムを確認する際の入力情報や出力情報を記述する。図5に示すプログラムソース108のように今回の例ではCOBOLでソフトウェア開発を行った場合の例で説明する。本発明では図1が示すように仕様書情報処理部102で仕様書101から仕様書情報ファイル103を作成する。図6に仕様書情報取得処理部102のフローチャートを示す。まず仕様書情報取得処理部102では仕様書101から一文を読み込む(ステップ601)。次にデータ項目辞書100を参照してステップ601で読み込んだ仕様書の文中に含まれるデータ項目名を抽出する(ステップ602)。読み込んだ仕様書の情報に仕様書IDを付加し(ステップ603)、仕様書ID、読み込んだ仕様書情報の内容、仕様書情報に含まれるデータ項目名を1レコードとして仕様書情報ファイルに書き出す(ステップ604)、ステップ601からステップ604までの処理を仕様書101の情報を全て読み込むまで行い、全て読み込んだら処理を終了する(ステップ605)。
図7に図2が示す仕様書を入力とした場合に仕様書情報処理部102によって生成される仕様書情報ファイル103を示す。
続いて本発明のシステムでは仕様書情報ファイル103とチェックリスト107から仕様書-チェックリスト関連情報取得処理部105によって仕様書-チェックリスト関連情報ファイル109を作成する。図8に仕様書-チェックリスト関連情報取得処理部105のフローチャートを示す。
仕様書-チェックリスト関連情報取得処理部105では、まず仕様書情報ファイル103から1レコード読み込み、検索対象のデータ項目名を格納する(ステップ801、802)。次にチェックリスト107の情報を1レコード読み込む(ステップ803)。ステップ803で読み込んだレコードのチェックリスト確認項目からデータ項目辞書100に登録されているデータ項目名を抽出する(ステップ804)。ステップ804で抽出したデータ項目の中にステップ802で抽出したデータ項目が含まれるかどうかを検索して(ステップ805)、含まれない場合は次のチェックリストレコードを読み込む。1つでもデータ項目が含まれる場合は、仕様書-チェックリスト情報ファイル109に仕様書IDとチェックリストIDからなるレコードを書き出す(ステップ806)。ステップ801からステップ806までの処理を仕様書情報ファイル103が終了するまで繰り返し行う(ステップ807)。
図9に、図7が示す仕様書情報ファイル103と図4が示すチェックリスト107から仕様書-チェックリスト関連情報取得処理部105によって生成される仕様書-チェックリスト関連情報ファイル109を示す。
続いて、本発明のシステムでは仕様書情報ファイル103とプログラムソースコード108から仕様書-ソースコード関連情報取得処理部106によって仕様書-ソースコード関連情報ファイル110を作成する。図10に仕様書-ソースコード関連情報取得処理部106のフローチャートを示す。
仕様書-ソースコード関連情報取得処理部106では、まず仕様書情報ファイル103から1レコード読み込み、検索対象のデータ項目名を格納する(ステップ1001、1002)。データ項目辞書100を参照してステップ1002で格納したデータ項目名のプログラム言語名を取得する(ステップ1003)。ステップ1003で取得したプログラム言語名をキーとして、プログラムソースコード109の解析処理を行い、影響範囲情報を抽出し、仕様書-ソースコード関連情報ファイル110に書き出す(ステップ1004、1005)。ステップ1001からステップ1005までの処理を仕様書情報ファイル103が終了するまで繰り返し行う(ステップ1006)。仕様書-ソースコード関連情報ファイル110のレコード形式はプログラム言語に依存して変更する。図11に対象言語がCOBOLである場合に図7が示す仕様書情報ファイル103と図5が示すプログラムソースコード108から仕様書-ソースコード関連情報取得処理部106によって生成される仕様書-ソースコード関連情報ファイル110を示す。図11が示すように、仕様書-ソースコード関連情報ファイル110のレコードはデータ項目名、メインプログラム・呼び出し先プログラム情報フラグ、プログラムID、シーケンス番号からなる。メインプログラム・呼び出し先プログラム情報フラグはプログラムの全体を示すか一部を示すかの情報、プログラムIDは影響するプログラムのプログラムID、シーケンス番号はプログラムソースコードの何ステップ目に影響するかという情報を保持する。
続いて、仕様変更発生時の影響範囲を抽出する処理を、部署コードを英数字5桁から英数字10桁に拡張する、という仕様変更例を用いて説明する。
仕様変更に伴い、仕様書111が図12に示すように変更されている。仕様書情報取得処理部102で生成される仕様書情報ファイル112は図13のようになる。次に本発明のシステムでは仕様書変更情報取得処理部113によって仕様変更箇所情報ファイル114を作成する。図14に仕様書変更情報取得処理部113のフローチャートを示す。
仕様書変更情報取得処理部113では、まず仕様変更前の仕様書情報ファイル103を読み込み、続いて仕様変更後の仕様書情報ファイル112を読み込み、仕様変更前の仕様書情報ファイル103と一致する仕様書情報が仕様変更後の仕様書情報ファイル112に含まれているかを検索する(ステップ1401〜1404)、ここで仕様変更前の仕様書情報ファイル103に含まれていて仕様変更後の仕様書情報ファイル112に含まれていない仕様書情報を仕様書変更箇所情報ファイル114へ書き出す(ステップ1405)。ステップ1401から1405までの処理を仕様変更前の仕様書情報ファイル103が終了するまで繰り返す。図15に図7が示す仕様変更前の仕様書情報ファイル103と図13が示す仕様変更後の仕様書情報ファイル112から仕様書変更情報取得処理部113によって生成される仕様書変更箇所情報ファイル114を示す。図15が示すように、仕様変更箇所情報ファイル114のレコードは仕様書情報ID、関連データ項目からなる。この例では、図2に示す仕様変更前の仕様書情報ファイル103に記載されている、部署コードは英数字5桁とする、が図13に示す仕様変更後の仕様書情報ファイル112に記載されていないため、仕様変更箇所情報ファイル114として抽出されている。
続いて、チェックリスト影響範囲抽出処理部116で仕様書-チェックリスト関連情報ファイル109と仕様書変更箇所情報ファイル114からチェックリスト影響範囲情報ファイル118を生成する。図16にチェックリスト影響範囲抽出処理部116のフローチャートを示す。
チェックリスト影響範囲抽出処理部116では、まず仕様書変更箇所情報ファイル114と仕様書-チェックリスト関連情報ファイル109を読み込んで、両レコードの仕様書IDが一致するかどうかを判定する。仕様書IDが一致した場合はチェックリスト影響範囲情報ファイル118へ書き出し、一致しない場合は次の仕様書-チェックリスト関連情報ファイル109のレコードを読み込む。この処理を仕様書-チェックリスト関連情報ファイル109が終了するまで繰り返す(ステップ1601〜1605)。ステップ1601から1605までの処理を仕様書変更箇所情報ファイル114が終了するまで繰り返す。図17に図9が示す仕様書-チェックリスト関連情報ファイル109と図15が示す仕様書変更箇所情報ファイル114からチェックリスト影響範囲抽出処理部116によって生成されるチェックリスト影響範囲情報ファイル118の構成例を示す。図17に示すように、図2から図12にように仕様変更が発生した場合に、チェック内容を再度確認する必要性があるチェックリスト項目はC-001とC-002とC-003という情報を得ることができる。本例の場合では、部署コードが英数字10桁に拡張されたため、社員検索画面で英数字10桁の部署コードを入力した際に正しく社員IDと社員名が表示されることを確認する必要性があるためチェックリスト項目C-001およびC-002は再度テストを行う必要性がある。C-001とC-002のチェックリスト項目の確認項目の文言は変更されない。チェックリスト項目C-003は入力部署コードの桁数の限界値チェックであり、英数字5桁から英数字10桁に拡張されたことに伴い、確認項目は、検索画面で部署コードが英数字11桁以上で入力された場合にはエラーメッセージ“部署コードを確認してください”を表示すること、に修正する必要性がある。チェックリスト項目C-004については部署コードに関連する確認項目ではないので今回の仕様変更の例ではチェックリスト項目を再度確認する必要性はない。上記のように仕様変更に伴い、再度テストを行う必要性があるチェックリスト項目およびチェックリスト項目の確認内容を修正する必要性があるチェックリスト項目の情報のみを抽出することができる。
続いて、ソースコード影響範囲抽出処理部117で仕様書-ソースコード関連情報ファイル110と仕様書変更箇所情報ファイル114からソースコード影響範囲情報ファイル119を生成する。図18にソースコード影響範囲抽出処理部117のフローチャートを示す。ソースコード影響範囲抽出処理部117では、まず仕様書変更箇所情報ファイル114と仕様書-ソースコード関連情報ファイル110を読み込んで、仕様書変更箇所情報ファイル114の関連データ項目をキーとして仕様書-ソースコード関連情報ファイル110を検索し、一致するデータ項目が存在した場合に仕様書-ソースコード関連情報ファイル110のレコード情報をソースコード影響範囲情報ファイル119へ書き出し、一致するデータ項目がない場合は、次の仕様書-ソースコード関連情報ファイル110のレコードを読み込む。この処理を仕様書-ソースコード関連情報ファイル110が終了するまで繰り返す(ステップ1801〜1805)。ステップ1801から1805までの処理を仕様書変更箇所情報ファイル114が終了するまで繰り返す。
図19に図11に示す仕様書-ソースコード関連情報ファイル110と図15に示す仕様書変更箇所情報ファイル114からソースコード影響範囲抽出処理部117によって生成されるソースコード影響範囲情報ファイル119の構成例を示す。図19のソースコード影響範囲情報ファイル119が示すように、本例の仕様変更の例では影響を受けるデータ項目は“部署コード”であり、データ項目辞書100を参照して取得した“部署コード”のCOBOL名である“BUSHO-CODE”と関連する部分をソースコード108から抽出する。
図19に示すソースコード影響範囲情報ファイル119は、ソースコード108において、プログラム“PROG01”のシーケンス番号“008300”、“008400”、“009800”、“010100”、“010300”の部分とプログラム“PROG02”全体に影響を与える可能性があることを示している。図5に示すソースコードと比較してみると、データ項目辞書100に登録されている“部署コード”に対応したCOBOL名の“BUSHO-CODE”が含まれる部分、“BUSHO-CODE“の転記先のデータ項目”I-BUSHO-CODE”が含まれる部分、”I-BUSHO-CODE”の親項目である“PROG02-IN“が関連する部分が正しく抽出されている。また、関連する項目が関数呼び出しの引数になっている場合には、呼び出し先の関数全体に影響を与える可能性があることも考慮されており、プログラム”PROG02“全体に影響があるという情報も抽出することができる。上記のように仕様変更に伴い、再確認および修正が必要なソースコードの部分を抽出することができる。
本発明に係る一実施形態の仕様変更に伴う影響範囲抽出システムの構成を示す図である。 図1の仕様書の構成例を示す。 図1のデータ項目辞書の構成例を示す。 図1のチェックリストの構成例を示す 図1のソースコードの構成例の一部を示す。 図1の仕様書情報取得処理部のフローチャートを示す。 図6によって生成された仕様書情報ファイルの構成例を示す。 図1の仕様書-チェックリスト関連情報取得処理部のフローチャートを示す。 仕様書-チェックリスト関連情報ファイルの構成例を示す。 図1の仕様書-ソースコード関連情報取得処理部のフローチャートを示す。 仕様書-ソースコード関連情報ファイルの構成例を示す。 図1の仕様変更後の仕様書の構成例を示す。 仕様変更後の仕様書情報ファイルの構成例を示す。 図1の仕様書変更情報取得処理部のフローチャートを示す。 仕様書変更箇所情報ファイルの構成例を示す。 図1のチェックリスト影響範囲抽出処理部のフローチャートを示す。 チェックリスト影響範囲情報ファイルの構成例を示す。 図1のソースコード影響範囲抽出処理部のフローを示す。 ソースコード影響範囲情報ファイルを示す。
符号の説明
100 仕様変更に伴う影響範囲抽出システム
101 データ項目辞書
102 仕様書
103 仕様書情報取得部
104 仕様書情報ファイル
105 仕様書-チェックリスト関連情報取得処理部
106 仕様書-ソースコード関連情報取得処理部
107 チェックリスト
108 プログラムソースコード
109 仕様書-チェックリスト関連情報ファイル
110 仕様書-ソースコード関連情報ファイル
111 仕様変更後の仕様書
112 仕様変更後の仕様書情報ファイル
113 仕様書変更情報取得処理部
114 仕様書変更箇所情報ファイル
115 チェックリスト影響範囲抽出部
116 ソースコード影響範囲抽出部
117 チェックリスト影響範囲情報ファイル
118 ソースコード影響範囲情報ファイル
120 修正後のチェックリスト
121 修正後のプログラムソースコード

Claims (4)

  1. ソフトウェア開発において仕様変更が発生した場合に、仕様書の変更がプログラムチェックリストのどの部分に影響を与えるかの情報を抽出するシステムにおいて、
    前記ソフトウェア作業の成果物である仕様書を予め定められた統一フォーマットに変換して仕様書情報を生成する手段と、
    前記仕様書情報とプログラムチェックリストとデータ項目辞書から仕様書とプログラムチェックリストの関連情報である仕様書-チェックリスト関連情報ファイルを生成する手段と、
    前記仕様書情報から仕様変更箇所情報である仕様書変更箇所情報ファイルを生成する手段と、
    仕様変更が発生した際には、前記仕様書-チェックリスト関連情報ファイルと前記仕様書変更箇所情報ファイルによってプログラムチェックリストへの影響範囲を抽出する手段とを備えたことを特徴とする仕様変更に伴う影響範囲抽出システム。
  2. 請求項1に記載の影響範囲抽出システムにおいて、
    前記仕様書変更箇所情報ファイルを生成する手段は、さらに前記仕様書情報を生成する際に用いた仕様書を示す変更前仕様書情報をさらに用いて、前記仕様書変更箇所情報ファイルを生成することを特徴とする仕様変更に伴う影響範囲抽出システム。
  3. ソフトウェア開発において仕様変更が発生した場合に、仕様書の変更がプログラムチェックリストのどの部分に影響を与えるかの情報を抽出するシステムで読取可能な記憶媒体に格納されたプログラムであって、当該システムを、
    前記ソフトウェア作業の成果物である仕様書を予め定められた統一フォーマットに変換して仕様書情報を生成する手段と、
    前記仕様書情報とプログラムチェックリストとデータ項目辞書から仕様書とプログラムチェックリストの関連情報である仕様書-チェックリスト関連情報ファイルを生成する手段と、
    前記仕様書情報から仕様変更箇所情報である仕様書変更箇所情報ファイルを生成する手段と、
    仕様変更が発生した際には、前記仕様書-チェックリスト関連情報ファイルと前記仕様書変更箇所情報ファイルによってプログラムチェックリストへの影響範囲を抽出する手段として機能させることを特徴とするプログラム。
  4. 請求項3に記載のプログラムにおいて、
    前記仕様書変更箇所情報ファイルを生成する手段を、さらに前記仕様書情報を生成する際に用いた仕様書を示す変更前仕様書情報をさらに用いて、前記仕様書変更箇所情報ファイルを生成するよう機能させることを特徴とするプログラム。
JP2005317870A 2005-11-01 2005-11-01 影響範囲抽出システム Pending JP2007128123A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005317870A JP2007128123A (ja) 2005-11-01 2005-11-01 影響範囲抽出システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005317870A JP2007128123A (ja) 2005-11-01 2005-11-01 影響範囲抽出システム

Publications (1)

Publication Number Publication Date
JP2007128123A true JP2007128123A (ja) 2007-05-24

Family

ID=38150755

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005317870A Pending JP2007128123A (ja) 2005-11-01 2005-11-01 影響範囲抽出システム

Country Status (1)

Country Link
JP (1) JP2007128123A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010055293A (ja) * 2008-08-27 2010-03-11 Fujitsu Ltd 検証支援プログラム、検証支援装置、および検証支援方法
JP2011096111A (ja) * 2009-10-30 2011-05-12 Toshiba Corp 仕様情報管理装置および仕様情報管理プログラム
JP2013246644A (ja) * 2012-05-25 2013-12-09 Mitsubishi Electric Corp ソフトウェアオブジェクト修正支援装置、ソフトウェアオブジェクト修正支援方法、および、プログラム
JP2018501538A (ja) * 2014-11-05 2018-01-18 アビニシオ テクノロジー エルエルシー 影響分析
JP2018018463A (ja) * 2016-07-29 2018-02-01 富士通株式会社 データ管理プログラム、装置、及び方法
JP2018045508A (ja) * 2016-09-15 2018-03-22 日本電気株式会社 情報処理装置、情報処理方法、及び、プログラム

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010055293A (ja) * 2008-08-27 2010-03-11 Fujitsu Ltd 検証支援プログラム、検証支援装置、および検証支援方法
JP2011096111A (ja) * 2009-10-30 2011-05-12 Toshiba Corp 仕様情報管理装置および仕様情報管理プログラム
JP2013246644A (ja) * 2012-05-25 2013-12-09 Mitsubishi Electric Corp ソフトウェアオブジェクト修正支援装置、ソフトウェアオブジェクト修正支援方法、および、プログラム
JP2018501538A (ja) * 2014-11-05 2018-01-18 アビニシオ テクノロジー エルエルシー 影響分析
US11475023B2 (en) 2014-11-05 2022-10-18 Ab Initio Technology Llc Impact analysis
JP2018018463A (ja) * 2016-07-29 2018-02-01 富士通株式会社 データ管理プログラム、装置、及び方法
JP2018045508A (ja) * 2016-09-15 2018-03-22 日本電気株式会社 情報処理装置、情報処理方法、及び、プログラム

Similar Documents

Publication Publication Date Title
JP2007128123A (ja) 影響範囲抽出システム
US7856388B1 (en) Financial reporting and auditing agent with net knowledge for extensible business reporting language
JP2017041171A (ja) テストシナリオ生成支援装置およびテストシナリオ生成支援方法
CN116226170A (zh) 一种数据库语句转换方法、装置、电子设备及存储介质
US7885985B2 (en) System and method for building a datastore for storing and retrieving regression testing data for a complex application
CN116360794A (zh) 数据库语言解析方法、装置、计算机设备及存储介质
CN106557569B (zh) 基于元模型的非结构化文档的导入方法和导入装置
JP2008112363A (ja) 文書処理装置および文書処理プログラム
US9619443B2 (en) Enhanced messaging transaction performance with auto-selected dual-tag fields
JP6588988B2 (ja) 業務プログラム生成支援システムおよび業務プログラム生成支援方法
CN112115125B (zh) 数据库访问对象名称解析方法、装置及电子设备
JP2008287700A (ja) 機能試験項目展開支援システム、機能試験項目展開支援方法および機能試験項目展開支援プログラム
US11327994B2 (en) Arranging converted operation history information
Bacci et al. Improving public access to legislation through legal citations detection: the linkoln project at the Italian senate
JPH1185536A (ja) 原始プログラムのエラー自動修正装置及び方法
JP5198149B2 (ja) 情報処理装置、プログラム、及び保険商品約款生成方法
JP4139805B2 (ja) 字句をデータに変換する装置、方法及びプログラム
JP2008020972A (ja) ソフトウエア解析システム
JPH08115330A (ja) 類似文書検索方法および装置
JP4069093B2 (ja) 読替パターン生成装置、方法及びプログラム
JP2009122886A (ja) 住所解析装置、方法及びそのプログラム
JP2010282248A (ja) プログラム言語解析実行プログラム
JP2006003978A (ja) 変換エラーレコードリカバリプログラム
JP2005309917A (ja) レビュー支援装置
JP6267971B2 (ja) ソースコード解析支援装置、ソースコード解析支援方法