JPS62145423A - プログラム仕様書自動生成方法 - Google Patents

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

Info

Publication number
JPS62145423A
JPS62145423A JP28838085A JP28838085A JPS62145423A JP S62145423 A JPS62145423 A JP S62145423A JP 28838085 A JP28838085 A JP 28838085A JP 28838085 A JP28838085 A JP 28838085A JP S62145423 A JPS62145423 A JP S62145423A
Authority
JP
Japan
Prior art keywords
data
source program
program
variable table
diagram
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
JP28838085A
Other languages
English (en)
Inventor
Nobuo Kimura
木邑 信夫
Yukio Asada
浅田 幸夫
Akira Fuki
布木 明
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.)
Kobe Steel Ltd
Original Assignee
Kobe Steel 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 Kobe Steel Ltd filed Critical Kobe Steel Ltd
Priority to JP28838085A priority Critical patent/JPS62145423A/ja
Publication of JPS62145423A publication Critical patent/JPS62145423A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (産業上の利用分野) この発明は、記憶装置入力装置および出力装置が接続さ
れた計算機を用いて、完成したソースプログラムからそ
のソースプログラムの仕様書を自動的に作成する方法に
関する。
(従来の技術とその問題点) こうした仕様書自動生成方法に密接に関連ある従来技術
として、この方法とは逆に、仕様書からソースプログラ
ムを自動的に生成する方法が存在し、この技術は例えば
、特開昭60−159939号公報において、図式・ソ
ースプログラム自動生成方法として開示されている。こ
の方法ではまず、対話用表示端末によりモジュール関連
図(各プログラムモジュール間の接続関係を表わす図式
)を作り、更に、各モジュールについて、処理フロー図
(一種の処理フローチャート)と、内部データ定義図(
各処理において使用されるデータの形式等を指定する図
式)と、インタフェイスデータ定義図(引数やモジュー
ル間共通データなどの形式等を指定する図式)とを作成
して、それらの内容をファイルに蓄積する。そして、各
モジュールごとに、モジュール関連図、処理フロー図、
内部データ定義図及びインタフェイスデータ定義図の各
図式情報をファイルから読出し、定型の文や記号を付加
して、ソースプログラムの個々の文を生成し、それから
、これらの文を言語の規則に従って編集して、ソースプ
ログラムを完成している。
ところが上記方法では、モジュール関連図、処理フロー
図、内部データ定義図、インターフェイス定義図の4種
類の図の作成が必要であり、1本のプログラム作成にお
いて入力時間がかかるとともに、仕様書の管理が複雑で
ある。さらに、プログラムの生成においてもソースプロ
グラムの生成とその編集の2段階に分かれていて、生成
過程を複雑にしており、またその生成処理にも時間がか
かる。
ソースプログラムを自動生成する場合まず、人間がプロ
グラムの仕様を入力する必要があるが、この入力方式が
複雑であればプログラムの自動生成までにかなりの時間
がかかり、またその使用にもある程度の熟練を必要とす
るので、結果として自動化によるソースプログラム作成
作業の効率改善の効果が薄れる傾向にある。
そこで、このような問題点を解消すべく、プログラム仕
様の入力が簡単でかつソースプログラムの生成処理が比
較的短時間で済むソースプログラム自動生成方法が本発
明と同一の発明者により既に完成されており、このソー
スプログラム自動生成方法は、本願と同一の出願人によ
り本願と同日付で゛″ソースプログラム自動生成方法“
の名称で特許出願されている。
ところで一般的にコンピュータプログラムは、作成され
た後に何らかの事情(例えばバグの存在やシステムの改
造など)により部分的に修正、変更されるのが常である
。そして多くの場合、ソースプログラム自体を修正・変
更してしまうため、この時点で仕様書とソースプログラ
ムとの対応関係が廟れ去り、これが度量なるとやがて、
最初に作成した仕様書が何の意味も持たなくなる。この
ような状態でシステム改造等のメンテナンスを行なおう
としたとき、その作業はソースプログラムの解読から始
めなければならず、作業性が著しく悪くなる。
このような問題を解決して、仕様とプログラムとの一体
化を図る技術の一例が文献[日立評論VOL 66. 
k6 (1984−6) 、 プロクラム自1j生成シ
ステム“SDL/PAD”Jに開示されており、そこで
は上記特開昭60−159939号公報の図式・ソース
プログラム自動生成方法に加えて、その逆の、完成した
ソースプログラムからモジュール階層図、モジュール入
出力図、モジュール処理概要図、モジュール処理詳細・
内部データ関連図を自動生成するシステムの概略が説明
されている。すなわちこのシステムによれば、ソースプ
ログラムを修正・変更したときには併せて、修正・変更
後のソースプログラムに対応する仕様書を自動生成して
、仕様とプログラムとの対応関係を常に維持するのであ
る。ところがこのシステムでは、上記”図式・ソースプ
ログラム自動生成方法″と同様に4種類の図式が必要で
あり、仕様書の種類が多くて複雑である上、ソースプロ
グラムの改造時には4種類の図式を参照しなければなら
ず頻雑である。このため、プログラムのメンテナンスに
要する時間や労力等の節減に関し、ある程度以上の効果
を期待することはできない。
(発明の目的) この発明の目的は、上記従来技術の問題点に鑑み、プロ
グラムのメンテナンスを一層容易にしたプログラム仕様
書自動生成方法を提供することであり、かつ同・時に、
本願と同日付出願の上記゛ソースプログラム自動生成方
法°′と相互利用を図ることが可能なプログラム仕様書
自動生成方法を提供することである。
(目的を達成するための手段) 上記目的を達成するため、この発明ではまず、完成した
ソースプログラムを記憶装置に格納しておき、続いてこ
のソースプログラムを記憶装置から取り出して、それを
当該ソースプログラムが書かれているプログラミング言
語の規則に従って解析することにより、当該ソースプロ
グラムのデータを、当該ソースプログラムの仕様を表わ
す処理図式のデータと変数テーブルのデータとに変換す
る。処理図式は予めその形状の意味が定義された図形の
結合関係および当該図形内の記述文字により処理の理論
的な流れを表わすものであって、処理図式データは少な
くとも前記図形形状のデータと前記図形内記述文字のデ
ータと前記結合関係のデータとを含んでいる。また変数
テーブルは、ソースプログラムにおいて使用されている
変数の種類と型を定義するためのものであって、変数テ
ーブルデータは少なくとも前記変数の種類のデータと型
のデータとを含んでいる。そして最後に、上記処理図式
データおよび変数テーブルデータを用いて、処理図式お
よび変数テーブルの例えばハードコピーを出力装置から
出力する。
(実施例) 第1図は、この発明に関連あるソースプログラム自動生
成方法(上述したように本願と同日付で出願流)および
この発明によるプログラム仕1!書自動生成方法を実施
するためのシステム構成の一例を示すプロツク図である
。ソースプログラムの自動生成およびプログラム仕様書
の自動生成に必要な一連のデータ処理は、コンピュータ
1において所定の処理手順に従って実行される。オペレ
ータは対話用表示端末2を介してコンピュータ1と対話
形式で交信(データの入出力)ができる他、タブレット
3を用いて所要データをコンピュータ1に入力すること
ができるようになっている。端末2およびタブレット3
から入力されたデータのうちプログラムの仕様および変
数テーブルに圓するデータ、ならびに自動生成されたソ
ースプログラムは、コンピュータ1に接続された外部ハ
ードディスク装置4に記憶されて蓄積される。またオペ
レータが必要に応じて、作成されたソースプログラムや
仕+!門などのハードコピーを出力できるように、プリ
ンタ5およびプロッタ6の出力装置がコンピュータ1に
接続されている。
まずはじめに、この発明に対する理解を容易にするため
、この発明に関連ある上記ソースプログラム自動生成方
法について詳細に説明する。
ソースプログラムの自動生成処理は、第2図のフローチ
ャートに示す管理プログラムの管理の下で、予め準備さ
れたPADエディタ7、変数テーブルエディタ8.およ
びCプログラムジェネレータ9の3種類のプログラムに
従って実行される。
この管理プログラムがロードされたとき(Sl)、端末
2のCRTディスプレー画面上には、第3図に示す如き
初期画面10が表示される。すなわちツール選択の指示
メツセージとともに、メニュー、(1)PADエディタ
、(2)変数テーブルエディタ。
(3)Cプログラムジェネレータ、(4)エンドが表示
され、オペレータは端末2のキーボードからコマンドを
入力して、必要なツールを選択する(82.83)。
PADエディタ7における処理では、オペレータは端末
2およびタブレット3を用いて処理図式データをコンパ
イル単位ごとに識別名をつけて入力し、このデータはハ
ードディスク装置4に記憶されて蓄積される。また上記
変数テーブルエディタ8における処理では、オペレータ
は端末2およびタブレット3を用いて上記処理図式中で
使用する変数の種類と型を定義する変数テーブルのデー
タをコンパイル単位ごとにその処理図式と同一識別名を
つけて入力し、このデータは上記処理図式データと同様
にハードディスク装置4に記憶されて蓄積される。そし
て上記Cプログラムジェネレータ9の選択時には、オペ
レータは端末2から所望の識別名を入力し、これに応答
してハードディスフ装置4から当該識別名の処理図式デ
ータおよび変数テーブルデータが呼出されて、この2つ
のファイルを用いてソースプログラムが生成される。
第4図は、上記PADエディタ7における処理を詳細に
示すフローチャートである。第3図の初期画面10で(
1)PADエディタを選択すると、システムは開始手続
(S4)としてモジュール名を質問してくる。ここでモ
ジュール名というのは、これから作成すべきソースプロ
グラムの名称であって、コンパイル単位を1つのモジュ
ールとして扱う。このとき例えば、モジュール名として
、“@ 5ettable”を端末2から入力すると、
第6図に示す如き表示が端末2のCRTディスプレー上
に出る。既に°’ @ 5ettable”のファイル
がハードディスク装置4内に格納されているときには、
後述する’ I o d ”コマンドの機能が自動的に
働きそのファイルがロードされる(S5)。
これ以後、オペレータはコンピュータ1との対話方式に
より、” @ 5ettable”の処理図式を作成な
いし修正する。ここで処理図式というのは、予めその形
状の意味が定義された図形の結合関係および当該図形内
の記述文字により処理の理論的な流れを表わすことがで
きるものであればよく、例えば公知のPADをこの実施
例では使用している。
PADは、3種類のブロックの接続により処理の流れを
表現するもので、単純矩形のブロックはシーケンシャル
な処理を表わし、矩形の右端に切込みのあるブロックは
選択条件によって右上又は右下の角に接続されたブロッ
クの処理を行なうことを表わし、矩形の右端部に縦線が
入ったブロックは右横に接続されたブロックの処理の反
覆遂行を表わす。例えば第17図(A)のPADによる
処理図式の2番〜9番のブロックでは、rz=x*y」
という処理を行なった後にrZ>○」の条件が満足され
るならば、5番、6番の処理をn回繰り返し、rZ>O
Jの条件が満足されなければ、8番、9番の処理をrZ
<OJの間反覆遂行することを表わしている。
処理図式の作成ないし修正は、端末2およびタブレット
3を用いて行なう。端末2のCRTディスプレーの画面
左端には第5図に示す如きメニューが表示されており、
オペレータはタブレット3の盤面上にスタイラスペンを
走らせてCRT画面上のカーソルを移動させ、スタイラ
スペンの押圧によりカーソル位置のメニューを選択する
ようになっている(、S6.S7)。コマンドには例え
ば、上述した“lod”(データのロード)の他、“a
dd”(図式の追加)、“chg”(図式中の文の変更
)、“del”(図式の削除)、“end” (終了)
、“out″ (プロッタ出力)、”ren”(リナン
バー)、”SaV” (データの保存) 、”wnd”
 (ウィンド(画面表示領域)の変更)があり、これら
を適宜選択しながら処理88〜815を逐次実行する。
“bs”はバックスペースで、カーソルを1スペース戻
してそこの文字等を削除するものであり、r e t 
”はリターンを表わす。またPADの上記3種類のブロ
ックがメニュー11,12.13として準備されており
、さらに長文を別の場所で定義するためのディファイン
(Oefine)ブロック14がその下に準備されてい
る。メニュー15.16はそれぞれ、処理図式のスター
ト、エンドマークを表示させるためのものである。
端末2のCRT画面上に第6図の表示が出ているとき、
第5図のメニューにより’ a d d ”を選び、追
加場所の点17を力iツルにより選び、続いてメニュー
15を選択すると、CRT画面上の表示は第7図のよう
になる。次にメニューの°add″を選び、追加点とし
てスタートマークの下の点18を選び、メニュー11の
PAD図式を選び、処理の内容” z = x * y
 ”を端末2のキーボードから打ち込む。すると、CR
T画面上の表示は第8図にようになる。このようにして
、追加の場合は“add″を選び、追加したい点゛・″
を選び、追加したいPAD図式を選び、次に、その中に
入れる内容をキーボードで打ち込む、という操作を繰り
返して、処理の理論的な流れを図式に変換していく。処
理の図式化を終了すると@俊は” a d d ”を選
び、処理の流れのR後の点19(第17図(A)参照)
を選び、メニュー16を選んでエンドマークをつける。
以上の操作により、第17図(A>に示すような完成し
たPAD図を作成する。
このようにして作成したPAD図式は一旦、メニュー“
’ s a v ”を選択してハードディスク装置4に
保存しておく。このとき、このPAD図式のデータとし
て、少なくともモジュール名を表わすデータ(“モジュ
ール名、 data”のファイル名で保存、例えば上の
例であれば’ @ 5Ottable、data”)、
図形形状を表わすデータ、図形内記述文字を表わすデー
タおよび、図形間の結合関係を表わすデータが保存され
る。そしてメニュー“end″を選択して、処理S15
を経てPADエディタ7を終了する。このとき端末2の
CR7画面は、第3図の初期画面10に戻る。
第9図は、変数テーブルエディタ8における処理を詳細
に示すフローチャートである。第3図の初期画面10で
(2)変数テーブルエディタを選択すると、システムは
開始手続(816)としてモジュール名を質問して(る
ので、対応のPAD図式と同一のモジュール名を入力す
る。例えば上述のPAD図式で使用する変数の種類と型
とを定義する変数テーブルを作成するのであれば、“@
5ettable”を入力する。入力した名前の変数テ
ーブルが既にハードディスク装置4内にあれば、そのフ
ァイルがロードされ(817)、なければ新しいファイ
ルが作成される。新しいファイルを作成する場合には、
第10図に示すような表示が端末2のCR7画面上に出
る。また、このCRT上に表示されたメツセージ(a(
変数の追加)、C(変数の変更)、d(変数の削除)、
e(終了)。
k(プリンタ出力)、!(変数テーブルのロード)、S
(変数テーブルの保存))に従ってキーボードによりメ
ニューを適宜選択して(818,519)、変数の追加
(S20>、変数の削除(S21)、変数の変更(82
2)、変数テーブルのプリンタ出力(823)、変数テ
ーブルの保存(S24)、変数テーブルのロード(82
5)および終了手続(826)を逐次実行する。
テーブルを作成する場合には、まずCR7画面上のメニ
ューで“a”を選ぶ。するとシステムは例えば、第3図
と類似のメニュー表示により、変数の種類が(1) g
lobal (グローバル変数)か、(2) exte
rnal (外部変数)か、(3) 1nternal
 (内部変数)かを質問してくる。そこで端末2のキー
ボードにより(1)を選ぶとシステムは、同様のメニュ
ー表示により変数の型がm 1nter)Or  (整
数型)か、(2)float (実数型)か、(3) 
character (文字型)かを質問してくる。こ
こで(3)を選び、キーボードから“str [200
1”と打ち込むと、CR7画面上の表示は第11図に示
すようになる。
次にメニューの“a”を選び、(2) externa
lを選び、ざらに(1) integerを選んで“n
”、(2) floatを選んで“x、y”をそれぞれ
キーボードから打ち込む。すると、CR7画面上の表示
は第12図に示すようになる。このようにして、追加の
場合はa”を選び、追加したい変数の種類と型を選び、
次に、追加する変数をキーボードから打ち込むという操
作を繰り返して、変数テーブルを作成していく。そして
、第17図(B)に示すような完全な変数テーブルを完
成する。
このようにして作成した変数テーブルのデータは一日、
メニュー“S”を選択してハードディスク装ff4に保
存しておく。このときのファイル名は、“モジュール名
、 war”(上の例であれば“@ 5ettable
、var”)として保存する。そしてメニュー“e″を
選択して、処理826を経て変数テーブルエディタ8を
終了する。このとき、端末2のCR7画面は、第3図の
初期画面に戻る。
以上のように、プログラムの仕様1(PAD図式および
変数テーブル)を作成し、これらのデータをハードディ
スク装置4に蓄積した後、Cプログラムジェネレータ9
に従ってソースプログラムを自動生成する。なお以下に
は、C言語によるプログラミングの例について述べてい
るが、FORTRAN等の他の言語についても同様に適
用することが可能である。
第13図は、Cプログラムジェネレータ9における処理
を詳細に示すフローチャートである。第3図の初期画面
10で(3)Cプログラムジエネレ−タを選ぶと、シス
テムは開始手続(827)としてモジュール名を質問し
てくる。そこでソースプログラムを生成したい所望のモ
ジュール名を入力すると、システムは自動的に同一モジ
ュール名のPAD図式のファイルと変数テーブルのファ
イルとをハードディスク装置4から呼出して、これらを
ロードする(828.829>。このとき、端末2のC
RT画面上には第14図の表示が出る。
下線部分がオペレータの入力部分、伯はシステムのメツ
セージである。以後の処理により自動生成されるソース
プログラムは“モジュール名、C″のファイル名で保存
されるが、同一ファイル名が既にあれば、そのファイル
名は自動的に“ファイル名、bkp”と変更される。第
14図のback upメツセージは、その表示のため
のものである。
続いて、端末2のCRT画面上に生成開始のメツセージ
(GENERATE 5TART)が表示され(830
)、C言語によるソースプログラムの生成処理が行なわ
れる(831)。このときCRT画面上には、生成され
たソースプログラムが逐次表示される。
そして、ソースプログラムの生成が終了すると、CRT
画面上には生成終了のメツセージ(CoHPLE丁E)
が表示され、また生成されたソースプログラムは゛モジ
ュール名、C″のファイル名でハードディスク装置4に
保存されて、Cプログラムジェネレータ9による処理を
終了する(832)。このとき端末2のCR7画面は、
第3図の初期画面に戻る。
Cプログラム生成処理831では、第15図に示すよう
に、PAD図式データの図形間の結合関係を表わすデー
タの接続順序に従って図形ごとに逐一、その図形形状デ
ータおよび図形的記述文字のデータをソースプログラム
データに変換することにより(S33)、C言語による
ソースプログラムを生成していく。この処理は、すべて
のPAD図式データに対する変換操作が終了するまで繰
り返し行なわれる(834)。またこのとき、C言語に
よるソースプログラムの所定の変数宣言位置および変数
の型を指定する位置では、変数テーブル内の該当変数の
データを参照してこれをソースプログラムデータに変換
し、上記生成されるソースプログラムデータに挿入して
おく。
第16図は、上述のようにして作成したモジュール名“
@5ettable”のPAD図式と変数テーブルとか
らC言語のソースプログラムを生成する場合の、Cプロ
グラム生成処理831の具体例を詳細に示すフローチャ
ートである。このとき、第17図に示すように、(A)
のPAD図式と(B)の変数テーブルとから、(C)の
ソースプログラムが生成される。処理835,837,
839では、変数テーブルのデータをソースプログラム
のデータに変換し、その他の処理836.838゜34
0〜852ではPAD図式のデータを図形ごとに解析し
てソースプログラムのデータに変換し、必要に応じて変
数テーブルも参照している。このようなアルゴリズムに
より、完全なC言語ソースプログラムが自動生成される
以上のようにして、この発明に関連あるソースプログラ
ム自動生成方法によれば、処理したい内容のPAD図式
とそこで使用する変数のテーブルを作成するだけで、非
常に簡単にソースプログラムを自動生成することができ
る。ところがこの様にして生成したソースプログラムを
、例えばバグの存在やシステム改造などのため修正・変
更した場合には、プログラム仕様!(PAD図式および
変数テーブル)とソースプログラムとの間の対応関係が
損われる。これを効果的に回避するために、この発明に
よるプログラム仕様書自動生成方法が意義を有し、そこ
では修正・変更後のソースプログラムからPAD図式お
よび変数テーブルを自動生成して、PAD図式および変
数テーブルとソースプログラムとの間の対応関係を常に
維持するようにしている。またこれに限らず、完成した
ソースプログラムが存在し、このソースプログラムに対
応した仕様書が欲しいとき全般に、この発明は有効であ
る。
第18図は、この発明によるプログラム仕様書自動生成
方法を第1図の装置により実施するときの処理手順を詳
細に示すフローチャートである。
この処理は例えば、上述したPADエディタ7゜変数テ
ーブルエディタ8.Cプログラムジェネレータ9と同様
のツールとして予め準備されたプログラム゛PAD図式
ジェネレータ″に従って実行される。オペレータはソー
スプログラムの自動生成の場合と同様、端末2を用いた
コンピュータ1との対話型式により処理を進める。
PAD図式ジェネレータを実行したとき、システムは開
始手続(853)として、仕様書を作成すべきソースプ
ログラムのファイル名を質問してくる。例えば上記自動
生成したソースプログラム” @ 5ettable、
 C”をその後一部変更シ、変更後ノものがハードディ
スク装置4に格納されている場合において対応の仕様書
が欲しいときには、オペレータは“@ 5ettabl
e”を端末2のキーボードから入力する。これによりシ
ステムは、該当のC言語によるソースプログラムのデー
タをハードディスク装置4から取り出してロードする(
354)。
なおこの発明が、C言語以外のプログラミング言語につ
いても適用可能なことは、上述のソースプログラム自動
生成の場合と同様である。なお以後の処理により自動生
成されるPAD図式および変数テーブルはそれぞれ、”
 @ 5ettable、data ”および“” @
5ettable、 Var”のファイル名で保存され
るが、同一ファイル名が既にあるときには、そのファイ
ル名を変更するか(例えば前述のソースプログラムのフ
ァイル名のように“°ファイル名、bkp″と自動変更
してもよい)、またはそのファイルを消去してもよいと
いう判断を予めシステムに与えておく。システムはこれ
に従って旧ファイル名を変更し、または消去する。
続いて、端末2のCRT画面上に生成開始のメツセージ
(GE肝RATE 5TART)が表示され(855)
、PAD図式と変数テーブルの生成処理が行なわれる(
856)。この処理S56においては、上記処理S54
でロードしたソースプログラムが書かれているプログラ
ミング言語(この場合はC言語)の規則に従って当該ソ
ースプログラムを1行ずつ解析することにより、当該ソ
ースプログラムのデータを、当該ソースプログラムの仕
様を表わす処理図式(この場合はPAD)のデータと変
数テーブルのデータとに逐一変換していく。処理図式は
前述したように、その形状の意味が定義された図形の結
合関係および当該図形内の記述文字により処理の理論的
な流れを表わすものであって、したがって上記変換後の
処理図式データには少なくとも、上記図形形状を表わす
データと、上記図形内記述文字を表わすデータと、上記
結合関係を表わすデータとが含まれている。また変数テ
ーブルは前述したように、ソースプログラムにおいて使
用されている変数の種類と型を定義するものであって、
したがって上記変換後の変数テーブルデータには少なく
とも、上記変数の種類を表わすデータおよび型を表わす
データが含まれている。
変数テーブルの生成が完了したときには、端末2のCR
T画面上には“5AVINGモジユ一ル名、var!!
”が表示され、PAD図式の生成が完了したときには“
’ 5AVINGモジユ一ル名、data !ビ′が表
示される。例えば上述の例であればそれぞれ、SAV 
ING@ 5ettable、var!!”みよび’ 
5AVING@ 5ettable、data =′が
表示されることになる。これらの表示と同時にシステム
は、生成した変数テーブルないしPAD図式のファイル
を順次ハードディスク装置4に保存し、すべての生成(
すなわち処理S54でロードしたCプログラム文のすべ
ての行の解析およびデータ変換)が終了したときには生
成終了のメツセージ(COMPLETE )を端末2の
CRT画面上に表示して、PAD図式ジェネレータによ
る処理を終了する(357)。
PAD図式、変数テーブル生成処理S56では、第19
図に示すように、C言語の規則に従ってCプログラム文
を1行ずつ解析し、そのプログラムデータが変数の定義
を表わすデータであれば当該プログラムデータを対応の
変数テーブルデータに変換し、処理の内容を表わすデー
タであれば当該プログラムデータを対応のPAD図式デ
ータに変換することにより(858)、PAD図式およ
び変数テーブルを生成していく。この処理358は、す
べてのCプログラムデータに対する変換が終了するまで
繰り返し行なわれる(859)。
第20図は、PAD図式、変数テーブル生成処理S56
の具体例を示すフローチャートである。
ここでは、第21図(A)のソースプログラムからそれ
ぞれ、(B)のPAD図式および(C)の変数テーブル
を生成している。この第21図(A)のソースプログラ
ムは、上述のソースプログラム自動生成処理により作成
した第17図(C)のソースプログラム()?イル名“
@5ettable、c” )を一部変更したものであ
り、今回、変更後のソースプログラムに対応するPAD
図式と変数テーブルとを自動生成しようというものであ
る。処理S60.862.S64では変数を宣言するプ
ログラム文のデータを変数テーブルのデータに変換して
おり、その他の処理861,863.865〜878で
は処理の内容を表わすプログラム文のデータをPAD図
式のデータに変換している。このようなアルゴリズムに
より、完成したソースプログラムからその仕様を表わす
仕様i1 (PAD図式および変数テーブル)が自動生
成される。オペレータはその後、自動生成した仕様書を
必要に応じてプリンタ5およびプロッタ6からハードコ
ピーとして出力することができ、これにより、ソースプ
ログラムと仕様書との対応関係を常に維持しながら、容
易にプログラムの改良を行なうことが可能となる。
なお、上述の説明においては、処理図式として公知のP
AD、およびソースプログラムの8RとしてC言語を用
いた実施例につき詳述したが、この発明は他の処理図式
およびプログラミング言語にも同様に適用し得るもので
あり、この場合にも上述の実施例と同様の効果を奏する
。また、自動生成システムを用いないで作成されたソー
スプログラムからこの発明を利用してその仕様書を自動
生成することも可能であり、この場合にもプログラムの
改造が容易になるという上記実施例と同様の効果が得ら
れる。
(発明の効果) 以上説明したように、この発明によれば、完成したソー
スプログラムからその仕様書として処理の内容を表わす
図式とそこで使用する変数のテーブルを自動生成するよ
うにしているので、処理図式と変数テーブルだけを見直
すことによりプログラムを容易に°改造することができ
、これまでメンテナンスにかけていた時間と労力の大幅
な削減を図ることが可能となる。
【図面の簡単な説明】
第1図はこの発明を実施するためのシステム構成の一例
を示すブロック図、第2図はソースプログラム自動生成
処理の全体の概略を示すフローチャート、第3図、第5
図、第6図、第7図、第8図、第10図、第11図、第
12図、第14図は画面表示の説明図、第4図はPAD
エディタにおける処理のフローチャート、第9図は変数
テーブルエディタにおける処理のフローチャート、第1
3図、第15図、第16図はCプログラムジェネレータ
における処理のフローチャート、第17図はPAD図式
、変数テーブル、およびこれらから生成されるC言語ソ
ースプログラムの一例を示す説明図、第18図、第19
図、第20図はこの発明によるプログラム仕様書自動生
成処理の一実施例を示すフローチャート、第21図はC
言語ソースプログラムおよびこれから生成されるPAD
図式、変数テーブルの一例を示す説明図である。

Claims (1)

    【特許請求の範囲】
  1. (1)記憶装置、入力装置および出力装置が接続された
    計算機を用いてプログラム仕様書を自動生成する方法で
    あって、 前記記憶装置に完成したソースプログラムを格納するス
    テップと、 前記記憶装置から前記ソースプログラムを取り出し、そ
    れを当該ソースプログラムが書かれているプログラミン
    グ言語の規則に従って解析することにより、当該ソース
    プログラムのデータを、当該ソースプログラムの仕様を
    表わす処理図式のデータと変数テーブルのデータとに変
    換するステップとを備え、 前記処理図式は予めその形状の意味が定義された図形の
    結合関係および当該図形内の記述文字により処理の理論
    的な流れを表わすものであって、前記処理図式データは
    少なくとも前記図形形状のデータと前記図形内記述文字
    のデータと前記結合関係のデータとを含み、 前記変数テーブルは前記ソースプログラムにおいて使用
    されている変数の種類と型を定義するためのものであっ
    て、前記変数テーブルデータは少なくとも前記変数の種
    類のデータと型のデータとを含み、 前記処理図式データおよび変数テーブルデータを用いて
    前記出力装置から前記処理図式および変数テーブルを出
    力するステップをさらに備える、プログラム仕様書自動
    生成方法。
JP28838085A 1985-12-20 1985-12-20 プログラム仕様書自動生成方法 Pending JPS62145423A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28838085A JPS62145423A (ja) 1985-12-20 1985-12-20 プログラム仕様書自動生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28838085A JPS62145423A (ja) 1985-12-20 1985-12-20 プログラム仕様書自動生成方法

Publications (1)

Publication Number Publication Date
JPS62145423A true JPS62145423A (ja) 1987-06-29

Family

ID=17729450

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28838085A Pending JPS62145423A (ja) 1985-12-20 1985-12-20 プログラム仕様書自動生成方法

Country Status (1)

Country Link
JP (1) JPS62145423A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02227728A (ja) * 1989-02-28 1990-09-10 Nec Corp プログラム流れ図およびテーブル設計書生成装置
JPH0991125A (ja) * 1995-09-27 1997-04-04 Nec Corp 構造化記号入力方式

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02227728A (ja) * 1989-02-28 1990-09-10 Nec Corp プログラム流れ図およびテーブル設計書生成装置
JPH0991125A (ja) * 1995-09-27 1997-04-04 Nec Corp 構造化記号入力方式

Similar Documents

Publication Publication Date Title
US4956773A (en) System and method of generating a source program from inputted schematic information
US4730315A (en) Diagrammatic method of testing program
JPH0458052B2 (ja)
CN110781625A (zh) 一种基于abaqus软件的参数化建模仿真分析方法
JPS62145423A (ja) プログラム仕様書自動生成方法
JPS62145424A (ja) プログラム管理方法
JPS62145422A (ja) ソ−スプログラム自動生成方法
JP2946715B2 (ja) プログラム生成方法およびそのための仕様入力方法
JPS6315322A (ja) コマンド履歴取得再利用方式
JPH04294424A (ja) コンピュータシステムの対話的画面制御装置
JP2001134423A (ja) 対話型既存システムを利用する新システムの画面情報出力方法
JPH10269068A (ja) グラフィカルなドキュメントを自動生成するソフトウェア開発の方法
JPS6033640A (ja) デ−タ・モニタ方式
JPH0365759A (ja) 表の編集処理方式
JPH02100129A (ja) 設計仕様処理方法
JPH0895761A (ja) プログラム生産支援装置
JPH04184627A (ja) プログラム合成システムのインタフェース方法
JPH05143306A (ja) 計装シーケンス制御プログラムの作成方法
JPH04267482A (ja) フローチャート編集方式
JPH06309159A (ja) プログラム自動生成装置
JPH03123939A (ja) 多言語混在計算機システム
JPH05265733A (ja) プログラム作成実行装置
JPH0756717A (ja) Jcl自動作成装置
JPS63220367A (ja) 木構造チヤ−ト作成装置
JPH04359381A (ja) ワークステーションの画面データ作成方式