JP2013246644A - ソフトウェアオブジェクト修正支援装置、ソフトウェアオブジェクト修正支援方法、および、プログラム - Google Patents

ソフトウェアオブジェクト修正支援装置、ソフトウェアオブジェクト修正支援方法、および、プログラム Download PDF

Info

Publication number
JP2013246644A
JP2013246644A JP2012120036A JP2012120036A JP2013246644A JP 2013246644 A JP2013246644 A JP 2013246644A JP 2012120036 A JP2012120036 A JP 2012120036A JP 2012120036 A JP2012120036 A JP 2012120036A JP 2013246644 A JP2013246644 A JP 2013246644A
Authority
JP
Japan
Prior art keywords
correction
software object
keyword
influence range
management table
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
JP2012120036A
Other languages
English (en)
Inventor
Giichi Yamaguchi
義一 山口
Hirotsugu Tsukamoto
裕嗣 塚本
Ryuichi Miyokawa
隆一 三代川
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2012120036A priority Critical patent/JP2013246644A/ja
Publication of JP2013246644A publication Critical patent/JP2013246644A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】異なる種類のソフトウェアオブジェクト間であっても、修正による影響範囲を特定することを可能にする。
【解決手段】キーワード抽出部102は、ソフトウェアオブジェクト記憶部101に格納されている複数の異なる種類のソフトウェアオブジェクトから、特定のキーワードが含まれる箇所を抽出して、キーワード記憶部103に格納する。構成管理テーブル作成部104は、キーワード抽出部102が抽出した箇所のうち、同一のキーワードを抽出した箇所同士を対応付ける構成管理テーブル105を作成する。修正影響範囲特定部107は、構成管理テーブル105を参照して、ソフトウェアオブジェクトに対してなされた修正によって影響を受ける影響範囲を特定し、修正影響範囲出力部109が特定した影響範囲を表示装置に表示させる。
【選択図】図1

Description

本発明は、ソフトウェアオブジェクトの修正作業を支援するソフトウェアオブジェクト修正支援装置、ソフトウェアオブジェクト修正支援方法、および、プログラムに関する。
ソフトウェアの開発時に作成される仕様書やプログラムソースコード等のソフトウェアオブジェクトを修正した際に、その修正が他のソフトウェアオブジェクトに与える影響範囲を特定することは重要である。例えば、ソフトウェア管理者は、仕様書間の階層構造等が記載されているトレーサビリティマトリックスを参照して、修正による影響範囲を特定する作業を手動で行っている。
また、このような作業をコンピュータを用いて自動化する技術についても知られている。例えば、特許文献1には、利用関係にあるプログラム部品を特定することにより、ユーザがソースコードを参照すること無しに、修正にともなう影響箇所を漏れなく特定するプログラム修正支援システムについて記載されている。
特開2010−015485号公報
特許文献1に記載のシステムでは、ソースコードの修正のみを対象にしている。従って、ソースコードの修正によって仕様書が影響を受ける箇所を特定したり、仕様書を修正することによってソースコードが影響を受ける箇所を特定したりすることはできなかった。
本発明は、上記実情に鑑みてなされたものであり、異なる種類のソフトウェアオブジェクト間であっても、修正による影響範囲を特定することを可能にしたソフトウェアオブジェクト修正支援装置、ソフトウェアオブジェクト修正支援方法、および、プログラムを提供することを目的とする。
上記目的を達成するため、本発明のソフトウェアオブジェクト修正支援装置は、
ソフトウェア開発時に作成される複数の異なる種類のソフトウェアオブジェクトから、特定のキーワードが含まれる箇所を抽出するキーワード抽出手段と、
前記キーワード抽出手段が抽出した箇所のうち、同一の前記キーワードを抽出した箇所同士を対応付ける構成管理テーブルを作成する構成管理テーブル作成手段と、
前記ソフトウェアオブジェクトに対する修正の内容を示す修正情報から、ソフトウェアオブジェクトの修正箇所を特定する修正箇所特定手段と、
前記構成管理テーブルを参照して、前記特定した修正箇所を修正することにより影響を受けるソフトウェアオブジェクトの影響範囲を特定する修正影響範囲特定手段と、
前記修正影響範囲特定手段が特定した影響範囲を示す情報を出力する修正影響範囲出力手段と、
を備えることを特徴とする。
本発明によれば、異なる種類のソフトウェアオブジェクト間であっても、修正による影響範囲を特定することができる。
本発明の第1の実施形態に係るソフトウェアオブジェクト修正支援装置の機能構成図である。 キーワード記憶部に格納されている情報の例を示す図である。 第1の実施形態における構成管理テーブルの例を示す図である。 第1の実施形態における構成管理テーブル作成処理の動作を説明するためのフローチャートである。 第1の実施形態における修正影響範囲出力処理の動作を説明するためのフローチャートである。 修正影響箇所一覧画面の例を示す図である。 本発明の第2の実施形態に係るソフトウェアオブジェクト修正支援装置の機能構成図である。 辞書記憶部に格納されている情報の例を示す図である。 第2の実施形態における構成管理テーブルの例を示す図である。 本発明の第3の実施形態に係るソフトウェアオブジェクト修正支援装置の機能構成図である。 本発明の第4の実施形態に係るソフトウェアオブジェクト修正支援装置の機能構成図である。 タグ情報が埋め込まれたソフトウェアオブジェクトの例を示す図である。 第4の実施形態における構成管理テーブル作成処理の動作を説明するためのフローチャートである。 修正影響箇所一覧画面の例を示す図である。 ソフトウェアオブジェクトをソフトウェア開発工程毎に分類するテーブルの例を示した図である。
以下、本発明の各実施形態について、図面を参照しながら詳細に説明する。なお、図中同一または相当部分には同一符号を付す。なお、以下の説明において、ソフトウェアオブジェクトとは、ソフトウェアを開発する際に作成される仕様書や要件定義書やソースコード等のテキストを含むデータを表すものとする。
≪第1の実施形態≫
本発明の第1の実施形態に係るソフトウェアオブジェクト修正支援装置100について説明する。ソフトウェアオブジェクト修正支援装置100は、ソフトウェアオブジェクト間の構成を管理する装置である。ソフトウェアオブジェクト修正支援装置100は、CPU(Central Processing Unit)やRAM(Random Access Memory)、ROM(Read Only Memory)、ハードディスクドライブ、キーボード、マウス等を備えたコンピュータである。
ソフトウェアオブジェクト修正支援装置100は、機能的には、図1に示すように、ソフトウェアオブジェクト記憶部101と、キーワード抽出部102と、キーワード記憶部103と、構成管理テーブル作成部104と、構成管理テーブル105と、修正情報格納部106と、修正影響範囲特定部107と、修正影響範囲記憶部108と、修正影響範囲出力部109とを備える。なお、図1において、実線矢印はデータの流れ、波線の矢印は処理の流れを表すものとする。
ソフトウェアオブジェクト記憶部101には、ソフトウェア開発時に作成された仕様書やソースコード等のソフトウェアオブジェクトが複数格納されている。
キーワード抽出部102は、ドキュメント用キーワード抽出部102Aと、ソースコード用キーワード抽出部102Bとを備え、所定の手法により、ソフトウェアオブジェクト記憶部101に格納されているソフトウェアオブジェクトから特定のキーワードを抽出する。そして、キーワード抽出部102は、抽出したキーワードと、該キーワードが記載されているソフトウェアオブジェクト内の場所を示すロケーション情報とを対応付けてキーワード記憶部103に格納する。
なお、ドキュメント用キーワード抽出部102Aは、仕様書等のドキュメントデータを対象にキーワードを抽出する。また、ソースコード用キーワード抽出部102Bは、ソースコードを対象にキーワードを抽出する。ドキュメント用キーワード抽出部102Aとソースコード用キーワード抽出部102Bとで同じ条件でキーワードを抽出してもよいし、異なる条件でキーワードを抽出してもよい。例えば、ソースコード用キーワード抽出部102Bは、ソースコードのコメント文のみを対象にキーワードを抽出してもよい。また、ドキュメント用キーワード抽出部102Aとソースコード用キーワード抽出部102Bとで別々に抽出用のキーワードを用意して、それぞれが、用意されたキーワードが記載されている箇所を抽出してもよい。また、ソースコード用キーワード抽出部102Bは、ソースコードからキーワードを抽出する際に、公知のプログラム解析ツールを用いてもよい。なお、キーワード抽出部102は、ソフトウェアオブジェクトの種類をさらに細かく分類して、種類に応じた「○○用キーワード抽出部」をより多く備えてもよい。
図2に、キーワード記憶部103に格納されている情報の例を示す。例えば、この図の先頭エントリのデータから、キーワード「初期化」が、「仕様書A」の「A1頁B1行目」に記載されていることがわかる。
図1に戻り、構成管理テーブル作成部104は、キーワード記憶部103を参照して、共通のキーワードが抽出されたソフトウェアオブジェクトの箇所(ロケーション情報)同士を対応付けた構成管理テーブル105を作成する。
図3に、構成管理テーブル105の構成例を示す。本実施形態では、構成管理テーブル105は、2つのオブジェクト(この例では仕様書AとソースコードX)の間で共通のキーワードが記載されている箇所(内部ロケーション情報)を対応付けるテーブルである。なお、図3は、図2に示すような情報がキーワード記憶部103に格納されている場合の構成管理テーブル105に対応する。
図3に示す構成管理テーブル105において「○」は、対応する左側の項目と上側の項目のロケーション情報が示す箇所に、共通のキーワードが記載されていることを示す。従って、図3の左側の「○」からは、仕様書AのA1頁のB1行目と、ソースコードXのファイルXX1のXXX1行目には、共通のキーワードが記載されていることがわかる。なお、このことは、図2に示すキーワード記憶部103の先頭と4番目のエントリに共通のキーワード「初期化」が記録されていることからも同様にわかる。
なお、構成管理テーブル105の「○」の印は、説明を容易にするために便宜的に付与したものであり、実際のデータとしては、「×」のような他のマーキング情報でもよいし、○が記入される根拠になったキーワードを直接記入してもよい。つまり、その欄が空であれば関係なし、○やキーワードが記入されていれば関連性がある、とわかればよい。
構成管理テーブル作成部104は、上述した構成管理テーブル105を、ソフトウェアオブジェクト記憶部101に格納されている全てのソフトウェアオブジェクトの組で作成する。また、1つのソフトウェアオブジェクト内で相互に関連し合う箇所がある場合も考えられるため、構成管理テーブル作成部104は、同一のソフトウェアオブジェクトの組(例えば、仕様書Aと仕様書Aの組)に対しても構成管理テーブル105を作成する。従って、ソフトウェアオブジェクト記憶部101に格納されているソフトウェアオブジェクトの総数をNとすると、構成管理テーブル作成部104は、(1+2+…+N)個分の構成管理テーブル105を作成する。
図1に戻り、修正情報格納部106には、ソフトウェアオブジェクト記憶部101に記憶されているソフトウェアオブジェクトに加えられた修正内容を規定する修正情報が格納される。修正情報には、修正が加えられた箇所を特定するための情報が含まれているものとする。また、修正情報を、ソフトウェアオブジェクト記憶部101に記憶されているソフトウェアオブジェクトとの差分を示す情報としてもよい。
修正影響範囲特定部107は、構成管理テーブル105を参照して、修正情報格納部106に格納されている修正情報が示す修正が行われた際に、影響を受けるソフトウェアオブジェクトの箇所(修正影響範囲)を特定する。
修正影響範囲記憶部108には、修正影響範囲特定部107によって特定された結果が格納される。
修正影響範囲出力部109は、修正影響範囲記憶部108に記憶されている情報に基づいて、修正により影響を受けるソフトウェアオブジェクトの箇所(修正影響範囲)を示す情報を表示装置に出力(表示)する。
続いて、ソフトウェアオブジェクト修正支援装置の動作について説明する。ソフトウェアオブジェクト修正支援装置100の処理は、構成管理テーブル105を作成する構成管理テーブル作成処理と、ソフトウェアオブジェクトに修正がなされた際の影響範囲を出力する修正影響範囲出力処理との2つの処理に大別される。
(構成管理テーブル作成処理)
始めに、構成管理テーブル作成処理について説明する。
ユーザは、キーボードやマウスを操作して、構成管理テーブル105の作成処理の開始を指示する。この指示操作に応答して、ソフトウェアオブジェクト修正支援装置100では、図4に示す構成管理テーブル作成処理が実行される。
まず、キーワード抽出部102は、所定の手法により、ソフトウェアオブジェクト記憶部101に格納されているソフトウェアオブジェクトから特定のキーワードを抽出する(ステップS101)。
なお、どのような手法でキーワードを抽出するかは種々の手法(アルゴリズム)が採用可能である。例えば、キーワード抽出部102は、予め用意された、構成管理に重要と目されるキーワードでソフトウェアオブジェクト内を検索して、当該キーワードが記載されている箇所を抽出すればよい。
又は、キーワード抽出部102は、公知の手法により、ソフトウェアオブジェクト内を形態素解析して単語を抽出し、出現頻度が所定値以上の抽出単語をキーワードとして抽出してもよい。なお、この場合、出現頻度は高いが構成管理における重要度は低いと考えられる助詞や助動詞や予約語、及び、ソースコードのコメント以外の部分からはキーワードを抽出しないようにしてもよい。
続いて、キーワード抽出部102は、抽出したキーワードと、このキーワードが記載されているソフトウェアオブジェクト内の場所を示すロケーション情報とを対応付けてキーワード記憶部103に格納する(ステップS102)。
続いて、構成管理テーブル作成部104は、キーワード記憶部103を参照して、共通のキーワードが検出された箇所同士を対応付けた構成管理テーブル105を作成する(ステップS103)。以上で構成管理テーブル作成処理は終了する。
(修正影響範囲出力処理)
続いて、修正影響範囲出力処理について説明する。
ユーザは、キーボードやマウスを操作して、エディタ画面上からソフトウェアオブジェクト記憶部101に格納されているソフトウェアオブジェクトの1つに対して修正を加える。そして、ユーザは、修正を加えたソフトウェアオブジェクトを保存する操作を行う。この操作に応答して、修正情報格納部106に当該修正を表す修正情報が格納されるとともに、図5に示す修正影響範囲出力処理が実行される。
まず、修正影響範囲特定部107は、修正情報格納部106に記憶されている修正情報から、どのソフトウェアオブジェクトのどの箇所(ロケーション情報)が修正されたのかを特定する(ステップS201)。
続いて、修正影響範囲特定部107は、ステップS201で特定した修正箇所(ロケーション情報)を項目として有する構成管理テーブル105を全て抽出する(ステップS202)。そして、修正影響範囲特定部107は、抽出した構成管理テーブル105を参照して、ステップS201で特定した修正箇所(ロケーション情報)に関連付けられているソフトウェアオブジェクトの箇所(ロケーション情報)を特定し、修正影響範囲記憶部108に格納する(ステップS203)。例えば、図3に示すような構成管理テーブル105が定義されており、ステップS201でソースコードXのファイルXX3のXXX3行目が修正箇所として特定された場合を考える。この場合、図3に示すこの構成管理テーブル105において、この修正箇所に○が点いている仕様書AのA2頁のB2行目が関連する箇所として特定される。
続いて、修正影響範囲出力部109は、修正影響範囲記憶部108に記憶されている情報に基づいて、図6(A)に示すような修正により影響を受けるソフトウェアオブジェクトの箇所(修正影響範囲)を一覧表示する画面(修正影響箇所一覧画面)を表示装置に表示させる(ステップS204)。この例では、仕様書XのY頁のZ行目が修正された場合に、要件定義書aのb頁のc行目、仕様書dのe頁のf行目、および、ソースコードgのhファイルのi行目等が影響を受けることがわかる。また、図6(B)に示すように、修正箇所と修正による影響箇所との関係を図形や矢印を用いて表した修正影響箇所一覧画面を作成してもよい。以上で修正影響範囲出力処理は終了する。
このように本実施形態に係るソフトウェアオブジェクト修正支援装置100は、複数種類のデータからなるソフトウェアオブジェクトからキーワードを抽出し、同じキーワードが抽出される箇所同士を関連付けた構成管理テーブル105を作成する。そして、ソフトウェアオブジェクトに修正がなされた際には、作成した構成管理テーブル105を参照して、修正がなされた箇所と同じキーワードが記載されている箇所が、修正により影響を受ける箇所(修正影響範囲)として出力される。ここで、構成管理テーブル105は、仕様書やソースコードのような異なる種類のソフトウェアオブジェクトの箇所同士であっても、関連付けを行う。従って、本実施形態によれば、異なる種類のソフトウェアオブジェクト間であっても、修正による影響範囲を抽出することが可能となる。
また、本実施形態に係るソフトウェアオブジェクト修正支援装置100では、ソフトウェアオブジェクトの種類(ドキュメントデータかソースコード)に応じて、異なるキーワード抽出部102(ドキュメント用キーワード抽出部102A、ソースコード用キーワード抽出部102B)を備える。そして、ドキュメント用キーワード抽出部102Aとソースコード用キーワード抽出部102Bとのそれぞれで、対応する条件に従って、ソフトウェアオブジェクトからキーワードを抽出する。従って、本実施形態によれば、ソフトウェアオブジェクトの種類に応じた柔軟なキーワードの抽出が可能となり、キーワード抽出の精度をより向上させることが可能となる。
≪第2の実施形態≫
続いて、第2の実施形態に係るソフトウェアオブジェクト修正支援装置200について説明する。第1の実施形態に係るソフトウェアオブジェクト修正支援装置100では、ソフトウェアオブジェクト間で同じキーワードが抽出された箇所同士を構成管理テーブル105で関連付けた。従って、第1の実施形態では、意味が同じキーワードであっても綴りが異なっているキーワード同士が抽出された箇所同士は関連付けられなかった。本実施形態では、構成管理テーブル105で関連付ける範囲を類似するキーワードまで拡張したことを特徴とする。
図7に、本発明の第2の実施形態に係るソフトウェアオブジェクト修正支援装置200の構成を示す。なお、第1の実施形態に係るソフトウェアオブジェクト修正支援装置100と同じ構成については、同じ参照符号を付し、その部分の説明は省略する。第2の実施形態に係るソフトウェアオブジェクト修正支援装置200は、第1の実施形態に係るソフトウェアオブジェクト修正支援装置100と比べて、新たに辞書記憶部110を備える。
辞書記憶部110には、図8に示すように、類似するキーワード同士が対応付けられて記憶されている。図8の例では、1つのエントリが、1つの類似するキーワードのグループを示している。例えば、この図の先頭のエントリから、「Initialize」、「イニシャライズ」、「初期化」、「立上げ」、及び「ブート」の各キーワードは互いに類似するキーワードであることがわかる。
第2の実施形態では、構成管理テーブル作成処理において、構成管理テーブル作成部104は、共通のキーワードだけでなく、辞書記憶部110を参照して、類似するキーワードが検出された箇所同士を対応付けた構成管理テーブル105を作成する。
例えば、図2、図8に示すような情報が、それぞれ、キーワード記憶部103と辞書記憶部110とに格納されている場合の構成管理テーブル105の例を図9に示す。この場合、辞書記憶部110を参照することで、キーワード記憶部103の3番目のエントリのキーワード「BankData」と5番目のエントリのキーワード「貯金」とが互いに類似しているキーワードであることがわかる。従って、これらエントリのロケーション情報を対応付ける「○」が図9に示す構成管理テーブル105に付与される。従って、第1の実施形態で辞書記憶部110を用いないで作成した図3に示す構成管理テーブル105よりも、ロケーション情報を多く対応付けることが可能となる。
このように、第2の施形態では、構成管理テーブル105で関連付ける範囲を類似するキーワード間まで拡張させる。従って、より精度の高い構成管理テーブル105を作成することが可能となり、修正影響範囲出力処理において、修正による影響箇所をより漏れなく抽出することが可能となる。
≪第3の実施形態≫
続いて、第3の実施形態に係るソフトウェアオブジェクト修正支援装置300について説明する。図10に、第3の実施形態に係るソフトウェアオブジェクト修正支援装置300の構成を示す。なお、第1、第2の実施形態に係るソフトウェアオブジェクト修正支援装置100、200と同じ構成については、同じ参照符号を付し、その部分の説明は省略する。
第3の実施形態に係るソフトウェアオブジェクト修正支援装置300は、第2の実施形態に係るソフトウェアオブジェクト修正支援装置200と比べて、辞書記憶部110を複数有するとともに、辞書選択部111を新たに備える。
複数の辞書記憶部110は、それぞれ異なる観点に基づいて作成されている。例えば、ソフトウェアオブジェクト修正支援装置300は、自動車に関連するキーワードの類似関係が多く登録されている辞書記憶部110や、化学に関連するキーワードの類似関係が多く登録されている辞書記憶部110等を有する。
辞書選択部111は、構成管理テーブル作成処理で構成管理テーブル105を作成する際に、ユーザや外部のシステムからの辞書記憶部110の選択を受け付ける。例えば、ユーザは、カーディーラーの営業用のソフトウェア開発で作成されるソフトウェアオブジェクトを対象とした構成管理テーブル105を作成したい場合、自動車に関連するキーワードの類似関係が多く登録されている辞書記憶部110を選択すればよい。また、ユーザは、化学実験シミュレーション用のソフトウェア開発で作成されるソフトウェアオブジェクトを対象とした構成管理テーブル105を作成したい場合、化学に関連するキーワードの類似関係が多く登録されている辞書記憶部110を選択すればよい。なお、辞書選択部111は、複数の辞書記憶部110の選択を受け付けてもよい。
そして、構成管理テーブル作成処理において、構成管理テーブル作成部104は、共通のキーワードだけでなく、辞書選択部が選択を受け付けた辞書記憶部110を参照して、類似するキーワードが検出された箇所同士を対応付けた構成管理テーブル105を作成する。従って、本実施形態では、ソフトウェアオブジェクトに最適な辞書を選択して構成管理テーブル105を作成することができるため、より関連付けの精度の高い構成管理テーブル105の作成が可能となり、修正影響範囲出力処理において、修正による影響箇所をより漏れなく抽出することが可能となる。
≪第4の実施形態≫
続いて、第4の実施形態に係るソフトウェアオブジェクト修正支援装置400について説明する。図11に、本発明の第4の実施形態に係るソフトウェアオブジェクト修正支援装置400の構成を示す。なお、第1〜第3の実施形態に係るソフトウェアオブジェクト修正支援装置100〜300と同じ構成については、同じ参照符号を付し、その部分の説明は省略する。
第4の実施形態に係るソフトウェアオブジェクト修正支援装置400は、第1の実施形態に係るソフトウェアオブジェクト修正支援装置100と比べて、タグ情報埋込部112を新たに備える。
タグ情報埋込部112は、ソフトウェアオブジェクトにおけるキーワード抽出部102が抽出したキーワードが含まれる箇所に、キーワード毎に一意のタグ情報を埋め込む。このタグ情報は、管理者権限の無い一般ユーザが、ソフトウェアオブジェクト内から削除することができない情報である。例えば、ユーザがキーボードやマウス等を操作して、エディタ上からソフトウェアオブジェクト内のタグ情報を削除した後、このソフトウェアオブジェクトを保存しようとした場合に、警告メッセージ等を表示するとともに、保存ができないようにする制御を行えばよい。若しくは、タグ情報を削除できないように開発規約でルール化してもよい。
図12に、タグ情報埋込部112によってタグ情報が埋め込まれたソフトウェアオブジェクトの例を示す。図12(A)は、仕様書であるソフトウェアオブジェクト内にタグ情報「$構成管理タグ:456789$」が埋め込まれた例である。図12(B)は、C言語で記載されたソースコードであるソフトウェアオブジェクト内にタグ情報「$構成管理タグ:456789$」が埋め込まれた例である。
図12(A)と図12(B)の例では、両方とも、同一のキーワード「初期化中の異常処理」に対応するタグ情報であるため、キーワードの直後に同一のタグ情報「$構成管理タグ:456789$」が埋め込まれている。なお、タグ情報の番号は、抽出されたキーワードの種類毎に固有の番号を示すものであり、例えば自動採番により連番としてもよい。また、前述したように、タグ情報「$構成管理タグ:456789$」を一般ユーザが削除することはできない。
続いて、第4の実施形態に係るソフトウェアオブジェクト修正支援装置400で実施される構成管理テーブル作成処理の動作について、図13のフローチャートを参照して説明する。
構成管理テーブル作成処理が開始されると、キーワード抽出部102は、ソフトウェアオブジェクト記憶部101に格納されているソフトウェアオブジェクトから特定のキーワードを抽出する(ステップS301)。なお、この処理は、図4のステップS101と実質的に同じ処理である。
続いて、タグ情報埋込部112は、ステップS301で抽出されたキーワードが含まれる箇所に、キーワードの種類毎に固有のユーザが削除できないタグ情報を埋め込む(ステップS302)。
続いて、キーワード抽出部102は、ステップS302で埋め込んだタグ情報と、このタグ情報が埋め込まれているソフトウェアオブジェクト内の場所を示すロケーション情報とを対応付けてキーワード記憶部103に格納する(ステップS303)。
続いて、構成管理テーブル作成部104は、キーワード記憶部103を参照して、共通のタグ情報が埋め込まれている箇所同士を対応付けた構成管理テーブル105を作成する(ステップS304)。以上で構成管理テーブル作成処理は終了する。
このように、本実施形態では、ソフトウェアオブジェクトから抽出されたキーワードにユーザが削除できないタグ情報を埋め込み、同一のタグ情報を有する箇所(ロケーション情報)を対応付けた構成管理テーブル105を作成する。
第1の実施形態では、抽出したキーワードが削除や修正された場合、そのキーワードは抽出されなくなるため、そのキーワードを抽出した箇所と他の箇所を関連付けていた構成管理テーブル105の「○」で示した情報も消去されてしまう。これに対し、本実施形態では、削除できない同一のタグ情報を有する箇所(ロケーション情報)同士を対応付けた構成管理テーブル105を作成するため、後でキーワードが修正されてしまったような場合でも、タグ情報同士の関連付け情報が残っているため、ユーザが間違ってコメント等を改変してしまって関連性が抽出できなくなってしまうことを防止することが可能となる。
なお、本発明は、上記各実施形態に限定されず、本発明の要旨を逸脱しない部分での種々の修正は勿論可能である。
例えば、上記各実施形態では、図3や図9に示すような2つのソフトウェアオブジェクト内の箇所(ロケーション情報)の関連付けを行う構成管理テーブル105を複数作成した。しかしながら、ソフトウェアオブジェクト間のロケーション情報の関連付けを行うことが可能であれば、1つにまとめた構成管理テーブル105等を作成してもよく、構成管理テーブル105のデータ形式は種々のものが採用可能である。
また、例えば、上記各実施形態では、図3や図9に示すように、ロケーション情報を頁数やファイルの行数で表した。しかしながら、仕様書であればX章のY節のZ行目、ソースコードであれば関数XX内のYY行目等とロケーション情報を表してもよい。要するに、ソフトウェアオブジェクト内の位置を特定できる情報であれば、任意の情報をロケーション情報として採用可能である。
また、例えば、上記各実施形態では、ソフトウェアオブジェクトに実際に修正があった場合に修正影響範囲出力処理を実施して、その影響範囲を特定したが、修正を行わない場合にも、修正影響範囲出力処理を実施してもよい。この場合、ユーザ等から、修正したいソフトウェアオブジェクトの箇所の指定だけを受け付け、当該指定された箇所で修正がなされたと仮定した修正影響範囲出力処理を実行して、仮の修正により影響を受ける箇所を出力すればよい。このようにすることで、ユーザは、実際に修正を行う前に、修正に伴う作業がどれだけ発生するのか等をシミュレーションすることが可能となる。また、複数の修正のパターンに対して修正影響範囲出力処理を実行し、どの修正パターンで修正を行えば、最も修正箇所が少ないか等を分析することも可能となる。
また、上記各実施形態では、修正により影響を受けるソフトウェアオブジェクトの箇所(修正影響範囲)を一覧表示する図6に示すような修正影響箇所一覧画面を作成して表示した。しかしながら、一覧表示するソフトウェアオブジェクトの箇所(修正影響範囲)を種類に応じて分類して表示する修正影響箇所一覧画面を作成して表示してもよい。
例えば、図14に示すように、修正により影響を受けるソフトウェアオブジェクトの箇所を、対応するソフトウェア開発工程(ステップ番号:成果物種類)毎に分類して表示してもよい。なお、このような表示をするためには、予め図15に示すような、各ソフトウェアオブジェクトをソフトウェア開発工程毎に分類するためのテーブルをソフトウェアオブジェクト修正支援装置100,200,300,400に格納しておく必要がある。また、このテーブルは、ソフトウェア開発の進行に従ってユーザ等の操作によって随時更新されるテーブルである。
このようにソフトウェアオブジェクトの箇所を種類毎に分類して表示することにより、図6に示す修正影響箇所一覧画面よりもより利便性のよい表示が可能となり、ユーザのソフトウェア開発作業をより支援することが可能となる。なお、ソフトウェアオブジェクトをどのような基準で分類するかは任意の基準が採用可能である。
また、例えば、ユーザからのキーボード等を介した操作を受け付けて、キーワード記憶部103に格納されている情報をユーザが編集可能にしてもよい。このようにすることで、不要なキーワードの削除や、ユーザが独自に定義したキーワードの登録が可能となり、キーワード記憶部103に格納する情報の精度をより向上させることができる。さらに、キーワード抽出部102が抽出する抽出のルールも、ユーザがパラメータを変更すること等によって適宜変更可能としてもよい。
また、例えば、本発明に係るソフトウェアオブジェクト修正支援装置100,200,300,400の動作を規定する動作プログラムを既存のパーソナルコンピュータや情報端末機器等に適用することで、当該パーソナルコンピュータ等を本発明に係るソフトウェアオブジェクト修正支援装置100,200,300,400として機能させることも可能である。
また、このようなプログラムの配布方法は任意であり、例えば、CD−ROM(Compact Disk Read-Only Memory)、DVD(Digital Versatile Disk)、MO(Magneto Optical Disk)、メモリカードなどのコンピュータ読み取り可能な記録媒体に格納して配布してもよいし、インターネットなどの通信ネットワークを介して配布してもよい。
100 ソフトウェアオブジェクト修正支援装置
101 ソフトウェアオブジェクト記憶部
102 キーワード抽出部
102A ドキュメント用キーワード抽出部
102B ソースコード用キーワード抽出部
103 キーワード記憶部
104 構成管理テーブル作成部
105 構成管理テーブル
106 修正情報格納部
107 修正影響範囲特定部
108 修正影響範囲記憶部
109 修正影響範囲出力部

Claims (10)

  1. ソフトウェア開発時に作成される複数の異なる種類のソフトウェアオブジェクトから、特定のキーワードが含まれる箇所を抽出するキーワード抽出手段と、
    前記キーワード抽出手段が抽出した箇所のうち、同一の前記キーワードを抽出した箇所同士を対応付ける構成管理テーブルを作成する構成管理テーブル作成手段と、
    前記ソフトウェアオブジェクトに対する修正の内容を示す修正情報から、ソフトウェアオブジェクトの修正箇所を特定する修正箇所特定手段と、
    前記構成管理テーブルを参照して、前記特定した修正箇所を修正することにより影響を受けるソフトウェアオブジェクトの影響範囲を特定する修正影響範囲特定手段と、
    前記修正影響範囲特定手段が特定した影響範囲を示す情報を出力する修正影響範囲出力手段と、
    を備えることを特徴とするソフトウェアオブジェクト修正支援装置。
  2. 相互に関連する異なるキーワード同士を対応付ける辞書手段を備え、
    前記構成管理テーブル作成手段は、同一の前記キーワードを抽出した箇所同士を対応付けるだけでなく、前記辞書手段を参照して、関連する前記キーワードを抽出した箇所同士を対応付ける構成管理テーブルを作成する、
    ことを特徴とする請求項1に記載のソフトウェアオブジェクト修正支援装置。
  3. 前記辞書手段は複数あり、
    前記辞書手段の選択を受け付ける辞書選択手段を備え、
    前記構成管理テーブル作成手段は、前記辞書選択手段が受け付けた辞書手段を参照して、前記構成管理テーブルを作成する、
    ことを特徴とする請求項2に記載のソフトウェアオブジェクト修正支援装置。
  4. ソフトウェア開発時に作成される複数の異なる種類のソフトウェアオブジェクトから、特定のキーワードが含まれる箇所を抽出するキーワード抽出手段と、
    前記キーワード抽出手段が抽出した前記キーワードが含まれる箇所に、ユーザが削除できない、該キーワード毎に一意のタグ情報を埋め込むタグ埋込手段と、
    前記タグ埋込手段がタグ情報を埋め込んだ箇所のうち、同一の前記タグ情報を埋め込んだ箇所同士を対応付ける構成管理テーブルを作成する構成管理テーブル作成手段と、
    前記ソフトウェアオブジェクトに対する修正の内容を示す修正情報から、ソフトウェアオブジェクトの修正箇所を特定する修正箇所特定手段と、
    前記構成管理テーブルを参照して、前記特定した修正箇所を修正することにより影響を受けるソフトウェアオブジェクトの影響範囲を特定する修正影響範囲特定手段と、
    前記修正影響範囲特定手段が特定した影響範囲を示す情報を出力する修正影響範囲出力手段と、
    を備えることを特徴とするソフトウェアオブジェクト修正支援装置。
  5. 前記修正影響範囲出力手段は、前記修正影響範囲特定手段が特定した影響範囲を示す情報をその種類に応じて分類して表示する、
    ことを特徴とする請求項1乃至4の何れか1項に記載のソフトウェアオブジェクト修正支援装置。
  6. 前記キーワード抽出手段は、前記ソフトウェアオブジェクトの種類に応じた条件で、前記キーワードが含まれる箇所を抽出する、
    ことを特徴とする請求項1乃至5の何れか1項に記載のソフトウェアオブジェクト修正支援装置。
  7. ソフトウェア開発時に作成される複数の異なる種類のソフトウェアオブジェクトから、特定のキーワードが含まれる箇所を抽出するキーワード抽出ステップと、
    前記キーワード抽出ステップで抽出した箇所のうち、同一の前記キーワードを抽出した箇所同士を対応付ける構成管理テーブルを作成する構成管理テーブル作成ステップと、
    前記ソフトウェアオブジェクトに対する修正の内容を示す修正情報から、ソフトウェアオブジェクトの修正箇所を特定する修正箇所特定ステップと、
    前記構成管理テーブルを参照して、前記特定した修正箇所を修正することにより影響を受けるソフトウェアオブジェクトの影響範囲を特定する修正影響範囲特定ステップと、
    前記修正影響範囲特定ステップで特定した影響範囲を示す情報を出力する修正影響範囲出力ステップと、
    を備えることを特徴とするソフトウェアオブジェクト修正支援方法。
  8. ソフトウェア開発時に作成される複数の異なる種類のソフトウェアオブジェクトから、特定のキーワードが含まれる箇所を抽出するキーワード抽出ステップと、
    前記キーワード抽出ステップで抽出した前記キーワードが含まれる箇所に、ユーザが削除できない、該キーワード毎に一意のタグ情報を埋め込むタグ埋込ステップと、
    前記タグ埋込ステップでタグ情報を埋め込んだ箇所のうち、同一の前記タグ情報を埋め込んだ箇所同士を対応付ける構成管理テーブルを作成する構成管理テーブル作成ステップと、
    前記ソフトウェアオブジェクトに対する修正の内容を示す修正情報から、ソフトウェアオブジェクトの修正箇所を特定する修正箇所特定ステップと、
    前記構成管理テーブルを参照して、前記特定した修正箇所を修正することにより影響を受けるソフトウェアオブジェクトの影響範囲を特定する修正影響範囲特定ステップと、
    前記修正影響範囲特定ステップで特定した影響範囲を示す情報を出力する修正影響範囲出力ステップと、
    を備えることを特徴とするソフトウェアオブジェクト修正支援方法。
  9. コンピュータを、
    ソフトウェア開発時に作成される複数の異なる種類のソフトウェアオブジェクトから、特定のキーワードが含まれる箇所を抽出するキーワード抽出手段、
    前記キーワード抽出手段が抽出した箇所のうち、同一の前記キーワードを抽出した箇所同士を対応付ける構成管理テーブルを作成する構成管理テーブル作成手段、
    前記ソフトウェアオブジェクトに対する修正の内容を示す修正情報から、ソフトウェアオブジェクトの修正箇所を特定する修正箇所特定手段、
    前記構成管理テーブルを参照して、前記特定した修正箇所を修正することにより影響を受けるソフトウェアオブジェクト内の影響範囲を特定する修正影響範囲特定手段、
    前記修正影響範囲特定手段が特定した影響範囲を示す情報を出力する修正影響範囲出力手段、
    として機能させるプログラム。
  10. コンピュータを、
    ソフトウェア開発時に作成される複数の異なる種類のソフトウェアオブジェクトから、特定のキーワードが含まれる箇所を抽出するキーワード抽出手段、
    前記キーワード抽出手段が抽出した前記キーワードが含まれる箇所に、ユーザが削除できない、該キーワード毎に一意のタグ情報を埋め込むタグ埋込手段、
    前記タグ埋込手段がタグ情報を埋め込んだ箇所のうち、同一の前記タグ情報を埋め込んだ箇所同士を対応付ける構成管理テーブルを作成する構成管理テーブル作成手段、
    前記ソフトウェアオブジェクトに対する修正の内容を示す修正情報から、ソフトウェアオブジェクトの修正箇所を特定する修正箇所特定手段、
    前記構成管理テーブルを参照して、前記特定した修正箇所を修正することにより影響を受けるソフトウェアオブジェクトの影響範囲を特定する修正影響範囲特定手段、
    前記修正影響範囲特定手段が特定した影響範囲を示す情報を出力する修正影響範囲出力手段、
    として機能させるプログラム。
JP2012120036A 2012-05-25 2012-05-25 ソフトウェアオブジェクト修正支援装置、ソフトウェアオブジェクト修正支援方法、および、プログラム Pending JP2013246644A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012120036A JP2013246644A (ja) 2012-05-25 2012-05-25 ソフトウェアオブジェクト修正支援装置、ソフトウェアオブジェクト修正支援方法、および、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012120036A JP2013246644A (ja) 2012-05-25 2012-05-25 ソフトウェアオブジェクト修正支援装置、ソフトウェアオブジェクト修正支援方法、および、プログラム

Publications (1)

Publication Number Publication Date
JP2013246644A true JP2013246644A (ja) 2013-12-09

Family

ID=49846355

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012120036A Pending JP2013246644A (ja) 2012-05-25 2012-05-25 ソフトウェアオブジェクト修正支援装置、ソフトウェアオブジェクト修正支援方法、および、プログラム

Country Status (1)

Country Link
JP (1) JP2013246644A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015138490A (ja) * 2014-01-24 2015-07-30 富士通株式会社 設計書管理プログラム、設計書管理方法および設計書管理装置
JP2016105217A (ja) * 2014-12-01 2016-06-09 三菱電機株式会社 トレーサビリティ管理装置
JP2016110330A (ja) * 2014-12-04 2016-06-20 三菱電機株式会社 変更影響分析装置及び変更影響分析方法及びプログラム
JP2016212633A (ja) * 2015-05-08 2016-12-15 富士電機株式会社 プログラム試験優先順位決定システム
JP2017021480A (ja) * 2015-07-08 2017-01-26 日本電気株式会社 情報処理装置、差分対応付け方法および差分対応付けプログラム
WO2017199443A1 (ja) * 2016-05-20 2017-11-23 三菱電機株式会社 テンプレート生成装置、テンプレート生成プログラム及びテンプレート生成方法
JP2018092466A (ja) * 2016-12-06 2018-06-14 株式会社日立製作所 変更影響調査支援装置、変更影響調査支援方法および変更影響調査支援プログラム

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10105390A (ja) * 1996-09-26 1998-04-24 Nec Corp 仕様書間クロスリファレンス表
JP2000047861A (ja) * 1998-07-30 2000-02-18 Nec Corp 影響範囲検出装置および影響範囲の検出方法
JP2000112611A (ja) * 1998-10-02 2000-04-21 Ricoh Co Ltd ソフトウエア開発文書の表示方法および記憶媒体
JP2002182908A (ja) * 2000-12-15 2002-06-28 Mitsubishi Electric Corp S/w開発プロセス間のトレーサビリティ装置
JP2005100078A (ja) * 2003-09-25 2005-04-14 Hitachi Ltd ソフトウェア資産管理システム
JP2007128123A (ja) * 2005-11-01 2007-05-24 Hitachi Ltd 影響範囲抽出システム
JP2007199755A (ja) * 2006-01-23 2007-08-09 Hitachi Ltd 設計情報管理方法およびシステム
JP2008192059A (ja) * 2007-02-07 2008-08-21 Nec Corp 要件(要求)間リンクの設定支援システム、要件(要求)間リンクの設定方法及びプログラム
JP2010003104A (ja) * 2008-06-20 2010-01-07 Internatl Business Mach Corp <Ibm> 開発支援装置、方法、およびプログラム
JP2010015458A (ja) * 2008-07-04 2010-01-21 Hitachi Ltd プログラム修正支援システム、プログラム修正支援方法、およびプログラム修正支援プログラム
JP2010039751A (ja) * 2008-08-05 2010-02-18 Fujitsu Ltd ソフトウェア開発システム
JP2011253345A (ja) * 2010-06-02 2011-12-15 Mitsubishi Electric Corp 成果物管理装置、成果物管理方法及び成果物管理プログラム

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10105390A (ja) * 1996-09-26 1998-04-24 Nec Corp 仕様書間クロスリファレンス表
JP2000047861A (ja) * 1998-07-30 2000-02-18 Nec Corp 影響範囲検出装置および影響範囲の検出方法
JP2000112611A (ja) * 1998-10-02 2000-04-21 Ricoh Co Ltd ソフトウエア開発文書の表示方法および記憶媒体
JP2002182908A (ja) * 2000-12-15 2002-06-28 Mitsubishi Electric Corp S/w開発プロセス間のトレーサビリティ装置
JP2005100078A (ja) * 2003-09-25 2005-04-14 Hitachi Ltd ソフトウェア資産管理システム
JP2007128123A (ja) * 2005-11-01 2007-05-24 Hitachi Ltd 影響範囲抽出システム
JP2007199755A (ja) * 2006-01-23 2007-08-09 Hitachi Ltd 設計情報管理方法およびシステム
JP2008192059A (ja) * 2007-02-07 2008-08-21 Nec Corp 要件(要求)間リンクの設定支援システム、要件(要求)間リンクの設定方法及びプログラム
JP2010003104A (ja) * 2008-06-20 2010-01-07 Internatl Business Mach Corp <Ibm> 開発支援装置、方法、およびプログラム
JP2010015458A (ja) * 2008-07-04 2010-01-21 Hitachi Ltd プログラム修正支援システム、プログラム修正支援方法、およびプログラム修正支援プログラム
JP2010039751A (ja) * 2008-08-05 2010-02-18 Fujitsu Ltd ソフトウェア開発システム
JP2011253345A (ja) * 2010-06-02 2011-12-15 Mitsubishi Electric Corp 成果物管理装置、成果物管理方法及び成果物管理プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6015033503; "FORMULATOR for Windows(32bit版) 設計書作成支援(C/C++/VC++/ 第F1版, 20011015, p.35、271-272, 株式会社東芝 e-ソリューション社 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015138490A (ja) * 2014-01-24 2015-07-30 富士通株式会社 設計書管理プログラム、設計書管理方法および設計書管理装置
JP2016105217A (ja) * 2014-12-01 2016-06-09 三菱電機株式会社 トレーサビリティ管理装置
JP2016110330A (ja) * 2014-12-04 2016-06-20 三菱電機株式会社 変更影響分析装置及び変更影響分析方法及びプログラム
JP2016212633A (ja) * 2015-05-08 2016-12-15 富士電機株式会社 プログラム試験優先順位決定システム
JP2017021480A (ja) * 2015-07-08 2017-01-26 日本電気株式会社 情報処理装置、差分対応付け方法および差分対応付けプログラム
WO2017199443A1 (ja) * 2016-05-20 2017-11-23 三菱電機株式会社 テンプレート生成装置、テンプレート生成プログラム及びテンプレート生成方法
JP6305671B1 (ja) * 2016-05-20 2018-04-04 三菱電機株式会社 テンプレート生成装置、テンプレート生成プログラム及びテンプレート生成方法
JP2018092466A (ja) * 2016-12-06 2018-06-14 株式会社日立製作所 変更影響調査支援装置、変更影響調査支援方法および変更影響調査支援プログラム

Similar Documents

Publication Publication Date Title
JP2013246644A (ja) ソフトウェアオブジェクト修正支援装置、ソフトウェアオブジェクト修正支援方法、および、プログラム
JP2011186812A (ja) 文書及び図面間の整合性確認支援装置、整合性確認支援プログラム及び、整合性確認支援プログラムを記録した記録媒体
JP6505421B2 (ja) 情報抽出支援装置、方法およびプログラム
CN102089762A (zh) 用于集成电路的基于模型的设计及布局的方法及系统
JP2017041171A (ja) テストシナリオ生成支援装置およびテストシナリオ生成支援方法
WO2014064803A1 (ja) 文書処理プログラム、文書処理装置、文書処理システム、文書処理方法
CN108846069B (zh) 一种基于标记语言的文档执行方法及装置
JP2008186356A (ja) ドキュメントの整合性検査支援システムおよび方法、ならびにそのプログラム
US8521762B2 (en) Automated business process modeling
JP5687312B2 (ja) デジタル情報分析システム、デジタル情報分析方法、及びデジタル情報分析プログラム
JP5355497B2 (ja) 成果物管理装置、成果物管理方法及び成果物管理プログラム
CN106250354A (zh) 处理文书的信息处理装置、信息处理方法以及程序
JP6797038B2 (ja) ソフトウェア素材選定支援装置及びソフトウェア素材選定支援プログラム
JP2008210229A (ja) 知的財産情報検索装置、知的財産情報検索方法及び知的財産情報検索プログラム
JP6379713B2 (ja) 設計支援プログラム、装置、及び方法
JP7263753B2 (ja) 文書処理装置および文書処理プログラム
WO2015145992A1 (ja) 非機能評価パラメータ抽出装置、非機能評価パラメータ抽出方法、および、記憶媒体
JP2011145808A (ja) 設計書作成支援装置、設計書作成支援方法、プログラムおよび設計書作成支援システム
JP2011065372A (ja) 給与計算式作成システム
JP2005135164A (ja) ハイパーテキストファイルの作成方法及び閲覧システム
JP5481093B2 (ja) 規程文書管理装置及び規程文書管理プログラム
JP2010134766A (ja) 文書データ処理装置およびそのプログラム
KR20170050338A (ko) 데이터 구조화 방법
JP2017187823A (ja) 文言追記装置、文言追記方法及び文言追記プログラム
JP6475288B2 (ja) プログラム比較方法、プログラム比較装置およびプログラム比較プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150108

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150722

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150825

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20151222