JPH0475135A - プログラム開発装置 - Google Patents

プログラム開発装置

Info

Publication number
JPH0475135A
JPH0475135A JP2191820A JP19182090A JPH0475135A JP H0475135 A JPH0475135 A JP H0475135A JP 2191820 A JP2191820 A JP 2191820A JP 19182090 A JP19182090 A JP 19182090A JP H0475135 A JPH0475135 A JP H0475135A
Authority
JP
Japan
Prior art keywords
information
data
module
input
specification description
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.)
Granted
Application number
JP2191820A
Other languages
English (en)
Other versions
JP2571144B2 (ja
Inventor
Hironori Terada
浩詔 寺田
Hiroaki Nishikawa
博昭 西川
Shinichi Yoshida
芳田 真一
Toshiharu Hine
日根 俊治
Yoichiro Nishikawa
洋一郎 西川
Hideji Hara
原 秀次
Kenji Shima
憲司 嶋
Mie Inaoka
稲岡 美恵
Tetsuo Yamazaki
哲男 山崎
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 Electric Corp
Sharp Corp
Sanyo Electric Co Ltd
Panasonic Holdings Corp
Original Assignee
Mitsubishi Electric Corp
Sharp Corp
Sanyo Electric Co Ltd
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 Mitsubishi Electric Corp, Sharp Corp, Sanyo Electric Co Ltd, Matsushita Electric Industrial Co Ltd filed Critical Mitsubishi Electric Corp
Priority to JP2191820A priority Critical patent/JP2571144B2/ja
Publication of JPH0475135A publication Critical patent/JPH0475135A/ja
Application granted granted Critical
Publication of JP2571144B2 publication Critical patent/JP2571144B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野] この発明はプログラム開発装置に関し、特に、仕様記述
から実行可能なプログラムを作成するプログラム開発装
置に関する。
[従来の技術] C言語、FORTRANなどの一般的なプログラム言語
を用いた従来のプログラム開発装置には、利用者が作成
したプログラムの一部または全部を部品としてライブラ
リに登録する機能が備えられている。このようなプログ
ラム開発装置においては、各部品が関数の形式でライブ
ラリに登録されている。そのため、利用者は、登録され
た部品を関数の形式で呼出すことにより、その部品を再
利用することができる。また、利用者は、登録された部
品の内容を更新あるいは削除することができる。さらに
、利用者は、他の利用者が作成したプログラムをも再利
用することかできる。
[発明が解決しようとする課題] 上記の従来のプログラム開発装置では、ライブラリに登
録された部品を関数の形式で呼出すことにより、その部
品を再利用することができる。′しかじ、従来のプログ
ラム開発装置では、ライブラリに登録されている各部品
がどのような機能仕様を有し、どのような入出力インタ
フェースを有するかなどについては管理されておらず、
各部品の機能仕様の管理は利用者に任されている。
プログラムを作成した本人であっても、時間の経過とと
もにそのプログラムの機能仕様を忘れ、登録した部品の
再利用ができなくなるという問題がある。そのため、利
用者は自分が作成したプログラムを部品として登録する
際に、プログラム開発装置によるプログラム開発環境と
は別の環境でその部品の機能仕様書を作成し、それを保
存しておく必要がある。
この発明の目的は、仕様記述から実行可能なプログラム
を作成するプログラム開発装置において、利用者が開発
したプログラムの再利用を容易にすることである。
[課題を解決するための手段] この発明に係るプログラム開発装置は、仕様記述手段、
変換手段および部品管理手段を備える。
仕様記述は、利用者が目的プログラムに関する図的な仕
様記述を画面上で作成するものである。変換手段は、仕
様記述手段により作成された仕様記述を実行可能なプロ
グラムに変換するものである。
部品管理手段は、仕様記述手段により作成された仕様記
述を部品情報として登録する機能および登録された部品
情報を提示する機能を有する。
[作用] この発明に係るプログラム開発装置によると、利用者が
作成した仕様記述を部品情報として登録することができ
る。また、その登録された部品情報を提示することがで
きる。そのため、利用者は、登録された部品情報を仕様
記述の水準で参照することができる。また、登録された
部品情報を実行可能なプログラムに変換することも可能
である。
したがって、利用者は、登録された部品の機能仕様を容
易に知ることができ、登録された部品を容易に再利用す
ることができる。
[実施例] 以下、この発明の実施例を図面を参照しながら詳細に説
明する。
第1図は、この発明の一実施例によるプログラム開発装
置の全体の構成を示すブロック図である。
このプログラム開発装置は、異なる表現形式に従った描
画・編集機能を備える複数の図的エディタE1〜Enと
、利用者から与えられた仕様記述に従ってプログラムを
作成する本体装置1とを含む。
本体装置1は、入出力装置10.相互変換装置Cv、実
行装置EX、部品管理装置CP1統合ファイル管理装置
UFおよび表示装置DPを含む。
図形エディタE1〜Enの各々は、好ましくは個々独立
のプロセスで実現され、各図形エディタE1〜Enは本
体装置1と通信可能である。ここで図形エディタE1〜
Enの各々と本体装置1との間が通信可能であるのは、
プログラム開発の容易性および将来の機能拡張を考慮し
、それぞれの図形エディタE1〜Enのプロセスと本体
装置1とがたとえばソケットを用いたプロセス間通信で
結合されているからである。
図形エディタE1〜Enが与える表現形式は、図形表現
形式および非手続的な記述形式を含む。
図形表現形式は、機能ブロック図およびシーケンスチャ
ート等の表現形式を含む。
機能ブロック図は、第2図に示すようにモジュール(ソ
フトウェアにおいて、ある意味的にまとまりを持った単
位)間の接続関係を表現する表現形式である。
第2図は機能ブロック図を用いた仕様記述形式の一例を
示す図である。第2図においては、外部モジュール10
と内部モジュール11との間のデータ接続関係が示され
る。外部モジュール10は、仕様記述対象外の外部の機
能を表現するモジュールである。内部モジュール11は
、仕様記述対象の機能を表現するモジュールである。こ
の外部モジュール10と内部モジュール11との間にお
いてはデータアーク12によりそのデータの流れが入出
力ボートP1〜P4とともに規定される。
この内部モジュールはプリミティブ、部品(部分的に完
結した仕様記述であり、ファイルに登録される)を含む
シーケンスチャートは、第3図に示すように入出力デー
タの因果関係およびモジュール間のデータ送受の関係等
を示す図である。第3図においては外部モジュール10
と内部モジュール11との間のデータの流れを示す。こ
のシーケンスチャートにおいては、モジュールとそのポ
ートとは1本の順序線(縦線)により示される。順序線
は時間軸を示しており、信号が流れる時間的関係をも表
わす。このモジュール10.11間のデータの流れは信
号線13により表わされる。この信号線13により、モ
ジュール間のデータの接続関係および因果関係が示され
る。
非手続的な記述形式は、関係表、決定表などの表形式で
示される表現形式を含む。関係表は、第4図に示すよう
に関係データ構造を示す。第4図において、関係表は、
表の名称を表示する領域14と、この表に含まれる項目
を示す名称が表示される項目名領域15と、項目のデー
タの型(int(整数)、float(浮動小数点)お
よびString(ストリング))を示す領域16と、
項目の実際のデータ値が入出力される領域17を含む。
決定表は、第5図に示すように、処理の選択構造を表わ
す表現形式である。第5図において、決定表は、決定表
モジュール名を表示する領域18と、判断条件が表示さ
れる領域19と、判断の結果実行される処理の名称が表
示される領域20と、条件に対する判断を表示する領域
21と、条件判断に基づく処理の実行の有無を示す判断
を表示する領域22を含む。
上述の表現形式に加えて、利用可能な表現形式としては
、データの包含関係を示すデータブロック図、関係演算
を中心とする構造体データ処理を表わす表操作図などが
ある。
第6図にデータブロック図による表現形式の一例を示し
、第7図に表操作図の表現形式の一例を示す。
第6図において、データブロック図は、データセット名
領域23と、この領域23のデータが含む要素数を表示
する領域24と、領域23にセットされたデータのメン
バーを構成するメンバーデータ名または下位階層のデー
タセット名を表示する領域26と、メンバーデータのデ
ータ型(int、float、string、5tru
ct)を表示する領域25とを含む。この領域24はデ
ータが配列構造のときのみ記述される。データ型が5t
ructの場合には、このデータは下位に対して階層化
していることを示している。各データはAND接続27
かまたはOR接続28でその接続関係が示される。
第7図に示す表操作図は関係表81およびB2を所定の
操作に従って処理して新たな関係表B3を形成している
状態を一例として示す。この操作は合併操作といわれて
いる。表操作図における操作は、この合併操作に限定さ
れず各種関係演算、分類演算、計算演算等を含む。関係
演算はある関係を満足するように表を操作する演算であ
る。分類演算は表の行をアルファベット順、数値の大小
順等の所定の順に従って並べ換える操作である。
計算演算は、表の特定の列について合計値、平均値など
の計算結果を求める操作である。
第1図へ戻って、本体装置1は、利用者が図形エディタ
E1〜Enを用いて生成した図的仕様記述から得られる
情報を融合して、プログラム実行に必要な制御情報を備
えたコンストラクト情報を生成するとともに、異なる表
現形式を有する図形仕様記述間の情報の相互変換および
モジュール階層間における基本情報の生成を行なって利
用者に提示する相互変換装置Cvと、相互変換装置cV
で生成されたコンストラクト情報に従ってプログラムを
解釈・実行し、該実行結果を利用者に提示する実行装置
EXと、図形仕様記述用図形エディタE1〜Enと相互
変換装置Cv1実行装置EXおよび部品管理装置CPと
の間での情報交換のための通信を管理する入出力装置1
0.および各処理装置EX、CV1CPが扱うデータ構
造を統合的に管理する統合ファイル管理装置UFとを含
む。
部品管理装置CPは、ソフトウェアにおいである部分的
に完結した仕様記述を「部品」として登録するとともに
、該登録された「部品」を再利用するための動作を管理
する。
コンストラクト情報は、生成された仕様記述情報を制御
構造を含む処理モデルの動作方式に対応するように変換
して得られる情報である。この処理モデルとしてはデー
タ駆動モデルが一例として用いられている。このデータ
駆動モデルを処理モデルとするためには、制御ノードお
よび制御アークを生成する必要がある。コンストラクト
情報には、ノードが仕様記述情報のモジュールに、また
アークがモジュール間のデータ接続に対応づけられる。
入出力装置10は、利用者との間のインタフェース、利
用者の指示に基づく各処理装置の実行制御および各処理
装置間で授受されるデータの管理の機能を備える。
利用者との間のインタフェースは以下のものを備える。
0図・形エディタを利用した表現形式による仕様記述、
■相互変換結果の表示、■対追付は機能、■引用機能、
■プロトタイピング機能、■部品登録・再利用、および
■ドキュメントの出力を含む。
図形エディタを利用した各表現形式による仕様の記述に
は次の方法が可能である。
(a)  利用者が表現形式の種類と仕様記述名を指定
する。この仕様記述名の指定は既に登録されている仕様
記述を再利用する場合に行なわれ、新規作成時には新し
い仕様記述名を入力する。
(b)  既に記述されている仕様を詳細化するかまた
は階層的に記述を進めるために、既存の仕様記述内の図
形要素および表現形式を指定する。
この場合指定された図形要素に対応する表現形式を用い
て仕様記述が行なわれる。
同一モジュールに対し異なる表現形式で仕様記述するこ
とができる。この場合、相互変換装置CVはその内部の
相互変換用ルールテーブル検索に従って、対応する表現
形式をエディタに知らせ、この対応の変換された表現形
式が利用者に表示される。1つの仕様記述が異なる表現
形式により実行することができるので、記述内容の多面
的な把握が容易となり、より完全な仕様を作成すること
が可能となる。
対応づけ機能は、意味的に等価な情報(たとえば、デー
タ同志または機能モジニール同志等)を異なる表現形式
間で関係づける機能である。この機能は、種々の表現形
式に従って記述された仕様を順次統合化していくために
、それぞれ独立に記述された種々の仕様情報を相互に関
係づけるために必要とされる。
すなわち、第8図に示すように、機能ブロック図で表現
されたモジュールM7は、操作表図を用いても表わすこ
とができる。この表操作図で表わされたモジュールM7
と機能ブロック図で表示されたM7とは意味的に等価で
ある。この場合、この異なる表現形式で表わされたモジ
ュールM7が図に矢印で示すように、意味的に同一であ
ると関係づけられる。この操作を「対応づけ」操作と呼
ぶ。
また各表現形式間においては、互いに情報を共有してい
る場合がある。この場合、既に記述された仕様情報を他
の表現形式での記述時に引用すれば記述時における作業
量を減することができる。
このある表現形式で記述された情報を他の表現形式へ用
いることを「引用」と呼ぶ。たとえば第8図に示すよう
に関係表で示されたモジュールM10は、表操作図で表
現された表M10と同一である。この場合、図に矢印で
示すように、関係表の表MIOが表操作図での表現形式
に従った記述時に引用される。また同様に表操作図にお
ける表M8は、関係表で表現された表M8と同一である
この場合も、関係表で表現されたM8が表操作図の表現
形式に従った記述時に引用される。
プロトタイピング機能は、部分的に完結した仕様記述の
実行結果を確認する機能である。このプロトタイピング
においては、各階層独立に仕様記述の実行結果を確認す
ることができる。このプロトタイピング時における入出
力データの指定、および入力データの作成は指定された
データ構造に従って利用者が行なう。
部品登録・再利用のためのインタフェースは、部品管理
装置CPに対し部品の登録および登録された部品の利用
を指示する。
ドキュメントの出力機能は、種々の表現形式を用いて記
述された仕様記述に対し、各表現形式ごとに記述された
図的な仕様記述をハードコピーとしてプリンタに出力し
、そのままソフトウェアの設計ドキュメントとして利用
可能とする。
入出力装置IOと各処理装置との間のインタフェースに
ついて説明する。まず図形エディタとの間のインタフェ
ースについて説明する。
入出力装置IOは、利用者が指定した各種の図形エディ
タの起動および終了制御を行なう。また、入力された仕
様記述の名前および図形エディタの種類等、エディタの
起動および終了時に必要とされる情報を管理する。この
動作は以下のものを含む。
(a)  利用者が表現形式の種類と仕様記述の名前を
指定すれば、入出力装置10は、指定された表現形式に
相当する図形エディタを起動し、かつ同時に、仕様記述
の名前をこの起動された図形エディタへ渡す。
(b)  各図形エディタはその内部に他の図形エディ
タを起動するための機能を備えている。あるエディタ内
で指定した図形要素(エディタが表示する操作ツールに
含まれる図形要素)および表現形式の種類が入出力装置
へ通知される。この図形要素は表現形式の種類によりシ
ンボルの種類や形状が異なる。入出力装置10は、この
指定された表現形式に相当する図形エディタを起動する
とともに、指定された図形要素をこの起動された図形エ
ディタへ送る。
(c)  仕様記述の終了制御。各図形エディタは終了
用操作ツールを備えている。この終了用操作ツールによ
り当該図形エディタの終了が入出力装置10へ通知され
る。入出力装置■0は、この終了通知に応答して、作成
された仕様記述の名前、エディタの種類等の情報を保存
した後終了を通知した図形エディタを終了させる。
入出力装置IOはまた図形エディタおよび相互変換装置
とのインタフェースを与える。各種の表現形式を用いて
仕様を記述する場合、また複数の仕様記述を相互に利用
する場合においては、入出力装置10は図形エディタお
よび相互変換装置CVとの間で以下の処理を行なう。
(a)  利用者が記述した描画情報は、各図形要素を
記述した段階で入出力装置IOを介して順次相互変換装
置Cvへ送られる。相互変換装置はこの入出力装置10
から与えられた情報に従って所定の処理(これについて
は後述する)を行なった後人出力装置IOへ返送する。
この場合、返送されるデータとしては、入力された仕様
記述情報に対応する異なる表現形式での表現可能な仕様
情報等である。この相互変換装置Cvから返送されるデ
ータはその処理結果とともに返送先の仕様記述の識別子
IDが付されている。入出力袋51FIOはこの識別子
IDに対応する仕様記述を特定し、相互変換装置Cvが
形成した処理結果をその転送先の図形エディタへ返送す
る。また、相互変換装置Cvが入力された仕様記述上に
おいて矛盾を検出した場合、この矛盾検出を示すメツセ
ージを入出力装置10は利用者に提示する。
(b)  仕様記述過程において2つの図形エディタ上
でユーザが指定した2つの図形要素に対して、入出力装
置10はこの2つの図形要素を論理的に対応づけること
ができるか否かを判断する。
対応づけが可能な場合、この入出力装置10は両図形エ
ディタに対し同一の論理的な仕様情報を返送する。対応
づけが不能な場合には、この対応不能を示すメツセージ
を利用者に提示する。
(c)  引用 複数の図形エディタ間で仕様情報を引用する場合、図形
エディタ上で利用者が指定した図形要素の描画情報およ
び仕様情報を、入出力装置■0は引用光の図形エディタ
へ転送する。
次に入出力装置10と実行装置EXとのインタフェース
について説明する。実行装置EXの実行時(たとえばプ
ロトタイピング)に必要とされる入力データ情報および
入出力データの位置情報は、仕様記述時と同様にして図
形エディタから入出力装置IOへ伝達される。入出力装
置10はこの実行の前処理を行なう実行用ハンドラー(
図示せず)にこれらの情報を手渡す。この前処理が終了
した段階で、入出力装置IOは利用者による実行開始指
示に応答して実行装置EXを起動する。実行結果のデー
タは、この上述の実行用ハンドラーから入出力装置IO
を介して表示装置DP上へ表示される。この表示装置D
Pへの表示はたとえば出力結果表示用ルーチンを起動す
ることにより実行される。
入出力装置10と部品管理装置CPとのインタフェース
は以下のものを含む。
(a)  部品登録時のインタフェース利用者が作成し
た仕様記述が部分的に完結した段階で、利用者が指定し
た登録対象の仕様記述情報と部品名は入出力装置IOを
介して部品管理装置cpへ伝達される。
(b)  部品再利用時のインタフェース図形エディタ
上で利用者が指定した部品名は入出力装置IOを介して
部品管理装置CPへ伝達される。部品管理装置CPはこ
の与えられた部品名に対応する部品情報をファイル管理
装置UFを介して検索し、検索された部品情報を入出力
装置IOを介して起動されている図形エディタへ返送す
る。
利用者が部品情報を参照したい場合には、入出力装置I
Oが利用者からの指示のもとに部品仕様書表示ルーチン
を起動することにより、この図的に表現された部品情報
が表示装置DP上に表示される。
相互変換装置CVの機能について説明する。この相互変
換装置CVは、利用者が様々な口約表現形式を用いて記
述する仕様記述の内容を統合して効果的な実行形式プロ
グラムを生成するとともに、与えられた仕様記述の特定
の側面(表現形式または階層)から獲得した情報を他の
表現形式に変換する機能を備える。ここで、実行形式プ
ログラムは、処理モデル(データ駆動型モデル)に依存
した構造を有するコンストラクト情報を仮想マシンの実
行方式に合致するように変換して得られるプログラムで
ある。
相互変換装置CVが統合する仕様記述情報の構成の一例
を第9図に示す。この仕様記述情報は、モジュール情報
MI、シーケンス情報SIおよびデータ構造情報DIを
含む。
モジュール情報MIは、このソフトウェアシステムを構
成する個々のモジュールの動作およびモジュール間のデ
ータ接続に関する情報である。このモジュール情報は、
機能ブロック図を用いた仕様記述をベースとして、各モ
ジュール間の階層関係を生成する。このモジュール情報
は、モジュール間のデータ接続関係を通してデータ構造
情報をも統合する。モジュール情報は機能モジュール、
決定表モジュール、構造体データ操作モジュールに関す
る情報をそれぞれ含む。このそれぞれのモジュールの情
報は図形エディタが表現する機能ブロック図、決定表お
よび表操作図の各表現形式で定義可能な処理内容に対応
する。各モジュールについて以下に説明する。
(A)  機能モジュール: 機能モジュールは、モジュールを構成する内部サブモジ
ュールの情報と各サブモジュール間のデータ接続関係に
関する情報である。サブモジュール情報が備える属性は
、機能ブロック図が与える記述要素と対応し、プリミテ
ィブ、部品、内部モジュール、ファイル、分枝、白杖等
がある。モジュールの階層構造は、サブモジュールが詳
細情報を定義しているモジュールに付されているモジュ
ールID(識別子)を付すことにより保存される。
モジュール間のデータ接続関係は機能ブロック図におけ
るアークと対応づけられる。このアークは、データの生
成側サブモジュールと消費側サブモジュールの関係を表
わす。データのデータ構造は、データセットIDにより
データ構造情報を参照する形で管理される。
(B)  決定表モジニールは、決定表から得られる情
報をもとに選択処理に関する情報を、条件判定および判
定結果に基づいて実行される処理によって示す情報であ
る。
各条件判定の内容と対応する実行されるべき処理の関係
は、イベントIDによって管理される。
(C)  構造体操作モジュール情報は、表操作図から
得られる情報をもとに構造体データ操作に関する情報を
、操作対象となるデータおよび各データに作用する操作
で表わす情報である。操作対象となるデータと各操作と
の対応関係は、データIDおよび操作IDによって管理
される。この各データのデータ構造は、データセットI
Dによりデータ構造情報を参照する形で管理される。
データ構造情報は、ソフトウェアシステムで消費/生成
されるデータの型および構造の定義に関する情報である
。データ構造の階層関係はデータブロック図を用いた記
述をベースとして生成される。このデータ構造情報は、
包含データ構造情報、関係データ構造情報等を含み、構
造を有しないデータとしてアトム情報を含む。
(A)  包含データ情報は、包含/排他関係にあるデ
ータの構成を示す情報である。この包含データ情報は、
各構成データに対して、詳細構造を定義したデータ構造
に与えるデータセットIDを有することによりデータ構
造の階層関係を保存する。
(B)  関係データ構造は、関係データを構成する各
項目データの基本データ型を示す情報である。
(C) アトム情報は、アトムデータに関する基本デー
タ型(int、float  string)を示す情
報である。
シーケンス情報は、順序線の属性と順序線に人出力され
る信号線の情報を含む。このシーケンス情報においては
、1モジユールに対して複数のシーケンスを定義するこ
とが可能なため、これらの関係はシーケンスIDて管理
される。
(A)  順序線情報は、シーケンスチャートにおける
サブモジュールを表わす縦線に関する属性を示す情報で
ある。順序線の属性としては、内部モジュール、ファイ
ルなどを含み、それぞれシーケンスチャートの記述要素
と対応する。モジュール情報中のサブモジュールとの対
応関係はモジュール副IDにより管理される。
(B)  信号線情報は、シーケンスチャートにおける
順序線間のデータ接続(以下信号線と称す)を示す情報
である。この信号線情報は、同時に信号線の人力とつな
がって出力されるaカシ−ケンス群の情報を管理するこ
とにより、人8カデータの因果関係をも示す。モジュー
ル情報中のデータ依存性との対応関係はアークIDによ
り管理される。
上述のように、仕様記述情報を構成する各部分情報間の
関係は、すべて識別子IDにより管理される。この識別
子IDは、上述のごとく、データ構造情報を識別するデ
ータセットID、モジュール情報を識別するモジュール
ID、モジュールを構成する内部サブモジュールを識別
するモジュール副ID、内部サブモジュール間のデータ
接続を識別するアークID等を含む。新たな情報の追加
が発生するたびに相互変換装置CVは新たな謀別子ID
を生成して管理する。
第9図に示すように、主要記述情報の構成においては、
複数の図形エディタを用いて記述された仕様内容は階層
化され、データの参照関係32、モジュールの階層関係
33、同一モジュールに対する共通の定義情報関係34
を含む。したがって、これらの関係を基礎とすることに
より複数の異なる表現形式で定義された部分的な仕様記
述から対象ソフトウェアシステム全体の仕様記述情報を
生成することができる。
この個々の表現形式により得られた各情報を統合した仕
様記述情報は上述の如く識別子IDにより管理される。
このような個々の表現形式から得られる情報を統合して
得られる仕様記述情報のデータ構造の一例を第10図な
いし第15図に示す。
第10図は仕様記述におけるデータ構造を、第11図は
順序線情報の構造を、第12図は信号線情報の構造を、
第13図は関係データの構造を、第14図は包含データ
の構造を、第15図はアトムの構造を示す。第10図な
いし第15図に示す仕様記述情報の構造において、各情
報に付された識別子IDを参照することにより対応の有
無および変更の有無等が決定される。
第16図は相互変換装置の動作を示すフロー図である。
以下、第16図の動作フロー図を参照して簡単にこの相
互変換装置Cvの動作について説明する。仕様記述情報
の生成は、入出力装置IOを介して行なわれるエディタ
との通信に基づいて実行される。
ステップS1において、エディタまたは入出力装置10
からデータが与えられる。このデータは仕様記述情報で
あるかまたは終了コマンド情報、仕様記述作成開始情報
等である。この与えられた情報が終了コマンドであると
判定されると(ステップS2)、相互変換装置Cvがフ
ァイルを閉じるなどの所望の処理を施した後その動作を
終了する。
終了コマンド以外の場合には、相互変換装置CVは、必
要な仕様記述情報を与えられたデーターに従って生成す
る(ステップS4)。この生成した仕様記述情報を用い
てファイル管理装置UFへアクセスし、その仕様記述情
報用ファイル内容を生成された仕様記述情報により更新
する(ステップS5)。
一方において、相互変換装置CVはこの与えられた仕様
記述情報から、コンストラクト情報を生成する(ステッ
プS6)。この生成されたコンストラクト情報に関して
は、再びファイル管理装置UFへアクセスすることによ
りその新しく生成されたコンストラクト情報が付加され
るか変更されるか等によりもとのコンストラフ]・情報
ファイルが更新される。
次いで、この相互変換装置Cvは、予めテーブルの形態
で格納されている変換用ルールを検索する。この変換用
ルールテーブルへ検索をかけることにより、入力データ
と同一の意味を持つデータがあるか否かを判定する。す
なわち、あるエディタから与えられた情報が他の量的表
現形式のオブジェクトに変換可能か否かを解析する(た
とえば機能ブロック図のモジュールとシーケンスチャー
トの縦線との対応関係)(ステップS9)。この解析に
より他の表現形式への変換可能なオブジェクトが検索さ
れた場合、その対応の変換可能な図的オブジェクトに変
換しくステップ510)、この変換した結果得られた変
換後の図的オブジェクトを示すデータを対応のエディタ
へ入出力装置IOを介して送信する(ステップ511)
。このとき送信を受けるエディタは、この変換可能なオ
ブジェクトを表現することのできるエディタである。
この変換処理がすべて終了すれば(ステップ512)、
相互変換装置Cvは再びエディタまたは入出力装置から
意味的にまとまった図的オブジェクトが送信されるのを
待つ。
ステップS9において、変換可能な図的オブジェクトが
存在しない場合、相互変換装置Cvはその旨を入出力装
置10へ伝達するとともに、エディタまたは入出力装置
10からのデータを待機する状態となる。
ここで、入出力装置IOを介して利用者が仕様記述した
結果データが入力されたとき、意味的にまとまった1つ
の図的オブジェクトが更新された場合、その1つのまと
まった図的オブジェクトが相互変換装置CVへ送信され
る。
また、ステップS9において変換可能な図的オブジェク
トが検索された場合、その変換可能な図的オブジェクト
が複数個存在する場合、この複数の図的オブジェクトそ
れぞれに対応する表現形式を与える図形エディタが起動
される。この同時に起動された図形エディタが与える表
現形式の図形要素は、たとえばマルチウィンドウにより
表示装置DP上へ同時に表示される。
次に、図形エディタと相互変換装置CVとの間の情報交
換の例について第17A図および第17B図を参照して
説明する。この第17A図および第17B図に示す例に
おいては、機能ブロック図を表現形式とする図形エディ
タが起動され、かつ相互変換装置Cvが機能ブロック図
の表現形式をベースとして仕様記述を生成する場合が一
例として示される。
入出力装置10を介して利用者が行なうモジュール定義
またはデータ構造定義のエディタの起動に応答して、相
互変換装置Cvは新たなモジュール情報またはデータ構
造情報を生成する。この生成されるモジュールまたはデ
ータの種別は、起動された図形エディタの種類から決定
される。同時に、これらの生成されたモジュール情報ま
たはデータ構造情報に対しては相互変換装置c■はモジ
ュールIDまたはデータセットIDを生成して起動され
た図形エディタへ伝達する。第17A図においてはモジ
ュールIDが図形エディタEへ伝達される。
図形エディタEにおいては利用者かそのエディタ上で新
たに内部モジュールを追加すると、この図形エディタE
は、伝達されたモジュールIDとモジュールの属性を示
す情報とともに未定義のモジュール副IDを相互変換装
置CVへ伝達する。
相互変換装置Cvはこの与えられた未定義のモジュール
副IDに応答して、内部モジュールを生成するとともに
、この新たなサブモジュール情報を識別するためのモジ
ュール副IDを生成して図形エディタEへ伝達する。
図形エディタEにおいて、機能ブロック図内で既存の内
部モジュールに関する情報の変更または削除が行なわれ
た場合、この変更または削除情報は相互変換装置CVへ
、対応のモジュール副IDとともに伝達する。相互変換
装置CVはこの情報に応答して対応のサブモジュール情
報の変更または削除を実行する。
複数の内部モジュールが生成された場合、この内部モジ
ュール間におけるデータの接続関係を示すアークが図形
エディタE上で記述される。これに応答して図形エディ
タEはデータを送出するモジュールを識別するモジュー
ル副IDと、この内部モジュールのデータ出力ポートを
示すポートlDと、データを入力する行先モジュール副
IDとこの行先モジュールがデータを受けるポートを識
別する行先ポートIDと、未定義のアークIDを相互変
換装置CVへ伝達する。相互変換装置Cvは、この与え
られた情報に応答して内部モジュールにおけるアークを
生成するととに、このアークを識別するために、与えら
れた未定義のアークよりに所定の情報を付加しアークI
Dとして図形エディタEへ伝達する。次いでこのアーク
IDにより識別されるべきアークに対するデータの構造
が指定されると、図形エディタはこの指定されたデータ
構造を示すデータセットIDを対応のアークIDととも
に相互変換装置C■へ伝達する。相互変換装置CVはこ
の与えられた情報に従ってデータセットIDを登録する
。次に、第17B図を参照して階層構造のモジュールを
生成する場合の動作について説明する。
機能ブロック図において既存の内部モジュールに対し、
この既存の内部モジュールの詳細を定義するために利用
者が他の図形エディタを起動すると、起動をかけた図形
エディタからはこれに応答して、モジュールID、モジ
ュール副IDとともに、新しく付加されるべきモジュー
ルを識別するための下位モジュールID(未定義)が変
換装置Cvへ伝達される。変換装置Cvは、この与えら
れた情報に応答して新たなモジュール情報を生成すると
ともに、この生成したモジュール(下位モジュール)に
対してそのときの上位モジュールのモジュールIDをそ
れに追加する。それにより下位モジュールIDが決定さ
れる。この生成されたモジュール(下位モジュール)の
モジュールIDはこの詳細を定義するために起動された
エディタへ伝達されるととに、この起動をかけたエディ
タに対しても伝達される。この後、下位モジュールに対
する記述が完了すると、起動をかけられた図形エディタ
からはそれを示すための情報とともにモジュールID、
モジュール副IDおよび下位モジュールIDが相互変換
装置C■へ伝達される。
変換装置CVはこの情報に応答して、上位モジュールと
下位モジュールとの結合情報を生成する。
起動をかけた側の図形エディタからは、内部モジュール
情報変更のシーケンスに従って、下位モジュールに対応
するモジュールIDの情報か相互変換装置CVへ送られ
る。これによりモジュール情報の階層構造がこの識別子
IDにより上位および下位両側からの参照関係として実
現される。
操作のデータ依存性におけるデータとデータ構造情報と
の参照関係は以下のようにして実現される。複数の図形
エディタにおける対追付は操作によって、アークとデー
タ構造記述との対応関係が成立すると、そのときに獲得
されたデータセットIDは、データ依存性情報の変更シ
ーケンスに従って相互変換装置Cvへ伝達される。これ
によりモジュールにおける入出力データの構造が保存さ
れ、構造体データへのアクセス系列、ロック範囲の抽出
が可能となる。
上述のように、各モジュールを構成する仕様記述情報は
すべて詭別子IDを管理することによりその各部品情報
間の関係が管理される。
この階層的な表現によるソフトウェアシステム全体の仕
様記述の生成の一例について説明する。
第18図はこの階層構造情報から、より正確なモジュー
ル情報を作成する場合の一例を示す図である。第18図
に示すように、上位階層の仕様記述41においては、モ
ジュールFOOとモジュールFOIとの間のデータの送
受関係として表わされていた内容に対して、各モジュー
ルの下位層による詳細記述・42および43を形成し、
これを相互変換装置CVにおいて関連づけることにより
、モジュールFOOがデータaとデータbとをマージし
てデータCを導出し、一方モジュールFOIがデータC
を受け、データdを出力するとともに、この出力dをモ
ジュールFOOへ返送している構造が解析される。これ
により機能モジュールの入出力データbとデータdとが
同一のデータであり、データdが再び繰り返し利用され
る繰り返し構造44が導圧可能となる。
「マージ」を表わす機能モジュールおよびデータをその
まま伝達するrTFゲート;真偽判定ゲート」の動作制
御は機能モジュールPにより行なわれている。この制御
内容は機能モジュールPに対する下位モジュールを用い
ることによりその制御内容の詳細が明らかとなる。
第19図は、この相互変換装置において行なわれる、園
内表現形式の組合わせ(仕様記述)からコンストラクト
情報を生成する構成の一例を示す図である。機能ブロッ
ク図で表現された仕様図45においては、モジュールP
およびSに関してその動作内容が、単にデータコピーを
行なうのか、選択構造であるのかを決定することができ
ない。
しかしながら、このそれぞれのモジュールPおよびSに
対して決定表の記述50および51をそれぞれ関連づけ
ることにより、モジュールPが入力データx、yの大小
関係に応じてモジュールF1〜F3のいずれかを選択す
るように分岐モジュールSを制御し、分岐モジュールS
は、このモジュールPからのデータに従ってデータbを
モジュールF1〜F3のいずれかへ伝達する構造か決定
される。これによってモジュールPの選択構造が決定さ
れ、さらに分岐モジュールSにおける分岐制御のための
制御情報の生成が可能となる。これにより処理モデルに
対する制御情報を含んだコンストラクト情報46の生成
が可能となる。
上述の実施例は、複数の表現形式を統合してコンストラ
クト生成のための情報を獲得する場合を示している。し
かしながら、第20図および第21図に示すように逆に
統合した情報から個々の表現形式の情報を逆生成(相互
変換)することも可能となる。
第20図は、機能ブロック図とシーケンスチャートとの
相互変換を例示的に示す図である。第20図において、
機能ブロック図60から得られた内部モジュール情報6
1は順序線情報62に変換され、この順序線情報に従っ
てシーケンスチャート上の順序線が生成される。ここで
内部モジュール情報からの順序線情報への変換は、前述
のごとく相互変換装置CVにおいて行なわれ、この情報
がシーケンスチャートを表現形式とする図形エディタへ
伝達されこの図形エディタか起動されることにより、表
示装置上にシーケンスチャー上の順序線が生成される。
以下の説明においても、この相互変換装置と機能ブロッ
ク図およびシーケンスチャートを表現する図形エディタ
との間の情報交換が行なわれている。
また、シーケンスチャート63においてシーケンスチャ
ート60から得られた順序線情報62へはさらに内部モ
ジュールM2が付される。この新たに生成された内部モ
ジュールを示す順序線情報は機能ブロック図の内部モジ
ュール情報に変換され機能ブロック図上に内部モジュー
ルが生成される。このとき、シーケンスチャートにおい
て信号線を形成することにより得られる信号線情報(信
号線A−D)はデータ依存性情報に変換される。
これにより、機能ブロック図64において、生成された
信号線に対応するアークが生成される。これにより、各
モジュール間のデータの流れが得られる。しかしながら
、信号線情報は単にデータの流れを示すだけであり、モ
ジュールのどのポートが接続されるのかを示していない
ため、この新たに生成された機能ブロック図65におい
てはポート接続が未定義であることを示す表示68が利
用者に与えられる。利用者はこれを見てポートを定義す
る。
この第20図においては、機能ブロック図から獲得した
情報60から、シーケンスチャートの初期状態62が生
成され、ざらこの初期状態のシケンスチャート62に対
して記述の追加すなわち内部モジュールの生成およびデ
ータの流れが付され、この追加されたシーケンスチャー
トの記述63に従って、機能ブロック図の内容を生成追
加し、新たな機能ブロック図65を得ている。この場合
、新たに形成された機能ブロック図においては、ポート
が未定義であるという機能ブロック図における不完全部
分68を利用者に提示することにより新たな情報の記述
を促すことができ、より正確なソフトウェアシステムの
構築が可能となる。
さらにまた相互変換処理を用いることにより、階層記述
における下位層の情報を生成することもできる。
第21図に示す仕様記述においては、シーケンスチャー
ト71で表現された情報から機能ブロック図72を形成
し、この機能ブロック図72におけるモジュールM1に
対する下位モジュール73およびモジュールM2に対す
る下位モジュール74をそれぞれ形成している。この相
互変換構成に対し、新たなシーケンスチャート75が与
えられた場合、すなわちモジュールM1が外部モジュー
ルからデータAを受けてデータDを送出している構造が
記述された場合、相互変換装置CVは、既に与えらてい
るモジュール72にこのシーケンスチャート75で獲得
された情報を付加する。この場合データAに対するデー
タIDの一致を検出することにより、モジュールM1は
、データAを受けてデータBおよびDを導出しているこ
とが認識される。この構造より、階層表現の下位モジュ
ール73を考慮することにより、Mlはその下位構造に
おいて分岐構造を有しており、データBとデータDをそ
れぞれ導出する下位モジュールMllおよびMl2を含
んでいることが検出される。この場合、モジュールM2
はデータBおよびデータCの関係はシーケンスチャート
71の場合が保存されるためその下位構造78は下位モ
ジュール74と同一表現となる。
さらに、第21図に示すシーケンスチャート71に対し
、新たなシーケンスチャート79が形成された場合、こ
の形成されたシーケンスチャートにより獲得された情報
に従って機能ブロック図が得られる。この場合、データ
Bに対するデータIDの一致を検出することにより、デ
ータAとデータDとが排他的データ構造であれば、モジ
ュールM1に対して、データAを受ける下位モジュール
MllとデータM2を受ける下位モジュールM12とを
備え、このモジュールMllおよびMl2の出力がマー
ジされてデータBを導出する下位構造を備えているとい
うマージ構造80が生成される。
次に実行装置EXの機能について説明する。実行装置E
Xは、相互変換装置Cvて生成されたコンストラクト情
報を実行モデル(仮想的なマシン)の動作方式に従って
実行可能なプログラムに変換する変換部と、プロトタイ
ピングを実行する実行部とを含む。
コンストラクト情報を変換して得られる実行形式情報は
、データの流れによって表わされる処理の流れおよび各
処理の構造を表現する接続情報と、この接続情報中に番
号のリンク(種々のID)で出現する定数情報、データ
構造情報、およびファイル情報に大きく分割される。こ
の実行形式情報においても接続情報は階層ごとにまとま
りを有しており、階層間においては対応するポートがリ
ンクされる関係を維持しつつこのノード番号を一意的に
生成する。実行装置EXにおける実行部が所定の仕様を
実行する場合、ノードの接続を追跡して順次プログラム
を実行する。したがって、この実行に適した情報形式へ
の変換とは、このノードの情報に付随したアークの情報
によってノード間の接続関係が示される情報形式へ変換
することである。
次に、この実行装置EXの動作についてその動作フロー
図である第23図を参照して説明する。
第23図においては、実行装置EXの動作フローがシー
ケンスチャートを用いて表示される。ユーザは仕様記述
上のデータを入力したいデータアークを指定する。この
指定されたデータアークに対応する図形エディタが起動
され、入力ウィンドウが開かれ、表示装置DP上に表示
される。入力ウィンドウには指定したデータアークのデ
ータ構造に対応するテンプレートが表示される。入力デ
ータの設定はこのテンプレートを埋めるようにして行な
われる。出力データの設定も入力データの設定と同様で
あり、仕様記述上でデータをモニタしたいデータアーク
を指定すると、出力ウィンドウが開かれ、指定したデー
タアークのデータ構造に対応するテンプレートが表示さ
れる。
このユーザが指定した入力データは、入出力装置tIo
、相互変換装@CVを介して統合ファイル管理装置UF
に書込まれ、人力データの更新が行なわれる。このファ
イル管理装置UFにおいてデータ更新の管理が終了する
とこの完了を示す情報が相互変換装置Cvを介して入出
力装置IOへ伝達される。利用者はプロトタイピング実
行開始を指示すると、この実行開始指示は入出力装置■
0を介して実行装置EXへ与えられる。実行装置EXは
、統合ファイル管理装置UFで人力ウィンドウに設定さ
れた入力データが書込まれた領域を参照し、この入力デ
ータを読出し、指定された仕様記述に対応するプログラ
ムを実行する。
実行装置EXは統合ファイル管理装置UFから入力デー
タを読出し、実行形式情報中に含まれるノードの接続を
追跡しなからノードに設定される機能を順次実行し、出
力データのアークに出力指定がなされていたとき出力デ
ータを得る。実行装置EXは出力データを得ると統合フ
ァイル管理装置UFへその出力データを書込む。これに
より出力データの更新が行なわれる。統合ファイル管理
装置はこのデータの更新の完了を実行装置EXへ与える
と、次いで実行装置EXから入出力装置IOヘプロトタ
イピングの実行完了が知らされる。
入出力装[10はこの実行終了を受けると変換装NCv
へ実行終了を知らせる。相互変換装置CVはこの実行終
了に応答して統合ファイル管理装置UFに書込まれた出
力データの参照を行ない、出カデ:りを読出して入出力
装置10へ伝達する。
入出力装置10は与えられた出力データを表示装jDP
上に先に開かれていた出力ウィンドウに表示する。
上述のように仕様記述上の任意の階層を対象としたシミ
ュレーション実行はその入力データの設定および出力デ
ータ形式の設定を行なうだけで実行されるため、作成さ
れた仕様の確認見直しを行なうことができる。
次に、第24図ないし第27図を参照しながら部品管理
装置CPについて説明する。
仕様記述においである完結した仕様は「部品」と称され
る。この部品は部品管理装置CPにより管理される。
統合ファイル管理装置UFは、第24図に示すように、
仕様記述中の情報領域110および部品情報領域(部品
情報ファイル)120を含む。仕様記述中の情報領域1
10には複数の仕様に対応する複数の仕様ファイル11
1が格納される。各仕様ファイル111は複数のモジュ
ール112を含む。各モジュール112は仕様記述情報
113およびコンストラクト情報114からなる。一方
、部品情報ファイル120内の情報は、開発ソフトウェ
アに対応して複数のグループ121に分類される。各グ
ループ121は複数のユーザファイル122を含む。各
ユーザファイル122は複数の部品情報123を含む。
各部品情報123は仕様記述情報124およびコンスト
ラクト情報125からなる。
一般に、開発すべきソフトウェアが異なると必要な部品
も異なる。したがって、部品情報を開発ソフトウェアご
とにグループに分類すると、利用者は部品参照の際に関
係のないグループの部品情報を見ないで済む。また、部
品情報を利用者ごとにユーザファイルに分類すると、そ
のユーザファイルを関係のない利用者に見られないよう
にすることも可能である。
仕様記述中の情報領域110、仕様ファイル111およ
びモジュール122を特定し、リンクL11、L12.
L13をたどることにより、所望の仕様記述113また
はコンストラクト情報114を特定することができる。
また、部品情報ファイル120、グループ121、ユー
ザファイル122および部品情報123を特定し、リン
クL21、L22.L23をたどることにより、所望の
部品情報123内の仕様記述情報124またはコンスト
ラクト情報125を特定することができる。
なお、各コンストラクト情報には、部品可能フラグが含
まれている。部品可能フラグは、対応するモジュールが
部品あるいは基本的な演算であるプリミティブのレベル
まで記述されている場合、すなわちそのモジュールの内
部に未定義なモジュールを含まない場合に、“ON”に
設定される。
それ以外の場合には部品可能フラグは“OFF”に設定
される。
次に、第25図、第26図および第27図を参照しなが
ら、部品管理装置CPの部品の登録機能、部品の参照機
能および部品の引用機能について説明する。
■ 部品の登録機能 第25図に示すように、利用者は、入出力装置10が与
えるメニューから「部品登録」を選択し、エディタによ
り部品として登録したいモジュールのモジュール名を指
定する(ステップ521)。
部品管理装置CPは、統合ファイル管理装置UFを介し
て仕様記述中の情報領域110を探索し、指定されたモ
ジュール112内のコンストラクト情報114の部品可
能フラグを参照する(ステップ522)。
部品可能フラグが“ON”であれば(ステップ823)
、利用者は、部品情報ファイル120内のグループ12
1を特定するグループ名、ユーザファイル122を特定
するユーザ名、部品情報123を特定する部品情報名を
分類に必要な情報としてエディタおよび入出力装置IO
を介して部品管理装置CPに与える(ステップ524)
。部品管理装置CPは、分類に必要な情報を参照し、部
品情報ファイル120内の所定のユーザファイル122
内に部品として登録すべきモジュール112を新たな部
品情報123として登録する。これにより、たとえば、
第24図に示すように、仕様記述中の情報領域110、
仕様ファイル名Bおよびモジュール名qにより形成され
るリンクL3が部品情報ファイル120、グループ名G
1ユーザファイル名Xに接続されるリンクL4に変更さ
れる(ステップ525)。
部品可能フラグが“OFF″である場合には(ステップ
823)、部品管理装置CPは入出力装置IOを介して
表示装置DPに、部品として登録できない旨を表示する
(ステップ526)。
■ 部品の参照機能 第26図に示すように、利用者は、入出力装置10が与
えるメニューから「部品参照」を選択する(ステップ5
31)。そして、利用者は、グループ名、ユーザファイ
ル名等の検索条件をエディタにより与える(ステップ5
32)。
部品管理装置CPは、入出力装置IOを介して統合ファ
イル管理装置UF内の部品情報ファイル120を参照し
、検索条件に一致する部品の部品名−覧表を入出力装置
IOに与える。入出力装置IOは、エディタを起動し、
部品参照ウィンドウ(参照WD)を開き、部品名−覧表
を表示する(ステップ833)。
利用者は、部品参照用ウィンドウ(参照WD)中に示さ
れた部品名−覧表から参照すべき部品名を選択する(ス
テップ534)。入出力装置IOはその部品名を部品管
理装置CPに与える。部品管理装置CPは、その部品名
に基づいて部品情報ファイル120内の対応する部品情
報123を探索し、その部品情報123を入出力装置!
0を介して部品仕様書エディタに与える。部品仕様書エ
ディタは、その部品情報を表示する。ここで表示される
部品情報は、最上位の機能ブロック図である(ステップ
535)。
利用者が詳細仕様の参照を行なう場合には(ステップ5
36)、エディタを用いて部品管理装置CPに参照した
い詳細仕様を指示する(ステ1.ブ537)。部品管理
装置CPは、指示された詳細仕様を入出力装置10を介
して部品仕様書エディタに与える。部品仕様書エディタ
は、与えられた詳細仕様を表示する(ステップ538)
。さらに詳細仕様の参照を行なう場合には、ステップ8
36〜ステツプ63gが繰り返される。詳細仕様の参照
を行なわない場合には、利用者はエディタを用いて部品
管理装置CPに部品参照の終了を指示する(ステップ5
39)。
■ 部品の引用機能 第27図に示すように、各エディタを用いて仕様記述を
行なっている状態において部品を引用したい場合、機能
ブロック図用のエディタあるいはシーケンスチャート用
のエディタの描画モードにおいて「部品引用」を選択す
る(ステップ541)。そして、利用者は、そのエディ
タを用いてグループ名、ユーザ名等の検索条件を部品管
理装置CPに与える(ステップ542)。
部品管理装置CPは、部品情報ファイル120を参照し
、登録されている部品のうち、検索条件に一致する部品
の部品名−覧表を入出力装置10に与える。入出力装置
10は、エディタを起動して部品引用のためのウィンド
ウを開き、部品名−覧表を表示する(ステップ843)
利用者は、部品参照用ウィンドウに表示された部品名−
覧表から引用すべき部品名を選択する(ステップ544
)。入出力装置10は、選択された部品に対応する部品
情報を部品管理装置CPに要求する。部品管理装置CP
は、統合ファイル管理装置UFを介して部品情報ファイ
ル120を参照し、選択された部品名に対応する部品情
報123を入出力装置■0に読出す(ステップ545)
入出力装置10は、部品管理装置IOより与えられた部
品情報123を、さらに、この部品情報を引用しようと
するエディタに送る。エディタは与えられた部品情報を
もとに描画を行なうとともに、仕様記述内容の変更を入
出力装置10に通知する(ステップ546)。
次に統合ファイル管理装置UFの機能について説明する
。この開発装置で取り扱われる仕様記述の内容に関する
情報は1つの統合的なファイルとして表現される。この
ファイルを操作する機能はデータ構造操作命令として統
合ファイル管理装置UFにより実現される。統合ファイ
ル管理装置UFは、仕様記述に関する情報を表現する内
部データ構造へのアクセス(生成、参照、更新、削除等
)を実行する他の処理装置(入出力装置10、相互変換
装置Cv1実行装置EX、および部品管理装置CP)と
の間に宣言的に結合されたインタフェースを持ち、仕様
記述情報を表現する内部データ構造を統合的に管理する
統合ファイル管理装置UFを利用する他の処理装置は、
必要とされるデータ構造操作に対するオペレーションコ
ードと、そのデータ構造操作に必要とされる情報を統合
ファイル管理装置UFへ渡す。統合ファイル管理装置U
Fは、指示されたデータ構造操作を実行し、実行結果を
統合ファイル管理装置UFを呼出した処理装置へ返す。
用いられるデータ構造としては、この発明におけるプロ
グラム開発装置においては、スカシ(アトム)とリスト
構造とが採用される。このリスト構造を用いれば、「配
列」、「レコード」、および「ベクター」等の構造を表
現することができるからである。このリスト構造を用い
る場合、■添字(識別子)による要素へのアクセス、お
よび■キーの一致による要素へのアクセスが実行される
このリスト構造においては、処理対象とするデータ構造
全体の識別子(名前)に対する論理的な識別子rfid
Jと、「fid」によって識別されるデータ構造中にお
いて「5izejによって示される配列要素のサイズの
データ領域を1個の要素とする配列を識別するための論
理的な識別子rd i dJとを含む。これらの識別子
を用いることにより、ファイルにおけるアクセス領域が
確定される。
スカシのデータ構造により統合ファイル管理装置UFを
参照した場合、データ名による参照および更新が行なわ
れなる。
各処理装置は、相互に情報交換を行ないながら並列に動
作する。統合ファイル管理装置UFへは、このため、多
重アクセス要求が発生する。これらのアクセスは、動的
に発生するため、統合ファイル管理装置UFを利用する
側の処理装置においては、多重アクセスが発生している
かどうかを判別することができない。またたとえ、多重
アクセスが発生していることを判別することができたと
しても、後からアクセスを要求した処理装置がファイル
に対してアクセスを実行してよいかどうかは、アクセス
を要求した処理装置は知ることができない。このため、
統合ファイル管理装置UFは、マルチプロセス環境にお
いてファイルに関する一連のアクセスに対する一貫性を
保証するための機構を備える。このような機構として、
統合ファイル管理装置UFを利用する側がアクセス要求
を行なったとき、引き続いて同一ファイルの同一レコー
ドに対してアクセス要求を行なうか、また、どのような
アクセス要求を行なうかを統合ファイル管理装置UFに
通知することにより統合ファイル管理装置UFにおいて
ファイルの必要な範囲にロックをかけるロック制御機構
が設けられる。
ロック制御は1つのプリミティブとして実現される。統
合ファイル管理装置UFが管理するファイルには、テン
ポラリファイルとパーマネントファイルの2種類存在す
る。テンポラリファイルは、1度使用すると消費される
。パーマネントファイルは、対象プログラムの実行前後
を通じて保存される。ファイルを使用するプリミティブ
を実行する場合には、書込み対象となるテンポラリファ
イルは常に作成される。次に、この発明の一実施例であ
るプログラム開発装置によるソウトウエアシステムの作
成の具体的例について説明する。
今在庫管理問題の中から、「キー」によって検索するモ
ジュールを記述する場合を考える。今具体的な問題とし
て、以下の問題を記述する。
検索データは品物リストである。この品物リストは、 「品物リスト二品物コード、品名、数量、納入元」の構
造を持っている。検索項目(キー)は、品名コードまた
は数量である。数量を「キー」とする検索の場合には、
与えられた数量以上の品物コードに対応する品物をリス
トする。
まず、第28図に示すように、外部とのインタフェース
を記述する。この記述対象のシステムは、品名コードを
人力して該当リストを出力する品名検索モジュール91
a1品物リストファイル91b1および外部モジュール
(ユーザ)91c、数量を入力して同じく該当リストを
出力する数量検索モジュール91dを含む。この機能側
面からの記述は機能ブロック図91により表現される。
このときこの機能ブロック図91で表現されたモジュー
ル情報はシーケンスチャートに変換され、表示されてい
る(第28図右下部参照)。
次に第29図に示すように、各モジュール間におけるデ
ータ流れの順序関係を記述する。第1のシーケンスチャ
ート92においては、品名検索シーケンスを記述し、第
2のシーケンスチャートにおいては数量検索のシーケン
スを記述する。このシーケンスチャート92および93
で記述された信号線は、直ちに機能ブロック図94上の
データアークに変換され表示される。このとき、シーケ
ンスチャートにおいてはポート情報は反映されないため
、ポート情報に関しては機能ブロック図94において記
述する。
ここで、シーケンスチャートを用いてデータ相互の関係
を記述したが、機能ブロック図を用いてデータ相互の関
係を記述してもよい。このように共通の情報が異なる表
現形式間で相互に変換反映されることにより、記述相互
間の矛盾を回避することができる。
次に130図に示すようにデータ構造を記述する。該当
リスト(図示せず)および品物リストを関係表95、品
名コードおよび数量をデータブロック図96で記述する
。第30図に示す例においては、該当リストは最低必要
な品名コードおよび数量のみが記述される。記述された
データ構造と機能ブロック図上のデータアークおよびシ
ーケンスチャート上の信号線は対応づけ操作により対応
づけられる。この対応づけ操作を用いることにより、繁
雑な名前づけの作業から解放される。
次に第31図に示すように、内部モジュールの詳細の定
義を行なう。第31図において、記述対象のモジュール
に含まれる品名検索モジュール91aは、ファイル操作
であるため、表操作図96により記述される。この表操
作図96においては、既に先に記述した機能ブロック図
により入出力情報が変換され反映されている。この表操
作図96における表データの構造は、関係表95aおよ
び95bから引用される。引用されたデータ構造は、元
の関係表と対応づけられている。したがって、元の関係
表データ構造を変更すれば、この表操作図96における
データ構造も変更される。これにより仕様の変更に伴う
変更忘れを防止することができる。
品名検索モジュールは、第31図に示す表操作図で記述
したことによりその仕様記述が完結し、実行可能となる
。この実行可能となっな品名検索モジュールに対し第3
2図に示すようにプロトタイピングを行なって仕様記述
内容を検証する。すなわち品物リスト96aの品物コー
ドを入力データとし、該当りスト96bを出力データと
する。
品物リスト96aの品物コードに、品物リストに含まれ
る品名コードを記入する。以下、装置の実行動作により
、この品名コード3に対応する品物が該当リスト上にそ
の対応の数量とともに表示される。このプロトタイピン
グにより得られた実行結果に従って仕様記述内容を、対
象とする仕様に従って変更し、再度実行して検証する。
この後、検索システムの仕様の記述が完了した場合、こ
れは1つの部分的に完結したモジュールであり、「部品
」として登録する。
上記実施例のプログラム開発装置によれば、多面的な角
度から仕様記述を行なうことができ、しかも、仕様記述
の水準において完結している仕様を部品として登録する
ことができる。したがって、利用者は、登録されている
部品の仕様を、現在仕様記述を行なっている水準におい
て多面的な角度から見ることができる。それにより、利
用者は、記述しようとしている仕様にその部品が整合し
ているか否かを容易に調べることができ、部品の再利用
によるプログラムの生産性の向上を図ることができる。
[発明の効果] 以上のようにこの発明によれば、利用者が作成した仕様
記述を部品情報として登録する機能および登録された部
品情報を提示する機能を有するので、利用者が登録され
た部品の内容を容易に知ることができ、登録された部品
の再利用が容易になる。したがって、プログラムの開発
効率が向上する。
【図面の簡単な説明】
第1図はこの発明の一実施例であるプログラム開発装置
の全体の構成を概略的に示す図である。 第2図はこの発明において用いられる仕様記述表現形式
の1つである機能ブロック図を例示する図である。第3
図はこの発明において利用可能な仕様記述表現形式の1
つであるシーケンスチャートを例示する図である。第4
図はこの発明において用いられる仕様記述表現形式の1
つである関係表を例示する図である。第5図はこの発明
において利用可能な仕様記述表現形式の1つである決定
表を例示する図である。第6図はこの発明において利用
可能な仕様記述表現形式の1つであるデータブロック図
を例示する図である。第7図はこの発明において利用可
能な仕様記述表現形式の1つである表操作図を例示する
図である。第8図は複数の表現形式を用いて仕様記述を
行なった際の「引用」および「対応づけ」操作を例示す
る図である。 第9図はこの発明の一実施例であるプログラム開発装置
において生成された仕様記述情報の構成の一例を示す図
である。第10図はこの発明によるプログラム開発装置
において用いられる仕様記述情報の構成を一覧にして示
す図である。第11図は仕様記述情報に含まれる順序線
情報の構成を示す図である。′1a12図は第10図に
示す信号線情報の構成を示す図である。第13図は第1
0図に示す関係データの構成を示す図である。第14図
は第10図に示す包含データの構成を示す図である。第
15図は第10図に示すアトムの構成を示す図である。 第16図はこの発明によるプログラム開発装置における
相互変換装置の動作を示すフロー図である。第17A図
および第17B図は仕様記述表現手段である図形エディ
タと相互変換装置との間のデータ送受シーケンスを例示
する図である。W、18図は複数の口約表現形式の組合
わせからコンストラクト情報を生成する態様を例示する
図である。第19図は複数の口約表現形式の組合わせか
らコンストラクト情報を生成する他の態様を例示する図
である。第20図は相互変換装置において実行される機
能ブロック図とシーケンスチャートの相互変換態様を例
示する図である。第21図はシーケンスチャートと機能
ブロック図との相互変換機能を利用してシーケンス仕様
情報の階層記述における下位階層の情報を生成する態様
の一例を例示する図である。第22図は相互変換機能を
利用して仕様記述の階層記述における下位階層の情報を
生成する他の態様を例示する図である。第23図はこの
発明によるプログラム開発装置におけるプロトタイピン
グ実行動作を示すンーケンスチャート図である。第24
図は統合ファイル管理装置に格納される情報を模式的に
示す図である。第25図は部品管理装置の部品登録機能
を説明するためのフローチャートである。第26図は部
品管理装置の部品参照機能を説明するためのフローチャ
ートである。第27図は部品管理装置の部品引用機能を
説明するためのフローチャートである。゛第28図、第
29図、第30図、第31および第32図はこの発明に
よるプログラム開発装置を用いた仕様記述の一具体例を
示す図である。 図において、1は本体装置、IOは入出力装置、CVは
相互変換装置、EXは実行装置、cpは部品管理装置、
UFは統合ファイル管理装置、E。 E1〜Enはエディタ、DPは表示装置である。 なお、各図中同一符号は同一または相当部分を示す。 第3図 第4図 第5図 第11図 第12図 第13図 第14図 第16図 E 第77A図 O 入出力系 C■ モジュール情報作成 第18図 第178図 v 第19図 第20図 第22図 第21図 島27図 手 続 補 正 書 αバ0 平成2年11月14日 2、発明の名称 プログラム開発装置 3、補正をする者 事件との関係 特許出願人 住 所 大阪市阿倍野区長池町22番22号名 称 (
504)シャープ株式会社   (外3名)頽者辻 晴
雄 4、代理人 住 所 大阪市北区南森町2丁目1番29号 住友銀行
南森町ビル電話 大阪(06)361−2021 (f
t)6、補正の対象 図面の第31図 7、補正の内容 (1) 浄書した図面の第3 す(内容に変更なし)。 1図を別紙のとお 以上

Claims (1)

  1. 【特許請求の範囲】 利用者が目的プログラムに関する図的な仕様記述を画面
    上で作成する仕様記述手段、 前記仕様記述手段により作成された仕様記述を実行可能
    なプログラムに変換する変換手段、および 前記仕様記述手段により作成された仕様記述を部品情報
    として登録する機能および登録された部品情報を提示す
    る機能を有する部品管理手段を備えた、プログラム開発
    装置。
JP2191820A 1990-07-17 1990-07-17 プログラム開発装置 Expired - Fee Related JP2571144B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2191820A JP2571144B2 (ja) 1990-07-17 1990-07-17 プログラム開発装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2191820A JP2571144B2 (ja) 1990-07-17 1990-07-17 プログラム開発装置

Publications (2)

Publication Number Publication Date
JPH0475135A true JPH0475135A (ja) 1992-03-10
JP2571144B2 JP2571144B2 (ja) 1997-01-16

Family

ID=16281069

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2191820A Expired - Fee Related JP2571144B2 (ja) 1990-07-17 1990-07-17 プログラム開発装置

Country Status (1)

Country Link
JP (1) JP2571144B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5721926A (en) * 1993-01-12 1998-02-24 Kabushiki Kaisha Toshiba Correspondence-oriented state-transition-model-based programming systems
US5826086A (en) * 1995-03-17 1998-10-20 Fujitsu Limited Device and method for aiding designing process of software development
JPH10320187A (ja) * 1997-05-19 1998-12-04 Mitsubishi Electric Corp システムモデル化方式及びデータ通信方式
JP2007219649A (ja) * 2006-02-14 2007-08-30 Mitsubishi Electric Corp ダイヤグラム編集装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58115575A (ja) * 1981-12-29 1983-07-09 Fujitsu Ltd グラフ図形作成システム
JPS58169244A (ja) * 1982-03-31 1983-10-05 Fujitsu Ltd プログラム開発方式
JPS60159939A (ja) * 1984-01-30 1985-08-21 Hitachi Ltd 図式・ソ−スプログラム自動生成方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58115575A (ja) * 1981-12-29 1983-07-09 Fujitsu Ltd グラフ図形作成システム
JPS58169244A (ja) * 1982-03-31 1983-10-05 Fujitsu Ltd プログラム開発方式
JPS60159939A (ja) * 1984-01-30 1985-08-21 Hitachi Ltd 図式・ソ−スプログラム自動生成方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5721926A (en) * 1993-01-12 1998-02-24 Kabushiki Kaisha Toshiba Correspondence-oriented state-transition-model-based programming systems
US5826086A (en) * 1995-03-17 1998-10-20 Fujitsu Limited Device and method for aiding designing process of software development
JPH10320187A (ja) * 1997-05-19 1998-12-04 Mitsubishi Electric Corp システムモデル化方式及びデータ通信方式
JP2007219649A (ja) * 2006-02-14 2007-08-30 Mitsubishi Electric Corp ダイヤグラム編集装置

Also Published As

Publication number Publication date
JP2571144B2 (ja) 1997-01-16

Similar Documents

Publication Publication Date Title
US5603018A (en) Program developing system allowing a specification definition to be represented by a plurality of different graphical, non-procedural representation formats
US5794042A (en) File management apparatus permitting access to portions of a file by specifying a data structure identifier and data elements
US5212771A (en) System for establishing concurrent high level and low level processes in a diagram window through process explosion and implosion subsystems
US7340745B2 (en) Systems and methods for mapping API calls
US5195178A (en) Adaptive window system for dynamically modeling information systems
US5193182A (en) Computer system for defining logical operations on design data including retrieve entity-set, send, receive, signal, when, reference to entity-set, reference to entity method, connect and disconnect
US5241645A (en) Computer system for creating and manipulating subsets of dynamic information systems models
Florijn et al. Tool support for object-oriented patterns
US5193183A (en) System for accessing design data of modeler subsystems by reference to partnership set and for dynamically correlating design data of modeler subsystems
US5249300A (en) System and method of constructing models of complex business transactions using entity-set variables for ordered sets of references to user data
US5019961A (en) Computer apparatus and method for logical modelling
US7089256B2 (en) Universal data editor
US5752245A (en) Object-oriented system for configuration history management with a project workspace and project history database for draft identification
US5937409A (en) Integrating relational databases in an object oriented environment
US5146591A (en) Dynamic information management system utilizing entity-relationship information model in which the attribute is independent of an entity
US6272672B1 (en) Dataflow processing with events
EP0811193B1 (en) Graphical environment for managing and developing applications
US5179698A (en) System for transforming user data in accordance with an algorithm defined by design data and for evaluating the transformed data against logical criteria
US6633869B1 (en) Managing object relationships using an object repository
KR102836318B1 (ko) 데이터베이스 레코드들을 비교하고 선택적으로 병합하기 위한 시스템 및 방법
JPH0475170A (ja) データベース操作方法
JP2008512794A (ja) オブジェクト処理グラフアプリケーション開発システム
JP2801459B2 (ja) オブジェクトネットワークによる言語処理システム
US5341507A (en) Data drive type information processor having both simple and high function instruction processing units
JPH0475135A (ja) プログラム開発装置

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20081024

Year of fee payment: 12

LAPS Cancellation because of no payment of annual fees