JPH05204621A - ソフトウェア自動生成装置とソフトウェア自動生成方法 - Google Patents

ソフトウェア自動生成装置とソフトウェア自動生成方法

Info

Publication number
JPH05204621A
JPH05204621A JP4012090A JP1209092A JPH05204621A JP H05204621 A JPH05204621 A JP H05204621A JP 4012090 A JP4012090 A JP 4012090A JP 1209092 A JP1209092 A JP 1209092A JP H05204621 A JPH05204621 A JP H05204621A
Authority
JP
Japan
Prior art keywords
software
program code
generation
specifications
generating
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
JP4012090A
Other languages
English (en)
Inventor
Tomoo Oku
都茂夫 奥
Yasuyuki Kanazawa
靖之 金澤
Hideo Kada
秀夫 加田
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP4012090A priority Critical patent/JPH05204621A/ja
Publication of JPH05204621A publication Critical patent/JPH05204621A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】少ない手間、および時間でソフトウェアを容易
に生成できるソフトウェア自動生成装置とその方法を提
供する。 【構成】ソフトウェア自動生成装置は、ソフトウェア要
求仕様の視覚的な記述を支援する要求仕様記述支援部2
1、プログラムコード生成に必要な仕様を要求仕様から
抽出する仕様抽出部22、ソフトウェア部品等を格納す
るデータベース装置23、ソフトウェア部品の読み出し
等を行うデータベース管理部24、コード生成規則を格
納したコード生成規則記憶装置26、上記抽出された仕
様とコード生成規則等とからプログラムコードを生成す
るコード生成部27、ソフトウェア部品を定義する部品
定義支援部25、ディスプレイ28、マウス29、およ
び入出力制御部30から構成されている。 【効果】ソフトウェアの要求仕様を視覚的・対話的に記
述するだけでプログラムコードを生成させることができ

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、グラフィカルユーザイ
ンタフェイスを有するソフトウェアのプログラムコード
を生成するソフトウェア生成装置およびソフトウェア生
成方法に関するものである。
【0002】
【従来の技術】従来より、直接ソフトウェアのプログラ
ムコードを記述することなくソフトウェアを自動生成す
るシステムとして、部品合成法によるものが知られてい
る。これは、再利用の単位であるソフトウェア部品をデ
ータベースに格納しておき、部品の合成仕様を記述する
ことにより、この合成仕様に基づき、部品がプログラム
中に組み込まれてプログラムコードが自動生成されるよ
うになっている。
【0003】
【発明が解決しようとする課題】しかしながら、上記の
ような部品の合成によってソフトウェアを生成する場
合、ソフトウェア部品の合成のための仕様を記述する必
要があるが、この合成仕様は往々にして複雑なものとな
りがちであり、プログラムコードを記述するのに比べ
て、大幅に手間や困難性を軽減することはできないとい
う問題点を有していた。
【0004】本発明は上記問題点に鑑み、ソフトウェア
生成のために要する手間、および時間を大幅に低減で
き、ソフトウェアを容易に生成させることのできるソフ
トウェア自動生成装置とソフトウェア自動生成方法の提
供を目的としている。
【0005】
【課題を解決するための手段】上記目的を達成するため
に、本発明のソフトウェア自動生成装置とソフトウェア
自動生成方法は、グラフィカルユーザインタフェイスを
有するソフトウェアのプログラムコードを生成するソフ
トウェア生成装置において、指示操作を行う入力手段
と、図形表示を行う表示手段と、ソフトウェアの実行時
に表示のみ行われる図形、表示が行われて操作の対象と
なる図形、およびソフトウェアの実行時に行わせる処理
を示す図形を表示し、上記各図形を関連付ける操作に応
じて、ソフトウェアの仕様を生成するソフトウェア仕様
生成手段と、上記ソフトウェア仕様に基づいて、プログ
ラムコードを生成するプログラムコード生成手段と、を
備えたことを特徴としている。
【0006】
【作用】上記の構成により、ソフトウェア仕様生成手段
は、ソフトウェアの実行時に表示のみ行われる図形、表
示が行われて操作の対象となる図形、およびソフトウェ
アの実行時に行わせる処理を示す図形を表示し、上記各
図形を関連付ける操作に応じて、ソフトウェアの仕様を
生成し、プログラムコード生成手段は、上記ソフトウェ
ア仕様に基づいて、プログラムコードを生成する。
【0007】
【実施例】以下本発明の一実施例について、図面を参照
しながら説明する。図1はソフトウェア自動生成装置の
構成を示す構成図である。図1において、21はユーザ
のソフトウェアに対する要求仕様の視覚的な記述を支援
する要求仕様記述支援部である。
【0008】22はユーザの記述した要求仕様から、プ
ログラムコード生成に必要な仕様の抽出を行う仕様抽出
部である。23はすでに生成されたソフトウェアの仕様
情報や、ソフトウェア部品が格納されているデータベー
ス装置である。24は上記データベース装置23にアク
セスして、ソフトウェア仕様やソフトウェア部品の格納
および読み出しを行うデータベース管理部である。
【0009】26は仕様抽出部22によって抽出された
仕様からプログラムコードを生成するためのコード生成
規則を格納したコード生成規則記憶装置である。27は
上記コード生成規則と、データベース装置23に管理さ
れているソフトウェア仕様と、ソフトウェア部品とを基
にプログラムコードを生成するコード生成部(トランス
レータ)である。
【0010】25はデータベース装置23に格納された
ソフトウェア仕様やソフトウェア部品を基に、新たなソ
フトウェア部品の定義を支援する部品定義支援部であ
る。28はディスプレイである。29はマウスである。
30はディスプレイ28の表示制御およびマウス29の
操作による入力処理を行う入出力制御部である。
【0011】上記の構成において、要求仕様の記述、お
よびこれに応じたソフトウェアの生成がおこなわれる際
の動作を図2のフローチャートに基づいて説明する。な
お、生成するソフトウェアの要求仕様は、図3に示す内
容である場合を例にあげて説明する。まず、データベー
ス装置23に格納されている既存のソフトウェアの要求
仕様に類似のものがある場合、ユーザによってこれを取
り込む指示操作がなされると(S1)、要求仕様記述支
援部21は、その要求仕様をデータベース管理部24を
介してデータベース装置23から取り込む(S2)。
【0012】次に、要求仕様記述支援部21は、上記取
り込まれた要求仕様を元に、または新規に、図4に示す
ような視覚的な要求仕様の記述処理を行う(S3)。上
記のような要求仕様は、例えば次のような操作によって
記述される。すなわち、あらかじめメニュー41に表示
されている表示要素をマウス29のドラッグにより画面
上の適当な位置に移動させ、次に表示要素のコーナーを
ドラッグすることなどにより適当な大きさ、形状に変形
させる。
【0013】各表示要素間の従属関係は、表示位置によ
って表される。例えばボタン46はメインウィンドウ4
4に従属し、テキストウィンドウ47、およびボタン4
8・49はダイアログボックス45に従属していること
を示す。また、各表示要素の相対位置もその配置によっ
て決定される。ただし、メインウィンドウ44と、ダイ
アログボックス45とは、それぞれ別の作業領域(枠
0)42・(枠1)43内に表示させることにより、こ
の表示における相対位置は規定されない。
【0014】作業領域(枠1)43におけるマップ5
0、およびアンマップ51は、ソフトウェアの実行時に
行われる動作(ダイアログボックス45のオープン、ま
たはクローズ)を示し、何れもこの要求仕様の記述処理
においてのみ表示されるものである。ソフトウェア実行
時になされる操作と動作との関連は、各表示要素をマウ
ス29でポインティングしてアークで接続することによ
り決定される。
【0015】すなわち、図3の「ボタン1を押すと、ダ
イアログボックスが表示される。」ことを指示するため
には、ボタン46とマップ50とを続けてポインティン
グすることにより、これらのノードをアークで結べばよ
い。なお、ボタン48・49がクリックされたときに、
あらかじめ定義されているソフトウェア部品、または後
に定義するソフトウェア部品に応じた動作「処理1」5
2、「処理2」53を行わせるようにするための指示
は、ボタン48・49から接続されるアークに隣接させ
て記入することにより行われる。
【0016】このように、図3に示すような、ソフトウ
ェアの実行時に行わせようとする動作をそのまま視覚的
に表すだけで、プログラムコードや部品合成などを考慮
することなく、要求仕様の記述が行われる。上記要求仕
様の記述が行われた時点では、要求仕様記述支援部21
には、図5(a)に示すような各表示要素の配置情報、
すなわち表示位置の座標や高さ、幅などの数値、表示文
字列などの画面上のウィンドウ情報、および図5(b)
に示すようなノード間の接続情報(各表示要素の座標値
とアークの両端の座標値とに基づいて認識される)が保
持される。
【0017】上記のような要求仕様の記述が完了する
と、仕様抽出部22は、この要求仕様から、ソフトウェ
アを生成するためのソフトウェア仕様の抽出を行う(S
4)。すなわち、図5(a)の配置情報に基づき、各表
示要素の重なり具合から、図5(c)に示すように表示
要素の従属関係(階層)を示すレイアウト仕様が抽出さ
れる。(なお、このレイアウト仕様には表示位置や大き
さなどに関する情報も含まれる。)また、図5(b)の
接続情報に基づき、図5(d)に示すように表示要素に
対してプレス(マウスボタンのクリック)などの操作が
なされたときに行うべき動作を示す動作仕様が抽出され
る。
【0018】抽出されたレイアウト仕様、および動作仕
様は、データベース装置23に格納される。次に、コー
ド生成規則記憶装置26に記憶されているコード生成規
則が適用可能かどうかを判定し(S5)、適用可能であ
れば、コード生成部27がプログラムコード(例えばC
言語のソースコード)を生成する(S6)。
【0019】より具体的には、図6に示すように、動作
仕様の「ボタン1−プレス」に対して、callbac
k関数「press()」を生成し、その処理内容とし
て、「ダイアログボックスのマップ」に対応して、レイ
アウト仕様に応じた各テキストウィンドウやボタン等の
画面構成要素61〜64を表示するためのウィンドウ生
成関数「CreW」を生成する。さらに、メイン関数の
処理として、「ボタン1」の作成処理の記述、および
「ボタン1」のcallback関数への関数pres
sの登録(「ボタン1」がプレスされたときに関数pr
essを呼び出す旨の記述)を行う。
【0020】ここで、図6の生成コードは、C言語のソ
ースコードを説明の便宜上、模式的に表している。な
お、画面構成要素の作成処理などに対応するプログラム
コードは、ターゲットとなるコード、例えばC言語のコ
ードのシンタックス等に依存するが、上記のようにコー
ド生成規則をコード生成部27とは独立させてコード生
成規則記憶装置26に持たせるようにすることにより、
ターゲット言語を変更する場合などでも、コード生成規
則記憶装置26のコード生成規則を書き換えるだけで、
容易に種々のプログラムコードの生成に対応することが
できる。
【0021】上記のようにコード生成規則を適用したコ
ード生成ができない場合には、さらに、利用可能なソフ
トウェア部品としてのプログラムコードがデータベース
装置23に格納されているかどうかを判定する(S
7)。具体的には、例えばデータベース装置23に格納
されている既存のソフトウェア部品をディスプレイ28
に表示し、ユーザにソフトウェア部品を選択させる。既
存ソフトウェア部品を利用できる場合、コード生成部2
7は、これを取り込んで(S8)、生成するプログラム
コードに合成する(S9)。ここで、ソフトウェア部品
の検索は、機能などをキーとして部品自体を検索するよ
うにしてもよいし、仕様をキーとして部品の集合を検索
するようにしてもよい。
【0022】また、利用可能なソフトウェア部品が存在
しない場合には、部品定義支援部25により新たなソフ
トウェア部品の作成を行うことができる(S10)。こ
のソフトウェア部品の作成は、プログラムコードを直接
記述するほか、種々のツールを用いることができるが、
これらについては公知なので詳細な説明を省略する。作
成されたプログラム部品はデータベース装置23に登録
されるとともに(S11)、プログラムコードに合成さ
れる(S9)。
【0023】すなわち、コード生成規則の適用やソフト
ウェア部品の利用ができる場合には、要求仕様を視覚的
に記述するだけでプログラムコードが生成される一方、
コード生成規則の適用などができない場合でも、ソフト
ウェア部品の作成を行うことにより、種々の要求仕様に
対して柔軟に対処することができる。次に、さらに要求
仕様を記述する旨の指示がなされたかどうかを判定し
(S12)、以下、要求仕様の記述がすべて完了するま
で上記S3〜S12を繰り返す。
【0024】すべての要求仕様記述が終了すると、上記
生成プログラムコードからターゲットコード、すなわち
コンパイラの仕様に応じたコンパイル可能な書式等への
変換が行われる(S13)。なお、このようにして生成
されたプログラムコードも、要求仕様またはソフトウェ
ア仕様をキーとするオブジェクト指向の新たなソフトウ
ェア部品としてデータベース装置23に登録し、再利用
し得るようにしてもよい。すなわち、ソフトウェア部品
だけでなく、既存のソフトウェアの設計情報をデータベ
ース化し、再利用を図ることにより、要求仕様記述を含
めたソフトウェア設計工程を大幅に短縮化することも可
能になる。
【0025】
【発明の効果】以上説明したように、本発明によれば、
視覚的に記述した要求仕様からソフトウェア生成に必要
な仕様を自動的に抽出するソフトウェア仕様生成手段を
備えることにより、複雑なプログラムコードやソフトウ
ェア部品の合成のための仕様を考慮することなく、ソフ
トウェアの要求仕様を視覚的・対話的に記述するだけで
プログラムコードを生成させることができるので、ソフ
トウェア生成のために要する手間、および時間を大幅に
低減でき、ソフトウェアを容易に生成させることができ
るという効果を奏する。
【図面の簡単な説明】
【図1】ソフトウェア自動生成装置の構成を示す構成図
である。
【図2】ソフトウェア自動生成装置における、要求仕様
の記述、およびこれに応じたソフトウェアの生成がおこ
なわれる際の動作示すフローチャートである。
【図3】文章で表された要求仕様の例を示す説明図であ
る。
【図4】図3の要求仕様を視覚的に記述する場合の表示
例を示す説明図である。
【図5】図4の要求仕様記述から抽出されたレイアウト
仕様と動作仕様の例を示す説明図である。
【図6】図5の動作仕様とレイアウト仕様から生成され
るプログラムコードの例を示す説明図である。
【符号の説明】
21 要求仕様記述支援部 22 仕様抽出部 23 データベース装置 24 データベース管理部 25 部品定義支援部 26 コード生成規則記憶装置 27 コード生成部 28 ディスプレイ 29 マウス

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 グラフィカルユーザインタフェイスを有
    するソフトウェアのプログラムコードを生成するソフト
    ウェア生成装置において、 指示操作を行う入力手段と、 図形表示を行う表示手段と、 ソフトウェアの実行時に表示のみ行われる図形、表示が
    行われて操作の対象となる図形、およびソフトウェアの
    実行時に行わせる処理を示す図形を表示し、上記各図形
    を関連付ける操作に応じて、ソフトウェアの仕様を生成
    するソフトウェア仕様生成手段と、 上記ソフトウェア仕様に基づいて、プログラムコードを
    生成するプログラムコード生成手段と、 を備えたことを特徴とするソフトウェア自動生成装置。
  2. 【請求項2】 前記プログラムコード生成手段は、所定
    の生成規則に従って、プログラムコードの生成を行うよ
    うに構成されていることを特徴とする請求項1のソフト
    ウェア自動生成装置。
  3. 【請求項3】 前記プログラムコード生成手段は、あら
    かじめ作成され、前記仕様の構成要素に対応するプログ
    ラム部品を合成することにより、プログラムコードの生
    成を行うように構成されていることを特徴とする請求項
    1のソフトウェア自動生成装置。
  4. 【請求項4】 請求項3のソフトウェア自動生成装置で
    あって、さらに、 前記仕様の構成要素に対応するプログラム部品を作成す
    るためのプログラム部品作成手段を備えていることを特
    徴とするソフトウェア自動生成装置。
  5. 【請求項5】 請求項1のソフトウェア自動生成装置で
    あって、さらに、 ソフトウェア仕様生成手段によって生成されたソフトウ
    ェア仕様を再利用可能に保持するソフトウェア仕様保持
    手段を備えたことを特徴とするソフトウェア自動生成装
    置。
  6. 【請求項6】 グラフィカルユーザインタフェイスを有
    するソフトウェアのプログラムコードを生成するソフト
    ウェア生成方法において、 ソフトウェアの実行時に表示のみ行われる図形、表示が
    行われて操作の対象となる図形、およびソフトウェアの
    実行時に行わせる処理を示す図形を表示するステップ
    と、 上記各図形を関連付ける操作を受け付けるステップと、 上記各図形の関連付けに基づいて、ソフトウェアの仕様
    を生成するソフトウェア仕様生成ステップと、 上記ソフトウェア仕様に基づいて、プログラムコードを
    生成するプログラムコード生成ステップと、 を有することを特徴とするソフトウェア自動生成方法。
JP4012090A 1992-01-27 1992-01-27 ソフトウェア自動生成装置とソフトウェア自動生成方法 Pending JPH05204621A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4012090A JPH05204621A (ja) 1992-01-27 1992-01-27 ソフトウェア自動生成装置とソフトウェア自動生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4012090A JPH05204621A (ja) 1992-01-27 1992-01-27 ソフトウェア自動生成装置とソフトウェア自動生成方法

Publications (1)

Publication Number Publication Date
JPH05204621A true JPH05204621A (ja) 1993-08-13

Family

ID=11795877

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4012090A Pending JPH05204621A (ja) 1992-01-27 1992-01-27 ソフトウェア自動生成装置とソフトウェア自動生成方法

Country Status (1)

Country Link
JP (1) JPH05204621A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7269820B2 (en) 2001-12-06 2007-09-11 Denso Corporation Program code generator and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7269820B2 (en) 2001-12-06 2007-09-11 Denso Corporation Program code generator and program

Similar Documents

Publication Publication Date Title
JP3441309B2 (ja) 図的プログラミングにおける機能オブジェクトの表示方法
CN113886362A (zh) 基于工作流引擎及低代码平台的数据存储系统及存储方法
CN112748923A (zh) 一种可视化看板的创建方法、装置、电子设备和存储介质
US10037234B2 (en) Electronic-manual browsing apparatus and system
US20080040677A1 (en) HMI Development Support Apparatus, HMI Development Support Method and HMI Development Support Program
JP2001216142A (ja) プログラム作成支援装置
JP2019091361A (ja) 翻訳支援装置、翻訳支援プログラム、および情報処理装置により翻訳を支援する方法
JP2006202308A (ja) グラフィカルユーザインターフェース方法、グラフィカルユーザインターフェース装置、及び記録媒体
JPH05204621A (ja) ソフトウェア自動生成装置とソフトウェア自動生成方法
JP2001134423A (ja) 対話型既存システムを利用する新システムの画面情報出力方法
JPH1055339A (ja) オンライン型業務処理システム
JP2000242477A (ja) ソフトウエアの作成支援ツールおよび仕様検証ツール
CN115509665B (zh) 一种录制窗口中控件的方法、装置、介质及设备
JPH05307472A (ja) プログラム部品情報再利用装置
JP6531855B2 (ja) 情報処理装置、情報処理装置の制御方法、およびプログラム
JP2006277460A (ja) マニュアル作成管理装置
JPS60128530A (ja) ユ−ザメニユ−表示処理方式
JPH05257665A (ja) Hcpチャート/ソースプログラム連動編集装置
JP2845742B2 (ja) カットデータ情報管理装置
JPH05204624A (ja) プログラム作成装置
CN117540712A (zh) 表单的创建方法、装置、设备及存储介质
JPH1195991A (ja) 画面処理プログラムのカスタマイズ方法およびその記録媒体
CN114547516A (zh) 一种铁路站场图处理方法及系统
JPH05120404A (ja) コマンド処理方式
JPS63174128A (ja) 図式によるプログラム作成装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 9

Free format text: PAYMENT UNTIL: 20071127

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081127

Year of fee payment: 10

FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 10

Free format text: PAYMENT UNTIL: 20081127

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091127

Year of fee payment: 11

FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091127

Year of fee payment: 11

FPAY Renewal fee payment (prs date is renewal date of database)

Year of fee payment: 12

Free format text: PAYMENT UNTIL: 20101127

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (prs date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101127

Year of fee payment: 12