JP5168099B2 - Renovation work range division program, refurbishment work range division device, and refurbishment work range division method - Google Patents
Renovation work range division program, refurbishment work range division device, and refurbishment work range division method Download PDFInfo
- Publication number
- JP5168099B2 JP5168099B2 JP2008292878A JP2008292878A JP5168099B2 JP 5168099 B2 JP5168099 B2 JP 5168099B2 JP 2008292878 A JP2008292878 A JP 2008292878A JP 2008292878 A JP2008292878 A JP 2008292878A JP 5168099 B2 JP5168099 B2 JP 5168099B2
- Authority
- JP
- Japan
- Prior art keywords
- degree
- influence
- software elements
- work range
- division
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 120
- 238000009418 renovation Methods 0.000 title claims description 48
- 238000009419 refurbishment Methods 0.000 title claims description 8
- 230000008569 process Effects 0.000 claims description 104
- 238000004458 analytical method Methods 0.000 claims description 90
- 230000008439 repair process Effects 0.000 claims description 63
- 230000008878 coupling Effects 0.000 claims description 17
- 238000010168 coupling process Methods 0.000 claims description 17
- 238000005859 coupling reaction Methods 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 13
- 230000000694 effects Effects 0.000 claims description 6
- 230000004048 modification Effects 0.000 description 33
- 238000012986 modification Methods 0.000 description 33
- 230000008859 change Effects 0.000 description 14
- 238000012217 deletion Methods 0.000 description 14
- 230000037430 deletion Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 14
- 230000011218 segmentation Effects 0.000 description 12
- 238000007634 remodeling Methods 0.000 description 8
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Description
本発明は、ソフトウェアシステムの改修作業範囲を分割するための改修作業範囲分割プログラム,改修作業範囲分割装置,及び改修作業範囲分割方法に関する。 The present invention relates to a modification work range dividing program, a modification work range dividing device, and a modification work range dividing method for dividing a modification work range of a software system.
従来、業務アプリケーション等のソフトウェアシステムの改修作業(変更,追加,削除等)は、作業を迅速に終わらせるために、改修作業範囲を分割し、分割された各作業範囲を並行作業で改修することにより、行われていた。
改修作業範囲を分割する場合、分割された作業範囲間において各作業範囲で行った改修作業の影響が少なく、且つ、本来一緒に扱うべきソフトウェア要素群が同じ作業範囲内に含まれていることが望ましい。上記先行技術文献にはオブジェクト指向言語プログラムを改修した場合に改修箇所が影響を及ぼす範囲を特定する技術が開示されており、この技術を応用することにより作業範囲間の影響を少なくして改修作業範囲を分割することが考えられる。しかしながらこの分割方法によれば、本来1つの作業範囲として一緒に扱うべきソフトウェア要素群が確実に1つの作業範囲内に含まれるように分割箇所を決定することはできない。 When the repair work range is divided, the effect of the repair work performed in each work range is small between the divided work ranges, and the software element group that should be handled together is included in the same work range. desirable. The above-mentioned prior art documents disclose a technique for identifying the range in which the modification location affects when the object-oriented language program is modified. By applying this technique, the modification work is reduced with less influence between the work ranges. It is conceivable to divide the range. However, according to this division method, it is not possible to determine the division location so that the software element group that should be handled together as one work range is definitely included in one work range.
本発明は上記課題に鑑みてなされたものであり、その目的はソフトウェアシステムの改修作業範囲を分割する際に本来一緒に扱うべきソフトウェア要素群が分割されることを抑制可能な、改修作業範囲分割プログラム,改修作業範囲分割装置,及び改修作業範囲分割方法を提供することにある。 The present invention has been made in view of the above problems, and its purpose is to divide a repair work range that can prevent the group of software elements that should be dealt with together when the repair work range of a software system is divided. An object is to provide a program, a repair work range dividing device, and a repair work range dividing method.
改修作業範囲分割プログラム,改修作業範囲分割装置,及び改修作業範囲分割方法は、ソフトウェアシステムを構成するソフトウェア要素間におけるソフトウェア要素の改修作業の影響度合いとソフトウェア要素間の意味関係の結合度に基づいて、ソフトウェアシステムの改修作業範囲を複数の範囲に分割する。 The modification work range dividing program, the modification work range dividing device, and the modification work range dividing method are based on the degree of influence of the modification work of the software elements between the software elements constituting the software system and the degree of connectivity of the semantic relationship between the software elements. The software system repair work range is divided into a plurality of ranges.
改修作業範囲分割プログラム,改修作業範囲分割装置,及び改修作業範囲分割方法によれば、ソフトウェアシステムの改修作業範囲を分割する際に本来一緒に扱うべきソフトウェア要素群が分割されることを抑制できる。 According to the modification work range dividing program, the modification work range dividing device, and the modification work range dividing method, it is possible to prevent the software element group that should be handled together when dividing the modification work range of the software system from being divided.
以下、図面を参照して、本発明の実施形態となる改修作業範囲分割装置の構成とその改修作業範囲分割方法について説明する。
〔改修作業範囲分割装置の構成〕
始めに、図1を参照して、本発明の実施形態となる改修作業範囲分割装置の構成について説明する。
Hereinafter, with reference to the drawings, a configuration of a repair work range dividing device and a repair work range splitting method according to an embodiment of the present invention will be described.
[Configuration of refurbishment range dividing device]
First, with reference to FIG. 1, the structure of the repair work range division | segmentation apparatus used as embodiment of this invention is demonstrated.
本発明の実施形態となる改修作業範囲分割装置1は、図1に示すように、入力部2,出力部3,記憶部4,及び制御部5を有する。入力部2は、キーボード,テンキー,マウスポインタ等の入力装置であり、改修作業範囲分割装置1のユーザにより操作される。出力部3は、表示装置や印刷装置等の出力装置である。記憶部4は、ROM(Read Only Memory)等の不揮発性の記憶装置である。記憶部4は、後述する改修作業範囲分割処理の処理ルーチンを規定した改修作業範囲分割プログラム6を記憶する。制御部5は、CPU(Central Processing Unit)等の演算処理装置である。制御部5は、記憶部4に記憶されている改修作業範囲分割プログラム6を実行することにより、影響分析部7及び分割可能範囲算出部8として機能する。詳しくは後述するが、影響分析部7は、影響分析ルールデータベース(DB)9に記憶されれている影響分析ルールに従って、システムモデルデータベース(DB)10に格納されているソフトウェアシステムを構成するソフトウェア要素間における改修作業の影響の度合いを分析する。また分割可能範囲算出部8は、影響分析部7による分析結果,関係結合度ルールデータベース(DB)11に記憶されている関係結合度ルール,及び関係分割可否ルールデータベース(DB)12に記憶されている関係分割可否ルールに従って、システムモデルDB10に格納されているソフトウェアシステムの改修作業範囲の分割可能範囲を算出する。
〔改修作業範囲分割処理〕
このような構成を有する改修作業範囲分割装置1では、影響分析部7及び分割可能範囲算出部8がそれぞれ、以下に示す影響分析処理及び作業範囲分割処理を実行することにより、分割された作業範囲間で各作業範囲の改修作業の影響が少なく、且つ、本来一緒に扱うべきソフトウェア要素群が同じ作業範囲内に含まれるように、ソフトウェアシステムの改修作業範囲を分割する。なお本実施形態では、改修作業の対象となるソフトウェアシステムとして、図2に示すようなUML(Unified Modeling Lanuguage)で記述された注文管理システムを例示する。具体的には、図2に示す注文管理システムは、顧客からの商品の注文(都度注文,定期注文)に応じて注文明細を作成するソフトウェアシステムである。またソフトウェアシステムの改修作業として、図2に示す注文管理システムに対して、図3に破線枠で示すように注文の合価に応じたポイントを顧客に付与する機能と商品のカテゴリを指定する機能の2つの機能を付加する作業を行うものとする。以下、影響分析処理及び作業範囲分割処理を実行する際の影響分析部7及び分割可能範囲算出部8の動作について詳しく説明する。
〔影響分析処理〕
始めに、図4及び図6に示すフローチャートを参照して、影響分析処理を実行する際の影響分析部7の動作について説明する。図4に示すフローチャートは、入力部2を介してユーザ2が制御部5に対し影響分析処理の実行を指示する制御信号を入力したタイミングで開始となり、影響分析処理はステップS1の処理に進む。
The repair work range dividing
[Repair work range division processing]
In the refurbishment work range dividing
[Impact analysis process]
First, with reference to the flowcharts shown in FIGS. 4 and 6, the operation of the
ステップS1の処理では、影響分析部7が、システムモデルDB10から図5に示すような図3に示す注文管理システムを構成するソフトウェア要素(以下、要素と略記)のデータを読み出し、図5に示すデータの「改修有無」の欄に「追加」,「変更」,及び「削除」のうちのいずれかが設定されている項目(要素ID,名前,属性,操作)があるか否かを判別する。なお図5に示すデータ中、「要素ID」欄及び「名前」欄はそれぞれ要素毎に割り当てられた固有の識別番号及びその名称を示し、「属性ID」欄及び「属性」欄はそれぞれ「要素ID」欄に対応する要素内で定義されている数値や文字列毎に割り当てられた固有の識別番号及びその名称を示す。また「操作ID」欄及び「操作」欄はそれぞれ「要素ID」欄に対応する要素が実行する処理毎に固有に割り当てられた固有の識別番号及びその名称を示す。本実施形態では、改修作業として注文の合価に応じたポイントを顧客に付与する機能と商品のカテゴリを指定する機能の2つを機能を注文管理システムに付加する作業を行うので、図5に示すデータには「ポイント」と「カテゴリ」を新たな「属性」として追加することと「ポイント計算」を新たな「操作」として追加する設定がなされている。
In the process of step S1, the
本実施形態では、図5に示すデータの「要素ID」,「属性」,「操作ID」,及び「操作」の各欄には対応する欄の内容に対し「追加」,「変更」,及び「削除」のうちのいずれかの処理を行ったことを示す「改修有無」欄が設けられ、「名前」,「属性」,及び「操作」の各欄には改修作業による影響の有無を示す「影響有無」欄が設けられている。この図5に示すデータは、「影響有無」欄の内容以外、システムを構築又は改修する際にシステム設計者が作成するものである。図5に示すデータの「影響有無」欄の内容は影響分析部7により記述される。そして判別の結果、図5に示すデータの「改修有無」の欄に「追加」,「変更」,及び「削除」のうちのいずれかが設定されている項目がない場合、影響分析部7は、改修作業が行われないと判断し、影響分析処理を終了する。一方、図5に示すデータの「改修有無」の欄に「追加」,「変更」,及び「削除」のうちのいずれかが設定されている項目がある場合には、影響分析部7は、改修作業が行われると判断し、影響分析処理をステップS2の処理に進める。 In the present embodiment , “element ID”, “attribute”, “operation ID”, and “operation” columns of the data shown in FIG. A “repair presence / absence” column indicating that any one of the “deletion” processing has been performed is provided, and each of the “name”, “attribute”, and “operation” columns indicates whether or not there is an influence by the renovation work. An “influence / existence” column is provided. The data shown in FIG. 5 is created by the system designer when constructing or refurbishing the system, except for the contents in the “influence / existence” column. The contents of the “influence presence / absence” column of the data shown in FIG. As a result of the determination, if there is no item for which “addition”, “change”, or “deletion” is set in the “repair presence / absence” column of the data shown in FIG. Therefore, it is determined that no renovation work is performed, and the impact analysis process is terminated. On the other hand, if there is an item for which “addition”, “change”, or “deletion” is set in the “repair presence / absence” column of the data shown in FIG. It is determined that renovation work will be performed, and the impact analysis process proceeds to the process of step S2.
ステップS2の処理では、影響分析部7が、図5に示すデータの「改修有無」の欄に「追加」,「変更」,及び「削除」のうちのいずれかが設定されている項目の「改修対象」の「区分」の値を「要素」に設定し、設定した値をRAM(Random Access Memory)等の揮発性の記憶装置(図示せず)内に記憶する。具体的には、影響分析部7は、「区分」,「種別」,「改修内容」,「改修前モデルの始点要素の有無」,「改修後モデルの始点要素の有無」,「改修前モデルの関係の種別」,及び「改修後モデルの関係の種別」の欄が設定されたテーブル(図示せず)を予め記憶装置内に記憶し、設定した「区分」の値をこのテーブル内に書き込む。なお「区分」とは図8に示す影響分析ルールDB9に記憶されている影響分析ルール内で定義されているパラメータに対応し、「追加」,「変更」,及び「削除」のうちのいずれかが設定されている項目(改修対象)が「要素」又は要素間の「関係」のいずれであるかを示す。なお「要素」には種別として「クラス」,「名前」,「属性」,及び「操作」が含まれ、要素間の「関係」には種別として「関連」,「汎化」,「集約」,「コンポジション」,「依存関係」,及び「実現関係」がある。図8に示す影響分析ルールは、改修対象(区分及び種別)及び改修内容(追加,変更,削除)毎に改修による影響が生じる項目を規定したものであり、予めシステム設計者が作成するものである。具体的には、図8に示す「ルールID」が「AA01」の影響分析ルールは、要素間の「関係」を「関連」とする「追加」の改修を行った場合には、図5に示すデータの「始点要素」の「属性」及び「操作」と「終点要素」の「属性」及び「操作」に改修による影響が生じることを示す。これにより、ステップS2の処理は完了し、影響分析処理はステップS3の処理に進む。
In the process of step S2, the
ステップS3の処理では、影響分析部7が、図5に示すデータの「改修有無」の欄に「追加」,「変更」,及び「削除」のうちのいずれかが設定されている項目の「改修対象」の「種別」の値を設定し、設定した値を揮発性の記憶装置内に記憶する。具体的には、影響分析部7は、「区分」,「種別」,「改修内容」,「改修前モデルの始点要素の有無」,「改修後モデルの始点要素の有無」,「改修前モデルの関係の種別」,及び「改修後モデルの関係の種別」の欄が設定されたテーブルに設定した「種別」の値を書き込む。本実施形態では、影響分析部7は、その項目が図5に示すデータの「要素ID」である場合は「改修対象種別」の値を「クラス」,図5に示すデータの「名前」である場合は「名前」,図5に示すデータの「属性」である場合は「属性」,図5に示すデータの「操作」である場合には「操作」に設定する。なお「種別」とは、既述の影響分析ルール内で定義されているパラメータに対応するものであり、「クラス」,「名前」,「属性」,及び「操作」のうちのいずれかの値を示す。これにより、ステップS3の処理は完了し、影響分析処理はステップS4の処理に進む。
In the process of step S3, the
ステップS4の処理では、影響分析部7が、図5に示すデータの「改修有無」の欄に「追加」,「変更」,及び「削除」のうちのいずれかが設定されている項目の「改修内容」の値を「改修有無」の欄に設定されている値(図5に示す例では「追加」)に設定し、設定した値を揮発性の記憶装置内に記憶する。具体的には、影響分析部7は、「区分」,「種別」,「改修内容」,「改修前モデルの始点要素の有無」,「改修後モデルの始点要素の有無」,「改修前モデルの関係の種別」,及び「改修後モデルの関係の種別」の欄が設定されたテーブルに設定した「改修内容」の値を書き込む。なお「改修内容」とは、既述の影響分析ルール内で定義されているパラメータに対応するものであり、「追加」,「変更」,及び「削除」のうちのいずれかの値を示す。これにより、ステップS4の処理は完了し、影響分析処理はステップS5の処理に進む。
In the process of step S4, the
ステップS5の処理では、影響分析部7が、図5に示すデータの「改修有無」の欄に「追加」,「変更」,及び「削除」のうちのいずれかが設定されている項目について、「改修前モデル」の「始点要素」の「存在有無」の値を設定し、設定した値を揮発性の記憶装置内に記憶する。具体的には、影響分析部7は、「区分」,「種別」,「改修内容」,「改修前モデルの始点要素の有無」,「改修後モデルの始点要素の有無」,「改修前モデルの関係の種別」,及び「改修後モデルの関係の種別」の欄が設定されたテーブルに設定した「改修前モデルの始点要素の有無」の値を書き込む。本実施形態では、影響分析部7は、「改修対象種別」の値が「クラス」、且つ、「改修有無」の値が「追加」である場合は「改修前モデル」の「始点要素」の「存在有無」の値を「無」、それ以外の場合には「改修前モデル」の「始点要素」の「存在有無」の値を「有」に設定する。なお「改修前モデルの始点要素の有無」とは、既述の影響分析ルール内で定義されているパラメータに対応するものであり、改修を行う前の段階で始点となる要素があるか否かを示す値である。これにより、ステップS5の処理は完了し、影響分析処理はステップS6の処理に進む。
In the process of step S5, the
ステップS6の処理では、影響分析部7が、図5に示すデータの「改修有無」の欄に「追加」,「変更」,及び「削除」のうちのいずれかが設定されている項目について、「改修後モデル」の「始点要素」の「存在有無」の値を設定し、設定した値を揮発性の記憶装置内に記憶する。具体的には、影響分析部7は、「区分」,「種別」,「改修内容」,「改修前モデルの始点要素の有無」,「改修後モデルの始点要素の有無」,「改修前モデルの関係の種別」,及び「改修後モデルの関係の種別」の欄が設定されたテーブルに設定した「改修後モデルの始点要素の有無」の値を書き込む。本実施形態では、影響分析部7は、「改修対象種別」の値が「クラス」、且つ、「改修有無」の値が「削除」である場合は「改修後モデル」の「始点要素」の「存在有無」の値を「無」、それ以外の場合には「改修後モデル」の「始点要素」の「存在有無」の値を「有」に設定する。なお「改修前モデルの始点要素の有無」とは、既述の影響分析ルール内で定義されているパラメータに対応するものであり、改修を行った後の段階で始点となる要素があるか否かを示す値である。これにより、ステップS6の処理は完了し、影響分析処理はステップS7の処理に進む。
In the process of step S6, the
ステップS7の処理では、影響分析部7が、システムモデルDB10から図7に示すような注文管理システムを構成する要素間の意味関係の種別を規定したデータを読み出し、読み出されたデータを参照して、図5に示すデータの「改修有無」の欄に「追加」,「変更」,及び「削除」のうちのいずれかが設定されている項目について、対応する「要素ID」の値が「始点要素ID」の値に等しい項目があるか否かを判別する。図7に示すデータ中、「関係ID」欄は要素間の意味関係毎に割り当てられた固有の識別番号を示し、「改修前関係種別」欄は改修前の要素間の意味関係を示す。また「始点要素ID」及び「終点要素ID」欄はそれぞれ改修前に始点及び終点となる要素の「要素ID」を示し、「改修後関係種別」欄は改修後の要素間の意味関係を示す。本実施形態では、各「関係ID」欄には意味関係の内容に対し「追加」,「変更」,及び「削除」のうちのいずれかの処理を行ったことを示す「改修有無」欄と、改修作業による影響の有無を示す「影響有無」欄が設けられている。この図7に示すデータは、「影響有無」欄の内容以外、システムを構築又は改修する際にシステム設計者が作成するものである。「影響有無」欄の内容は影響分析部7により記述される。判別の結果、対応する「要素ID」の値が「始点要素ID」の値に等しい項目がない場合、影響分析部7は、改修作業が他の要素に与える影響はない、換言すれば改修作業が影響始点となる可能性はないと判断し、一連の影響分析処理を終了する。一方、対応する「要素ID」の値が「始点要素ID」の値に等しい項目がある場合には、影響分析部7は、影響分析処理をステップS8の処理に進める。
In the process of step S7, the
ステップS8の処理では、影響分析部7が、ステップS7の処理により読み出されたデータ(図7参照)を参照して、値が「要素ID」の値と等しい「始点要素ID」に対応する「改修前関係種別」の値(関連,汎化,集約,コンポジション,依存関係,実現関係)を読み出す。そして影響分析部7は、読み出された値を「改修前モデル」の「関係」の「種別」の値に設定し、設定した値を揮発性の記憶装置内に記憶する。具体的には、影響分析部7は、「区分」,「種別」,「改修内容」,「改修前モデルの始点要素の有無」,「改修後モデルの始点要素の有無」,「改修前モデルの関係の種別」,及び「改修後モデルの関係の種別」の欄が設定されたテーブルに設定した「改修前モデル」の「関係」の「種別」の値を書き込む。これにより、ステップS8の処理は完了し、影響分析処理はステップS9の処理に進む。
In the process of step S8, the
ステップS9の処理では、影響分析部7が、ステップS7の処理により読み出されたデータ(図7参照)を参照して、値が「要素ID」の値と等しい「始点要素ID」に対応する「改修後関係種別」の値を読み出す。そして影響分析部7は、読み出された値を「改修後モデル」の「関係」の「種別」の値に設定し、設定した値を揮発性の記憶装置内に記憶する。具体的には、影響分析部7は、「区分」,「種別」,「改修内容」,「改修前モデルの始点要素の有無」,「改修後モデルの始点要素の有無」,「改修前モデルの関係の種別」,及び「改修後モデルの関係の種別」の欄が設定されたテーブルに設定した「改修後モデル」の「関係」の「種別」の値を書き込む。以上の処理により、「区分」,「種別」,「改修内容」,「改修前モデルの始点要素の有無」,「改修後モデルの始点要素の有無」,「改修前モデルの関係の種別」,及び「改修後モデルの関係の種別」の欄が設定されたテーブルには「改修有無」の欄に「追加」,「変更」,及び「削除」のうちのいずれかが設定されている各項目に対応する値が設定される。これにより、ステップS9の処理は完了し、影響分析処理はステップS10の処理に進む。
In the process of step S9, the
ステップS10の処理では、影響分析部7が、図8に示すような影響分析ルールDB9に記憶されている影響分析ルールを参照して、上述の処理によりテーブルに設定された一連の値の組み合わせ(「区分」,「種別」,「改修内容」,「改修前モデルの始点要素の有無」,「改修後モデルの始点要素の有無」,「改修前モデルの関係の種別」,及び「改修後モデルの関係の種別」)に等しい影響分析ルールが存在するか否かを判別する。そして判別の結果、等しい影響分析ルールが存在しない場合、影響分析部7は、ソフトウェア要素間で改修作業に伴う影響が生じる可能性がないと判断し、一連の影響分析処理を終了する。一方、等しい影響分析ルールが存在する場合には、影響分析部7は、ソフトウェア要素間で改修作業に伴う影響が生じる可能性があると判断し、影響分析処理をステップS11の処理に進める。
In the process of step S10, the
ステップS11の処理では、影響分析部7が、上述の処理により揮発性の記憶装置の内部に記憶された一連の値の組み合わせに等しい影響分析ルールを読み出し、読み出された影響分析ルールを参照して、図5に示す各項目の「影響有無」の値を影響分析ルール内で規定されている「影響有無」の欄の値に設定する。この処理により図5に示すデータは図13に示すようなデータに設定される。図13に示すデータによれば、「影響有無」欄の値が「有」になっている項目を確認することにより、注文の合価に応じたポイントを顧客に付与する機能を追加した場合、図3に示す要素「都度注文」,「定期注文」,及び「注文」内に影響があり、商品のカテゴリを指定する機能を追加した場合には、図3に示す要素「都度注文明細」,「定期注文明細」,及び「注文明細」内に影響がある可能性があることがわかる。これにより、ステップS11の処理は完了し、ステップS1の処理に戻る。
〔作業範囲分割処理〕
次に、図9及び図12に示すフローチャートを参照して、作業範囲分割処理を実行する際の分割可能範囲算出部8の動作について説明する。図9に示すフローチャートは、影響分析処理が終了したタイミングで開始となり、作業範囲分割処理はステップS21の処理に進む。なおこの作業範囲分割処理は全ての影響起点(ステップS11の処理により「影響有無」の値が「有」に設定された各項目)について実行されるものとする。
In the process of step S11, the
[Work area division processing]
Next, with reference to the flowcharts shown in FIG. 9 and FIG. 12, the operation of the dividable
ステップS21の処理では、分割可能範囲算出部8が、影響起点を始点に設定する。これにより、ステップS21の処理は完了し、作業範囲分割処理はステップS22の処理に進む。
In the process of step S21, the divisible
ステップS22の処理では、分割可能範囲算出部8が、図10に示すような関係結合度ルールDB11に記憶されている要素間の意味関係の結合度ルールを参照して、始点と次点との間の意味関係の結合度を算出する。具体的には、図10に示す意味関係の結合度は、「関連」,「汎化」,「集約」,「コンポジション」,「依存関係」,及び「実現関係」の意味関係の種別毎に予め設定され、本実施形態では、意味関係が深い程、大きな値に設定されている。これにより、ステップS22の処理は完了し、作業範囲分割処理はステップS23の処理に進む。
In the process of step S22, the separable
ステップS23の処理では、分割可能範囲算出部8が、図11に示すような関係分割可否ルールDB12に記憶されている関係分割可否ルールに従って、ステップS11の処理により設定された「影響有無」の値、及びステップS22の処理により算出された関係の結合度に基づいて、改修作業の際に始点と次点との間を分割可能であるか否かを判断する。具体的には、分割可能範囲算出部8は、始点と次点との間に改修作業の影響がある場合であっても始点と次点との間の意味関係が小さい場合は始点と次点との間は分割可能であると判断する。また逆に、分割可能範囲算出部8は、始点と次点との間に改修作業の影響がない場合であっても始点と次点との間の意味関係が大きい場合には始点と次点との間は分割不能であると判断する。図11に示す関係分割可否ルールは、要素間における改修作業の影響の有無と意味関係の結合度の組み合わせ毎に要素間が分割可能であるか否かを規定したものである。これにより、ステップS23の処理は完了し、作業範囲分割処理はステップS24の処理に進む。
In the process of step S23, the value of “influence presence / absence” set by the process of step S11 according to the relation division possibility rule stored in the relation division
ステップS24の処理では、分割可能範囲算出部8が、まだ始点に設定されていない次点があるか否かを判別する。そして判別の結果、まだ始点に設定されていない次点がある場合、分割可能範囲算出部8は、ステップS25の処理としてその次点を始点に設定した後、作業範囲分割処理をステップS22の処理に戻す。一方、始点に設定されていない次点がない場合には、分割可能範囲算出部8は作業範囲分割処理をステップS26の処理に進める。
In the process of step S <b> 24, the divisible
ステップS26の処理では、分割可能範囲算出部8が、ステップS23の処理結果に従って分割不能な要素間の分割しないようにして、本願発明の出願時点で公知の方法を利用することにより改修作業範囲を複数の作業範囲に分割する。これにより、ステップS26の処理は完了し、作業範囲分割処理はステップS27の処理に進む。
In the process of step S26, the dividable
ステップS27の処理では、分割可能範囲算出部8が、ステップS26の処理によって分割された複数の作業範囲に関する情報を出力する。具体的には、分割可能範囲算出部8は、図13に示すように、注文管理システムを構成する要素のデータに各要素が属するグループ(作業範囲)のデータを付与して出力する。これにより、ステップS27の処理は完了し、一連の作業範囲分割処理は終了する。
〔まとめ〕
従来、ソフトウェアシステムの改修作業範囲は、影響分析手法及びグラフ分割手法を利用して、作業範囲間における改修作業の影響の度合いのみに基づいて分割されていた。具体的には、図2に示す注文管理システムに対して注文の合価に応じたポイントを顧客に付与する機能と商品のカテゴリを指定する機能を追加する場合、従来の改修作業範囲分割方法では、要素間の意味関係の結合度を考慮せずに改修作業の影響の有無により分割範囲を決定するために、注文管理システムは、上記ステップS11の処理結果に基づいて、図14に示すように、注文の合価に応じたポイントを顧客に付与する機能を追加することにより影響を受ける範囲G1と商品のカテゴリを指定する機能を追加することにより影響を受ける範囲G2とに分割されていた。しかしながらこのような分割方法によれば、例えば要素「注文」と要素「注文明細」間が分割される等、要素間の意味関係が大きいために本来一緒に扱うべき要素群が分割されてしまう。
In the process of step S27, the dividable
[Summary]
Conventionally, the renovation work range of a software system has been divided based only on the degree of influence of the renovation work between work ranges using an impact analysis method and a graph division method. Specifically, in the case of adding a function for giving a customer a point according to the price of an order and a function for specifying a product category to the order management system shown in FIG. In order to determine the division range according to the presence or absence of the influence of the renovation work without considering the coupling degree of the semantic relationship between the elements, the order management system, as shown in FIG. In addition, the range G1 is affected by adding a function for giving a customer a point corresponding to the price of an order, and the range G2 is affected by adding a function for specifying a product category. However, according to such a division method, for example, the element “order” and the element “order details” are divided, and the element group that should be handled together is divided because the semantic relationship between the elements is large.
これに対し本発明の実施形態となる改修作業範囲分割方法では、影響分析部8が図15に示すように要素間の意味関係における影響可能性の有無を算出し、分割可能範囲算出部8が、図16に示すように要素間の意味関係の結合度を算出し、図17に示すように算出された結合度と要素間における改修作業の影響の度合いの双方に基づいて改修作業範囲を分割する。そしてこのような処理によれば、要素間における改修作業の影響の度合いと合わせて要素間の意味関係の結合度に基づいて改修作業範囲が分割されるので、図18に示すように、要素間の意味関係が大きいために一緒に扱うべき要素間が分割されることを抑制できる。
On the other hand, in the repair work range dividing method according to the embodiment of the present invention, the
以上、本発明者らによってなされた発明を適用した実施の形態について説明したが、この実施形態による本発明の開示の一部をなす記述及び図面により本発明は限定されることはない。すなわち、本実施形態に基づいて当業者等によりなされる他の実施の形態、実施例及び運用技術等は全て本発明の範疇に含まれる。 As mentioned above, although embodiment which applied the invention made by the present inventors was described, this invention is not limited by description and drawing which make a part of indication of this invention by this embodiment. That is, other embodiments, examples, operational techniques, and the like made by those skilled in the art based on the present embodiment are all included in the scope of the present invention.
1:改修作業範囲分割装置
2:入力部
3:出力部
4:記憶部
5:制御部
6:改修作業範囲分割プログラム
7:影響分析部
8:分割可能範囲算出部
9:影響分析ルールデータベース(DB)
10:システムモデルデータベース(DB)
11:関係結合度ルールデータベース(DB)
12:関係分割可否ルールデータベース(DB)
1: Modification work range dividing device 2: Input unit 3: Output unit 4: Storage unit 5: Control unit 6: Modification work range division program 7: Impact analysis unit 8: Dividable range calculation unit 9: Impact analysis rule database (DB) )
10: System model database (DB)
11: Relational connectivity rule database (DB)
12: Relational division availability rule database (DB)
Claims (3)
前記ソフトウェア要素間の意味関係の結合度が規定された関係結合度ルールに従って、前記ソフトウェア要素間の意味関係の結合度を算出する関係結合度算出処理と、
前記影響分析処理及び前記関係結合度算出処理により算出された影響度合い及び意味関係の結合度と、影響度合い及び意味関係の結合度とソフトウェア要素間の分割可能性との関係が規定された関係分割可否ルールとに基づいて、ソフトウェア要素間の分割可否を判定する分割可否判定処理と、
前記分割可否判定処理の結果に従って、ソフトウェアシステムの改修作業範囲を複数の範囲に分割する分割可能範囲算出処理と
をコンピュータに実行させることを特徴とする改修作業範囲分割プログラム。 Impact analysis processing that calculates the degree of impact of software element repair work between software elements that make up the software system according to an impact analysis rule that defines whether or not there is an impact corresponding to the combination of the semantic relationship between the software elements and the content of the repair work When,
A relational coupling degree calculation process for calculating a coupling degree of the semantic relation between the software elements according to a relational coupling degree rule in which the coupling degree of the semantic relation between the software elements is defined;
Relational division in which the degree of influence and the degree of semantic relation calculated by the influence analysis process and the relational degree calculation process, and the relationship between the degree of influence and the degree of semantic relation and the possibility of division between software elements are defined. A division availability determination process for determining whether software elements can be divided based on the availability rules;
A refurbishment work range dividing program that causes a computer to execute a releasable range calculation process for dividing a refurbishment work range of a software system into a plurality of ranges in accordance with a result of the division possibility determination process.
前記ソフトウェア要素間の意味関係の結合度が規定された関係結合度ルールに従って、前記ソフトウェア要素間の意味関係の結合度を算出する関係結合度算出手段と、
前記影響分析手段及び前記関係結合度算出手段により算出された影響度合い及び意味関係の結合度と、影響度合い及び意味関係の結合度とソフトウェア要素間の分割可能性との関係が規定された関係分割可否ルールとに基づいて、ソフトウェア要素間の分割可否を判定する分割可否判定手段と、
前記分割可否判定手段の判定結果に従って、ソフトウェアシステムの改修作業範囲を複数の範囲に分割する分割可能範囲算出手段と
を備えることを特徴とする改修作業範囲分割装置。 Impact analysis means for calculating the degree of impact of software element repair work between software elements that constitute a software system in accordance with an impact analysis rule that specifies whether or not there is an effect corresponding to the combination of the semantic relationship between the software elements and the content of the repair work When,
A relational coupling degree calculating means for calculating a coupling degree of the semantic relation between the software elements according to a relational coupling degree rule in which the coupling degree of the semantic relation between the software elements is defined;
Relational division in which the degree of influence and the degree of semantic relation calculated by the influence analysis means and the relational degree calculation means, and the relationship between the degree of influence and the degree of semantic relation and the possibility of division between software elements are defined. A division possibility determination unit that determines whether the software elements can be divided based on the possibility rule; and
A repair work range dividing device, comprising: a splittable range calculation means for dividing the repair work range of the software system into a plurality of ranges in accordance with the determination result of the split possibility determination means.
前記影響分析手段が、ソフトウェアシステムを構成するソフトウェア要素間におけるソフトウェア要素の改修作業の影響度合いを、ソフトウェア要素間の意味関係と改修作業内容との組み合わせに対応する影響有無が規定された影響分析ルールに従って算出するステップと、
前記関係結合度算出手段が、前記ソフトウェア要素間の意味関係の結合度が規定された関係結合度ルールに従って、前記ソフトウェア要素間の意味関係の結合度を算出するステップと、
前記分割可否判定手段が、前記ステップにより算出された影響度合い及び意味関係の結合度と、影響度合い及び意味関係の結合度とソフトウェア要素間の分割可能性との関係が規定された関係分割可否ルールとに基づいて、ソフトウェア要素間の分割可否を判定するステップと、
前記分割可能範囲算出手段が、前記判定結果に従って、ソフトウェアシステムの改修作業範囲を複数の範囲に分割するステップと
を有することを特徴とする改修作業範囲分割方法。 A renovation work range dividing method executed by a refurbishment work range dividing device that includes an impact analysis unit, a relational connectivity calculation unit, a division possibility determination unit, and a divisible range calculation unit, and divides a renovation work range. ,
The impact analysis means, the degree of influence of renovation work of software elements between software elements of the software system, software elements between semantic relationships between repair work and impact analysis rule which influence whether corresponding to the combination are defined in Calculating according to:
The relational coupling degree calculation means calculates a coupling degree of the semantic relation between the software elements according to a relational coupling degree rule in which the coupling degree of the semantic relation between the software elements is defined;
The divisional division availability rule in which the divisional availability determination unit defines the relationship between the degree of influence and the degree of semantic relation calculated in the step , and the degree of influence and the degree of semantic relational combination and the possibility of division between software elements. And determining whether or not the software element can be divided based on
And a step of dividing the rework work range of the software system into a plurality of ranges according to the determination result.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008292878A JP5168099B2 (en) | 2008-11-17 | 2008-11-17 | Renovation work range division program, refurbishment work range division device, and refurbishment work range division method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008292878A JP5168099B2 (en) | 2008-11-17 | 2008-11-17 | Renovation work range division program, refurbishment work range division device, and refurbishment work range division method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010122716A JP2010122716A (en) | 2010-06-03 |
JP5168099B2 true JP5168099B2 (en) | 2013-03-21 |
Family
ID=42324032
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008292878A Expired - Fee Related JP5168099B2 (en) | 2008-11-17 | 2008-11-17 | Renovation work range division program, refurbishment work range division device, and refurbishment work range division method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5168099B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5762857B2 (en) * | 2011-07-01 | 2015-08-12 | 株式会社日立製作所 | Dependency evaluation apparatus and evaluation method between software development products |
JP5766378B2 (en) | 2013-02-22 | 2015-08-19 | 三菱電機株式会社 | System development apparatus, method and program |
JP7484038B2 (en) | 2019-11-21 | 2024-05-16 | 日本電気株式会社 | Data division device, data division method, and program. |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0520037A (en) * | 1991-07-09 | 1993-01-29 | Mitsubishi Electric Corp | Module distribution system |
JP3838825B2 (en) * | 1999-09-27 | 2006-10-25 | 富士通株式会社 | System analysis apparatus and method, and storage medium storing analysis program |
-
2008
- 2008-11-17 JP JP2008292878A patent/JP5168099B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010122716A (en) | 2010-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10558629B2 (en) | Intelligent data quality | |
JP5598017B2 (en) | Judgment program, method and apparatus | |
US10031938B2 (en) | Determining Boolean logic and operator precedence of query conditions | |
US6571247B1 (en) | Object oriented technology analysis and design supporting method | |
US20070239660A1 (en) | Definition and instantiation of metric based business logic reports | |
AU2015283738A1 (en) | Systems and methods for flexible sourcing systems | |
US20100287459A1 (en) | Reusable business logic across user interface containers | |
JP2004171576A (en) | Rapid chip management system | |
US20230409648A1 (en) | Composite index on hierarchical nodes in the hierarchical data model within case model | |
JP4473893B2 (en) | Work item extraction device, work item extraction method, and work item extraction program | |
JP2008052312A (en) | Operation specification extraction support system | |
JP5168099B2 (en) | Renovation work range division program, refurbishment work range division device, and refurbishment work range division method | |
KR20120135665A (en) | Method for constructing database based on warehouse and database system therof | |
CN104050206A (en) | Material bill rapid exporting method and system thereof | |
US20100023147A1 (en) | Reconfiguration of assets for reuse during manufacturing | |
US20170011471A1 (en) | Methods and systems of a commission-plan document design application | |
JP6489340B1 (en) | Comparison target company selection system | |
JP4011995B2 (en) | Product design support apparatus and method | |
US20090132314A1 (en) | System and method for increasing usage of recycling in manufacturing processes | |
WO2022018899A1 (en) | System for extracting subtree from kpi tree | |
US20060287977A1 (en) | Method of processing data for a system model | |
JP4393482B2 (en) | Information sharing system and program | |
JP2000172739A (en) | Design supporting device | |
JP2008210305A (en) | Environment-conscious design support device | |
WO2021020055A1 (en) | Design assistance system, design assistance method, and design assistance program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110808 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20121017 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121023 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121102 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121127 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121210 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5168099 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |