JP4820924B1 - リバースエンジニアリング支援装置、リバースエンジニアリング支援方法及びそのプログラム - Google Patents
リバースエンジニアリング支援装置、リバースエンジニアリング支援方法及びそのプログラム Download PDFInfo
- Publication number
- JP4820924B1 JP4820924B1 JP2011024258A JP2011024258A JP4820924B1 JP 4820924 B1 JP4820924 B1 JP 4820924B1 JP 2011024258 A JP2011024258 A JP 2011024258A JP 2011024258 A JP2011024258 A JP 2011024258A JP 4820924 B1 JP4820924 B1 JP 4820924B1
- Authority
- JP
- Japan
- Prior art keywords
- program
- unit
- rule
- model
- business
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 238000012545 processing Methods 0.000 claims abstract description 246
- 230000006870 function Effects 0.000 claims abstract description 190
- 238000000605 extraction Methods 0.000 claims abstract description 72
- 230000010354 integration Effects 0.000 claims abstract description 63
- 230000008569 process Effects 0.000 claims abstract description 27
- 238000007596 consolidation process Methods 0.000 claims abstract description 20
- 239000000284 extract Substances 0.000 claims abstract description 14
- 230000010365 information processing Effects 0.000 claims abstract description 12
- 230000008859 change Effects 0.000 claims abstract description 8
- 230000014509 gene expression Effects 0.000 description 18
- 235000019580 granularity Nutrition 0.000 description 18
- 230000002776 aggregation Effects 0.000 description 17
- 238000004220 aggregation Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 15
- 238000006467 substitution reaction Methods 0.000 description 5
- 102100036629 Phosphoglucomutase-2 Human genes 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 102100024440 Phosphoacetylglucosamine mutase Human genes 0.000 description 2
- 102100030999 Phosphoglucomutase-1 Human genes 0.000 description 2
- 101710105359 Phosphoglucomutase-2 Proteins 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 108010074307 Phosphoacetylglucosamine mutase Proteins 0.000 description 1
- 101710105361 Phosphoglucomutase 1 Proteins 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000002407 reforming Methods 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【解決手段】本発明のリバースエンジニアリング支援装置は、ソースプログラムの業務仕様の抽出を行う装置であり、ソースプログラムのソースコードから、コード種類、コード組合せ及びコード配置と、処理機能を示す単位プログラムとの対応関係が予め設定された第1ルールに従い、ソースコードから、処理機能に対応する単位プログラムを抽出する処理機能抽出部と、単位プログラムの処理機能の種類、組合せ及び配置順番と、単位プログラムの配置順番の変更、統廃合処理との対応関係を予め設定した第2ルールに従い、単位プログラムの配置順の変更、統合及び廃棄の統廃合処理を行い、物理モデルとして出力する処理機能統廃合部とを有する。
【選択図】図1
Description
リバースエンジニアリングにより、解析対象のソースプログラムの行う業務の理解を支援するシステムとして、例えば、特許文献1の業務仕様抽出支援システムがある。
特許文献1においては、ソースプログラムから抽出した物理モデルと、この物理モデルと対応して業務の内容を示す業務モデルとを対応付ける対応テーブルが予め設定されている。ここで、業務モデルとは、業務機能と論理データを頂点とし、これらの間のデータの入出力を表す有向の辺を持つグラフであるモデルである。物理モデルは、プログラム機能と物理データを頂点とし、これらの間のデータの入出力を表す有向の辺を持つグラフであるである。
また、業務仕様抽出支援システムは、抽出した物理モデルと一致する物理モデルが対応テーブルにおいて検出されない場合、対応付けのない物理モデルを表示し、ユーザに対して検出されない物理モデルに対応する業務モデルの作成を促す。
例えば、図11に示すプログラムにおいて、受注登録という業務機能の業務モデルに、PGM_X、PGM_A、PGM_B、PGM_C及びPGM_Yというプログラム機能の物理モデルが含まれている場合における業務の分割を行う場合を考える。図11はソースプログラムの物理モデルのグラフを示している。
ここで、「受注場所」が1(国内を示すフラグ)の場合、PGM_Xの分岐処理によりPGM_X、PGM_A及びPGM_Yが実行され、「受注場所」が2(国外を示すフラグ)の場合、PGM_Xの分岐処理によりPGM_X、PGM_A、PGM_B、PGM_C及びPGM_Yが実行されることになる。
また、業務仕様抽出支援システムは、業務モデル及び物理モデルの各々の名称を、ユーザから外部情報として与えられる構成となっている。
a.業務モデルと物理モデルとの対応関係がある
b.業務モデルと物理モデルとが一定かつ適切な粒度のプロセスに分割されている
c.業務モデルと物理モデルとに対し、適切な名称が付与されている(業務モデルはユーザが理解できる名称であり、物理モデルはプログラム作成者が理解できる名称である必要がある)
すなわち、リエンジニアリングやリビルドなどで業務の改革及び改善のため、業務の取捨選択や共通化を検討する際、業務モデルを荒い粒度で行うと、業務で行われている処理の解析が十分にできない。
例えば、特許文献1の業務仕様抽出支援システムは、図12において、ソースプログラムの処理が国内と国外とにおける「登録業務」に分離される。
しかしながら、国外における「登録業務(受注場所=2)」にPGM_B及びPGM_Cが必要な物理モデルであることは判るが、この物理モデルがどのような処理を行っているかが判らない。
例えば、図11に示す「登録業務」を受注場所による2つのバリエーションに分割するのではなく、2つのバリエーションの違いが分かる程度の粒度に分割する必要がある。
図13は、物理モデルのグラフであり、一例として、ソースプログラムにおけるPGM_X、PGM_A、PGM_B及びPGM_Cを物理モデルの単位とし、この物理モデルに対して業務モデルを設定している。
国外の「登録業務」と国内の登録業務との共通な業務及び異なる業務を判定することにより、国内の「登録業務」にも、リスク情報に関する処理を入れるなどの、業務の改善を容易に行うことができる。
したがって、特許文献1の業務仕様抽出支援システムにおける物理モデルと業務モデルとの粒度は、業務の解析を行うためには不十分な大きさである。
このため、リエンジニアリングの担当者毎に業務モデルの粒度が異なって、汎用性のないものとなっている。同様に、物理モデルの粒度をプログラム機能を分割の単位としているため、粒度が一定か否かはプログラムの設計によって異なり、結果として一定の粒度にはならない。
このため、担当者は、業務仕様抽出支援システムの提示する物理モデル(プログラム機能名、物理データ名、プログラム機能を分割する条件式)に対応させ、業務モデル(業務機能名、論理データ名)から内容を類推し、物理モデル及び業務モデルに対して適切な名称を付与する必要があり、名称付与の作業に手間がかかってしまう。
したがって、担当者の知識によるため、ユーザが理解できる業務モデルの名称や、プログラム作成者が理解できる物理モデルの名称とはならず、改革及び改善の差異に効率的な処理が行えない。
また、この発明によれば、第1のルールにより抽出した単位プログラムを、第2ルールにより処理機能に対応させた統廃合処理を行うことにより、異なる位置に配置されている統合可能な単位プログラムの統廃合による整理を行うことができ、異なる配置にあり同一の処理を行う無駄に配置された単位プログラムを無くし、機能処理として整理された状態で物理モデルの抽出を行うことができ、業務仕様の改革及び改善を効率的に行うことが可能となる。
図1において、本実施形態によるリバースエンジニアリング支援装置は、ソースコード入力部10、処理機能抽出部11、処理機能統廃合部12、業務モデル特定部13、結果出力部14、処理記憶部15、第1ルール記憶部16、第2ルール記憶部17、第3ルール記憶部18及び第4ルール記憶部19を備えている。
ソースコード入力部10は、外部装置から物理モデル及び業務モデルを抽出する解析対象のソースプログラムを入力し、処理記憶部15に書き込んで記憶させる。
ここで、本実施形態において、処理機能としては、例えばデータベース等で用いられる集合を操作する関係代数などにより実行される「選択」、「集約」、「和」、「射影」、…など、また他に「検索」、「選択」、「登録」などの機能を示す語彙を予め設定して用いることにより、これらの機能を処理するプログラム単位を単位プログラムと定義している。
処理機能抽出部11は、処理記憶部15から解析対象のソースコードを読み込み、第1ルールに従って、処理機能の機能毎の物理モデルを抽出する。
図3(b)には、第1ルールにより処理機能抽出部11が抽出した出力結果のテーブルの一例を示す図である。
図3(c)は、第2ルールにより統廃合処理の結果出力される物理モデルの構成を示すテーブルの図である。物理モデルは、物理モデルIDに対応し、統廃合されたプログラムIDと、初期機能と、制約条件と、入力及び出力のオブジェクトとから構成されている。ここで、物理モデルの制約条件は、統廃合したプログラムにおける制約条件が反映される。また、物理モデルの入力及び出力に関しては、それぞれ統廃合のプログラムの並び順に基づき、各プログラムの入力及び出力のオブジェクトに対応して再設定される。
処理機能統廃合部12は、第2ルールに従い、各処理機能のプログラムを、プログラムの配列順及び組み合わせに対応して統廃合し、物理モデルの生成を行う。
図4(a)は、第3ルールテーブルの構成を示すものであり、物理モデルの処理機能及び配置(並び順)の順み合わせと、この組み合わせに対応する一般業務モデル名との対応の一例が示されている。
図4(b)は、物理モデルから一般業務モデルを抽出した際に出力される第3出力テーブルの構成を示す図である。この図4(b)は、業務モデルを識別する業務モデルIDに対応して、業務モデルIDの示す業務モデルに対応する物理モデルを示す物理モデルIDと、物理モデルIDの示す物理モデルを構成する単位プログラムを示すプログラムIDと、物理モデルIDが示す物理モデルの処理機能と、物理モデルIDが示す物理モデルの制約条件と、物理モデルに入力されるオブジェクトと、物理モデルから出力されるオブジェクトと、この業務モデルの一般業務名との対応を示している。
業務モデル特定部13は、第3ルールに従い、各物理モデルを、物理モデルの配列順及び組み合わせに対応して統合し、一般業務モデルの生成を行う。
図5(a)は、第4ルールテーブルの構成を示すものであり、一般業務名、処理対象、制約条件の組み合わせと、この組み合わせに対応するドメイン特化業務名との対応の一例が示されている。
図5(b)は、第4ルールによる処理結果として出力される結果テーブルを示す図である。一般業務モデルの業務デルID毎に、各業務モデルを構成する物理モデルの物理モデルIDと、物理モデルに統廃合されたプログラムのプログラムIDと、物理モデルの制約条件、物理モデルが入力及び出力するオブジェクトと、業務モデルIDのドメイン特化業務名との対応が記載されたテーブルの図である。
処理機能統廃合部12は、第2ルールに従い、一般業務モデルの処理対象のドメインに対応して、ドメイン特化業務名を各一般業務モデルに対して付与する処理を行う。
次に、図1、図2、図6及び図7を用いて、処理機能抽出部11が行う処理機能抽出処理について説明する。
処理機能抽出部11は、ソースコード入力部10が処理記憶部15に書き込んで記憶させたソースプログラムを読み出す。
図6は、物理モデル及び業務モデルの抽出対象のソースプログラムとオブジェクト及びソースプログラム間の入力関係の一例を示す図である。このソースプログラムは、プログラムPGM−1、PGM−2、PGM−3、PGM−4、PGM−5、PGM−6、PGM−7及びPGM−8から構成され、初期入力オブジェクトとしてファイルFILE−A、FILE−D及びFILE−Gを読み込み、最終出力オブジェクトとしてFILE−Kを出力する。
例えば、処理機能抽出部11は、FILE−Aを入力するプログラムPGM−1から抽出処理を開始し、他のプログラムからの出力と統合処理を行うプログラムPGM−6において一旦停止し、ソースプログラムに入力される他のFILE−Dを処理するプログラムPGM−3から抽出処理を再開する。
そして、処理機能抽出部11は、プログラムPGM−6からプログラムPGM−8までの各プログラムから、入力及び出力されるオブジェクトを含め、単位プログラムの抽出処理を行う。
例えば、プログラムPGM−2が、図2(b)に示すソースコードの場合、ソースコードPは「変数(B[i],joutai)と、定数(NYUUKA−ZUMI)を比較する条件節内(if文節)で代入の処理として代入(B1[j]=B[i])する」構造をしており、ソースコードQは「ループ(while文)内で、変数(oldData.zaikoBasho)!=変数(newData.zaikoBasho)を条件式とする条件節(if文節)内において、代入(C.data1=oldData.data1)しており、同一ループ内の同じ条件式の外部にて代入(oldData=newData)する」構造をしている。
同様に、処理機能抽出部11は、ソースコードQから抽出した第1ルールパラメータを抽出条件として、パターンマッチングにより第1ルールテーブルを検索し、一致する抽出条件に対応する処理機能である「集約」を読み出し、処理機能「集約」の単位プログラムとしてプログラムID2を付与する。
すなわち、処理機能抽出部11は、図6に示すソースプログラムのグラフを、単位プログラムの抽出結果に対応させた図7に示す単位プログラムグラフの関係として図3(b)を生成し、処理記憶部15に書き込んで記憶させる。
次に、図1、図3、図7及び図8を用いて、処理機能抽出部11が行う処理機能抽出処理について説明する。図8は、図7における単位プログラムグラフにおける単位プログラムを統廃合して生成した物理モデルによる物理モデルグラフを示す図である。
処理機能統廃合部12は、処理機能抽出部11が処理記憶部15に書き込んで記憶させた図3(b)に示す第1出力テーブルを読み出す。また、処理機能統廃合部12は、第2ルール記憶部17に記憶されている第2ルールテーブルを読み出す。
ここで、処理機能統廃合部12は、初期入力オブジェクトが入力される単位プログラムから順次処理を開始し、その単位プログラムから出力される出力オブジェクトが、入力オブジェクトとして入力される単位プログラムの順に、第2ルールパラメータの抽出を行う。
そして、処理機能統廃合部12は、第1出力テーブルから抽出された第2ルールパラメータと、第2ルールテーブルに記述された第2ルールにおける各ルールに記述されたパラーメータとマッチングすることにより(一致する第2ルールパラメータに一致するパラメータが記載されたルールを検索し)、第2ルールパラメータと一致したルールに基づいた統廃合の処理を行う。このとき、処理機能統廃合部12は、第2ルールに記述された順番に、ルールに基づいた統廃合処理を行う。
そして、処理機能統廃合部12は、プログラムID4及びID5の各々の配列位置の次の配列位置にプログラムID7「選択」を配置し、プログラムID6及びプログラムID8の間にあるプログラムID7「選択」を削除(廃棄)する。
そして、処理機能統廃合部12は、処理機能「選択」のプログラムID1及びID2の単位プログラムを、処理機能「選択」の物理モデルとして統合し、識別情報として物理モデルID1を付与する。
そして、処理機能統廃合部12は、プログラムID3、ID4及びID7の単位プログラムの統廃合処理を行い、処理機能「選択」の物理モデルとして統合し、識別情報として物理モデルID3を付与する。
そして、処理機能統廃合部12は、プログラムID5(処理機能”選択”)及びID7の単位プログラムの統廃合処理を行い、処理機能「選択」の物理モデルとして統合し、識別情報として物理モデルID3を付与する。
そして、処理機能統廃合部12は、プログラムID5(処理機能”和”)及びID6の単位プログラムの統廃合処理を行い、処理機能「和」の物理モデルとして統合し、識別情報として物理モデルID5を付与する。
上述したように、処理機能統廃合部12は、処理機能抽出部11の抽出した単位プログラムを、図7に示す単位プログラムグラフと図3(c)に示す第1出力テーブルとを参照することにより、第2ルールに従って機能処理の種類とその配列順とにより統廃合して生成した物理モデルを、図8に示す物理モデルの配列を示す物理モデルグラフに対応する第2出力テーブル(図3(c))を生成し、処理記憶部15に書き込んで記憶させる。
また、処理機能統廃合部12は、統廃合した結果として得られる物理モデルの入力及び出力されるオブジェクトを、統廃合する単位プログラムの入力及び出力されるオブジェクトに対応して、統廃合された物理モデル自身及び前段及び後段の物理モデルの入力及び出力されるオブジェクトを変更する。
次に、図1、図3、図4、図5及び図9を用いて、業務モデル特定部14が行う業務モデル特定処理について説明する。
業務モデル特定部13は、処理機能統廃合部12が処理記憶部15に書き込んで記憶させた図8の物理モデルグラフの構成に対応する図3(c)に示す第2出力テーブルを読み出す。また、処理機能統廃合部12は、第3ルール記憶部18に記憶されている図4(a)に示す第3ルールテーブルを読み出す。
ここで、業務モデル特定部13は、初期入力オブジェクトが入力される物理モデルから順次処理を開始し、その物理プログラムから出力される出力オブジェクトが、入力オブジェクトとして入力される物理モデルの順に、順次第3ルールパラメータの抽出を行う。
そして、業務モデル特定部13は、連続する各物理モデルの単位プログラムグラフにおける単位プログラムの配列(並び順)と、第1出力テーブルにおける各単位プログラムの処理機能の記述とから、図8の物理モデルグラフが示すソースプログラムに入力されるオブジェクトから順番に、一般業務モデルの名称である一般業務モデル名の付与を、図9に示す物理モデルグラフに示すように行う。
図9は、物理モデルグラフにおける物理モデルIDと、業務モデルIDと、各業務モデルの業務モデル名との対応を示す図である。
このため、業務モデル特定部13は、第3ルールに従い、物理モデルID1及びID2の物理モデルを統合し、一つの一般業務モデルとして、「明細集計」を名称として付与するとともに、識別情報として業務モデルID1を付与する。
このため、業務モデル特定部13は、第3ルールに従い、物理モデルID3及びID4の物理モデルの各々に対し、一般業務モデルとして、「情報抽出」を名称として付与するとともに、物理モデルID3及びID4の物理モデルの各々に対して識別情報として業務モデルID2、ID3を付与する。
このため、業務モデル特定部13は、第3ルールに従い、物理モデルID5及びID6の物理モデルを統合し、一つの一般業務モデルとして、「全集計」を名称として付与するとともに、物理モデルID3及びID4の物理モデルを統合した一般業務モデルに対して識別情報として業務モデルID4を付与する。
ここで、第3出力テーブルは、各一般業務モデルの業務モデルIDと、この業務モデルIDの示す一般業務モデルに対応する物理モデルの物理モデルID、物理モデルを構成する単位プログラムのプログラムID、物理モデルの処理機能、物理モデルの制約条件、物理モデルに入力されるオブジェクト、物理モデルが出力するオブジェクトとからなるテーブルである。
そして、業務モデル特定部13は、図5(a)に示す第4ルールテーブルに記述された第4ルールに従い、すなわち第4ルールと第3出力テーブルの記述とのマッチングを行い、一般業務モデル名、処理対象及び制約条件との組み合わせとにより、一般業務モデル毎に、ドメイン特化業務名を付与する処理を行う。
上述したように、業務モデル特定部13は、この図9に示すように、物理モデルを一般業務モデルである業務モデルに変換し、この一般業務モデルに対して一般業務モデル名を付与する。
また、業務モデル特定部13は、統合した結果として得られる一般業務モデルの入力及び出力されるオブジェクトを、統廃合する物理モデルの入力及び出力されるオブジェクトに対応して、統合された一般業務モデル自身及び前段及び後段の一般業務モデルの入力及び出力されるオブジェクトを変更する。
すなわち、業務モデル特定部13は、第4ルールテーブルから、一般業務モデルの一般業務モデル名と、この一般業務モデルの処理対象と、この一般業務モデルの制約条件と一致するルールを検索し、検索されたルールに対応して記憶されているドメイン特化業務名を、検索対象とした一般業務モデルに付与する。
そして、業務モデル特定部13は、業務モデルID1の一般業務モデル名、処理対象及び制約条件の組み合わせと、図5(a)に示す第4ルールとのマッチングを行う。
マッチングにおいて、業務モデル特定部13は、一般業務モデル名が「明細集計」であり、処理対象が入荷情報であり、かつ制約条件に「入荷日==本日」である組み合わせを第4ルールにおいて検出する。
この結果、業務モデル特定部13は、業務モデルID1の一般業務モデル名、処理対象及び制約条件の組み合わせと、第4ルールにて一致した組み合わせに対応するドメイン特化業務名である「当日入荷集計」を読み出し、業務モデルID1に付与する。ここで、処理対象の抽出は、制約条件に用いられているデータの名称から推定、例えば上述の場合、入荷日を示すデータの名称から入荷についての処理であることを推定する。
そして、業務モデル特定部13は、業務モデルID2の一般業務モデル名、処理対象及び制約条件の組み合わせと、第4ルールとをマッチングする。
この結果、業務モデル特定部13は、業務モデルID2の一般業務モデル名、処理対象及び制約条件の組み合わせと、第4ルールにて一致した組み合わせに対応するドメイン特化業務名である「α倉庫在庫抽出」を読み出し、業務モデルID2に付与する。
そして、業務モデル特定部13は、業務モデルID3の一般業務モデル名、処理対象及び制約条件の組み合わせと、第4ルールとをマッチングする。
この結果、業務モデル特定部13は、業務モデルID3の一般業務モデル名、処理対象及び制約条件の組み合わせと、第4ルールにて一致した組み合わせに対応するドメイン特化業務名である「最新在庫抽出」を読み出し、業務モデルID3に付与する。
そして、業務モデル特定部13は、業務モデルID4の一般業務モデル名、処理対象及び制約条件の組み合わせと、図5(a)に示す第4ルールとのマッチングを行う。
マッチングにおいて、業務モデル特定部13は、一般業務モデル名が「全集計」であり、処理対象が在庫情報であり、かつ制約条件に「在庫場所、商品コード」である組み合わせを第4ルールにおいて検出する。
この結果、業務モデル特定部13は、業務モデルID4の一般業務モデル名、処理対象及び制約条件の組み合わせと、第4ルールにて一致した組み合わせに対応するドメイン特化業務名である「全在庫集計」を読み出し、業務モデルID4に付与する。
また、業務モデル特定部13は、図9の物理モデルグラフに対して、各物理モデル及び業務モデルの対応関係と、業務モデル及び業務モデルに付与されたドメイン特化業務名の対応関係を示す記述を付加した図10の物理モデルグラフを生成し、処理記憶部15に書き込んで記憶させる。
そして、結果出力部14は、ソースプログラムからの物理モデル及び業務モデルの抽出処理が終了すると、図5(b)の第4出力テーーブルと、図10のドメイン特化業務名が付与された物理モデルグラフとを読み出し、図示しない表示装置に対して表示する。
また、本実施形態においては、プログラムを作成する担当者に理解できる物理モデルの名称が付与され、また抽出した業務モデルに対して、システムの改革及び改善を行う作業者に容易に理解できるドメイン特化業務名が付与されるため、業務的な意味を分かり易くし、リバースエンジニアリングの効率を向上させることができる。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
11…処理機能抽出部
12…処理機能統廃合部
13…業務モデル特定部
14…結果出力部
15…処理機億部
16…第1ルール記憶部
17…第2ルール記憶部
18…第3ルール記憶部
19…第4ルール記憶部
Claims (5)
- 情報処理システムに使用されるソースプログラムに記述された業務仕様の抽出を行い、前記ソースプログラムの解析を支援するリバースエンジニアリング支援装置において、
前記ソースプログラムのソースコードを構成するコードから、前記コードの種類、コードの組み合わせ及びコードの配置順序と、予め設定した処理機能を示す単位プログラムとの対応関係が予め設定された第1ルールに従い、前記ソースプログラムのソースコードから、前記処理機能に対応する単位プログラムを抽出する処理機能抽出部と、
前記単位プログラムの処理機能の種類、組み合わせ及び配置の順番と、前記単位プログラムの配置の順番の変更、統合及び廃棄を示す統廃合処理との対応関係を予め設定した第2ルールに従い、前記ソースプログラムにおける前記単位プログラムの配置順の変更、統合及び廃棄の統廃合処理を行い、統廃合処理の結果として得られた単位プログラムを物理モデルとして出力する処理機能統廃合部と
を有することを特徴とするリバースエンジニアリング支援装置。 - 前記物理モデルの処理機能の種類、組み合わせ及び配置順序と、前記物理モデルから構成される一般業務モデルとの対応関係を示す予め設定された第3ルールが記述された第3ルールテーブルから、前記処理機能統廃合部から出力される前記物理モデルの処理機能の種類、組み合わせ及び配置順序と一致する前記一般業務モデルを検索し、一致した一般業務モデルを前記物理モデルに対応付ける業務モデル特定部を
さらに有することを特徴とする請求項1に記載のリバースエンジニアリング支援装置。 - 前記業務モデル特定部が、前記一般業務モデルの名称、当該一般業務の処理対象及び処理における制約条件の組み合わせと、特定の業務ドメインを示す業務モデルの名称であるドメイン特化業務名との対応関係を示す予め設定された第4ルールが記述された第4ルールテーブルから、前記一般業務モデルと一致する前記組み合わせを検索し、検索された前記ドメイン特化業務名を前記一般業務モデルに付与する
ことを特徴とする請求項2に記載のリバースエンジニアリング支援装置。 - 情報処理システムに使用されるソースプログラムに記述された業務仕様の抽出を行い、前記ソースプログラムの解析を支援するリバースエンジニアリング支援装置を動作させるリバースエンジニアリング支援方法において、
処理機能抽出部が、前記ソースプログラムのソースコードを構成するコードから、前記コードの種類、コードの組み合わせ及びコードの配置順序と、予め設定した処理機能を示す単位プログラムとの対応関係が予め設定された第1ルールに従い、前記ソースプログラムのソースコードから、前記処理機能に対応する単位プログラムを抽出する過程と、
処理機能統廃合部が、前記単位プログラムの処理機能の種類、組み合わせ及び配置の順番と、前記単位プログラムの配置の順番の変更、統合及び廃棄を示す統廃合処理との対応関係を予め設定した第2ルールに従い、前記ソースプログラムにおける前記単位プログラムの配置順の変更、統合及び廃棄の統廃合処理を行い、統廃合処理の結果として得られた単位プログラムを物理モデルとして出力する過程と
を有することを特徴とするリバースエンジニアリング支援方法。 - 情報処理システムに使用されるソースプログラムにおける業務仕様の抽出を行い、前記ソースプログラムの解析を支援するリバースエンジニアリング支援装置としてコンピュータを機能させるプログラムであって、
前記ソースプログラムのソースコードを構成するコードから、前記コードの種類、コードの組み合わせ及びコードの配置順序と、予め設定した処理機能を示す単位プログラムとの対応関係が予め設定された第1ルールに従い、前記ソースプログラムのソースコードから、前記処理機能に対応する単位プログラムを抽出する処理機能抽出手段、
前記単位プログラムの処理機能の種類、組み合わせ及び配置の順番と、前記単位プログラムの配置の順番の変更、統合及び廃棄を示す統廃合処理との対応関係を予め設定した第2ルールに従い、前記ソースプログラムにおける前記単位プログラムの配置順の変更、統合及び廃棄の統廃合処理を行い、統廃合処理の結果として得られた単位プログラムを物理モデルとして出力する処理機能統廃合手段、
として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011024258A JP4820924B1 (ja) | 2011-02-07 | 2011-02-07 | リバースエンジニアリング支援装置、リバースエンジニアリング支援方法及びそのプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011024258A JP4820924B1 (ja) | 2011-02-07 | 2011-02-07 | リバースエンジニアリング支援装置、リバースエンジニアリング支援方法及びそのプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP4820924B1 true JP4820924B1 (ja) | 2011-11-24 |
JP2012164148A JP2012164148A (ja) | 2012-08-30 |
Family
ID=45327073
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011024258A Active JP4820924B1 (ja) | 2011-02-07 | 2011-02-07 | リバースエンジニアリング支援装置、リバースエンジニアリング支援方法及びそのプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4820924B1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9588871B1 (en) | 2015-04-14 | 2017-03-07 | Don Estes & Associates, Inc. | Method and system for dynamic business rule extraction |
CN107148615A (zh) * | 2014-11-27 | 2017-09-08 | 乐金信世股份有限公司 | 计算机可执行的模型逆向工程方法及装置 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015102878A (ja) * | 2013-11-21 | 2015-06-04 | 株式会社日立製作所 | プログラム関連分析方法 |
WO2016085213A1 (ko) * | 2014-11-27 | 2016-06-02 | 주식회사 엘지씨엔에스 | 컴퓨터 수행 가능한 모델 역공학 방법 및 장치 |
JP6409658B2 (ja) | 2015-03-31 | 2018-10-24 | 富士通株式会社 | 情報処理装置及びプログラム |
WO2024202057A1 (ja) * | 2023-03-31 | 2024-10-03 | 三菱電機株式会社 | プログラム開発支援装置、プログラム開発支援方法及びプログラム開発支援プログラム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09101884A (ja) * | 1995-10-05 | 1997-04-15 | Nec Corp | リバースエンジニアリング支援システム |
JPH10232773A (ja) * | 1997-02-19 | 1998-09-02 | Hitachi Ltd | リバース情報を利用する業務モデル作成方法 |
JP2008052312A (ja) * | 2006-08-22 | 2008-03-06 | Hitachi Ltd | 業務仕様抽出支援システム |
-
2011
- 2011-02-07 JP JP2011024258A patent/JP4820924B1/ja active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09101884A (ja) * | 1995-10-05 | 1997-04-15 | Nec Corp | リバースエンジニアリング支援システム |
JPH10232773A (ja) * | 1997-02-19 | 1998-09-02 | Hitachi Ltd | リバース情報を利用する業務モデル作成方法 |
JP2008052312A (ja) * | 2006-08-22 | 2008-03-06 | Hitachi Ltd | 業務仕様抽出支援システム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107148615A (zh) * | 2014-11-27 | 2017-09-08 | 乐金信世股份有限公司 | 计算机可执行的模型逆向工程方法及装置 |
US9588871B1 (en) | 2015-04-14 | 2017-03-07 | Don Estes & Associates, Inc. | Method and system for dynamic business rule extraction |
Also Published As
Publication number | Publication date |
---|---|
JP2012164148A (ja) | 2012-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4820924B1 (ja) | リバースエンジニアリング支援装置、リバースエンジニアリング支援方法及びそのプログラム | |
JP4010516B2 (ja) | 変換規則導出システム | |
CN111008253B (zh) | 数据模型生成方法和数据仓库生成方法、装置及电子设备 | |
EP3037983A1 (en) | Data processing system, data processing method, and data processing device | |
CN112015412A (zh) | 基于表单引擎生成业务模型的装置及方法 | |
JP5984215B2 (ja) | 動的マニュアル作成装置及びその方法並びにコンピュータプログラム | |
JP5675676B2 (ja) | 業務分析設計支援装置、業務分析設計支援方法、および業務分析設計支援プログラム | |
JP6758167B2 (ja) | データ処理装置、データ処理方法及びデータ処理プログラム | |
KR20160117965A (ko) | NoSQL 모델 생성 방법 및 그 장치 | |
CN112001158B (zh) | 文书生成方法、装置、计算机设备及计算机可读存储介质 | |
JP2007102652A (ja) | 階層データの検索装置および検索方法および検索プログラム | |
JP2017016294A (ja) | 情報処理装置、その制御方法、及びプログラム | |
JP2006139358A (ja) | 業務支援装置 | |
US20060069679A1 (en) | System for creating associative records | |
JP2001325276A (ja) | 情報処理システム、情報処理方法、コンピュータプログラム、記憶媒体及びプログラム伝送装置 | |
CN115905371A (zh) | 数据趋势分析方法、装置、设备及计算机可读存储介质 | |
JP6336922B2 (ja) | 業務バリエーションに基づく業務影響箇所抽出方法および業務影響箇所抽出装置 | |
CN111680337B (zh) | Pdm系统产品设计需求信息获取方法及系统 | |
JP2007156928A (ja) | 設計支援プログラム、設計支援方法および設計支援システム | |
JP6320901B2 (ja) | データ連携支援システムおよびデータ連携支援方法 | |
JP2013196624A (ja) | 情報処理装置、承認フロー定義生成方法およびプログラム | |
US20020123811A1 (en) | Production management system and program | |
US20090327348A1 (en) | Job support system and its method | |
JP2008009966A (ja) | 業務プロセス設定装置及び業務プロセス設定方法 | |
JP2019139379A (ja) | 所要量計算装置、所要量計算方法、および、所要量計算プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110905 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140909 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4820924 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |