JPH09292985A - プログラム再利用部品生成方法 - Google Patents

プログラム再利用部品生成方法

Info

Publication number
JPH09292985A
JPH09292985A JP10712796A JP10712796A JPH09292985A JP H09292985 A JPH09292985 A JP H09292985A JP 10712796 A JP10712796 A JP 10712796A JP 10712796 A JP10712796 A JP 10712796A JP H09292985 A JPH09292985 A JP H09292985A
Authority
JP
Japan
Prior art keywords
program
data
design information
reusable
condition
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
JP10712796A
Other languages
English (en)
Inventor
Shinichi Akiba
真一 秋庭
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 JP10712796A priority Critical patent/JPH09292985A/ja
Publication of JPH09292985A publication Critical patent/JPH09292985A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 構造の簡潔なプログラム再利用部品を作成/
提供して、ソフトウェア開発作業の効率化を図る。 【解決手段】 既存プログラムを入力し(201)、デ
ータを中心に設計情報を抽出する(202)、作業者が
部品化したいデータ項目を入力すると(203)、該デ
ータ項目の設計情報について操作/制約条件を整理・統
合し、再利用可能なデータ部品を作成する(204)。
次に、該データ部品に関係のあるデータ項目を抽出し
(205)、対応する設計情報について同様にデータ部
品を作成し、これを関連するすべてのデータ項目につい
て繰り返す(206)。最後に、業務処理上で関連する
複数のデータ部品をまとめて再利用可能な業務部品を作
成する(207)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータ・ソ
フトウェア開発技術分野に係わり、特にソフトウェア再
構築及び新規ソフトウェア開発作業の効率化を支援する
ための、既存プログラムからのデータを中心の再利用部
品生成方法に関する。
【0002】
【従来の技術】従来、既存プログラムからデータを中心
に設計情報を抽出する方法としては、例えば、特開平6
−214772号公報に記載の2項オブジェクトを用い
たプログラム論理の抽出方法が知られている。ここで
は、既存プログラムの各トランザクションを個々のデー
タ要素に分解し、該分解したデータ要素を一対のデータ
要素(2項オブジェクト)にて表現することで、複雑化
された既存プログラム内の設計情報をデータ単位に抽出
し、更に、該抽出した設計情報を再利用できるように整
理して、新たなプログラム構造を生成する作業の効率化
を図る方法について述べている。
【0003】
【発明が解決しようとする課題】上記従来技術では、既
存プログラムのデータに着目し、各データに関するプロ
グラムの設計情報の抽出、および、該抽出した情報の直
接の再利用にとどまっている。しかし、プログラムの設
計情報の抽出段階では、データ毎に複数の操作とそれに
関連する複数の制約が抽出されるため、それの直接の再
利用では膨大な再利用部品が作成され、再利用面での効
率化がうまくいかないといった問題があった。
【0004】本発明の目的は、既存プログラムから抽出
した複数操作と複数制約の関係を整理し、データ単位あ
るいは業務処理上で関連する複数データ単位の再利用部
品を作成/提供する事により、効率的なソフトウェア開
発作業を行えるようにすることにある。
【0005】
【課題を解決するための手段】本発明の目的を達成する
ため、本発明では、既存プログラムからデータを中心に
設計情報を抽出したなら、そのデータ毎の操作/制約条
件からデータ単位での再利用部品を作成し、更に業務処
理上で関連するデータの操作/制約条件をまとめた業務
部品を作成して、作業者にこれら情報を提供する。
【0006】
【発明の実施の形態】以下、本発明の一実施例を図面を
用いて詳細に説明する。図1は、本発明に係わるプログ
ラム再利用部品生成方法を実施するシステム構成を示す
ブロック図である。図1において、101はプログラム
に基づく逐次処理機能を有する中央処理装置(CPU)
であり、ここでは図2の処理手順の実行を制御する。1
02はキーボードとマウスとディスプレイ画面を有する
対話端末であり、本システムを用いる作業者が指示や分
析に必要な情報を入力するために用いる。103は主メ
モリで、図2の処理手順を実現するためのプログラムお
よび処理途中結果等が格納される。104は、プログラ
ム再利用部品生成で対象とする既存プログラムが格納さ
れているファイルである。105は既存プログラムを解
析して抽出したプログラム設計情報が格納されるファイ
ルである。106は作成したプログラム再利用部品(デ
ータ部品、業務部品)を格納するファイルである。
【0007】図2は、本発明のプログラム再利用部品生
成方法の一実施例の処理手順を示すフローチャートであ
る。以下に、具体例に基づいて、図2のフローチャート
に従い処理手順を詳細に説明する。なお、具体例では、
COBOL言語を対象にしたプログラム例を示す。
【0008】まず、CPU101は、既存プログラムフ
ァイル104から分析対象の既存プログラムを入力する
(ステップ201)。ここでは、分析対象の既存プログ
ラムを図3乃至図7とする。
【0009】図3はプログラムIDが「MAINO1」
のメインプログラムである。図4は、図3のメインプロ
グラムの文306でコールされるプログラムIDが「H
ANBAI10」のサブプログラム、図5は、同じく文
307でコールされるプログラムIDが「HANBAI
20」のサブプログラムである。また、図6は、図3の
メインプログラムの文303でコールされるプログラム
IDが「SHOHIN00」のサブプログラム、図7
は、同じく文304でコールされるプログラムIDが
「SHOHIN01」のサブプログラムである。
【0010】次に、CPU1は、入力された分析対象の
既存プログラムから、データ(データ項目、操作対象デ
ータ等)を中心にプログラム設計情報を抽出する(ステ
ップ202)。これには、例えば特開平6−21477
2号公報に示されている2項オブジェクトを用いたプロ
グラム論理の抽出法を適用すれば便利である。勿論、こ
の抽出法に限る必要はない。
【0011】図8は、図3、図4、図5に示されるプロ
グラムより抽出されたデータ項目「HANBAI−KI
N(販売金額)」に対するプログラム設計情報例を示し
たものである。図において、802は、図4の「HAN
BAI10」プログラム中の「HANBAI−KIN」
を算出するための式(データ操作部)402であり、8
01は、図3の「MAIN01」プログラム中の条件
(制約条件部)301が真、条件305が真、及び、図
4の「HANBAI10」プログラム中の条件401が
真といった、当該式402が実行されるための制約条件
をまとめたものである。同様に、804は、図4のプロ
グラム中の「HANBAI−KIN」を算出するための
式403であり、803は、図3のプログラム中の条件
301が真、条件305が真、図4のプログラム中の条
件401が偽(真の条件の反対の論理式で表示)等の、
当該式403が実行されるための制約条件をまとめたも
のである。また、806は、図5の「HANBAI2
0」プログラム中の「HANBAI−KIN」を算出す
るための式502であり、805は、図3のプログラム
中の条件301が真、条件305が偽、図5のプログラ
ム中の条件501が真等の、当該式502が実行される
ための制約条件をまとめたものである。同様に、808
は、図5のプログラム中の「HANBAI−KIN」を
算出するための式503であり、807は、図3のプロ
グラム中の条件301が真、条件305が偽、図5のプ
ログラム中の条件501が偽等の、当該式503が実行
されるための制約条件をまとめたものである。
【0012】図9は、図3、図6、図7に示されるプロ
グラムより抽出されたデータ項目「SHOHIN−KI
N(商品金額)」に対するプログラム設計情報例を示し
たものである。図において、902は、図6の「SHO
HIN00」プログラム中の「SHOHIN−KIN」
を算出するための式(データ操作部)602であり、9
01は、図3の「MAIN01」プログラム中の条件
(制約条件部)301が真、条件302が真、図6の
「SHOHIN00」プログラム中の条件601が真と
いった、当該式602が実行されるための制約条件をま
とめたものである。同様に、904は、図6のプログラ
ム中の「SHOHIN−KIN」を算出するための式6
03であり、903は、図3のプログラム中の条件30
1が真、条件302が真、図6のプログラム中の条件6
01が偽等の、当該式603が実行されるための制約条
件をまとめたものである。また、906は、図7の「S
HOHIN01」プログラム中の「SHOHIN−KI
N」を算出するための式702であり、905は、図3
のプログラム中の条件が真、条件302が偽、図7のプ
ログラム中の条件701が真等の、当該式702が実行
されるための制約条件をまとめたものである。908
は、図7のプログラム中の「SHOHIN−KIN」を
算出するための式703であり、907は、図3のプロ
グラム中の条件301が真、条件302が偽、図7のプ
ログラム中の条件701が偽等の、当該式703が実行
されるための制約条件をまとめたものである。
【0013】このようにして、分析対象の既存プログラ
ムからデータ(本実施例ではデータ項目)に着目して抽
出された各プログラム設計情報は、プログラム設計情報
ファイル105に蓄積される。
【0014】次に、作業者が対話端末102より部品化
したいデータ項目を入力すると(ステップ203)、C
PU101は、該入力されたデータ項目に対するプログ
ラム設計情報をプログラム設計情報ファイル105から
読み出し、該データ項目についてのデータ部品を作成す
る(ステップ204)。さらに、CPU101は、当該
データ部品に関係のあるデータ項目を抽出し(ステップ
205)、同様に、そのデータ項目に対するプログラム
設計情報をプログラム設計情報ファイル105から読み
出し、対応するデータ部品を作成する。これを関連する
すべてのデータ項目について繰り返す(ステップ20
6)。ここでは、対話端末102より「HANBAI−
KIN(販売金額)」が入力されたものとして、それに
関連するデータ部品の作成について説明する。
【0015】CPU101は、部品化したいデータ項目
として「HANBAI−KIN(販売金額)」が入力さ
れると、プログラム設計情報ファイル105から、ま
ず、「HANBAI−KIN」に対するプログラム設計
情報(ここでは、図8の情報)を読み出し、そのデータ
操作部/制約条件部を整理・統合して、販売金額算出用
のデータ部品を作成する。
【0016】図10は、図8のプログラム設計情報で作
成される「HANBAI−KIN(販売金額)」算出用
のデータ部品例を示したものである。プログラム設計情
報の整理は、「同一式の制約」、「各式の共通する制
約」、「相反する制約(真/偽の関係)」の順に行う。
図8の例では、同一式がないため、まず各式で共通する
制約条件を抽出する。その結果、「SYORI−KBN
(処理区分)=‘1’」が全体の制約条件として括り出
される(1001)。次に、式802と式804で共通
の制約条件「KEIYAKU−NEN >= 10」
と、式806と式808で共通する制約条件「KEIY
AKU−NEN < 10」を整理する(1002)。
また、この2つの制約条件は「相反する制約(真/偽の
関係)」になっているので、ここで、制約条件1002
の分岐処理(THENとELSE)にさせる。また、次
の階層では、「SHOHIN−KIN >= 1000
000」と「SHOHIN−KIN < 100000
0」が「相反する制約(真/偽の関係)」になっている
ので、ここでも、制約条件1003,1006の分岐処
理とさせる。このようにして、制約条件を整理した後、
各式802,804,806,808を、抽出された条
件下に整理し(1004,1005,1007,100
8)、図10の販売金額算出データ部品が完成する。
【0017】次に、CPU101は、図10のデータ部
品に関係のあるデータ項目として「SHOHIN−KI
N(商品金額)」を抽出し、プログラム設計情報ファイ
ル105から、「SHOHIN−KIN」に対応するプ
ログラム設計情報(ここでは、図9の情報)を読み出
し、同様にして商品金額算出用のデータ部品を作成す
る。
【0018】図11は、図9のプログラム設計情報で作
成される「SHOHIN−KIN(販売金額)」算出用
のデータ部品例を示したものである。まず、同一式であ
る式902,906と式904、908に対する制約条
件を整理する。制約の方法としては先に示した順に行
う。図11において、1101は、各式共通の制約条件
として抽出し、残りの制約条件に関しては、異なる式1
103、1104同士で「相反する制約」となっている
ため、最終的に、1102に示す制約条件の真/偽(T
HEN/ELSEの関係)として部品化する。また、式
902、906は式1103に、式904、908は式
1104として整理される。
【0019】以上の処理を繰り返して、関連するすべて
のデータ部品を作成し、それらを再利用部品情報として
再利用部品情報ファイル106に格納する。
【0020】次に、CPU101は、再利用部品情報フ
ァイル106からデータ部品を読み出し、業務処理上で
関連するデータ部品をまとめて業務部品を作成する(ス
テップ207)。この業務部品の作成では、作業者の指
定したデータ項目から順次関連するデータ部品を追加し
ていく。
【0021】図12は、図10、図11のデータ部品か
ら作成される販売金額算出用業務部品例を示したもので
ある。業務部品の作成においては、図10と図11のデ
ータ部品内で共通する制約条件「SYORI−KBN
(処理区分)」1001、1101を括り出し(120
1)、各データ部品の実行順序(本例では、販売金額を
算出する前に商品金額を算出していないといけないとい
う順序)から、図11の商品金額算出のデータ部品(1
202)、図10の販売金額算出のデータ部品(120
3)の順に配置する。
【0022】このようにして作成された業務部品は、先
のデータ部品と同様に、後日の再利用部品情報として再
利用部品情報ファイル106に格納しておく。
【0023】なお、図2のフローチャートにおいて、ス
テップ203とステップ204は順序が逆でもよい。こ
の場合、プログラム設計情報の抽出では、既存プログラ
ムから、作業者の指定した部品化したいデータ項目に関
連のある設計情報を抽出するだけですむ。
【0024】
【発明の効果】本発明によれば、既存プログラムから抽
出した再利用可能な設計情報を整理し、データ単位ある
いは業務処理上で関係する複数データ単位の、プログラ
ム構造が簡潔な再利用部品を提供する事が可能になり、
効率的なソフトウェア開発作業を行うことができるよう
になる。
【図面の簡単な説明】
【図1】本発明のプログラム再利用部品生成方法を実施
するシステム構成を示すブロック図である。
【図2】本発明方法の一実施例の処理手順を示すフロー
チャートである。
【図3】分析対象の既存のメインプログラムの具体例で
ある。
【図4】分析対象の既存サブプログラムの具体例であ
る。
【図5】分析対象の既存サブプログラムの具体例であ
る。
【図6】分析対象の既存サブプログラムの具体例であ
る。
【図7】分析対象の既存サブプログラムの具体例であ
る。
【図8】図3、図4、図5の分析対象プログラムから抽
出されたプログラム設計情報例である。
【図9】図3、図6、図7の分析対象プログラムから抽
出されたプログラム設計情報例である。
【図10】図8のプログラム設計情報例により作成され
た再利用可能なデータ部品例である。
【図11】図9のプログラム設計情報例により作成され
た再利用可能なデータ部品例である。
【図12】図10、図11のデータ部品例により作成さ
れた再利用可能な業務部品例である。
【符号の説明】
101 CPU 102 対話端末 103 主メモリ 104 既存プログラム格納ファイル 105 プログラム設計情報格納ファイル 106 再利用部品格納ファイル

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 既存プログラムからデータを中心にプロ
    グラム設計情報を抽出し、前記抽出したプログラム設計
    情報について、データ毎の操作/制約条件を整理・統合
    して再構築し、データ単位の再利用部品を生成すること
    を特徴とするプログラム再利用部品生成方法。
  2. 【請求項2】 請求項1記載のプログラム再利用部品生
    成方法において、前記生成されたデータ単位の再利用部
    品から、業務処理上関連する部品をまとめて業務部品を
    生成することを特徴とするプログラム再利用部品生成方
    法。
JP10712796A 1996-04-26 1996-04-26 プログラム再利用部品生成方法 Pending JPH09292985A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10712796A JPH09292985A (ja) 1996-04-26 1996-04-26 プログラム再利用部品生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10712796A JPH09292985A (ja) 1996-04-26 1996-04-26 プログラム再利用部品生成方法

Publications (1)

Publication Number Publication Date
JPH09292985A true JPH09292985A (ja) 1997-11-11

Family

ID=14451189

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10712796A Pending JPH09292985A (ja) 1996-04-26 1996-04-26 プログラム再利用部品生成方法

Country Status (1)

Country Link
JP (1) JPH09292985A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001350624A (ja) * 2000-06-07 2001-12-21 Nec Corp モジュール再分割提案装置およびモジュール再分割提案方法、並びに記録媒体
US7895050B2 (en) 2002-04-12 2011-02-22 International Business Machines Corporation Packaging and distributing service elements
US7904304B2 (en) 2002-04-12 2011-03-08 International Business Machines Corporation Method of facilitating management of service elements
US7941321B2 (en) 2002-04-12 2011-05-10 International Business Machines Corporation Facilitating management of service elements usable in providing information technology service offerings
JP2012098902A (ja) * 2010-11-02 2012-05-24 Hitachi Ltd ソフトウェア資産整理方法及び装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001350624A (ja) * 2000-06-07 2001-12-21 Nec Corp モジュール再分割提案装置およびモジュール再分割提案方法、並びに記録媒体
US7895050B2 (en) 2002-04-12 2011-02-22 International Business Machines Corporation Packaging and distributing service elements
US7904304B2 (en) 2002-04-12 2011-03-08 International Business Machines Corporation Method of facilitating management of service elements
US7941321B2 (en) 2002-04-12 2011-05-10 International Business Machines Corporation Facilitating management of service elements usable in providing information technology service offerings
JP2012098902A (ja) * 2010-11-02 2012-05-24 Hitachi Ltd ソフトウェア資産整理方法及び装置

Similar Documents

Publication Publication Date Title
JP7090778B2 (ja) 影響分析
Ludäscher et al. Scientific workflows: Business as usual?
US6901407B2 (en) System and method for updating project management scheduling charts
US5185867A (en) Method and apparatus for automatically generating software specifications
EP2369502A2 (en) SQL generation
Chapin New format for flowcharts
Bodhuin et al. Migrating COBOL systems to the Web by using the MVC design pattern
US8572551B2 (en) Difference log production for model merging
JP7055064B2 (ja) データベースマイグレーション支援システム及びプログラム
JP2006139358A (ja) 業務支援装置
JP4791660B2 (ja) データフロー自動生成装置とデータフロー自動生成方法およびコンピュータ読み取り可能な記録媒体
JPH09292985A (ja) プログラム再利用部品生成方法
JPH07141168A (ja) 階層仕様情報作成方法
CN112114817B (zh) 基于cobol语言的数据字典字段信息获取方法及装置
CN101151843A (zh) 一种文本数据挖掘方法
Sneed et al. From COBOL to Business Rules—Extracting Business Rules from Legacy Code
Burd et al. A method for the identification of reusable units through the reengineering of legacy code
US20100017244A1 (en) Method for organizing processes
JPH11327884A (ja) 既存システム処理情報を再構成し利用するシステム
JPH0887417A (ja) コンパイラ装置
CA2144483A1 (en) Methods and apparatus for reverse engineering a program and generating an object-oriented redesign
JP3153371B2 (ja) 2項オブジェクトを用いたプログラム論理の抽出方法
JPH01147621A (ja) プログラム自動生成方法
JP3208300B2 (ja) プログラム中の物理実体の使用形式抽出方法および関連抽出方法
JP2000231478A (ja) ソフトウェアの自動生成装置および方法、記録媒体