JPH05341972A - ソフトウエア開発装置 - Google Patents

ソフトウエア開発装置

Info

Publication number
JPH05341972A
JPH05341972A JP14762892A JP14762892A JPH05341972A JP H05341972 A JPH05341972 A JP H05341972A JP 14762892 A JP14762892 A JP 14762892A JP 14762892 A JP14762892 A JP 14762892A JP H05341972 A JPH05341972 A JP H05341972A
Authority
JP
Japan
Prior art keywords
user
variable
input
variable name
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.)
Withdrawn
Application number
JP14762892A
Other languages
English (en)
Inventor
Kei Ishii
圭 石井
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.)
Mitsubishi Heavy Industries Ltd
Original Assignee
Mitsubishi Heavy Industries 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 Mitsubishi Heavy Industries Ltd filed Critical Mitsubishi Heavy Industries Ltd
Priority to JP14762892A priority Critical patent/JPH05341972A/ja
Publication of JPH05341972A publication Critical patent/JPH05341972A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

(57)【要約】 【目的】 本発明は、ソフトウエア開発装置において、
問題向き言語の特徴である可視化の利点を損なうことな
く、所望する新しい機能要素をユーザ自身により比較的
容易に実現することを目的とする。 【構成】 テキストエディタ21において、ユーザによ
り演算の内容を記述できる特殊要素を用意し、エディタ
機能11を用いウインドウにて所望する演算機能要素の
入出力変数の型,パラメータ名とその型及び値、そして
そのそれぞれを用いた演算式を予め規定する文法で入力
させ、トランスレータ13においてユーザ記述要素用テ
ンプレート22に定義されたアルゴリズムに基づき、上
記演算式の変数名及びパラメータ名を他の標準的に用意
された要素と整合がとれる変数名に置換えた後、上記ユ
ーザ記述演算式を置換えられた変数名を用いた演算式に
書換え、例えばC言語に従った生成プログラム15とし
て出力する構成とする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、火力,化学,冷熱等、
各種プラント,産業機械等の制御プログラムを生成する
際に利用されるソフトウエア開発装置に関する。
【0002】
【従来の技術】図6は従来のソフトウエア開発装置の構
成を示すもので、一般に、マウス16及びキーボード1
7を入力デバイスとして備えると共に、表示装置として
CRT18を有する計算機19から構成される。
【0003】図7は上記従来のソフトウエア開発装置に
おけるプログラム生成装置の構成を示すもので、ユーザ
は、まず、エディタ機能11を用い、問題向き言語(一
般の数式や英語で順番に行なわれる一連の手続きを記述
するプログラム言語)で被制御プラントに対する制御機
能を表現する。
【0004】例えば、CRT18におけるメニューウイ
ンドウからマウス16により希望の図形要素を選択し、
エディットウインドウ上に配置し、各要素間を線分によ
り結んでいく。この場合、図形要素は演算機能を表わす
と共に、各図形要素間の結線はデータの流れを表わし、
ダイアグラムによる視覚的な表現が可能である。上記エ
ディタ機能11は、入力された図形要素とその結合関係
を含むデータ12を作成出力するもので、このデータ1
2はトランスレータ13に送られる。
【0005】トランスレータ13は、上記エディタ機能
11により得られたデータ12及びその各要素のテンプ
レート14を用いて制御プログラム15を生成するもの
で、この制御プログラム15は、例えばC言語のような
プログラミング言語の形で出力されるが、最終的には、
対象とする制御装置で実行可能な機械語プログラムにコ
ンパイルされる。上記テンプレート14は、各要素毎に
用意され、該要素の演算機能を実現するプログラムの生
成規則(アルゴリズム)を有している。
【0006】上記トランスレータ13は、上記データ1
2に含まれた図形要素を取出し、それに対応するテンプ
レート14のアルゴリズムを実行してプログラム生成の
可否を認識するもので、ここで生成されたプログラムは
制御プログラム15として出力され、また、生成可能段
階でない場合には、テンプレート14のアルゴリズムに
したがって結線関係が探索され、別の要素に対応するテ
ンプレート14のアルゴリズムが実行される。
【0007】このようにして、上記データ12で得られ
た全要素についてのテンプレート14のアルゴリズムが
実行完了されると、目的とする制御プログラム15が得
られるようになる。図8は問題向き言語を用いたプログ
ラム生成時のCRT表示状態を示す図である。
【0008】
【発明が解決しようとする課題】ここで、ユーザは、予
めメニューウインドウに用意されている図形要素に所望
の機能がない場合、既存の要素を組合せて実現する必要
がある。
【0009】しかしながら、上記所望の機能を得るため
の図形要素の組合せが複雑な場合、プログラム生成の可
視化を利点とする問題向き言語においても、機能表現の
見通しが悪化することになる。そこで、複雑な機能を一
つの要素として表現できることが望まれる。
【0010】また、所望する機能によっては、予め用意
されている図形要素を組合せても実現できない場合があ
る。この場合、新しい要素としてテンプレート14を作
りメニューとして追加しなければならない。
【0011】しかしながら、ユーザがテンプレート14
を作るのは、他の全ての要素に対応するテンプレート1
4を把握し、全体として矛盾がないようにする必要があ
り、非常に困難である。
【0012】本発明は上記課題に鑑みなされたもので、
所望する機能要素が無く、簡単に他の要素で代替実現で
きない場合でも、問題向き言語の特徴である可視化の利
点を損なうことなく、所望する新しい機能要素をユーザ
自身により比較的容易に実現することが可能になるソフ
トウエア開発装置を提供することを目的とする。
【0013】
【課題を解決するための手段】すなわち、本発明に係わ
るソフトウエア開発装置は、演算機能を表わす図形要素
とその結合関係により制御機能を表現する問題向き言語
から特定言語のソースコード形式で制御プログラムを生
成するもので、標準的な演算機能を表わす上記図形要素
に加え、ユーザによる演算内容記述用の特殊要素を有す
る要素メニューと、この要素メニューから特殊要素が選
択された際に、ユーザ記述要素に対応する入出力変数の
型,パラメータの型及び変数名とその値、そしてその入
出力変数及びパラメータ変数を用いた演算式を上記特定
言語の文法に従って入力するユーザ記述演算式入力手段
と、上記ユーザ記述演算式で用いられた入出力変数名及
びパラメータ変数名を上記要素メニューに備えられた他
の標準的な要素と整合がとれる変数名に置換えるユーザ
記述変数名標準化置換手段と、上記ユーザ記述演算式を
上記置換手段により置換えられた変数名を用いて書換
え、特定言語のソースコードに従ったプログラムを生成
出力する生成プログラム出力手段とを備えて構成したも
のである。
【0014】
【作用】つまり、ユーザの所望する演算機能要素が無い
場合には、ユーザは上記特殊要素をメニューから選択
し、その入出力変数の型,パラメータ、そしてそのそれ
ぞれからなる演算式をエディタで記述入力する。する
と、他の機能要素と同様にして、使用する入出力を他の
要素と線分で結び、所望する演算機能要素が定義され
る。次に、プログラム生成手順が定義されたアルゴリズ
ムに従って、ユーザの定義した演算変数名のうち必要な
ものが特定言語プログラム内で用いる変数名(変数領
域)に置換えられ、他の要素との整合が図られる。そし
て、ユーザの定義した演算式の変数が上記置換えられた
変数名に書換えられて出力され、ユーザ記述演算式は、
生成するプログラム言語の規約に従って得られるように
なる。
【0015】
【実施例】以下図面により本発明の一実施例について説
明する。
【0016】図1はソフトウエア開発装置におけるプロ
グラム生成装置の構成を示すもので、同図において、1
1〜15は、前記図7における従来装置と同様の機能を
有するのでその説明を省略する。エディタ機能11に
は、演算式記述用エディタ(テキストエディタ)21が
備えられる。
【0017】この演算式記述用エディタ21は、予め設
定されたユーザ記述用の特殊要素を図形要素メニューと
して備え、所望の演算機能選択時において上記特殊要素
が選択された際に、その演算に拘る入出力変数の型、パ
ラメータ変数の型及び変数名とその値、そしてその入出
力変数及びパラメータ変数を用いた演算式を、それぞれ
ユーザ入力させるためのテキストエディタウインドウの
表示処理を行なうもので、このテキストエディタ11を
用いて入力された特殊要素は、エディタ機能11におい
て他の図形要素と線分により結線され、所望の演算機能
が定義される。また、テンプレート14には、ユーザ記
述要素用テンプレート22が追加される。
【0018】このユーザ記述要素用テンプレート22
は、他の標準的図形要素に対応するプログラム生成手順
(アルゴリズム)が定義されたテンプレート14と同様
にして、上記特殊要素に対応するプログラム生成手順が
定義されるもので、このユーザ記述要素用テンプレート
22では、上記ユーザ記述演算式で用いられた入出力変
数名及びパラメータ変数名を、他の標準的図形要素と整
合が図れる所定のプログラム言語に従った変数名に置換
えるアルゴリズムを有している。
【0019】ここで、トランスレータ13は、エディタ
機能11よりデータ12として得られたユーザ記述演算
式を、上記ユーザ記述要素用テンプレート22で定義さ
れたアルゴリズムに基づき置換えられた標準的変数名を
用いて書換えるもので、この場合、ユーザ記述要素の識
別コード及びその入出力変数,パラメータは、変数テー
ブル23に登録され、複数の特殊要素が選択された場合
における各変数名の重複使用が防止される。
【0020】そして、上記トランスレータ13におい
て、データ12として得られる全図形要素に対応するプ
ログラム生成手順が実行されると、所望の制御プログラ
ム15が生成される。
【0021】すなわち、上記構成によるプログラム生成
装置において、例えばC言語により所望の制御機能プロ
グラムを生成する際に、ユーザは、エディタ機能11を
用い、所望の制御機能を予め備えられた標準的図形要素
を選択して問題向き言語により記述する。
【0022】ここで、ユーザの所望する演算機能要素が
無い場合には、例えば、図2に示すような特殊図形要素
(ユーザ記述要素)31をメニュー選択し、テキストエ
ディタ21を用いたCRTウインドウ画面上に配置させ
る。
【0023】この場合、上記ユーザ記述要素31は、最
大4入力,4出力までの機能要素として使用することが
できる。なお、入出力数がもっと多い特殊要素を用意し
てもよい。こうして、ユーザ記述要素31が選択される
と、テキストエディタ21によりユーザ記述要素31に
対応する演算機能のユーザ記述入力画面が表示される。
ここで、「入出力変数の型」「パラメータ変数の型と変
数名及びその値」「初期化が必要な変数の指示とその
値」「演算式」がそれぞれ入力される。例えば、図3は
4変数の重み付き平均をとる演算機能を定義する場合の
演算機能記述例を示している。
【0024】一方、前記図2における入出力端として示
された名前(IN,OUT)は、それぞれその入出力の
変数名を示している。つまり、「IN1」は、入力変数
名「IN1」と定められる。そして、ユーザは、図3に
おける演算機能記述の際に、「IN1」が実数型(FLOA
T) であることを指示している。この演算機能記述の際
に、使用する入出力変数には、必ずその型及び変数名の
指示が必要であり、他の入出力変数についても同様に記
述される。
【0025】さらに、上記演算機能記述に際し、パラメ
ータには、その名前と値が指示される。そして、演算式
は、上記予め記述された入出力変数「IN1,IN2,
IN3,IN4,OUT1」とパラメータ名「a1,a
2,a3,a4」とを用いて記述され、それ以外の変数
は局所的な変数とされる。
【0026】この場合、ユーザ記述演算式における例外
は、Δt(演算周期の値を示す)等の予約変数であり、
これらはプログラム内において大域的な変数として扱わ
れるため記述の必要はない。なお、本実施例では、生成
するプログラムがC言語であるため、前記図3における
演算式はC言語の記述に従っている。このように、予め
標準的メニューに無い演算機能が必要になる毎に、ユー
ザ記述要素31を用いて所望する演算機能が定義され
る。
【0027】こうして、記述された制御機能は、各図形
要素とその結合関係を示すデータ12に直されてトラン
スレータ13に与えられ、テンプレート14,22に定
義されたアルゴリズムに基づいて、目的とする制御プロ
グラムのソースコード15に生成される。図4はユーザ
記述要素用テンプレート22に定義された概略アルゴリ
ズムを示すフローチャートである。
【0028】すなわち、まず、前記ユーザの記述により
定義された変数は、他の標準的要素と整合が図れるよう
にプログラム内で使える変数名に変換される(ステップ
S1,S2)。
【0029】ここで、ユーザ記述要素31は、何回も使
用され得るので、入出力変数名が重複しないよう変換す
る必要がある。このため、トランスレータ13では、ユ
ーザ記述要素31の識別ID(コード)とユーザ記述に
より指示された変数,パラメータを変数テーブル23に
登録し、生成するプログラム言語で実際に使われる変数
名が割当てられる。
【0030】すなわち、例えば、変数名「IN1」は配
列の「XA[5]」として変換される。そして、トラン
スレータ13では、データ12として与えられた全要素
についてのテンプレート14に基づく処理が終了する
と、変数の初期化指示を行なうプログラムが起動される
(ステップS3)。この後、各要素間の結合関係が探索
され要素の実行順序が設定される(ステップS4)。
【0031】ここで、自分より実行順序が早い要素がプ
ログラムの出力を終わっていた場合には、ファンクショ
ンコールのプログラムが出力される(ステップS5)。
この場合、ファンクション名は別のユーザ記述要素と重
複しないようにつけられる。そして、全ての要素につい
て、その実行順序に応じてプログラムが出力されると、
最後に呼出される関数本体のプログラムが出力される
(ステップS6)。
【0032】すなわち、前記図3で定義された演算式が
出力される。この場合、演算式の各変数名は、変数テー
ブル23に登録されたユーザ記述要素の識別コード及び
その入出力変数,パラメータが参照されてC言語に従っ
た変数名に置換えられて出力される(ステップS7)。
図5は前記図3におけるユーザ記述要素の定義により生
成されたC言語ソースコードの例を示す図である。
【0033】したがって、上記構成のソフトウエア開発
装置におけるプログラム生成装置によれば、テキストエ
ディタ21において、ユーザにより演算の内容を記述で
きる特殊要素を用意し、エディタ機能11を用いたエデ
ィタウインドウにて所望する演算機能要素の入出力変数
の型,パラメータ名とその型及び値、そしてそのそれぞ
れを用いた演算式を予め規定する文法で入力させ、トラ
ンスレータ13においてユーザ記述要素用テンプレート
22に定義されたアルゴリズムに基づき、データ12と
して得られた上記演算式の変数名及びパラメータ名を他
の標準的に用意された要素と整合がとれる変数名に置換
えた後、上記ユーザ記述演算式を上記置換えられた変数
名を用いた演算式に書換えて、例えばC言語に従った生
成プログラム15として出力する構成としたので、特殊
な制御や複雑な制御等、標準的に提供された演算要素だ
けでは簡単に表現できないような場合にも、上記ユーザ
記述用に用意された特殊要素を選択して比較的簡単に所
望の機能要素を追加して記述することができ、生成装置
そのものの変更を要することなく、問題向き言語の特徴
である可視化を損なわずに、制御の流れを見通しよく表
現できるようになる。
【0034】
【発明の効果】以上のように本発明によれば、演算機能
を表わす図形要素とその結合関係により制御機能を表現
する問題向き言語から特定言語のソースコード形式で制
御プログラムを生成するもので、標準的な演算機能を表
わす上記図形要素に加え、ユーザによる演算内容記述用
の特殊要素を有する要素メニューと、この要素メニュー
から特殊要素が選択された際に、ユーザ記述要素に対応
する入出力変数の型,パラメータの型及び変数名とその
値、そしてその入出力変数及びパラメータ変数を用いた
演算式を上記特定言語の文法に従って入力するユーザ記
述演算式入力手段と、上記ユーザ記述演算式で用いられ
た入出力変数名及びパラメータ変数名を上記要素メニュ
ーに備えられた他の標準的な要素と整合がとれる変数名
に置換えるユーザ記述変数名標準化置換手段と、上記ユ
ーザ記述演算式を上記置換手段により置換えられた変数
名を用いて書換え、特定言語のソースコードに従ったプ
ログラムを生成出力する生成プログラム出力手段とを備
えて構成したので、所望する機能要素が無く、簡単に他
の要素で代替実現できない場合でも、問題向き言語の特
徴である可視化の利点を損なうことなく、所望する新し
い機能要素をユーザ自身により比較的容易に実現するこ
とが可能になる。
【図面の簡単な説明】
【図1】本発明の一実施例に係わるソフトウエア開発装
置におけるプログラム生成装置の構成を示すブロック
図。
【図2】上記プログラム生成装置に用意されたユーザ記
述要素の一例を示す図。
【図3】上記プログラム生成装置におけるユーザ記述演
算式の一例を示す図。
【図4】上記プログラム生成装置のユーザ記述要素用テ
ンプレートに定義されたアルゴリズムを示すフローチャ
ート。
【図5】上記プログラム生成装置におけるユーザ記述要
素の定義により生成されたC言語ソースコードの一例を
示す図。
【図6】従来のソフトウエア開発装置の構成を示すブロ
ック図。
【図7】上記従来のソフトウエア開発装置におけるプロ
グラム生成装置の構成を示すブロック図。
【図8】問題向き言語を用いたプログラム生成時のCR
T表示状態を示す図。
【符号の説明】
11…エディタ機能、12…データ、13…トランスレ
ータ、14…テンプレート、15…生成プログラム、1
6…マウス、17…キーボード、18…CRT、19…
計算機、21…演算式記述用エディタ(テキストエディ
タ)、22…ユーザ記述要素用テンプレート、23…変
数テーブル、31…ユーザ記述要素。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 演算機能を表わす図形要素とその結合関
    係により制御機能を表現する問題向き言語から特定言語
    のソースコード形式で制御プログラムを生成するソフト
    ウエア開発装置において、 標準的な演算機能を表わす上記図形要素に加え、ユーザ
    による演算内容記述用の特殊要素を有する要素メニュー
    と、 この要素メニューから特殊要素が選択された際に、ユー
    ザ記述要素に対応する入出力変数の型,パラメータの型
    及び変数名とその値、そしてその入出力変数及びパラメ
    ータ変数を用いた演算式を上記特定言語の文法に従って
    入力するユーザ記述演算式入力手段と、 上記ユーザ記述演算式で用いられた入出力変数名及びパ
    ラメータ変数名を上記要素メニューに備えられた他の標
    準的な要素と整合がとれる変数名に置換えるユーザ記述
    変数名標準化置換手段と、 上記ユーザ記述演算式を上記置換手段により置換えられ
    た変数名を用いて書換え、特定言語のソースコードに従
    ったプログラムを生成出力する生成プログラム出力手段
    と、を具備したことを特徴とするソフトウエア開発装
    置。
JP14762892A 1992-06-08 1992-06-08 ソフトウエア開発装置 Withdrawn JPH05341972A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP14762892A JPH05341972A (ja) 1992-06-08 1992-06-08 ソフトウエア開発装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14762892A JPH05341972A (ja) 1992-06-08 1992-06-08 ソフトウエア開発装置

Publications (1)

Publication Number Publication Date
JPH05341972A true JPH05341972A (ja) 1993-12-24

Family

ID=15434629

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14762892A Withdrawn JPH05341972A (ja) 1992-06-08 1992-06-08 ソフトウエア開発装置

Country Status (1)

Country Link
JP (1) JPH05341972A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008033682A (ja) * 2006-07-28 2008-02-14 Canon Inc 文書作成支援装置及び文書作成支援方法
JP2008165739A (ja) * 2000-08-24 2008-07-17 Xemplex Pty Ltd 式をグラフィカルに定義する方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008165739A (ja) * 2000-08-24 2008-07-17 Xemplex Pty Ltd 式をグラフィカルに定義する方法
JP2008033682A (ja) * 2006-07-28 2008-02-14 Canon Inc 文書作成支援装置及び文書作成支援方法

Similar Documents

Publication Publication Date Title
JPH08202545A (ja) ターゲット言語コードを生成するためのオブジェクト指向システム及びその方法
US5548714A (en) Means for structuring technical information in establishing a knowledge base and troubleshooting in technical equipment
US5655067A (en) Animation generating method in a design supporting system
Williams et al. A visual language for image processing
JPH05341972A (ja) ソフトウエア開発装置
US5812981A (en) Method of creating a data item object suitable for an application from a standard object oriented part
Tching et al. IM-sgi: an interface model for shape grammar implementations
US6654033B1 (en) Finite state automation for emulation of activity sequenced engine
JP5844347B2 (ja) コンピュータプログラム生成装置
JP2629955B2 (ja) 専門家システム構築装置
JPH08292974A (ja) 制御系・電気回路・管路網の連成汎用解析方法及び装置
JP2724241B2 (ja) ブロック図部品処理機能付きプログラム自動生成装置
JPS62145424A (ja) プログラム管理方法
Griswold et al. Program restructuring via design-level manipulation
JP2937381B2 (ja) 集積回路の設計方法及び設計装置
Fischereder Development of a Next Generation SFC Viewer Based on Web Technologies/submitted by Stefan Fischereder
JPH05274130A (ja) 情報処理装置および方法
JPH0850576A (ja) 視覚対話型シミュレーション装置
JPH05289857A (ja) プログラム生成方法
JPH11184685A (ja) 制御プログラム開発装置
Martin The Undergraduate Guide to R
Bostwick et al. Rapid knowledge base design via extension of mid-level knowledge components
JPH05334065A (ja) コンピュータプログラム開発支援装置及びその方法
JPS62145422A (ja) ソ−スプログラム自動生成方法
JPH0498531A (ja) ブロック図処理機能付きプログラム自動生成装置

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 19990831