フレーム表現とマクロ処理系によるプログラム合成法
スポンサーリンク
概要
- 論文の詳細を見る
自動プログラミングの一手法として、プログラムの設計過程を記述してその記述の解釈系を通してプログラムを生成するという方法がある。適用分野を限定すれば、このような方法はある許容巾で要求仕様の変更を吸収できる。従来、設計過程におけるノウハウは明示されることがまれであった。モジュール仕様書等の設計書には、ノウハウ自身よりはそのノウハウによる成果が記載されていることが多い。そこで今回、プログラムを作成する際、プログラムライブラリ等に代表される既存のプログラムをどのように利用するかというプログラム設計過程を記述するマクロ命令とその解釈系を作り考察した。(図1)対象分野としては、データベース操作関数を用いて、ある要求仕様に基づいた印字形式でレポートをプリンタに出力するプログラム(C言語)を選んだ。要求仕様の入力はビットマップディスプレイ上にレポート用紙イメージそのままの形でフィールド位置や固定文字を指定してすることにした。このように入力された要求仕様は、データベースのスキーマと共に、フレームで表現することとした。これによって、プログラム設計過程をフレームのスロットの参照/判定を行なうマクロ命令で記述できた。マクロ命令の基本要素は、フレームのスロット値から別のフレームへの手繰り、フレームのスロット値のプログラムへの埋め込み、フレームのスロットの値に対する判定条件の真偽に対応したプログラムの生成、これらによって記述されたプログラム生成手順のモジュール化(テンプレートと呼ぶ)とその呼び出し等から成る。このマクロ命令を使ってプログラム設計過程を記述したところ、データベース操作手続き又はその他ライブラリ関数の呼び出し順序に関する規則とプログラムの実現との関わり方が確認された。即ち、データベース操作関数やライブラリ関数の中から要求仕様の断片を実現するものを選び、それらを要求仕様を満足する順に並べ、後は呼び出し順序規則に添って必要な関数を重複なく埋め込んでいくという設計過程が記述できた。
- 1988-09-12