JPH02253443A - プログラム生成方法 - Google Patents

プログラム生成方法

Info

Publication number
JPH02253443A
JPH02253443A JP1075768A JP7576889A JPH02253443A JP H02253443 A JPH02253443 A JP H02253443A JP 1075768 A JP1075768 A JP 1075768A JP 7576889 A JP7576889 A JP 7576889A JP H02253443 A JPH02253443 A JP H02253443A
Authority
JP
Japan
Prior art keywords
program
module
automatically
test
data
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
JP1075768A
Other languages
English (en)
Inventor
Yasutsugu Kon
今 尉次
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP1075768A priority Critical patent/JPH02253443A/ja
Publication of JPH02253443A publication Critical patent/JPH02253443A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

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

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) 本発明は、プログラムのテスト環境を自動的に提供し得
るプログラム生成方法に関し、特に設計ドキュメントか
らプログラムソースコード(ソースプログラム)を生成
するにあたり、各モジュール毎にテスト用の入力データ
を要求するプログラムコードとそのモジュールにおいて
実行した出力結果を印字させるプログラムコードとを自
動的に生成してソースプログラムに組み込めるようにし
たプログラム生成方法に関する。
(従来の技術) 従来、設計ドキュメント(設計書)に基づいたソフトウ
ェアの設計およびプログラムコーディング、さらに作成
したソースプログラムをテストする各工程は、人手によ
ってそれぞれ別個に行なわれていた。
近年、ソフトウェア生産の機械化、自動化の要求から、
上述の工程の一部を自動的に処理する試みがなされてい
る。これらの試みの中には、設計ドキュメントの作成と
、作成した設計ドキュメントに基づくプログラムソース
コードの生成とをリンクさせ、これらを自動的に処理で
きるようにしたものがある。しかし、このような自動化
によって生成されたプログラムコードも、生成したプロ
グラムのテスト工程を配慮したものではなかった。
従来は生成したプログラムをソースプログラム言語のレ
ベルでテストを行なうにあたり、各モジュール毎にテス
ト用の入力データを要求する入力実行文や、そのモジュ
ールにおいて実行した結果を出力する出力実行文を開発
担当者が必要に応じてソースプログラムの該当箇所に手
作業で組み込む前作業が必要であった。
(発明が解決しようとする課題) 上述したように従来は、ソースプログラムのテスト工程
に必要なテストデータ用の入出力実行文を、被テストプ
ログラム本体に手作業で組み込むようにしており、こう
した組込み作業はプログラム開発工程上、新たな工程の
追加につながり、経費的、時間的にも余分な負担を生じ
させるため、プログラムの生産効率を低下させていた。
このように手作業に依存しなければならない理由は、テ
スト工程で必要とされるテストデータが個々のプログラ
ム仕様に依存する度合が強いことによるものである。
本発明は、このような従来の課題を解決するために提案
されたものであり、設計ドキュメントに基づいてテスト
工程に必要なテストデータ用の入出力実行文を自動的に
生成してソースプログラム本体に組み込むことができる
プログラム生成方法を提供することを目的とする。
[発明の構成コ (課題を解決するための手段) 上記目的を達成するために本発明によるプログラム生成
方法は、設計ドキュメントに基づいてソースプログラム
をプログラムソースコードジェネレータを用いて自動生
成するにあたり、上記設計ドキュメントを解読してソー
スプログラム本体を自動的に生成する工程と、上記設計
ドキュメントをモジュール毎に解読して各モジュールで
使用されるデータの属性を自動的に解析する工程と、各
モジュールに入力されるテストデータを要求するプログ
ラムコードの入力実行文を上記属性の解析結果に基づい
て自動的に生成し、この入力実行文を上記ソースプログ
ラム本体における該当モジュールの実行部分先頭位置に
自動的に組み込む工程と、各モジュールから出力される
テスト出力データを印字させるプログラムコードの出力
実行文を上記属性の解析結果に基づいて自動的に生成し
、この出力実行文を上記ソースプログラム本体における
該当モジュールの実行部分末尾位置に自動的に組み込む
工程とからなる。
(作用) 上述した構成によれば、テストデータ用の入出力実行文
をソースプログラム本体における該当モジュールの必要
箇所に自動的に組み込むことができるので、ソースプロ
グラム本体のテストに際して、プログラムモジュールの
実行のたびにテスト用入力データの設定およびテスト結
果(出力データ)の印字を自動的に行なえる。
(実施例) 以下、本発明の実施例を図面に基づき詳細に説明する。
初めに、第1図の工程流れ図に基づいて、設計ドキュメ
ント(設計書)からプログラムソースコード(ソースプ
ログラム)を生成する過程と、生成されたソースプログ
ラムをテストする過程について説明する。
図において、まず設計ドキュメントの作成支援を行なう
設計書エディタ1を動作して、プログラム仕様2に基づ
き設計ドキュメント3をエディタ1上で作成する。この
設計ドキュメント3は、モジュール毎に作成され、個々
のモジュールにおいてそのモジュールが使用する各種変
数などのデータ類が明示される。また各データ項目につ
いては、第2図に示すようにデータの名称、型、サイズ
、入/出力のアクセス種別などの属性が示される。
さらに各モジュール毎の論理構造およびソースプログラ
ムの生成に必要な具体的な処理明細についても記述され
る。
プログラムソースコードジェネレータ4では、作成され
た上記設計ドキュメント3を判読・解析して、ライブラ
リや既存ソフト5を参照しながら、たとえばC言語など
のターゲット言語によるプログラムソースコード(ソー
スプログラム)6を自動生成する。このソースプログラ
ム6の生成の過程において、後述のテストデータ用の入
出力実行文(プログラムコード)が生成され、ソースプ
ログラム本体の必要箇所に自動的に組み込まれる。
一方、テストドキュメント(テスト仕様書)の作成支援
を行なうテスト仕様書エディタ7を動かして、設計ドキ
ュメント3を参照しながらテストドキュメント8をこの
エディタ7上で作成する。
ソースプログラム6のテスト実行結果(テスト評価デー
タ)を評価するテスト評価プログラム9は、このテスト
ドキュメント8を参照しながら動く。
つぎに、上記ソースプログラム6を実行させてテスト評
価データ10を得る。このテスト過程においては、ソー
スプログラム本体に自動的に組み込まれたテストデータ
用の入力実行文によって、初期値として何を入力すべき
かが画面上に指示されるので、この指示に基づいてテス
ト用の初期データを入力することができる。また実行結
果は、テストデータ用の出力実行文によって自動的に印
字される。このような操作は、ソースプログラム本体中
のモジュール毎に行なわれ、モジュールの実行のたびに
入力データの設定および出力データの印字を行なうこと
ができ、この結果、テスト評価データ10が生成される
続いて、テスト評価プログラム9によってテストドキュ
メント8に従いテスト評価データ10を評価し、出力さ
れた結果が正しいかどうかの評価を行なう。
この評価結果に基づいて、ソースプログラム本体の一部
に誤りがあると判断されると、ドキュメント逆生成プロ
グラム11を動かして設計ドキュメント3を逆生成する
。そして逆生成した設計ドキュメント3に修正を加え、
プログラムソースコードジェネレータ4を用いて再びソ
ースプログラム6を生成する。
その後、前述した同様なテスト過程を繰り返しながらソ
ースプログラム本体を誤りのない完全なものに仕上げる
ソースプログラム本体が完成したのちは、ソースプログ
ラム6からテストデータ用の上記入出力実行文を削除す
るために、この削除命令をジェネレータ4に与えて、出
荷用プログラムを生成する。
つぎに、ソースプログラム本体にテストデータ用の入出
力実行文を自動的に組み込む過程を第3図の動作流れ図
に基づいて説明する。なお、この処理は全てジェネレー
タ4上で行なわれる。
゛まず、ステップS1においてジェネレータ4は、設計
ドキュメント3をモジュール毎に解読する。
このとき、そのモジュールに与えるべき入力データおよ
びモジュール内部で使用する入出力データなどを全て拾
い出す操作が行なわれる。
つぎに、ステップS2において各モジュールで使用され
るデータの属性が解析される。この解析にあたっては、
第2図に例示したそのモジュールにおける使用データの
表記事項が参照される。
続いて、ステップS3において該当モジュールに対して
入力となる全てのデータにつき、その初期値の設定を要
求する入力実行文をプログラムコードの形で生成する。
続いて、ステップS4において上記入力実行文をソース
プログラム本体の該当モジュールにおける実行部分の先
頭位置に組み込む。
続いて、ステップS5において今度は該当モジュールか
らの出力となる全てのデータにつき、その出力データの
最終設定値を印字する出力実行文をプログラムコードの
形で生成する。
そして、ステップS6において上記出力実行文をソース
プログラム本体の該当モジュールにおける実行部分の末
尾位置に組み込む。
これらの一連の操作によってソースプログラム本体にテ
ストデータ用の入出力実行文が自動的に組み込まれたソ
ースプログラム6が生成される。
なお、テスト用の上記入出力実行文を生成するジェネレ
ータ4内の自動生成機能は、個々のデータの属性に基づ
き必要に応じて抑制でき、テスト目的に応じた最適なテ
スト環境作りを行なえる。
[発明の効果] 以上説明したように本発明によれば、プログラムのテス
ト作業に必要な入力データの設定およびテスト結果の印
字のための入出力実行文を、ソースプログラム本体にお
ける該当モジュールの必要箇所に自動的に組み込むこと
ができるので、プログラム開発者はテスト環境作りのた
めの特別な命令の組み込みについては全く意識する必要
がなくなった。
これにより、プログラムの設計・生産工程とテスト工程
とを時間的な遅れを生じさせることなく連続的に進捗さ
せることができる。
この結果、テスト工程前に従来は手作業で行なわれてき
たテスト環境作りのための前工程が不要となり、時間的
、経費的なロスを取り除けることから、飛躍的にプログ
ラムの生産効率を高めることができる。
【図面の簡単な説明】
第1図は本発明によるプログラム生成方法によってソー
スプログラムを生成する過程とそのプログラムをテスト
する過程の一実施例を示す工程流れ図、第2図は本発明
によるプログラム生成方法によってテストデータ用の入
出力実行文を生成してソースプログラム本体に組み込む
過程の一実施例を示す動作流れ図、第3図はソースプロ
グラムを生成する過程で参照される設計ドキュメント中
に記述されたモジュール毎の使用データの表記事項の一
例を示す図である。 1・・・設計書エディタ 2・・・プログラム仕様 3・・・設計ドキュメント 4・・・プログラムソースコードジェネレータ5・・・
ライブラリ・既存ソフト 6・・・プログラムソースコード 7・・・テスト仕様書エディタ 8・・・テストドキュメント 9・・・テスト評価プログラム 10・・・テスト評価データ

Claims (1)

    【特許請求の範囲】
  1. 設計ドキュメントに基づいてソースプログラムをプログ
    ラムソースコードジェネレータを用いて自動生成するプ
    ログラム生成方法において、上記設計ドキュメントを解
    読してソースプログラム本体を自動的に生成する工程と
    、上記設計ドキュメントをモジュール毎に解読して各モ
    ジュールで使用されるデータの属性を自動的に解析する
    工程と、各モジュールに入力するテストデータを要求す
    るプログラムコードの入力実行文を上記属性の解析結果
    に基づいて自動的に生成し、この入力実行文を上記ソー
    スプログラム本体における該当モジュールの実行部分先
    頭位置に自動的に組み込む工程と、各モジュールから出
    力されるテスト出力データを印字させるプログラムコー
    ドの出力実行文を上記属性の解析結果に基づいて自動的
    に生成し、この出力実行文を上記ソースプログラム本体
    における該当モジュールの実行部分末尾位置に自動的に
    組み込む工程とから構成されることを特徴とするプログ
    ラム生成方法。
JP1075768A 1989-03-28 1989-03-28 プログラム生成方法 Pending JPH02253443A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1075768A JPH02253443A (ja) 1989-03-28 1989-03-28 プログラム生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1075768A JPH02253443A (ja) 1989-03-28 1989-03-28 プログラム生成方法

Publications (1)

Publication Number Publication Date
JPH02253443A true JPH02253443A (ja) 1990-10-12

Family

ID=13585717

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1075768A Pending JPH02253443A (ja) 1989-03-28 1989-03-28 プログラム生成方法

Country Status (1)

Country Link
JP (1) JPH02253443A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0546377A (ja) * 1991-08-08 1993-02-26 Hitachi Ltd 制御プログラム作成方法及びその作成装置
JP2020027535A (ja) * 2018-08-16 2020-02-20 如如研創股▲分▼有限公司 設計仕様書に基づいたbomの作成方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0546377A (ja) * 1991-08-08 1993-02-26 Hitachi Ltd 制御プログラム作成方法及びその作成装置
JP2020027535A (ja) * 2018-08-16 2020-02-20 如如研創股▲分▼有限公司 設計仕様書に基づいたbomの作成方法

Similar Documents

Publication Publication Date Title
US4949253A (en) Method and apparatus for automatically generating program
JP4822817B2 (ja) コンパイルシステム
JP4057938B2 (ja) コンパイラ、コンパイル方法、及びプログラム開発ツール
JPH08202545A (ja) ターゲット言語コードを生成するためのオブジェクト指向システム及びその方法
US5838980A (en) Compilation and virtual machine arrangement and process for source code including pre-runtime executable language structure constructs
US5905894A (en) Meta-programming methods and apparatus
JPS6195458A (ja) 図式プログラム・テスト方法
US6055368A (en) Batch execution control programming device and method
US5949993A (en) Method for the generation of ISA simulators and assemblers from a machine description
US20150020051A1 (en) Method and apparatus for automated conversion of software applications
JPH02253443A (ja) プログラム生成方法
JPH10187461A (ja) 言語処理方式
JPH0667871A (ja) プログラム自動更新方式
JPH07160490A (ja) コーディング支援装置
JP3019874B2 (ja) プログラム生成/合成装置および方法
JP3031767B2 (ja) 自然言語処理装置
JPS6379176A (ja) デイスプレイ上の設計画面より入力した設計仕様から部品を組合せてプログラムを自動生成する方法
JPH02245934A (ja) データ処理装置
JPH05108372A (ja) コンパイラ最適化処理内容の出力方式
JPH0736685A (ja) 部品処理装置
JPS62166432A (ja) プログラム翻訳制御方式
Bird et al. A practical approach to software engineering by using an interaction handler and skeleton code generator
JPH07129384A (ja) 操作手順の自然言語形式ファイルへの変換システム
JPH06110750A (ja) 関係データベースをアクセス可能なアプリケーションプログラムのメイクファイルの自動生成方法
JPH0612259A (ja) コンパイラ処理方式