JPH06139061A - プログラム仕様書逆生成方法 - Google Patents

プログラム仕様書逆生成方法

Info

Publication number
JPH06139061A
JPH06139061A JP28974792A JP28974792A JPH06139061A JP H06139061 A JPH06139061 A JP H06139061A JP 28974792 A JP28974792 A JP 28974792A JP 28974792 A JP28974792 A JP 28974792A JP H06139061 A JPH06139061 A JP H06139061A
Authority
JP
Japan
Prior art keywords
operand
keyword
program
item
source program
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
JP28974792A
Other languages
English (en)
Inventor
Yasuaki Kikko
靖明 橘高
Shiyouji Tsudera
省児 津寺
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 JP28974792A priority Critical patent/JPH06139061A/ja
Publication of JPH06139061A publication Critical patent/JPH06139061A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 ソースプログラムを変更した場合にソースプ
ログラムとプログラム仕様書の一体化を容易に実現す
る。 【構成】 逆生成対象のソースプログラムの記述内容と
キーワードファイルに格納されたキーワードとを順次比
較し、ソースプログラム中のキーワードを抽出し、さら
にそのキーワードに対するオペランドを抽出し、さら
に、この抽出したキーワードおよびオペランドをワーク
シート上の項目識別情報で示される項目位置に配置し、
プログラム仕様書として出力する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ソースプログラムから
プログラム仕様書を逆生成するプログラム仕様書逆生成
方法に関するものである。
【0002】
【従来の技術】既に作成したソースプログラムに対し
て、処理内容の追加、削除等の変更を加えた場合、その
ソースプログラムの仕様書に変更内容を反映させておく
必要がある。
【0003】そこで、従来においては、ソースプログラ
ムの仕様書に図7(a),(b),(c)に示すような
変更内容を記入する欄70と変更の種別を記入する欄7
1を設け、変更内容に応じて、これらの欄70,71に
必要な情報を担当者が記入し、ソースプログラムとその
仕様書との一体化を図っている。
【0004】ここで、例えば図7(a)の仕様書にあっ
ては、データ「u1.締日」を「締日(ワーク)」に更
新したことを示している。
【0005】しかし、この方法は作業者が手作業によっ
て仕様書を更新するものであるため、その更新作業を怠
った場合、または誤った内容を記入してしまった場合
は、ソースプログラムとの対応関係が崩れ、その後のソ
ースプログラムの保守管理に障害を来すという問題があ
った。
【0006】そこで、図8および図9に示すように、ソ
ースプログラム80中に処理内容のコメント欄81,8
2,83を設け、ここに記述された処理内容を抽出する
ことにより、図10に示すようなモジュール一覧表10
0、関数一覧表101、テーブル一覧表102、データ
型一覧表103を自動生成する方法がある。
【0007】
【発明が解決しようとする課題】しかしながら、図8お
よび図9に示すようなコメント欄81,82,83に記
述された処理内容を抽出する方法では、ソースプログラ
ム中に処理内容のコメントをソースプログラムの作成時
に予め記述しておく必要があるため、その作業が煩わし
いと同時に、ソースプログラム自体が大規模になってし
まい、保守管理が却って面倒になるという問題があっ
た。
【0008】本発明の目的は、ソースプログラム中にコ
メント等を記述することなく、ソースプログラムの内容
を正確に反映した仕様書を自動生成することができるプ
ログラム仕様書逆生成方法を提供することである。
【0009】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、処理内容を示すキーワードとオペランド
に関し、少なくとも逆生成対象のソースプログラムに使
用されている各キーワード、該各キーワードに対するオ
ペランドの記述位置、各キーワードおよびオペランドが
プログラム仕様書を構成するワークシート上のどの項目
に対応するかを示す項目識別情報をキーワードファイル
に格納しておき、逆生成対象のソースプログラムの記述
内容と前記キーワードファイルに格納されたキーワード
とを順次比較し、ソースプログラム中のキーワードを抽
出し、さらにそのキーワードに対するオペランドを前記
オペランドの記述位置の情報から抽出し、この抽出した
キーワードおよびオペランドをワークシート上の前記項
目識別情報で示される項目位置に配置し、その配置した
キーワードおよびオペランドをワークシートのフォーマ
ットに従いプログラム仕様書として出力するようにした
ものである。
【0010】
【作用】上記手段においては、まず、逆生成対象のソー
スプログラムの記述内容とキーワードファイルに格納さ
れたキーワードとを順次比較し、ソースプログラム中の
キーワードを抽出する。さらにそのキーワードに対する
オペランドをオペランドの記述位置の情報から抽出す
る。さらに、この抽出したキーワードおよびオペランド
をワークシート上の項目識別情報で示される項目位置に
配置し、その配置したキーワードおよびオペランドをワ
ークシートのフォーマットに従いプログラム仕様書とし
て出力する。
【0011】従って、担当者を煩わすことなく、またソ
ースプログラム中にコメント等を記述することなく、ソ
ースプログラムの内容を正確に反映した仕様書を自動生
成することができる。
【0012】
【実施例】以下、この発明を日本語COBOLで開発し
たソースプログラムに適用した実施例について詳述す
る。
【0013】図1は、本発明のプログラム仕様書逆生成
方法を実現するシステムの一実施例を示すブロック構成
図であり、中央処理装置1、逆生成対象のソースプログ
ラムを格納したソースファイル2を備え、さらにソース
プログラム中の処理内容を示すキーワードとオペランド
に関し、少なくとも逆生成対象のソースプログラムに使
用されている各キーワード、該各キーワードに対するオ
ペランドの記述位置、各キーワードおよびオペランドが
プログラム仕様書を構成するワークシート上のどの項目
に対応するかを示す項目識別情報を格納したキーワード
ファイル3を備えている。
【0014】さらにまた、プログラム仕様書を構成する
ワークシートの出力形式に関する情報を格納した出力形
式ファイル4、編集作業に使用するワークファイル5、
逆生成した仕様書を印字出力する漢字プリンタ等のプリ
ンタ6を備えている。
【0015】なお、この実施例においては、キーワード
ファイル3には、逆生成対象のソースプログラムを記述
しているプログラム言語に用意されている全てのキーワ
ードについて、そのオペランドの記述位置、各キーワー
ドおよびオペランドがプログラム仕様書を構成するワー
クシート上のどの項目に対応するかを示す項目識別情報
が格納されている。
【0016】また、ソースファイル2、キーワードファ
イル3、出力形式ファイル4、ワークファイル5は、ハ
ードディスク内に設けられている。
【0017】図2はソースファイル2に格納されている
ソースプログラム20の一例を示すものであり、ここで
は日本語COBOLで記述されたソースプログラムの一
例を示している。
【0018】図2の例では、キーワード21は、「項目
加工処理」22と「読込み」23と「転記」24であ
り、またキーワード21に対応したオペランド25は
「O1−出力処理」26と「I1」27と「O1.商品
コード <−− I1.商品コード」28である。
【0019】図3は、キーワードファイル3の一例を示
すものであり、プログラム仕様書を構成するワークシー
トに対応したワークシート番号と、ソースプログラム2
0を記述したプログラム言語で使用されている全てのキ
ーワードと、キーワードがプログラム仕様書を構成する
ワークシートのどの項目に属するか明記したキーワード
項目IDと、キーワードに対応したオペランドの記述位
置を示すオペランド位置の情報と、オペランドがプログ
ラム仕様書を構成するワークシートのどの項目に属する
か明記したオペランド項目IDで構成されている。
【0020】図2の例では、「B310」31がワーク
シート番号であり、「項目加工処理」32と「読込み」
36と「転記」37がキーワード21であり、「H0
1」33と「C01」38と「C01」39がキーワー
ド項目ID44であり、「B」34,「B」40,
「B」41がオペランド位置情報45であり、「H0
2」35と「C02」42と「C02」43がオペラン
ド項目ID46である。
【0021】図4は、プログラム仕様書を構成するワー
クシート50の一例を示すものであるが、プログラム仕
様書は、少なくとも、(1)プログラムで使用するファ
イルの入出力関係を明記する処理構成定義、入出力レコ
ードを選択するための条件を明記するレコード選択条
件、データを編集する処理を明記する項目加工処理のワ
ークシート51と、(2)プログラムが起動されたとき
最初に1回だけ実行する処理を記述した初期処理のワー
クシート52と、(3)プログラムが起動されたとき最
後に1回だけ実行する処理を記述した終了処理のワーク
シート53とから構成されている。このワークシート5
0のフォーマットは出力形式ファイル4に予め記憶され
ている。
【0022】なお、ソースプログラム20が入出力装置
としてディスプレイを使用している時は、エラーメッセ
ージ等を明記するメッセージ一覧と、キーボードに割り
当てた処理を明記するPFキーと、ディスプレイから入
力されたデータ又はディスプレイへ出力するデータを編
集する処理を明記した画面入出力処理のワークシート
と、ディスプレイから入力されたデータをチェックする
画面チェック処理を記述したワークシートも含まれる
が、ここでは説明を簡単にするために省略する。
【0023】ここで、図4の項目加工処理のワークシー
ト51には、ワークシート番号を記述する欄54、仕様
書名称を記述する欄55、作成者氏名,審査者氏名,承
認者氏名をそれぞれ記述する欄56,57,58、日付
欄59、頁欄60、命令を記述する欄61、命令に対す
る処理対象を記述する欄62が設けられている。
【0024】以下、図2のソースプログラム20から仕
様書を逆生成する動作について図5のフローチャートを
参照して説明する。
【0025】まず、ソースファイル2から逆生成対象の
ソースプログラム20を中央処理装置1内に読み込む
(ステップ200)。
【0026】次に、ソースファイル2から読み込んだデ
ータが「EOF」(ファイル終了コード)であるかどう
かを調べ(ステップ201)、「EOF」でなければ、
読み込んだデータを「スペース」もしく
は「.」,「、」,「:」,「;」のような分離記号で
分割することにより、複数の意味のある単語に分割す
る。
【0027】図2のソースプログラム2の例では、「項
目加工処理」22と「O1−出力処理」26とがその間
の「スペース」で分割される。同様に、「読込み」23
と「I1」とが分割される。さらに、「転記」24,
「O1」,「商品コード」,「<−−」,「I1」,
「商品コード」が分割される。
【0028】次に、単語化したデータとキーワードファ
イル3のキーワード21とを順次比較し、ソースプログ
ラム20中のキーワード22,23,24を抽出する。
さらにそのキーワード22,23,24に対するオペラ
ンド25をオペランドの記述位置の情報34,40,4
1から抽出する(ステップ202)。
【0029】この場合、オペランドの記述位置の情報を
使用するのは、オペランドをキーワードの前と後に記述
する形態があるためで、「A」はオペランドの後にキー
ワードが記述されていることを示し、「B」はオペラン
ドの前にキーワードが記述されていることを示してい
る。
【0030】図2のソースプログラム20においては、
キーワードの後にオペランドが記述されているので、オ
ペランドの記述位置の情報は全て「B」となっている。
【0031】ステップ202においては、「項目加工処
理」、「読込み」、「転記」というキーワード22,2
3,24を抽出したならば、オペランドの記述位置の情
報「B」に従い、これらキーワード22,23,24の
後に記述されているオペランド26,27,28を抽出
することになる。
【0032】次に、このようにして抽出したキーワード
22,23,24およびオペランド26,27,28を
ワークシート50上の項目IDで示される項目欄に配置
する編集を行う(ステップ203)。
【0033】すなわち、「項目加工処理」というキーワ
ード22はその項目ID33が「H01」、「読込み」
というキーワード23はその項目ID38が「C0
1」、「転記」というキーワード24はその項目ID3
9が「C01」となっており、さらに「O1−出力処
理」というオペランド26はその項目ID35が「H0
2」、「I1」というオペランド27はその項目ID4
2が「C02」、「O1.商品コード<−−I1.商品
コード」というオペランド28はその項目ID43が
「C02」となっている。
【0034】この項目ID「H01」,「H02」,
「C01」,「C02」は、図4のワークシート50で
は、破線で示す項目欄に対応している。
【0035】そこで、ステップ203の編集処理の結
果、各キーワード22,23,24およびオペランド2
6,27,28は図6に示すように、それぞれの項目I
Dで指定された項目欄に配置される。この時、ワークシ
ート番号「B310」も欄54に配置される。
【0036】なお、ワークシート50はワークシート番
号「B310」によって出力形式ファイル4から検索さ
れ、ステップ203の編集処理に使用される。
【0037】また、日付、頁の各欄59,60はソース
プログラム20の図示しない位置に記述されたものが転
記される。
【0038】以上のようにして生成されたワークシート
50は、ソースファイル2からEOFが読み込まれた後
に、ステップ204の出力処理においてプリンタ6から
プログラム仕様書として印字出力される。
【0039】このように本実施例においては、まず、逆
生成対象のソースプログラム20の記述内容とキーワー
ドファイル3に格納されたキーワードとを順次比較し、
ソースプログラム20中のキーワードを抽出する。さら
にそのキーワードに対するオペランドをオペランドの記
述位置の情報から抽出する。さらに、この抽出したキー
ワードおよびオペランドをワークシート50上の項目I
D(識別情報)で示される項目欄に配置し、その配置し
たキーワードおよびオペランドをワークシート50のフ
ォーマットに従いプログラム仕様書として出力するの
で、担当者を煩わすことなく、またソースプログラム2
0中にコメント等を記述することなく、ソースプログラ
ム20の内容を正確に反映した仕様書を自動生成するこ
とができる。
【0040】これによって、ソースプログラムに対して
追加、削除等の変更等を行っても、その変更内容を正確
に反映したプログラム仕様書が得られるので、ソースプ
ログラムの保守管理が極めて容易になる。
【0041】
【発明の効果】以上のように本発明においては、処理内
容を示すキーワードとオペランドに関し、少なくとも逆
生成対象のソースプログラムに使用されている各キーワ
ード、該各キーワードに対するオペランドの記述位置、
各キーワードおよびオペランドがプログラム仕様書を構
成するワークシート上のどの項目に対応するかを示す項
目識別情報をそれぞれキーワードファイルに格納してお
き、逆生成対象のソースプログラムの記述内容と前記キ
ーワードファイルに格納されたキーワードとを順次比較
し、ソースプログラム中のキーワードを抽出し、さらに
そのキーワードに対するオペランドを前記オペランドの
記述位置の情報から抽出し、この抽出したキーワードお
よびオペランドをワークシート上の前記項目識別情報で
示される項目位置に配置し、その配置したキーワードお
よびオペランドをワークシートのフォーマットに従いプ
ログラム仕様書として出力するようにしたので、システ
ム開発担当者を煩わすことなく、またソースプログラム
中にコメント等を記述することなく、ソースプログラム
の内容を正確に反映した仕様書を自動生成することがで
きる。
【0042】これによって、ソースプログラムに対して
追加、削除等の変更等を行っても、その変更内容を正確
に反映したプログラム仕様書が得られるので、システム
開発を行うシステムエンジニアにとってソースプログラ
ムを修正した際にソースプログラムとプログラム仕様書
の一体化を図ることに要していた多大な時間を削減し、
ソースプログラムの保守管理を極めて容易に実施できる
等の極めて有用な効果が得られる。
【図面の簡単な説明】
【図1】 本発明のプログラム仕様書逆生成方法を実現
するシステムの一実施例を示すブロック構成図である。
【図2】 逆生成対象のソースプログラムの一例を示す
説明図である。
【図3】 キーワードファイルの一例を示す説明図であ
る。
【図4】 プログラム仕様書を構成するワークシートの
一例を示す説明図である。
【図5】 ソースプログラムからプログラム仕様書を生
成出力するための手順を示すフローチャートである。
【図6】 プログラム仕様書の出力結果の一例を示す説
明図である。
【図7】 プログラム仕様書を手作業で更新する従来例
を示す説明図である。
【図8】 ソースプログラム中にコメントを入れたソー
スプログラムの一例を示す説明図である。
【図9】 図8の続きを示す説明図である。
【図10】 図8のソースプログラムのコメントによっ
て生成されるプログラム仕様書の説明図である。
【符号の説明】
1…中央処理装置、2…ソースファイル、3…キーワー
ドファイル、4…出力形式ファイル、6…プリンタ、2
0…ソースプログラム、21…キーワード、25…オペ
ランド、44…キーワード項目ID、45…オペランド
位置情報、46…オペランド項目ID、50…ワークシ
ート。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 処理内容を示すキーワードとオペランド
    に関し、少なくとも逆生成対象のソースプログラムに使
    用されている各キーワード、該各キーワードに対するオ
    ペランドの記述位置、各キーワードおよびオペランドが
    プログラム仕様書を構成するワークシート上のどの項目
    に対応するかを示す項目識別情報をキーワードファイル
    に格納しておき、逆生成対象のソースプログラムの記述
    内容と前記キーワードファイルに格納されたキーワード
    とを順次比較し、ソースプログラム中のキーワードを抽
    出し、さらにそのキーワードに対するオペランドを前記
    オペランドの記述位置の情報から抽出し、この抽出した
    キーワードおよびオペランドをワークシート上の前記項
    目識別情報で示される項目位置に配置し、その配置した
    キーワードおよびオペランドをワークシートのフォーマ
    ットに従いプログラム仕様書として出力することを特徴
    とするプログラム仕様書逆生成方法。
JP28974792A 1992-10-28 1992-10-28 プログラム仕様書逆生成方法 Pending JPH06139061A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28974792A JPH06139061A (ja) 1992-10-28 1992-10-28 プログラム仕様書逆生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28974792A JPH06139061A (ja) 1992-10-28 1992-10-28 プログラム仕様書逆生成方法

Publications (1)

Publication Number Publication Date
JPH06139061A true JPH06139061A (ja) 1994-05-20

Family

ID=17747240

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28974792A Pending JPH06139061A (ja) 1992-10-28 1992-10-28 プログラム仕様書逆生成方法

Country Status (1)

Country Link
JP (1) JPH06139061A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000050988A1 (fr) * 1999-02-24 2000-08-31 Fujitsu Limited Appareil pour preparer des specifications de programmes, procedes pour preparer des specifications de programmes et support d'informations servant a enregistrer un programme destine a preparer des specifications de programmes
JP2008117066A (ja) * 2006-11-01 2008-05-22 Hitachi Ltd ソフトウェア開発支援方法、ソフトウェア開発支援装置、ソフトウェア開発支援プログラム、及び計算機システム

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02159620A (ja) * 1988-12-13 1990-06-19 Nec Corp プログラム処理概要仕様書出力装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02159620A (ja) * 1988-12-13 1990-06-19 Nec Corp プログラム処理概要仕様書出力装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000050988A1 (fr) * 1999-02-24 2000-08-31 Fujitsu Limited Appareil pour preparer des specifications de programmes, procedes pour preparer des specifications de programmes et support d'informations servant a enregistrer un programme destine a preparer des specifications de programmes
JP2008117066A (ja) * 2006-11-01 2008-05-22 Hitachi Ltd ソフトウェア開発支援方法、ソフトウェア開発支援装置、ソフトウェア開発支援プログラム、及び計算機システム

Similar Documents

Publication Publication Date Title
JP3074737B2 (ja) ファイル更新処理装置
JPH01197878A (ja) 文書管理装置
JP2007128519A (ja) 技術マニュアルの生成方法および生成システム
JP2007179347A (ja) プログラム検証支援システム
JPH06139061A (ja) プログラム仕様書逆生成方法
JP2001256043A (ja) プログラムソースの修正履歴管理方法および修正履歴管理システム
JP5198149B2 (ja) 情報処理装置、プログラム、及び保険商品約款生成方法
JP3660423B2 (ja) 関連除籍一括検索方法及びシステム
JP4085599B2 (ja) 帳票出力システム
JP5169505B2 (ja) 文書合成システム及びプログラム
KR100709379B1 (ko) 메타파일을 이용한 문서양식 제작방법
JP2000076358A (ja) 再出力機能付き帳票出力管理システム及び方法
JP4737659B2 (ja) 表組データベースシステムおよび表組データ作成装置
JP2692196B2 (ja) テストデータ編集方式
JPH07152548A (ja) 文書作成装置
JP3684257B2 (ja) 戸籍記載文作成装置
JP2000330844A (ja) データ記録方法および装置
JPH01277932A (ja) データベース再編成方法
JP2006325037A (ja) ファイル作成装置及びファイル作成プログラム
JP2005084976A (ja) 商品情報登録/更新システム
JPH0713752A (ja) プログラムのリビジョン管理方法とその装置
JPH09223000A (ja) ドキュメント統合管理方法及び装置
JPH0573282A (ja) プログラム生成方式
JPH05150963A (ja) プログラム仕様書作成方式
JPS61170863A (ja) 操作説明書自動生成方式