トップ :: G 物理学 :: G06 計算;計数




【発明の名称】 問題点管理システム及び管理方法
【発明者】 【氏名】中島 徹

【氏名】広隆 太司

【氏名】大久保 清

【氏名】野村 祐治

【氏名】橋ヶ谷 誠

【氏名】秋田 俊一

【要約】 【課題】複数の問題点管理対象を管理する場合に、問題点の影響を受ける問題点管理対象抽出のための調査工数を削減し、問題点対策の進捗状況の把握を容易とする。

【解決手段】ソースコードやバージョン同士の派生関係、全体と部分の関係を木構造のデータ形式で管理ファイル115内に管理する。問題点を作りこんだソースコードやバージョンが入力部101から入力されたとき、問題点を作りこんだソースコードやバージョンよりも木構造で下位にあたるソースコードやバージョンの集合を、対策が必要なソースコードやバージョンと定めて抽出する。
【特許請求の範囲】
【請求項1】 相互に関連する複数の管理対象の問題点を管理する問題点管理システムにおいて、問題点を入力する入力部、及び、問題点を蓄積する問題点データファイルを有する問題点管理装置と、管理対象の構成情報及び変更履歴を構成データとして記録管理する構成管理装置とを有し、前記構成管理装置は、問題点発生時に複数の問題点管理対象の中から発生した問題点の対策を要する問題点管理対象を抽出する影響範囲決定部を具備することを特徴とする問題点管理システム。
【請求項2】 前記問題点データファイルは、複数の管理対象のそれぞれに対応する行と、入力された問題点のそれぞれに対応する行とを有するデータ構造を持ち、前記列と行との交点に問題点の対策状況を保持するものであることを特徴とする請求項1記載の問題点管理システム。
【請求項3】 前記構成管理装置は、前記複数の管理対象相互間の派生関係の情報を木構造を持つデータ構造で管理する管理ファイルを備え、前記影響範囲決定部は、前述管理ファイル内の管理対象相互間の派生関係の情報を示す木構造のデータ構造に基づいて、問題点の対策を要する問題点管理対象を抽出することを特徴とする請求項1または2記載の問題点管理システム。
【請求項4】 前記構成管理装置は、影響範囲決定部が決定した問題点を対策する必要のある問題点管理対象の表示を行い、問題点を対策する必要のある問題点管理対象に、問題点データファイルが保持する問題点対策状況の表示を行う構成情報表示部を有することを特徴とする請求項1、2または3記載の問題点管理システム。
【請求項5】 相互に関連する複数の管理対象の問題点を管理する問題点管理方法において、複数の管理対象と、複数の管理対象のそれぞれに対応する問題点と、複数の管理対象のそれぞれに対応する問題点の対策状況を保持して管理し、前記複数の管理対象相互間の派生関係を管理すると共に、前記複数の管理対象相互間の派生関係の情報に基づいて問題点の対策を要する問題点管理対象を抽出し、抽出した問題点管理対象とその問題点管理対象の問題点対策状況との表示を行うことを特徴とする問題点管理方法。
【発明の詳細な説明】【0001】
【発明の属する技術分野】本発明は、問題点管理システム及び管理方法に係り、特に、ソフトウエアの開発保守等に関して、改良を加えることにより相互に関連する複数の管理対象が生じるようなソフトウエアあるいは装置等の開発保守において、複数の管理対象で発生する問題点を管理する問題点管理装置と管理対象の構成及び変更履歴を管理する構成管理装置とを具備する問題点管理システム及び管理方法に関する。
【0002】
【従来の技術】ソフトウエアの開発保守において発生する問題点の管理を行う技術は、従来から知られている。その1つの従来技術は、問題点を管理する問題点管理装置とソフトウエアの構成と変更点とを管理する構成管理装置とに、相互に連絡し合うインタフェース部を設け、問題点を解決するためにあるバージョンのプログラムのプログラムコードが変更されたとき、構成管理装置が問題点管理装置に変更が生じたことを通知し、問題点管理装置が、問題点データファイルに当該バージョンのプログラムに対して対策修正が行われたことを自動的に登録し、各バージョンのプログラムに対して行われた変更と問題点データファイルとの対応がとれているか否かをチェックすることにより、問題点管理装置が管理する問題点毎のステータスと実際のプログラムコードのステータスとの整合性を保証するというものである。
【0003】なお、この種の問題点管理システムに関する従来技術として、例えば、特開平9−212386号公報、特開平11−203113号公報等に記載された技術が知られている。
【0004】
【発明が解決しようとする課題】前述した従来技術は、問題点がもれなく正確に登録される限りにおいて、問題点のステータスや、対策状況を誤りなく管理することができ、問題点の対策漏れを防止することができるものである。しかし、一般に、ソフトウエアの開発保守において、ソフトウエアの改良を重ねていったとき、昔の版(バージョン)で作り込まれたバグが長い間発見されずに数回の改良を重ねて複数の版を発行した後に発見されることがあり、このような場合、バグが作り込まれてからバグが発見されるまでに発行した全ての版について、同一のバグが存在している可能性があり、異なるバージョンの複数のプログラムに同一の問題点が存在してしまうことになる。
【0005】前述のように問題点が複数の問題点管理対象に影響する場合、前述した従来技術は、バグが存在している版とバグが存在していない版とを正確に切り分け、正確に問題点を問題点データファイルに登録するために、全ての問題点管理対象とするソースコードを調査し、それぞれの対策の要否を判断する必要があるが、多数の問題点管理対象を正確に抽出して、それぞれの対策の要否を判断しなければならず、その工数が大きくなっしまい、効率的な問題点の管理を行うことができないという問題点を有している。
【0006】本発明の目的は、前述した従来技術の問題点を解決し、複数の問題点管理対象の中に同じ問題点が潜んでいる場合に、最初に問題点を発生させた問題点管理対象、すなわち、最初に問題点を発生させたバージョンのプログラムを調査するだけで、問題点に対して対策を行う必要のある問題点管理対象の一覧を自動的に漏れなく抽出し、各問題点別にその問題点に対する対策の要否と、問題点対策が必要な場合の対策の進捗状況とを示し、問題点の管理対象の集合全体としての問題点対策の進捗状況を把握させることができる問題点管理システム及び管理方法を提供することにある。
【0007】
【課題を解決するための手段】本発明によれば前記目的は、相互に関連する複数の管理対象の問題点を管理する問題点管理システムにおいて、問題点を入力する入力部、及び、問題点を蓄積する問題点データファイルを有する問題点管理装置と、管理対象の構成情報及び変更履歴を構成データとして記録管理する構成管理装置とを有し、前記構成管理装置は、問題点発生時に複数の問題点管理対象の中から発生した問題点の対策を要する問題点管理対象を抽出する影響範囲決定部を具備することにより達成される。
【0008】また、前記目的は、前記構成管理装置が、前記複数の管理対象相互間の派生関係の情報を木構造を持つデータ構造で管理する管理ファイルを備え、前記影響範囲決定部が、前述管理ファイル内の管理対象相互間の派生関係の情報を示す木構造のデータ構造に基づいて、問題点の対策を要する問題点管理対象を抽出することにより達成される。
【0009】さらに、前記目的は、相互に関連する複数の管理対象の問題点を管理する問題点管理方法において、複数の管理対象と、複数の管理対象のそれぞれに対応する問題点と、複数の管理対象のそれぞれに対応する問題点の対策状況を保持して管理し、前記複数の管理対象相互間の派生関係を管理すると共に、前記複数の管理対象相互間の派生関係の情報に基づいて問題点の対策を要する問題点管理対象を抽出し、抽出した問題点管理対象とその問題点管理対象の問題点対策状況との表示を行うことにより達成される。
【0010】
【発明の実施の形態】以下、本発明による問題点管理システム及び管理方法の一実施形態を図面により詳細に説明する。なお、以下に説明する本発明の実施形態は、本発明をソフトウェア開発における問題点の管理を行うものとしている。
【0011】図1は本発明の一実施形態による問題点管理システムの構成を示すブロック図、図2は問題点データファイル内の問題点毎、問題点管理対象毎の問題点対策状況を記憶するためのデータ構造を説明する図、図3は管理ファイル内で木構造のデータ形式により管理される管理対象を説明する図、図4は影響範囲決定部が問題点影響範囲を特定する処理動作を説明するフローチャート、図5は問題点を最初に作り込んだ問題点管理対象と問題点の対策が必要な問題点管理対象との関係を説明する図、図6は構成情報表示部での対策の必要のある問題点管理対象及び対策の進捗状況の表示例を示す図、図7は対策の必要のある問題点管理対象及び対策の進捗状況の表示を行う処理動作を説明するフローチャートである。図1において、100は問題点管理装置、101は入力部、102は集計部、103は集計結果出力部、104は問題点データファイル、110は構成管理装置、111は入出力管理部、112は影響範囲決定部、113は構成情報表示部、114は問題点管理対象データファイル、115は管理ファイル、120はインタフェース部、130は出力装置、140はエディタである。
【0012】本発明の一実施形態による問題点管理システムは、問題点管理装置100と構成管理装置110とがインタフェース部120により相互に接続されて構成される。そして、問題点管理装置100は、入力部101と、集計部102と、集計結果出力部103と、問題点データファイル104とを備えて構成され、また、構成管理装置110は、エディタ140が接続されている入出力管理部111と、影響範囲決定部112と、入出力装置130が接続されている構成情報表示部113と、問題点管理対象データファイル114と、管理ファイル115とを備えて構成される。
【0013】前述したように構成される本発明の実施形態による問題点管理システムにおいて、問題点管理装置100は、問題点入力部101から問題点の内容、対策方法、対策日付等が入力される。例えば、ソフトウエアの動作確認作業中バグを発見した場合、入力部101からバグの内容、例えば、論理の誤り、メモリ破壊を生じさせる命令、異常終了、デグレード等のバクの内容が入力される。入力された問題点は、問題点データファイル104に登録され、問題点集計部102により問題点の対策状況や問題点の傾向分析のために利用される。
【0014】一方、構成管理装置110は、問題点管理対象を問題点管理対象データファイル114に格納し管理する。入出力管理部111は、問題点管理対象データファイル114に問題点管理対象を新規に登録し、問題点管理対象に対して行われるエディタ140での修正を監視して問題点管理対象データファイル114に修正前後の差分、すなわち、修正の前後でどのように異なったものとなったかの差分を記録することにより修正管理を行う役割を持つ。前述のような差分を記録しておくことにより、後で、どのような修正が行われたかが判り、また、元に戻すことができる。
【0015】ソフトウエアの開発においては、以前に開発したソフトウエアに改良を実施して機能拡張を行い、あるいは、バグの対策を行うことがある。このような機能拡張の結果、作成されたそれぞれのソフトウエアを問題点管理対象とした場合、構成データファイル114には、それぞれのソフトウエアがどのソースコードから成り立っているかを示す構成情報と、機能拡張やバグ対策のためにソースコードにどのような変更を加えたかを示す差分の情報が記憶されることになる。そして、ソフトウエアの開発が完了し、全ての問題点が解決した時点において、問題点管理対象データファイル114に保存している差分の情報と問題点データファイル104に保存している問題点とが1対1に対応しているか否かを、インタフェース部120を通じて突き合わせることにより問題点の対策が本当にすべて完了し、また、問題点の発生によらない正当な理由のないソフトウエアの変更を摘出することができる。
【0016】そして、問題点データファイル104には、問題点毎に問題点管理対象毎の問題点対策状況を記憶するために、例えば、図2に示すようなマトリクス状のデータ構造が保持される。図2に示すデータ構造は、問題点201を示す行と問題点管理対象202を示す列とにより構成され、問題点201の各行は、入力部101から問題点の入力が行われたとき追加される。すなわち、ある管理対象のプログラムにバグ等の問題点が1つ発見される毎に問題点の入力が行われ、問題点201の行が1つずつ追加されることになる。また、問題点管理対象202の各列は、問題点管理対象が追加されたときに追加される。すなわち、1つのソフトウエアが完成してそのソフトウエアを元に改良を加えて新たな版の作成を開始するときに、入出力管理部111は、エディタ140からの新たな版の開発母体を問題点管理対象データファイル114に登録すると共に、インタフェース部120を介して、図2に示すデータ構造に問題点管理対象202の列を追加する。問題点201を示す行と問題点管理対象202を示す列との交点203には、入力部101から各対象の各問題点の対策の要否や対策の進捗状況が入力されて保存される。
【0017】さらに、入出力管理部111は、問題点管理対象データファイル114に新たな版(バージョン)のプログラムを登録するとき、同時に管理ファイル115に対して、開発母体となる版の下位に新たな版を位置付ける方法により、図3に示すような木構造のデータ形式により、開発バージョンの関係を蓄積する。図3において、木構造の各点は、問題点管理対象となるプログラムと1対1に対応している。また、図3において、実線で結ばれている点の管理対象同士は派生関係または全体と部分の関係があることを示している。例えば、問題点管理対象304と305とは、問題点管理対象302から派生して作られたか、問題点管理対象302が問題点管理対象304と305とを含むことを示している。ソフトウエアの開発を例とすれば、完成したソフトウエアの版を問題点管理対象302とし、このソフトウエアを元に改造して2つのソフトウエアの版を開発した場合に、それぞれのソフトウエアが問題点管理対象304及び305で表わされることになる。他の例としては、オブジェクト指向の技法を用いたソフトウエアの開発において、あるオブジェクトを問題点管理対象302とした場合に、このオブジェクトを継承して2つのオブジェクトを作成した場合にそれぞれのオブジェクトが問題点管理対象304及び305で表わされることになる。
【0018】前述により作成された管理ファイル115内の木構造を用いて、影響範囲決定部112は、問題点の対策が必要な問題点管理対象の一覧を自動的に抽出する処理を行う。以下、問題点管理対象を自動的に抽出する方法について説明する。
【0019】問題点が発見されたとき、入力部101から問題点の内容が入力されるが、このとき、問題点の発生源となった問題点管理対象の名称も入力する。問題点管理対象の名称とは、例えば、ソフトウエアの開発の場合、版(バージョン)番号である。また、問題点の発生源となった問題点管理対象とは、例えば、ある機能について不具合が発見された場合、その機能を最初に作成した問題点管理対象のことである。影響範囲決定部112は、問題点の発生源となった問題点管理対象の名称と管理ファイル115とを用いて問題点影響範囲を特定する。
【0020】次に、図4に示すフローを参照して、影響範囲決定部が問題点影響範囲を特定する処理動作について説明する。なお、図4に示すフローは、図2及び図3により説明した各データ構造を利用してある問題が発生したとき、問題を対策する必要がある問題点管理対象の一覧を求める方法を示している。
【0021】(1)入力部101から問題点が入力されると、入力された問題点が問題点データファイル104に記録される。これにより、図2により説明した問題点201を示す行が1つ追加されることになる(ステップ401、402)。
【0022】(2)そして、初めに入力された問題点管理対象に対応する問題点管理対象202の列と、ステップ402で追加した問題点201の行で示した行との交点に、問題点を発生させた問題点管理対象である旨を記録する(ステップ403)。
【0023】(3)その後、全ての問題点管理対象を抽出して、それらの問題点管理対象に対して次の処理を行う(ループ405)。
【0024】(4)図3により説明した木構造を参照して、問題点管理対象がどの点に対応するかを参照し、参照した点が、問題点を作り込んだバージョンに対応する点の下位に当たるか否かを判定する(ステップ404、406)。
【0025】(5)ステップ406の判定で下位である場合、対策が必要である旨を図2により説明したそれらの交点203に記録し、上位である場合、対策が不要である旨を図2により説明したそれらの交点203に記録する(ステップ407、408)。
【0026】次に、図5を参照して、問題点を最初に作り込んだ問題点管理対象と問題点の対策が必要な問題点管理対象との関係について説明する。
【0027】図5において、501は問題点を最初に作りこんだ問題点管理対象を表わしている。そして、501からみて木構造で下位にあたるのは3つの問題点管理対象である。問題点管理対象501と装置の下位にある3つの問題点管理対象502との4つの問題点管理対象は、図4により説明したアルゴリズムにより、問題点の対策が必要な問題点管理対象であると判定される。これらの4つの問題点管理対象が、図2において対象1乃至4で発生した問題点が問題点1であるとき、図2において問題点1の行で対象1乃至4の列にあたる4つの交点に、問題点の対策が必要な旨が記録される。この動作は、図4に示すフローの中で行われる。また、ソフトウエアの開発においては、ソースコードを修正し、問題点に対する対策を施したとき、インタフェース部120を通して問題点管理装置100にそのことが通知され、図2における該当の交点に対して問題点の対策が完了した旨が記録される。
【0028】構成情報表示部113は、任意の1つの問題点に対して、図6に示すような問題点管理対象毎の問題点の対策状況を出力装置130に表示する。この表示を得るための構成情報表示部113での処理動作を図7に示すフローを参照して説明する。
【0029】(1)この処理では、全ての問題点管理対象に対して、以下に説明する処理を実行する(ループ701)。
【0030】(2)まず初めに、問題点管理対象を図5により説明した木構造のデータと同一の位置に表示する。次に、現在のループで処理対象にしている問題点管理対象について、図2により説明したデータ構造の該当する列と、図6で表示しようとしている問題点との交点とを参照する。この交点には、図4ににより説明した方法及び従来技術によって問題点の対策の要否と、問題点の対策が完了したか否かがすでに記録されているのでこれを参照する(ステップ702、703)。
【0031】(3)ステップ703での参照の結果、その問題点管理対象の問題点の対策が完了しているか否かにより問題点対策の要否を判定し、対策不要と判定された場合、ステップ702において表示した問題点管理対象の表示の右隣に、問題点の対策が不要である旨の表示を行う(ステップ704、706)。
【0032】(4)ステップ704の判定で、問題点対策が必要であると判定された場合、問題点の対策が完了しているか否かを判定し、問題点の対策が完了していた場合、ステップ702において表示した問題点管理対象の表示の右隣に、問題点の対策が完了して対策済みである旨の表示を行う(ステップ705、707)。
【0033】(5)ステップ705の判定で、問題点の対策が完了していなかった場合、ステップ702において表示した問題点管理対象の表示の右隣に、問題点の対策が完了しておらず未対策である旨の表示を行う(ステップ708)。
【0034】前述の処理により図6に示すような表示を得ることができる。なお、図6において、問題点対策の進捗状況として対策完了日を表示する例を示しているが、これは、図2に示すデータ構造の交点に問題点の対策が完了した旨を記録するときに日付を一緒に記録し、ステップ703の処理でこの日付を一緒に読み込んで、ステップ707で読み込んだ日付を表示することにより実現することができる。
【0035】前述した本発明の実施形態によれば、ソフトウエアの開発保守で複数のバージョンに対して同一の問題が存在するような問題点が明らかとなったとき、一番始めに問題点を作りこんだバージョンを入力させるだけで全ての問題点管理対象の中から対策を施す必要のあるバージョンを自動的に抽出することができ、問題点の影響を受けるバージョン抽出のための調査工数を削減することができる。
【0036】また、前述した本発明の実施形態によれば、各問題点について対策を施す必要のある各バージョンについて問題点の対策状況を一目で判るように表示を行うことができるため、問題点別に問題点管理対象の集合全体としての対策の進捗状況を容易に把握することができる。
【0037】前述した本発明の実施形態は、本発明をソフトウエアの開発保守における異なるバージョンの複数のソフトウェアの管理に適用したものとして説明したが、本発明は、例えば、ハードウェア設計の管理等の、改良を加えることにより相互に関連する複数の管理対象が生じるような装置等の開発保守のために適用することができる。
【0038】
【発明の効果】以上説明したように本発明によれば、複数の問題点管理対象を管理する場合に、問題点の影響をうける問題点管理対象抽出のための調査工数を削減することができ、問題点対策の進捗状況の把握を容易とすることができる。
【出願人】 【識別番号】000005108
【氏名又は名称】株式会社日立製作所
【出願日】 平成12年9月27日(2000.9.27)
【代理人】 【識別番号】100078134
【弁理士】
【氏名又は名称】武 顕次郎
【公開番号】 特開2002−108610(P2002−108610A)
【公開日】 平成14年4月12日(2002.4.12)
【出願番号】 特願2000−294559(P2000−294559)