JP3452960B2 - オブジェクト型モデル作成システム、および故障診断システム作成システム - Google Patents

オブジェクト型モデル作成システム、および故障診断システム作成システム

Info

Publication number
JP3452960B2
JP3452960B2 JP32520493A JP32520493A JP3452960B2 JP 3452960 B2 JP3452960 B2 JP 3452960B2 JP 32520493 A JP32520493 A JP 32520493A JP 32520493 A JP32520493 A JP 32520493A JP 3452960 B2 JP3452960 B2 JP 3452960B2
Authority
JP
Japan
Prior art keywords
data
class
creation
design
attribute
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.)
Expired - Fee Related
Application number
JP32520493A
Other languages
English (en)
Other versions
JPH07182152A (ja
Inventor
研二 駒井
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
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP32520493A priority Critical patent/JP3452960B2/ja
Publication of JPH07182152A publication Critical patent/JPH07182152A/ja
Application granted granted Critical
Publication of JP3452960B2 publication Critical patent/JP3452960B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Remote Monitoring And Control Of Power-Distribution Networks (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Stored Programmes (AREA)
  • Feedback Control In General (AREA)
  • Testing And Monitoring For Control Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、故障診断、制御また
は計画などのために、装置やプラントなどのオブジェク
ト型モデルを作成するオブジェクト型モデル作成システ
ムに関するものである。
【0002】
【従来の技術】オブジェクト型モデルの作成方法には、
各種のアプリケーションのそれぞれに適する種々の方法
有る
【0003】図36に示されたものは従来のオブジェク
ト型モデル作成システム100の一例を示したものであ
る。オブジェクト型モデル作成システム100は、アプ
リケーションプログラム3で構成される。なお、アプリ
ケーションプログラム3は、オブジェクト型モデル作成
システム100でない部分を持つことができる。図に示
すように、オブジェクト型モデル1は、1つまたは複数
のオブジェクト2で構成される。アプリケーションプロ
グラム3は、オブジェクト2を作成するためのモデル作
成部4、オブジェクト2を利用するモデル利用部5およ
びオブジェクト作成メソッド6、などで構成される。モ
デル作成部4として、例えば、「コンポウジング ユー
ザ インタフェーシズ (Composing User Interfaces
)」IEEEComputer 第22巻第2号(1989年2月I
EEE発行)」第13頁に示されたプログラムによるも
のを用いることができる。以下、そのプログラムを記述
する。
【0004】 const int space = round(.25*inches); ButtonBtate*status; Frame*frame = new Frame( new VBox( new VGlue(space,vfil), /*(natural size,stretchability)*/ new HBox( new HGlue(space,0), new Message(“hello world”), new HGlue(0,hfil) ), new VGlue(2*space,2*vfil), new HBox( new HGlue(0,hfil) new PushButton(“goodbye world”,status,false), new HGlue(space,0), ), new VGlue(space,vfil), ) );
【0005】このモデル作成部4はオブジェクト指向言
語C++言語によるものであるが、引数がプログラム中
で固定されているオブジェクト作成記述7で構成され
る。C++の場合には、オブジェクト作成記述7は、上
記プログラム中の「new クラス名(引数…) 」である。
オブジェクト作成メソッド6は、オブジェクト作成記述
7を実行すると呼び出されるメソッドである。
【0006】この方式では、各オブジェクト作成記述7
は記述された順番に実行される。各オブジェクト作成記
述7が実行されると、オブジェクト作成メソッド6が起
動され、オブジェクト2が1個作成される。ここでオブ
ジェクト作成メソッド6は、オブジェクト2の属性を初
期化したり、他のオブジェクト2との関係を調整した
り、その他オブジェクト作成時に必要な処理を実行す
る。すべてのオブジェクト2が作成できると、オブジェ
クト型モデル1が完成する。モデル利用部5は、完成し
たモデルを利用してアプリケーションを実行する。この
方式では、オブジェクト2の数は、オブジェクト作成記
述7の数と一致する。従って、大規模のモデルの場合に
は、モデル作成部4が大きくなる。また、オブジェクト
型モデル1を変更する場合には、モデル作成部4を修正
した後コンパイルしなおさねばならない。
【0007】図37は、既に別の形で表現されたデータ
ベースが存在する場合や、大量のデータをより容易に入
力する場合に適するオブジェクト型モデル作成システム
10 を示すものである。この場合には、オブジェクト
作成記述7は、引数を変数にした形で記述される。オブ
ジェクト作成用データ読み込み部9は、オブジェクト作
成用データ8を読み込む。オブジェクト作成記述7は、
読み込まれたデータを引数にして実行される。モデル作
成部4は、オブジェクト作成用データ読み込む部9とオ
ブジェクト作成記述7とを繰り返す形で記述される。
【0008】この方式では、作成されるオブジェクト2
の数は、オブジェクト作成用データ8の数に比例する。
モデル作成部4の規模は、一定であり、データベースの
大きさに影響されない。モデルを修正する場合には、オ
ブジェクト作成用データ8を変更するだけでよい。モデ
ル作成部4を変更する必要が無いので、コンパイルしな
おす必要もない。
【0009】図38は、図37に示されたシステムに対
して、アプリケーション領域の専門家がデータを容易に
入力できるように作成されているモデル作成インターフ
ェース10とオブジェクト作成用データ保存部11とを
付加したシステムである。このようなモデル作成インタ
ーフェース10の例として、「モデルに基づく診断用シ
ェルDASH (電気学会電力技術研究会資料、PE90−7
7、1990年7月20日発行)第99頁に示された電
力系統用構造データエディタが有る図39はその編集
画面を示したものである。この電力系統用構造データエ
ディタは、電力系統図という電力分野の専門家にとって
理解しやすい形で電力系統のデータを入力できるように
なっている。モデル作成インターフェース10は、オブ
ジェクト作成用データ入力部12とオブジェクト作成記
述7とから構成される。
【0010】アプリケーション領域の専門家などのモデ
ル作成者13は、モデル作成インターフェース10に対
してデータを入力する。モデル作成インターフェース1
0において、オブジェクト作成用データ入力部12に、
オブジェクト作成に必要なデータがすべて入力される
と、オブジェクト作成記述7が実行されオブジェクト2
が作成される。必要なオブジェクト2がすべて作成され
ると、オブジェクト型モデル1が完成する。完成したオ
ブジェクト型モデル1は、オブジェクト作成用データ保
存部11によって、オブジェクト作成用データ8形で
保存される。保存されたオブジェクト作成用データ8
は、モデル作成部4によって読み込まれる。そして、オ
ブジェクト型モデル1が作成される。
【0011】オブジェクト型モデルを作成し管理するた
めの汎用的なツールとして、オブジェクト指向データベ
ース構築環境が有る図40は、日経エレクトロニク
ス、1991年1月20日号、第144頁に記載された
オブジェクト指向データベース構築環境21の構成を示
す構成図である。図に示すように、オブジェクト指向デ
ータベース構築環境21は、オブジェクト指向データベ
ースを利用するための多くのツールを備えている。しか
し、この中で、データが正しいかどうかを検査するため
のツールはオブジェクト・インスペクタ22だけであ
る。オブジェクト・インスペクタ22は、オブジェクト
2のデータを表示し変更するツールである。
【0012】オブジェクト指向データベース構築環境2
1の最大の特徴は、永続的に存在するオブジェクト型モ
デル1を容易に作成できることである。通常、アプリケ
ーションプログラム3で作成されたオブジェクト型モデ
ル1は、特別な処理をしない限り、アプリケーションプ
ログラム3が終了すると消滅してしまう。従って、オブ
ジェクト型モデル1を永続させるには、アプリケーショ
ンプログラム3でオブジェクト型モデル1を永続的に存
在させる処理を記述する必要が有る。しかし、オブジェ
クト指向データベース構築環境21を利用すると、アプ
リケーションプログラム3でそのような処理を記述する
必要がなくなる。なお、通常のオブジェクト指向言語で
は、オブジェクト2が永続的に存在するかどうかを区別
しないでよい。そのため、先に説明したオブジェクト型
モデルの作成方式は、永続的に存在するオブジェクト型
モデル1にも適用できる。
【0013】オブジェクト指向データベース構築環境2
1を使用される場合にも、データ作成はアプリケーショ
ンプログラム3で行われる。例えば、情報処理、199
1年5月号第506頁に示されているように、オブジェ
クト指向データベース構築環境がObjectStore やO++
の場合には、以下のようなオブジェクト作成記述7が必
要である。
【0014】 //ObjectStore の場合 db1 = database::open (DBファイル名); //DBのオープン. //db1 にはオープンされた DB へのポインタがはい
る. do_transaction ( ){ part* p = new (db1) part(初期値); ...} //永続的なpart型オブジェクトを生成. //変数 p はこの永続的オブジェクトへのポインタ //O++の場合 persistent part* p; //変数 p は part 型の永続的オブジェクトを指す. p = pnew part (初期値); //pnewによる永続的オブジェクトの生成 従って、データが意図したとおりに正しく作成できるか
どうかは、データを作成するアプリケーションプログラ
ム3に全面的に責任が有る
【0015】図41は、 「メルダッシュ(MELDASH):
A Diagnostic Application-specific Expert Systems S
hell for Network Fault Diagnosis 」International J
ournal of Electrical Power & Energy Systems,第14
巻第2/3 号(1992年)第220頁に記載された、
故障診断システム作成システムを示したものである。故
障診断システム作成システム31は、診断対象がモデル
化されたものである診断対象モデル32、診断を実行す
る診断アルゴリズム33および診断対象モデル32を作
成するためのモデル開発用インターフェース34で構成
される。
【0016】診断対象モデル32は、オブジェクト型モ
デル1、診断対象の機能を表現する機能ルール35およ
び診断対象の構成要素の状態遷移の様子を表現する状態
と遷移のネットワークである遷移ネットワーク36で構
成される。診断アルゴリズム33は、仮説生成部37、
シミュレーション部38および仮説検証部39で構成さ
れる。モデル開発用インターフェース34は、オブジェ
クト型モデル1を作成するためのモデル作成インターフ
ェース10、機能ルールを編集する機能ルールエディタ
40、遷移ネットワーク36を図形表示するツールであ
る遷移ネットワークモニタ41および遷移ネットワーク
36を作成する遷移ネットワーク合成部801で構成さ
れる。モデル作成インターフェース10は、例えば図3
に示されるようなインターフェースで、診断対象ごと
に作成される。機能ルールエディタ40および遷移ネッ
トワークモニタ41は、すべての診断対象に共通に使用
される。
【0017】故障診断システム42は、観測データ46
を入力として診断解50を出力とする。故障診断システ
ム42は、モデル開発用インターフェース34によって
作成された診断対象モデル32、診断アルゴリズム33
および故障診断インターフェース43で構成される。故
障診断インターフェース43は、故障診断システムの使
用者とのインターフェースであり、観測データ46を取
り込む観測データ設定部44と診断結果を表示する診断
解表示部45とを含む。
【0018】次に動作について説明する。診断対象に関
するオブジェクト型モデル1が、モデル作成インターフ
ェース10によって作成される。そして、遷移ネットワ
ーク合成部801は、オブジェクト型モデル1と機能ル
ール35とから遷移ネットワーク36を合成する。ま
た、診断対象ごとに故障診断インターフェース43が作
成される。
【0019】故障診断システム42において、観測デー
タ設定部44は診断対象からの観測データ46を取り込
み、診断アルゴリズム33が処理しやすい変換後観測デ
ータ47に変換する。そして、診断アルゴリズム33が
起動される。診断アルゴリズム33において、まず、変
換後観測データ47が仮説生成部37に入力される。仮
説生成部37は、診断対象モデル33を参照して故障の
仮説48を生成する。故障の仮説48はシミュレーショ
ン部38に入力される。シミュレーション部38は、故
障の仮説48を用いて診断対象モデル33を対象として
シミュレーションを行い、シミュレーション結果49を
求める。仮説検証部39は、シミュレーション結果49
と変換後観測データ47とを比較して、矛盾を検出した
場合には故障の仮説48を棄却する。矛盾が検出されな
いで、すべての変換後観測データ47がシミュレーショ
ン結果49にも発生していれば、その故障の仮説48を
診断解50とする。すべての故障の仮説48についてシ
ミュレーションされると診断解表示部45は、診断解5
0を表示する。
【0020】
【発明が解決しようとする課題】従来のオブジェクト型
モデル作成システム100は以上のように構成されてい
るので、以下のような問題点があった。 (1)オブジェクト作成をオブジェクト指向言語で記述
されたアプリケーションプログラム3で行っている。そ
のために、クラス設計の不具合、コーディング上の不具
合、誤データの混入などの原因により、オブジェクト型
モデルが矛盾なく作成できない可能性が有る。
【0021】(2)アプリケーション領域の専門家がデ
ータを容易に入力できるモデル作成インターフェース1
0を作成することは、対象によっては非常に困難であ
る。オブジェクトの種類が少ない場合は容易である。し
かし、細部が異なる多くのバリエーションを持つ場合に
は、プログラムの記述量がバリエーションの数にほぼ比
例して増大するので、モデル作成インターフェース10
の作成は非常に困難である。
【0022】(3)オブジェクト型モデル1は、モデル
化対象物が正しく模擬されたものでなければならない。
しかし、オブジェクト型モデル1はアプリケーションプ
ログラム3が処理しやすいような構成になっているの
で、アプリケーション領域の専門家にとって必ずしも理
解が容易ではない。また、アプリケーションプログラム
3の作成者は、一般に、アプリケーション領域の専門知
識が無い。そのため、オブジェクト型モデル1がモデル
化対象物を正しく模擬しているかどうかを検証すること
は容易ではない。
【0023】(4)図41に示すように、モデルに基づ
く診断アルゴリズム33を持つ故障診断システム作成シ
ステムであっても、オブジェクト型モデル1を作成する
機能は持っていない。そのため、オブジェクト型モデル
1を診断対象ごとに作成しなければならない。細部が異
なる多くのバリエーションが有る診断対象の場合には診
断対象モデル32を作成するのは困難である。
【0024】請求項1〜請求項6の何れか一に記載の発
明は上記(1)のような問題点を解消するためになされ
たもので、複雑な構造を持つモデル化対象物のオブジェ
クト型モデルを矛盾なく作成するとともに、作成したオ
ブジェクト型モデルをさまざまなアプリケーションで容
易に再利用できるオブジェクト型モデル作成システムを
得ることを目的とする。
【0025】請求項7〜請求項10の何れか一に記載の
発明は上記(2)のような問題点を解決するためになさ
れたもので、アプリケーション領域の専門家がデータを
容易に入力できるモデル作成インターフェースを容易に
作成できるオブジェクト型モデル作成システムを得るこ
とを目的とする。
【0026】請求項11に記載の発明は上記(3)のよ
うな問題点を解消するためになされたもので、オブジェ
クト型モデルがモデル化対象物を正しく模倣しているか
どうかをアプリケーション領域の専門家が容易に検証で
きるオブジェクト型モデル作成システムを得ることを目
的とする。
【0027】請求項12に記載の発明は上記(4)のよ
うな問題点を解消するためになされたもので、細部が異
なる多くのバリエーションが有る診断対象の場合にも故
障診断システムを容易に作成できるオブジェクト型モデ
ル作成システムを利用する故障診断システム作成システ
ムを得ることを目的とする。
【0028】この発明に係るオブジェクト型モデル作成
システムは、ブジェクトの属性の定義域オブジェク
ト間の関係を定義するオブジェクト関係データの何れか
または両方を有するクラス設計内容データと、該クラス
設計内容データの内容を専用言語で記述したクラス設計
内容記述とオブジェクト指向言語で記述されたクラスの
定義記述からなるテキストファイルであるクラス設計内
容ファイルと、前記クラス設計内容ファイルを読み込
み、前記クラス設計内容記述の構文規則違反の有無をチ
ェックし、前記クラス設計内容データに変換し、変換し
た前記クラス設計内容データ間でクラスの継承関係及び
オブジェクト間の関係に関する矛盾の有無をチェックす
クラス設計内容データ作成手段と、前記クラス設計内
容データを利用してオブジェクトを作成するオブジェク
ト作成メソッドを有する関数ライブラリと、前記関数ラ
イブラリを利用してオブジェクト型モデルを作成するオ
ブジェクト型モデル作成手段とを備え、前記オブジェク
ト作成メソッドが下記(1)と(2)の何れかまたは両
の処理を行うものである。 (1)オブジェクトの属性の前記定義域とオブジェクト
の属性値を比較し、前記定義域に含まれない属性値の場
合にエラーとして出力する (2) 前記オブジェクト関係データを利用して、オブジ
ェクトが作成される場合に、他のオブジェクトとの間の
関係付けを自動で作成する。
【0029】また、前記クラス設計内容記述にオブジェ
クトの属性値の参照と設定の可否を記述し、該記述を前
記クラス設計内容データ作成手段が前記クラス設計内容
データに変換し、前記クラス設計内容データを利用して
可否を判断して、否の場合はエラーとして出力し、可の
場合には前記オブジェクト型モデルを利用するデータ処
理メソッドが前記関数ライブラリに有り、前記関数ライ
ブラリを使用してオブジェクト型モデルを利用するモデ
ル利用手段を備え、下記の少なくとも一の処理を行う前
記データ処理メソッドを有するものである。 (1)オブジェクトの属性値を返す。 (2)オブジェクトの属性値に値を設定する。 (3)オブジェクトの属性値の集合に値を追加する。 (4)オブジェクトの属性値の集合から指定された条件
を満足する1個のものを返す。 (5)オブジェクトの属性値の集合から指定された条件
を満足するものの集合を返す。
【0030】さらに、前記クラス設計内容記述にオブジ
ェクト型モデルのデータを利用するメソッドを定義する
記述であるメソッド定義記述が有り、該メソッド定義記
述をクラス設計内容データの一部であるメソッド定義デ
ータに前記クラス設計内容データ作成手段が変換し、該
メソッド定義データからデータ処理メソッドを自動作成
する自動作成手段と、該自動作成手段が利用するメソッ
ド定義のひな型とを備え、自動定義される前記データ処
理メソッドで使用されるデータ処理関数を前記関数ライ
ブラリが有し、前記自動作成手段が前記メソッド定義デ
ータから使用する前記メソッド定義のひな型を選定し、
前記メソッド定義データを前記メソッド定義のひな型の
変数部分に代入して、前記データ処理メソッドを自動作
成し、下記の少なくとも一の種類の前記メソッド定義の
ひな型を有するものである。 (1)オブジェクトの属性値を返す。 (2)オブジェクトの属性値に値を設定する。 (3)オブジェクトの属性値の集合に値を追加する。 (4)オブジェクトの属性値の集合から指定したクラス
のオブジェクトを1個返す。 (5)オブジェクトの属性値の集合から指定したクラス
のオブジェクトの集合を返す。 (6)オブジェクトの属性値の集合から指定した条件を
満足する1個のものを返す。 (7)オブジェクトの属性値の集合から指定した条件を
満足するものの集合を返す
【0031】さらにまた、設計内容の入力項目に関する
固定的なデータである設計シート固定データと入力項目
の内容データであり、かつモデル化対象物の設計内容を
記述する設計シート内容データを有する設計シートと、
前記設計シート内容データを前記オブジェクト作成用デ
ータに変換し、かつ、前記オブジェクト作成用データと
前記設計シート内容データを管理するオブジェクト作成
用データ管理手段とを備え、前記オブジェクト作成用デ
ータ管理手段が前記設計シート固定データを利用して前
記設計シート内容データに入力された値が入力可能な値
かどうかをチェックし、前記設計シート固定データとし
て下記(1)〜(5)のデータを有し、前記設計シート
内容データとして下記(A)〜(F)のデータを有する
ものである。 (1)他の設計シートとの関係を表現するデータ。 (2)設計シートに所属する入力項目。 (3)以下を有する入力項目のデータ。 (ア)入力される値の定義域。 (イ)所属する設計シート。 (ウ)他の入力項目との関係を表現するデータ。 (エ)オブジェクト作成用データとの関係を表現するデ
ータ。 (4)設計シートまたは入力項目である対象要素と、対
象要素の状態の変更方向と、対象要素の状態を変更する
ための条件とを有する有効性変化条件。 (5)入力項目と存在するオブジェクト作成用データか
参照され、入力項目に入力された値からオブジェクト
作成用データの値を決定するためのデータであるオブジ
ェクト関係付け。 (A)設計シートに入力が必要かどうかの状態。 (B)設計シートに入力が完了しているかどうかの状
態。 (C)入力項目に入力が必要かどうかの状態。 (D)入力項目の定義域の中で入力可能な範囲。 (E)入力項目に入力が完了しているかどうかの状態。 (F)入力項目に入力された値。
【0032】さらに、前記関数ライブラリが前記設計シ
ート固定データを利用して前記設計シート入力手段を実
現する少なくとも1個の関数またはメソッドを有し、前
記関数ライブラリを使用して実現する前記設計シート内
容データを入力または変更する設計シート入力手段を備
え、前記設計シート固定データに設計シートまたは入力
目を画面に表示するためのデータを持たせるようにし
たものである。
【0033】そしてさらに、前記設計シート内容データ
を記述するテキストファイルである設計シート内容ファ
イルと、前記設計シート固定データを利用して該設計シ
ート内容ファイルを入力として前記設計シート内容デー
タに変換する設計シート内容データ作成手段とを備える
ようにしたものである。
【0034】そしてさらにまた、オブジェクト型モデル
または前記オブジェクト作成用データの少なくとも一か
ら前記設計シート内容データを復元する設計シート内容
データ復元手段をさらに備えたものである。
【0035】この発明に係る故障診断システム作成シス
テムは、この発明に係るオブジェクト型モデル作成シス
テムを備え、このオブジェクト型モデル作成システムに
よりオブジェクト型モデルを作成するものである。
【0036】
【実施例】実施例1.以下、この発明の第1の実施例に
よるオブジェクト型モデル作成システム100を図につ
いて説明する。図1はこの実施例によるオブジェクト型
モデル作成システム100の構成を示すブロック図であ
る。オブジェクト型モデル作成システム100は、クラ
ス設計内容データ101、クラス設計内容読み込み処理
部102、クラス設計内容ファイル103および関数ラ
イブラリ104、およびアプリケーションプログラム3
の一部(モデル作成部4とモデル利用部5を含む)から
構成される。このシステムは、図36に示されたシステ
ムが改良されたものに相当する。ここでは、クラス設計
内容データ101、クラス設計内容読み込み処理部(ク
ラス設計内容データ作成手段)102、クラス設計内容
ファイル103および関数ライブラリ104が追加され
ている。また、モデル作成部(オブジェクト型モデル作
成手段)4はアプリケーションプログラム3に存在する
が、オブジェクト作成メソッド6は、アプリケーション
プログラム3に存在するのではなく、関数ライブラリ1
04に登録されている。クラス設計内容データ101
は、クラス設計内容読み込み処理部102によって、
キストファイルであるクラス設計内容ファイル103に
もとづいて作成されるデータである。 これは、「クラ
ス設計内容ファイル103」と「クラス設計内容データ
101」の関係は、従来のオブジェクト指向言語でのオ
ブジェクト作成記述と作成されたオブジェクトと同様な
関係である。なお、クラス設計内容読み込み処理部10
2は関数ライブラリ104と同様にあらかじめ用意され
ている。
【0037】クラス設計内容データ101は、クラス名
111、継承関係112、属性名113、メソッド11
4、オブジェクト管理データ120、属性の定義域12
1、他のオブジェクトとの関係(オブジェクト関係デー
タ)122およびクラスに関するその他のデータ123
で構成される。継承関係112、属性名113およびメ
ソッド114はオブジェクト指向プログラミング言語で
のプログラム記述から得られるデータである。他のデー
タは、専用言語による記述から生成されるデータであ
る。専用言語による記述は、クラス設計内容データ10
1が持つべきデータをそのまま文字表記した場合のよう
な記述でもよく、さらには特別の文法を有するものであ
ってもよい。クラス設計内容読み込み処理部102は、
ファイル読み込み部131、シンタックスチェック部1
32、クラス設計内容データ作成部133およびクラス
設計内容データ矛盾検査部134で構成される。クラス
設計内容ファイル103は、クラス設計内容記述135
で構成される。クラス設計内容記述135は、クラス設
計内容読み込み処理部102で一度に処理される記述で
ある。関数ライブラリ104には、オブジェクト作成メ
ソッド6とその他の関数136が有る。
【0038】クラス設計内容ファイル103の例を図2
および図3に示す。クラス設計内容記述135は、オブ
ジェクト指向言語による記述137と専用言語による記
述138とに分けられる。クラス名111、継承関係1
12、属性名113、メソッド114等はオブジェクト
指向言語による記述137に含まれ、属性の定義域12
1、他のオブジェクトとの関係(オブジェクト関係デー
タ)122およびクラスに関するその他のデータ123
等は専用言語による記述138に含まれる。図2は、オ
ブジェクト指向言語による記述137と専用言語による
記述138とを別のファイルにする場合の構成を示した
ものである。図3は、オブジェクト指向言語による記述
137のコメント部分に専用言語による記述138を入
れる場合の構成を示したものである。ファイル読み込み
部131は、オブジェクト指向言語による記述137の
コメント部分も処理対象とするので、専用言語による記
述138を読み込むことができる。ただし、専用言語に
よる記述138と単なるコメントを区別するために、専
用言語による記述138の開始と終了の記号または予約
語などを決めておく。例えば、「(def-class−info
クラス名 クラスに関する定義…)」というように、カ
ッコを開いて最初にdef-class−infoという予約語で始
まり、最初に開いたカッコと対応が取れる閉じカッコま
でを1個のクラスに関するクラス設計内容記述135と
する。クラスの属性ごとのクラス設計内容記述135
や、クラスのオブジェクトの関係のクラス設計内容記述
135な どは、別の予約語を使用して記述する。専用言
語による記述138の開始から終了までの範囲にない部
分は、読み込むだけでクラス設計内容データ101を作
成しない。ファイル読み込み部131は、このようなク
ラス設計内容ファイル103の記述の仕方に合わせて作
成されている。
【0039】図4はデジタルリレーのオブジェクト型モ
デル1を作成する場合のクラス設計内容データ101の
例を示したものである。クラス設計内容データ101は
オブジェクトとして表現され、クラスごとのデータであ
るクラス別データ141、属性ごとのデータである属性
別データ142およびオブジェクト間の関係を表現する
関係別データ143などの種類が有る
【0040】なお、以下の図では、オブジェクト1は一
番上の欄に、オブジェクト2のクラス名が記載され、そ
の下に属性と属性値を:で区切って記載されたものとし
て示す。属性値が括弧で囲われている場合には属性値が
集合であることを意味する。”・・・”は、省略を意味
する。
【0041】クラス別データ141は、クラス名11
1、親クラスや子クラスの継承関係112、属性名11
3、オブジェクト関係データ120、そのクラスに定義
された属性別データ142、そのクラスの関係別データ
143などのデータを持つ。
【0042】オブジェクト管理データ120は、いくつ
かの属性によって表現される。属性”オブジェクト管理
データ”は、このクラスのオブジェクトが存在するデー
タ領域を意味する。属性”オブジェクトが存在?”は、
このクラスのオブジェクトが存在することが許される
どうかを意味する。属性”子孫クラスのオブジェクトが
必要?”は、このクラス子孫クラスのオブジェクトが
存在しなければならないかどうかを意味する。属性”可
能オブジェクト数”は、このクラスまたは子孫クラスの
オブジェクトが何個まで存在できるかを意味する。属
性”作成オブジェクト数”は、実際に作成されたオブジ
ェクト数を意味する。なお、オブジェクト管理データ1
20は、クラス間で継承されない。
【0043】図4に示すクラス別データ141は以下の
ような意味を持つ。クラス”PCMリレー”は、クラ
ス”デジタルリレー”の子クラスである。クラス”デジ
タルリレー”のオブジェクトは存在しないで、クラス”
PCM リレー”などの”デジタルリレー”をより特殊
化したクラスのオブジェクトが存在する。また、クラ
ス”デジタルリレー”またはその子孫のクラスは1個だ
け存在する必要が有る。従って、クラス”PCM リレ
ー”の属性”可能オブジェクト数”の値は1でなければ
ならない。あるクラスの属性”可能オブジェクト数”の
値が1で、祖先のクラスの属性”可能オブジェクト数”
の値が複数という場合はありうる。図4に示すクラス
“デジタルリレー”のクラス別データ141は、例え
ば、「(def-class-info デジタルリレー :has-inst
NO :has-inst2 YES :inst-number 1)」のような専
用言語の記述から作成される。「:has-inst」の後に記
述された値が属性“オブジェクトが存在?”の値に変換
され、「:has-inst2」が属性“子孫クラスのオブジェク
トが必要?”に変換され、「:inst-number」が属性“可
能オブジェクト数”に変換される。なお、属性“作成オ
ブジェクト数”は、オブジェクト作成時に変更するの
で、専用言語では記述しない。 また、「:has-inst」
などの各記述項目には、記述しなかった場合のデフォル
ト値を決めておき、デフォルト値と異なる場合だけ記述
するようにしてもよい。デフォルト値を決めておくこと
は、属性などに関する情報を定義する場合でも同様であ
る。
【0044】図4において、デジタルリレーやAIボー
ドの親クラスの基本モデルは、このオブジェクト型モデ
ル作成システム100で作成されるモデルを表現するク
ラスが必ず継承しなければならないクラスである。オブ
ジェクト作成メソッド6は、基本モデルのクラスのメソ
ッドとして定義されている。従って、アプリケーション
プログラム3で定義されるモデルを表現するクラスで、
オブジェクト作成メソッド6が利用可能である。 な
お、”基本モデル”という名前は別の名前でもよい。モ
デルを表現するすべてのクラスが、基本モデルの役割を
持つクラスを継承すればよい。
【0045】属性別データ142は、クラス名111、
属性名113、属性の定義域121などのデータを表現
する属性と、属性”値は集合か?”、属性”初期化に必
要?”という属性を持つ。属性の定義域121の指定方
法としては、とりうる値を列挙するか、クラス名を指定
するなどの方法が有る。クラス名の場合には、その属性
が他のオブジェクトとの関係を表現するのに使用される
ことになる。従って、その属性には指定したクラスのオ
ブジェクト名が設定される。属性”初期化に必要?”
は、オブジェクト作成メソッド6を実行する時に属性値
が必要かどうかを意味する。
【0046】属性別データ142は、オブジェクト指向
言語での属性と同様な意味においてクラス間で継承され
る。あるクラスで定義した属性別データ142は、子ク
ラスでも有効である。子クラスでも同じ属性名の属性別
データ142を定義していれば、子クラスでは子クラス
の属性別データ142が有効になる。ただし、この場合
には親クラスでの属性別データ142と子クラスでの属
性別データ142が矛盾してはならない。
【0047】図4における属性別データ142は以下の
ような意味を持つ。クラス”デジタルリレー”の属性”
AIボード”は、クラス”AIボード”のオブジェクト
名が設定される。これに対してクラス”PCM リレ
ー”の属性”AIボード”は、クラス”PCM 用AI
ボード”のオブジェクト名が設定される。ここで、クラ
ス”PCM 用AIボード”のオブジェクトは、ク
ス”AIボード”としても扱えるので、この記述は許さ
れる。クラス”PCM リレー”の属性”AIボード”
の定義域として、クラス”デジタルリレー”などのクラ
ス”AIボード”の子孫ではないクラスを設定すること
は、矛盾になる。なお、このような矛盾のチェックは、
クラス設計内容矛盾検査部134により行う。図4に示
すクラス“デジタルリレー”の属性“AIボード”の属
性別データ142は、例えば、「(def-member-info
(AIボード デジタルリレー) :data-class AIボ
ード :listp NO :required-initial NO :linked-memb
er 所属リレー)」のような専用言語の記述から作成さ
れる。 def-member-infoが、属性ごとの定義の開始を
意味する予約語である。ちなみに、例えばオブジェクト
指向プログラミング言語C++では、オブジェクトの属性
をメンバまたはデータメンバと呼ぶので、def-member-i
nfoを属性ごとの定義の開始を意味する予約語としてい
る。def-member-infoの次には、属性名とクラス名をカ
ッコで囲んで書く。つまり、この例では、クラス“デジ
タルリレー”の属性“AIボード”に関して記述する。
「:data-class」がこの属性に設定されるべきデータの
クラスすなわち属性の定義域121に変換され、「:lis
tp」が属性“値は集合か?”に変換され、「:required-
initial」が属性“初期化に必要?”に変換される。「:
data-class」には、クラス名以外にも「symbol」または
「integer」などを指定できる。「symbol」を指定する
と、この属性には文字で表現されるデータが入ることを
意味する。「integer」を指定すると、この属性には整
数が入ることを意味する。「symbol」または「intege
r」を指定する場合は、「:possible」の後に、例えば
「(PCM 回線選択 ブスプロ 変圧器作動)」とい
うように、その属性が取りうる文字列または整数を列挙
してカッコで囲んで指定する。「:possible」による指
定された値が属性の定義域121に変換される。なお、
「:linked-member」は関係別データ143に変換される
ので、後で説明する。また、「:data-class」の値とし
て実数も指定可能とするようにしてもよい。整数または
実数の値を持つ属性では、値を列挙する方法だけでな
く、不等号などにより属性の定義域121を指定できる
ようにしてもよい。
【0048】クラス”デジタルリレー”の属性”AIボ
ード”は初期化に必要ではないが、クラス”AIボー
ド”の属性”所属リレー”は、初期化に必要である。属
性”値は集合か?”と属性”初期化に必要?”の属性値
は、継承関係にあるクラスの同じ名前の属性別データ1
42では、必ず同じでなければならない。
【0049】関係別データ143は、fromクラス名、fr
om属性名、toクラス名、to属性名などのデータを持つ。
fromクラス名とfrom属性名は、fromクラス名のクラスの
オブジェクト作成時に指定される他の要素との関係を意
味する。toクラス名とto属性名は、新しく作成されたfr
omクラス名のクラスのオブジェクトへの関係を設定すべ
きオブジェクトのクラスと属性を意味する。したがっ
て、これらのデータは以下のような制約を満足しなけれ
ばならない。fromクラス名のクラスのfrom属性名の属性
の定義域121はtoクラス名であり、toクラス名のクラ
スのto属性名の属性の定義域121はfromクラス名であ
る。from属性名の属性は初期化に必要であり、to属性名
の属性は初期化に必要でない。図4の関係別データ14
3では、これらの制約が守られている。先に説明した
“デジタルリレー”の属性“AIボード”を記述する専
用言語の記述では、「:linked-member」が指定されてい
るので、関係別データ143を作成する。fromクラス名
には「def-member-info」に記述されたクラス名が入
り、from属性名には属性名が入り、toクラス名に
は、「:data-class」に指定された値が入り、to属性名
には「:linked-member」に指定された属性名が入る。
【0050】関係別データ143も、クラス間で継承さ
れる。クラス”デジタルリレー”とクラス”AIボー
ド”の間に設定された関係別データ143は、クラス”
PCMリレー”やクラス”PCM 用AIボード”のオ
ブジェクトに対しても有効である。したがって、クラ
ス”PCM 用AIボード”のオブジェクトを属性”所
属リレー”にクラス”PCM リレー”のオブジェクト
名を指定して作成すると、クラス”PCM リレー”の
オブジェクトの属性”AIボード”にクラス”PCM
用AIボード”のオブジェクト名が設定される。なお、
図5に示すような関係別データ143は冗長である。冗
長な関係別データ143も矛盾として処理する。
【0051】子クラスは冗長な関係別データ143を持
つことはないが、fromクラス名やtoクラス名に関する制
約は子クラスでも検査される。例えば、図4において、
PCM リレーの属性”AIボード”の定義域をクラ
ス”ブスプロ用AIボード”とすることは矛盾になる。
この関係別データ143が有効なクラス”PCM 用A
Iボード”で、属性”所属リレー”の定義域はクラス”
PCM リレー”である。従って、PCM リレーの属
性”AIボード”にはクラス”PCM用AIボード”の
オブジェクト名が設定される。しかし、PCM リレー
の属性”AIボードの定義域はクラス”ブスプロ用AI
ボード”である。これは矛盾である。
【0052】このオブジェクト型モデル作成システム
00において、クラス名111からクラス別データ14
1への変換は容易である。従って、属性別データ142
から対応するクラス別データ141を容易に参照でき、
関係別データ143から対応するクラス別データ141
や属性別データ142を容易に参照できる。なお、クラ
ス名111からクラス別データ141への変換は、文字
列をキーとするクラス別データ141のハッシュ表など
を利用することにより容易に実現できる。
【0053】デジタルリレーのオブジェクト型モデル1
の例を図6に示す。図6において、点線より上側の属性
が基本モデルで定義された属性である。基本モデルに
は、少なくともオブジェクト名とクラス名という属性が
有る。点線より下側は、アプリケーションプログラム3
で定義されたクラスに固有な属性である。
【0054】なお、図6では、オブジェクト間の参照関
係はオブジェクト名によって表現されている。オブジェ
クト名からオブジェクトへの変換は、クラス名からクラ
ス別データへの変換と同様な方法で容易にできる。オブ
ジェクト間の参照関係をオブジェクト名でなくオブジェ
クトへのポインタで表現してもよい。
【0055】C++流に記述したアプリケーションプロ
グラム3のモデル作成部4の例を以下に示す。 PCMリレー *PCMリレー_Obj = new PCMリ
レー("PCMリレー"," PCMリレー001",..); PCM用AIボード*PCM用AIボード_Obj= new P
CM用AIボード("PCM用AIボード", "PCM用AIボード001", "PCMリレー001",..); ここで、オブジェクト作成記述は、「new クラス名(”ク
ラス名”, ”オブジェクト名”, …)」という形で記述
される。第3引数以降は、そのクラスのオブジ ェクト2
初期化に必要な属性値が順番に並ぶものとする。
【0056】なお、プログラムをC++流に記述すると
いうのは、クラス名や属性名に日本語を使用し、C++
の記述方法にしたがって記述するという意味である。プ
ログラム例は、C++のコンパイラではエラーと見なさ
れる部分を含む。
【0057】次に動作について説明する。クラス設計内
容読み込み処理部102は、クラス設計内容ファイル1
03を読み込んで、以下のようにしてクラス設計内容デ
ータ101を作成する。まず、ファイル読み込み部13
1は、1個のクラス設計内容記述135を読み込む。シ
ンタックスチェック部132は、読み込まれたクラス設
計内容記述135のシンタックスチェックをし、シンタ
ックスエラーがあればメッセージを出力する。次に、ク
ラス設計内容データ作成部133が、読み込まれたクラ
ス設計内容記述135を専用言語の文法から決まる変換
規則に従ってクラス設計内容データ101に変換する。
変換規則の例を説明する。例えば、「(def-class-in
fo デジタルリレー :has-inst NO :has-inst2 YES
:inst-number 1)」(def-class-info :has-inst YES
…)という1個のクラス設計内容記述135は、def-cla
ss-infoで始まることからクラス別データ141に変換
される。そして、「:has-inst」の後に記述されたYESと
いう値が、クラス別データ141の属性“オブジェクト
が存在?”の値に設定するというように変換する。その
後で、クラス設計内容データ矛盾検査部134が今作成
したクラス設計内容データ101と既に作成してあるク
ラス設計内容データ101との間に矛盾が無いかどうか
を検査する。もし、矛盾があればメッセージを出力す
る。矛盾検査は、クラス設計内容データ101のオブジ
ェクトのメソッドにより実行する。このような処理をク
ラス設計内容記述135ごとに繰り返して、ファイルの
終りまでくれば、ファイル読み込み部131がクラス設
計内容記述135を読み込めないことを検出し、クラス
設計内容データ矛盾データ検査部134が必要なクラス
設計内容データ101で作成されていないものが有る
をチェックして、クラス設計内容読み込み処理102は
終了する。
【0058】クラス設計内容データ101が矛盾なく作
成できたならば、アプリケーションプログラム3のモデ
ル作成部4が実行される。モデル作成部4のオブジェク
ト作成記述7が実行されると、オブジェクト作成メソッ
が実行されてオブジェクトが作成される。 そし
て、図6のようなオブジェクト型モデル1が作成され
る。このように矛盾のないクラス設計内容データ101
を利用してオブジェクト型モデル1が作成されるので、
オブジェクト型モデル1においても矛盾は生じない。
【0059】オブジェクト作成メソッドは、図のフ
ローチャートに従って動作する。まず、クラス名からク
ラス別データ141を求める(ステップST101)。
次に、オブジェクトを作成してもよいクラスかどうか
をチェックする(ステップST10A)。クラス”デジ
タルリレー”のオブジェクトを作成しようとすること
は、エラーになる。オブジェクトを作成してもよいクラ
スならば、オブジェクトの数の制約をチェックする(ス
テップST10B)。属性”可能オブジェクト数”の値
が1のクラスで、2個目のオブジェクトを作成しようと
するとエラーになる。いずれかのチェックでエラーにな
ると、オブジェクトを作成できないというエラーメッセ
ージを出力して終了する(ステップST10C)。
【0060】これらの2つのチェックを満足するなら
ば、クラス別データ141の属性”オブジェクト管理デ
ータ”の値を利用してオブジェクトのデータ領域を確保
する(ステップST102)。次に、各属性を初期化す
る(ステップST103)。値が集合の属性には空集合
を割り付け、それ以外にはゼロを代入する。さらに、ク
ラス名とオブジェクト名を設定する(ステップST10
4)。
【0061】ステップST105からステップST11
0までは、初期化に必要な属性ごとに実行される。オブ
ジェクト作成メソッドは、まず、未処理の初期化に必
要な属性を求め、オブジェクト作成メソッドの引数を
前から順番に使用して属性値とする(ステップST10
5)。そして、属性別データ142を求め(ステップS
T106)、属性値が属性の定義域を満足するかどうか
をチェックする(ステップST107)。満足すれば、
属性別データ142の属性オフセットの値を利用して属
性のデータ領域を求め(ステップST108)、属性の
データ領域に属性値を代入する(ステップST10
9)。
【0062】満足しなければエラーメッセージを出力す
る(ステップST110)。 そして、すべての初期化
に必要な属性を処理したかをチェックし(ステップST
111)、未処理のものがあれば、ステップST105
へ戻る。すべて処理していれば、ステップST112へ
進む。
【0063】ステップST112において、オブジェクト作
成メソッドは、そのオブジェクト2のクラスのすべて
の親クラスのクラス別データ141を検索して作成すべ
き全関係別データ143を求める。そして、未処理の関
係別データを取り出す(ステップST113)。また、
from属性名の属性値から関係を設定すべき相手オブジェ
クトを求める(ステップST114)。さらに、相手オ
ブジェクトのto属性名の属性に自分を設定または追加す
る(ステップST115)。to属性名の属性の値が集合
ならば、その集合に自分を追加し、そうでなければ自分
を設定する。オブジェクト作成メソッドは、全関係別
データ143を処理したかをチェックし(ステップST11
6)、未処理のものがあれば、ステップST113へ戻
る。すべて処理していれば終了する。
【0064】実施例2.図8は第2の実施例によるオブ
ジェクト型モデル作成システム100の構成を示すブロ
ック図である。この実施例によるオブジェクト型モデル
作成システム100は、第1の実施例によるシステムに
対して、アプリケーションプログラム3のモデル作成部
4がオブジェクト作成用データ8を使用するように変更
されたものである。ここで、オブジェクト作成用データ
8は、オブジェクト2のクラス名や初期化に必要な属性
の値などのデータである。
【0065】すなわち、オブジェクト作成用データ読み
込み部9は、オブジェクト作成用データ8を読み込む。
それらを引数にしてオブジェクト作成記述7は、読み込
まれたデータを引数にして実行される。 モデル作成部
4は、オブジェクト作成用データ読み込む部9とオブジ
ェクト作成記述7とを繰り返し実行する形で記述され
る。この構成は、既に別の形で表現されたデータベース
が存在する場合や、大量のデータをより容易に入力する
場合に適している。
【0066】実施例3.図第3の実施例によるオブ
ジェクト型モデル作成システム100の構成を示すブロ
ック図である。この実施例によるオブジェクト型モデル
作成システム100は、第2の実施例によるシステム対
して、アプリケーション領域の専門家がデータを容易に
入力できるように作成されているモデル作成インターフ
ェース10とオブジェクト作成用データ保存部11が付
加されたものである。
【0067】アプリケーション領域の専門家などのモデ
ル作成者13は、モデル作成インターフェース10に対
してデータを入力する。モデル作成インターフェース1
0において、オブジェクト作成用データ入力部12に、
オブジェクト作成に必要なデータがすべて入力される
と、オブジェクト作成記述7が関数ライブラリ104中
のオブジェクト作成メソッド6を用いてオブジェクト2
を作成する。必要なオブジェクト2がすべて作成される
と、オブジェクト型モデル1が完成する。完成したオブ
ジェクト型モデル1は、オブジェクト作成用データ保存
部11によって、オブジェクト作成用データ8の形で保
存される。保存されたオブジェクト作成用データ8は、
モデル作成部4によって読み込まれる。そして、オブジ
ェクト型モデル1が作成される。このように、モデル作
成インターフェース10を備えることにより、モデル作
成者13が容易にオブジェクト型モデル1を作成でき
る。 そして、オブジェクト作成用データ8とオブジェ
クト作成用データ保存部11を備えることにより、モデ
ル作成インターフェース10により作成したのと同じオ
ブジェクト型モデル1を、モデル作成インターフェース
10がなくモデル作成部4が有るオブジェクト型モデル
作成システム100で作成できる。
【0068】なお、アプリケーションプログラム3のモ
デル作成部4が上記各実施例における構成以外の構成を
とる場合でも、関数ライブラリ104として用意されて
いるものであって、クラス設計内容データ101を利用
するオブジェクト作成メソッドを使用することができ
る。
【0069】実施例4.図10はオブジェクト型モデル
作成システム100におけるクラス設計内容読み込み処
理部102の他の構成を示したものである。システムの
その他の構成は、図1、図8または図9に示すものと同
様である。この実施例では、クラス設計内容データ矛盾
検出部134は、すべてのクラス設計内容データ101
が作成された後に実行される。その他の動作は、上記各
実施例の場合と同じである。
【0070】なお、クラス設計内容読み込み処理102
部はクラス設計内容ファイル103を読み込み、クラス
設計内容データ101を作成し、その矛盾が検出できる
ならば、別の構成をとってもよい。
【0071】実施例5.図11はオブジェクト型モデル
作成システム100におけるクラス設計内容データ10
1の他の構成を示したものである。システムのその他の
構成は、図1、図8または図9に示すものと同様であ
る。この実施例では、オブジェクト作成メソッドは、
属性別データ142と関係別データ143からクラス別
データ141を直接に参照する。
【0072】実施例6.図12はオブジェクト型モデル
作成システム100におけるクラス設計内容データ10
1のさらに他の構成を示したものである。システムのそ
の他の構成は、図1、図8または図9に示すものと同様
である。この実施例では、関係別データ143は使用さ
れない。属性別データ142が属性“to属性名を有す
る。 属性“to属性名は、新しく作成されたオブジェ
クトへの関係を設定すべき属性“from属性名”の属性
で指定されたオブジェクトの属性を意味する。
【0073】あるクラスの属性別データ142で、to属
性名が設定されたならば、その子クラスの同じ名前の属
性別データ142では、to属性名にはその親クラスの値
が自動的に代入される。子クラスの同じ名前の属性別デ
ータ142で、to属性名に別の値を指定することは矛盾
になる。
【0074】なお、クラス設計内容データ101は属性
の定義域や、他のオブジェクトの関係を表現できるなら
ば、別の構成をとってもよい。
【0075】実施例7.以下、この発明の第7の実施例
によるオブジェクト型モデル作成システム100を図に
ついて説明する。図13はこの実施例によるオブジェク
ト型モデル作成システム100の構成を示すブロック図
である。図13に示すオブジェクト型モデル作成システ
100は、図1に示すシステムに対して、クラス設計
内容データ101にデータ処理に関するデータ300が
有る点、関数ライブラリ104にデータ処理メソッド3
01が有る点およびアプリケーションプログラム3のモ
デル利用部(モデル利用手段)5にデータ処理記述30
3が有る点が異なっている。すなわち、オブジェクト型
モデル1を利用する場合には、アプリケーションプログ
ラム3中のデータ処理記述303が、関数ライブラリ1
04に登録されているデータ処理メソッド301呼び出
す形で利用される。なお、図13では省略しているが、
クラス設計内容記述135には、データ処理に関するデ
ータ300に変換される記述が追加される。
【0076】クラス設計内容データ101に追加され
た、データ処理に関するデータ300は、例えば図14
に示すように属性別データ142を変更することにより
表現される。新たに追加されたデータ参照可能305と
データ設定可能306のデータが、データ処理に関する
データ300である。データ参照可能305とデータ設
定可能306のデータは、例えば「(def-member-info
(AIボード デジタルリレー) :readable YES :set
table YES …)」というクラス設計内容記述135を
クラス設計内容読み込み処理部102により変換規則に
従って変換して作成される。クラス“デジタルリレー”
の属性“AIボード”に関して、:readabl eが参照の可
否を、:settableが設定の可否をそれぞれ記述する。
【0077】C++流に書かれたデータ処理記述303の
は、以下のようになる。デジタルリレー *リレー _Obj; string *ai_board_name = リレーObjー>get_attribute_v
alue("AIボード"); //データ参照記述リレー Objー>set_attribute_value ("AIボード","P
CM用AIボード); //データ設定記述
【0078】なお、get_attribute_value(属性名)
は、属性名の属性値をそのまま返すメソッドであり、se
t_attribute_value(属性名, 新属性値)は、属性名の
属性に新しい属性値を設定するメソッドである。get_at
tribute_value(属性名)とset_attribute_value(属性
名, 新属性値)は、クラス”基本モデル”のメソッドと
して定義するので、関数ライブラリ104として用意で
きる。
【0079】次に動作について説明する。 オブジェク
ト型モデル1を作成するまでの動作は、第1の実施例の
場合と同様である。アプリケーションプログラム3のモ
デル利用部5にデータ処理記述303が有ると、該当す
る関数ライブラリ104のデータ処理メソッド301が
起動される。
【0080】属性値をそのまま返すデータ処理メソッド
301の処理のフローチャートは、図15のようにな
る。データ処理メソッド301は、属性”クラス名”の
値からクラス別データ141を求める(ステップST2
01)。次に、クラス別データ141を引数の属性名で
検索して、属性別データ142を求める(ステップST
202)。 そして、この属性が参照可能かチェックす
る(ステップST203)。参照可能ならば、属性別デ
ータ142の属性オフセットを利用して、属性のデータ
領域を求め(ステップST204)、戻り値に属性のデ
ータ領域にある値を設定する(ステップST205)。
参照可能でないならば、エラーメッセージを出し(ステ
ップST206)、参照できない属性を参照しようとし
たエラーが有ることを示す値を戻り値に設定する(ステ
ップST207)。そして、戻り値を返して終了する
(ステップST208)。
【0081】属性名の属性に新しい属性値を設定するデ
ータ処理メソッド301の処理のフローチャートは、図
16のようになる。データ処理メソッド301は、属
性”クラス名”の値からクラス別データ141を求める
(ステップST301)。 次に、クラス別データ14
1を引数の属性名で検索して、属性別データ142を求
める(ステップST302)。そして、この属性が設定
可能かチェックする(ステップST303)。設定可能
ならば、新しい属性値が属性の定義域121を満足する
かどうかをチェックする(ステップST304)。満足
すれば、属性別データ142の属性オフセットを利用し
て、属性のデータ領域を求め(ステップST305)、
属性のデータ領域に新しい属性値を設定する(ステップ
ST306)。そして、戻り値に正常実行できたことを
意味する値を設定する(ステップST307)。設定可
能でない場合には、エラーメッセージを出し(ステップ
ST308)、エラーが有ることを示す値を戻り値に設
定する(ステップST309)。そして、戻り値を返し
て終了する(ステップST310)。
【0082】なお、データ処理メソッド301の例とし
て、属性の値をそのまま返したり、属性に新しい値を設
したりするものを説明したが、これら以外にもより複
雑な処理の関数またはメソッドも関数ライブラリ104
として用意できる。 例えば、属性値の集合の中からあ
る条件を満足するものだけを選び出すメソッドや、属性
値の集合に要素を追加するメソッドなども関数リブラリ
104として用意できる。
【0083】実施例8.以下、この発明の第8の実施例
によるオブジェクト型モデル作成システム100を図に
ついて説明する。図17はこの実施例によるオブジェク
ト型モデル作成システム100の構成を示すブロック図
である。図17に示すオブジェクト型モデル作成システ
100は、図13に示すシステムに対して、メソッド
定義処理部(自動作成手段)401とメソッド記述のひ
な型404が有る点、データ処理自動定義メソッド(モ
デル利用手段)301Aが有る点、データ処理メソッド
(モデル利用手段)301が無い点、および関数ライブ
ラリ104にデータ処理自動定義メソッド301Aから
呼ばれるデータ処理関数402が有る点が異なってい
る。なお、データ処理に関するデータ300は、メソッ
ドを自動定義するためのメソッド定義データ403を含
む。その他の部分の構成は図13に示す構成と同じであ
る。なお、メソッド定義処理部401はあらかじめ用意
されている関数であり、データ処理自動定義メソッド3
01Aはアプリケーション3に依存する。
【0084】メソッド定義に関するデータや処理の関係
の例を図18に示す。メソッド定義データ403が、メ
ソッド定義処理401の入力になるデータ処理に関する
データ300である。図18に示すメソッド定義データ
403は、クラス”AIボードの属性”AIデータ”を
検索して自端電流データ_pを満足するオブジェクト名を
返すメソッドを、クラス”AIボード”で自動定義すべ
きことを意味する。検索条件関数の自端電流データ_p
は、アプリケーションプログラム3で定義される関数で
ある。また、int subtypep(クラス名1, クラス名
2); は、クラス名1がクラス名2またはその子孫のク
ラスかどうかを判定するデータ処理関数402である。
図18に示すメソッド定義データ403は、「(def-me
mber-info (AIデータ AIボード) :def-func-data
-call-one ((自端電流データ_p)) …)」というクラス
設計内容記述135から作成される。「:def-func-data
-call-one」という予約語に対応して、メソッド定義デ
ータ403の属性“メソッドの種類”の値すなわちメソ
ッド記述のひな型404の種類が決まる。このクラス設
計内容記述135は、クラス“AIボード”で、“find
_one_自端電流データ_p_from_AIデータ()”という名
前のメソッドを定義することを記述する。クラス“AI
ボード”のこの名前のメソッドは、属性“AIデータ”
に格納される集合の各要素に対して“自端電流データ_
p”という関数を適用してゼロでない値を返す最初の要
素を返す関数である
【0085】自動定義されるデータ処理自動定義メソッ
ド301Aは、メソッド記述のひな型404の変数部分
にメソッド定義データ403の値を入れて作成される。
なお、メソッド記述のひな型404の変数は、クラス
名、検索条件関数名、検索属性名などの下線が有る部分
である。メソッド記述のひな型404の種類は、メソッ
ド定義データ403の属性“メソッドの種類”の値から
決まる。メソッドの種類がデータ検索で、図18に示す
ように戻り値が集合でない場合には、メソッド名は” f
ind_one_検索条件関数名_from_検索属性名”となる。
メソッドの中身は、属性を引数にしてデータ処理関数4
02を呼ぶ形で記述される。
【0086】メソッド定義処理401は、メソッド定義
データ403のクラスのメソッドとして定義される。ま
た、データ処理関数402は集合などの基本的なデータ
を表現するクラスのメソッドまたは通常の関数として定
義される。
【0087】次に動作について説明する。まず、クラス
設計内容ファイル103がクラス設計内容読み込み処理
部102に入力される。クラス設計内容読み込み処理部
102は、クラス設計内容ファイル103の内容を用い
てクラス設計内容データ101を作成する。 このと
き、メソッド定義データ403に関しても矛盾検査を行
う。図18に示す場合には、属性”AIデータ”の属性
値が集合でない場合や、検索条件関数”自端電流データ
_p”がクラス”AIデータ”で定義されていない場合に
は、矛盾として検出される。
【0088】次に、メソッド定義処理401が、アプリ
ケーションプログラム3の内容に応じたデータ処理自動
定義メソッド301Aを自動定義する。そして、データ
処理自動定義メソッド301Aやアプリケーションプロ
グラム3がコンパイルリンクされて実行モジュールが作
成される。オブジェクト型モデル1の作成の方法は、第
1の実施例の場合と同様である。オブジェクト型モデル
1は、自動作成されたデータ処理自動定義メソッド30
1Aからデータ処理関数402が呼ばれる形で利用され
る。
【0089】なお、ここでは属性値に代入された集合か
ら条件を満足する1個のオブジェクト名を返すようなデ
ータ処理自動定義メソッド301Aを自動定義する例を
示したが、他の種類のデータ処理メソッドも自動定義で
きる。例えば、属性値の値を返すメソッド、属性値に値
を設定するメソッド、属性値の集合に値を追加するメソ
ッド、属性値の集合から指定した条件に満足するものの
集合を返すメソッドなどである。
【0090】実施例9.以下、この発明の第9の実施例
によるオブジェクト型モデル作成システム100を図に
ついて説明する。図19はこの実施例によるオブジェク
ト型モデル作成システム100の構成を示すブロック図
である。図19に示すオブジェクト型モデル作成システ
100は、図8に示すシステムに対して、設計シート
501と設計シート入力インターフェース(入力インタ
ーフェース)502が追加された点、関数ライブラリ1
04が設計シート入力画面実現メソッド535とオブジ
ェクト作成用データ管理メソッド565を有する点、
よびモデル作成部(オブジェクト型モデル作成手段)
がアプリケーションプログラム3からモデル作成処理
503に移動されている点が異なっている。
【0091】設計シート501はモデル化対象物の設計
内容を記述するデータである。設計シート501はオブ
ジェクト型モデル1を作成するのに必要かつ十分なデー
タを持つ。 設計シート入力インターフェース502
は、モデル作成者13が設計シート501を画面上から
作成したり修正したりするためのインターフェースであ
る。以下、設計シート入力インターフェース502の画
面を設計シート入力画面505と呼ぶ。モデル作成処理
部503は、設計シート501とクラス設計内容データ
101を入力として、関数ライブラリ104の中のオブ
ジェクト作成メソッド6を使用して、オブジェクト型モ
デル1を作成する。
【0092】モデル作成処理部503は、オブジェクト
作成用データ管理処理部507とモデル作成部4とで構
成される。オブジェクト作成用データ管理処理部507
は、クラス設計内容データ101を参照して、設計シー
ト501とオブジェクト作成用データ8を管理する。
施例9におけるオブジェクト作成用データ8は、オブジ
ェクト2のクラス名や初期化に必要な属性の値や設計シ
ートとの関係などのデータである。モデル作成部4にお
いて、オブジェクト作成用データ読み込み部9とオブジ
ェクト作成記述7とが繰り返し実行される。 オブジェ
クト作成記述7は、関数ライブラリ104の中のオブジ
ェクト作成メソッド6を使用して、オブジェクト型モデ
ル1を作成する。そして、アプリケーションプログラム
3のモデル利用部5がオブジェクト型モデル1を利用す
る。ここでは、オブジェクト作成用データ管理処理部5
07がクラス設計内容データ101を利用して設計シー
ト内容データ509からオブジェクト作成用データを作
成または修正し、モデル作成部4およびオブジェクト作
成メソッド6が、クラス設計内容データ101を参照し
てオブジェクト作成用データ8からオブジェクト型モデ
ル1を作成する。すなわち、モデル作成処理部503
は、オブジェクト作成メソッド6を起動するモデル作成
(オブジェクト型モデル作成手段)4およびオブジェ
クト作成用データ管理処理部507を含むものである。
【0093】デジタルリレーのモデルを作成する場合の
設計シート入力画面505の例を図20に示す。1個の
設計シート501に対応して、1個の設計シート入力画
面505が有る。設計シート入力画面505には、いく
つかの入力項目表示510が有る。 図20において、
「リレー種別: PCM 回線選択 ブスプロ 変圧
器差動」、「AIボード枚数: 1 2 3」などが入
力項目表示510である。 また、選択されている値は
太字で、選択できない値は斜体で表示されている。
【0094】設計シート501は、入力操作により変更
されない設計シート固定データ508と、変更される設
計シート内容データ509とに分けられる。設計シート
固定データ508として、設計シート入力画面505を
実現するためのデータや、モデル作成処理503の動作
を制御するためのデータなどが有る。設計シート固定デ
ータ508は、入力項目511、画面表示データ51
2、他の設計シートとの関係514、および設計シート
に関するその他のデータ515などから構成される。設
計シート固定データ508は、予め定義されたクラスま
たはその子孫のクラスのオブジェクトとして表現され
ている。従って、オブジェクト作成用データ管理処理部
507は、設計シート固定データ508のオブジェクト
のクラスまたは予め定義された親クラスに定義されて
いるメソッドすなわちオブジェクト作成用データ管理メ
ソッド565を利用してオブジェクト作成用データ8を
作成することになる。オブジェクト作成用データ管理メ
ソッド565は、前記設計シート固定データと前記クラ
ス設計内容データの少なくとも一を利用するなお、設
計シート内容データ509は、設計シート固定データ5
08のオブジェクト2の一部の属性で表現してもよい
し、設計シート固定データ508のオブジェクト2から
参照可能な別のオブジェクト2としてもよい。
【0095】入力項目511は、入力項目表示510を
実現する予め定義されたクラスまたはその子孫のクラス
オブジェクトである。入力値の定義域521、画面
表示データ512、他の入力項目との関係523、オブ
ジェクト作成用データとの関係525、および入力項目
に関するその他のデータ526などから構成される。入
力値の定義域521は、入力可能な値の範囲である。デ
ジタルリレーの種類すなわちオブジェクトのクラスを決
める場合では PCM 回線選択 ブスプロ変圧器差動
などのようになる。なお、入力値がそのままオブジェク
トの属性値になる場合は、入力値の定義域521を持た
ずに、対応する属性の定義域121 を使用してもよい。
画面表示データ512は、表示位置などのデータであ
る。他の入力項目との関係523とは、この項目と影響
を与えたり受けたりする他の入力項目などである。オブ
ジェクト作成用データとの関係525とは、この項目か
ら決定されるオブジェクト作成用データ8などのことで
ある。これら以外のデータが、入力項目に関するその他
のデータ526である。
【0096】設計シート固定データ508の残りの構成
要素を説明する。画面表示データ512は、ウインドの
サイズや位置やタイトルなどのデータである。他の設計
シートとの関係514とは、何らかの関係をもつ他の設
計シート501のデータである。これら以外のデータ
が、設計シートに関するその他のデータ515である。
図20の設計シート入力画面505の例のように、他の
設計シートとの関係514は設計シート入力画面505
に表示される。設計シート入力画面505から設計シー
ト501を指定することにより、その設計シート501
の設計シート入力画面505への画面渡りできる。
【0097】設計シート内容データ509には、設計シ
ートの状態527と入力項目の状態528とが有る。設
計シートの状態527は、その設計シート501に入力
すべきか、入力完了しているかなどのことである。入力
項目の状態528とは、その項目に入力することが必要
か、入力されているか、入力された値などのことであ
る。
【0098】デジタルリレーのモデルを作成する場合の
設計シート501と入力項目511の例を図21に示
す。設計シート501や入力項目511は、オブジェク
ト1である。なお、図21に示した設計シート501や
入力項目511の表現は一例であり、他の表現も可能で
ある。
【0099】設計シート501は親子関係を持ち、その
設計シート501に属する入力項目511を持つ。子の
設計シート501とは、ある設計シート501の細部を
決めるための設計シート501のことである。設計シー
トの状態527は、属性”有効”、属性”有効初期値”
などの属性などにより表現する。属性”有効”は、この
設計シート501を使用すべきことを意味する。 属
性”有効初期値”は、最初からこの設計シート501を
使用すべきかどうかを意味する。属性”有効性条件”
は、この設計シート501の属性”有効”を変更させる
条件のデータ(以下では、有効性変化条件529と呼
ぶ)を持つ。 属性”有効”、属性”有効初期値”、属
性”有効性条件”などは、入力項目511でも存在する
が、それらは入力項目の状態528を表現する。
【0100】選択項目531や自由項目532は、入力
項目511の最小単位である。選択項目531では、い
くつかの可能な選択肢の中から1つをモデル作成者13
が選択する。自由項目532には、モデル作成者13が
自由にデータを入力する。表要素533や横向表534
は、より小さな入力項目511を組み合わせたものであ
る。横向表534は、表要素533を横に並べた表であ
る。表要素533は、自由項目532をまとめたもので
ある。なお、ここで例に上げた以外の種類の入力項目5
11も存在可能である。図20で、「ボードのID」の
下の表が横向表534の例である。
【0101】選択項目531の属性を説明する。属性”
所属要素”は、その選択項目が属する要素である。属す
る要素は、設計シート501の場合もあれば、表要素5
33の場合もある。属性”選択可能値”は、可能な選択
肢を列挙する。属性”選択不可能値”は、選択できない
選択肢である。属性”選択値”は、実際に選択された値
である。属性”オブジェクト関係付”がオブジェクト作
成用データとの関係525を表現するものである。より
具体的に説明すると、属性”オブジェクト関係付”から
は、この選択値からどのようなオブジェクト作成用デー
タ8を作成するかを表現するデータであるオブジェクト
関係付け561のオブジェクトを参照する。オブジェク
ト作成用データ8からも関連するオブジェクト関係付け
561を参照する。
【0102】図20では、AIボード枚数の選択項目
で、選択値である「1」が太字で表示され、選択不可能
である「2」と「3」は斜体で表示される。このような
画面上での表示や、マウスなどの入力手段による選択値
の入力などを処理するメソッドを、選択項目531は持
つ。 これらの入力項目のオブジェクト2のクラスまた
はその親クラスである予め定義されたクラスに定義され
たメソッドが、予め関数ライブラリ104として準備さ
れる設計シート入力画面実現メソッド535である。そ
のため、設計シート入力インターフェース(入力インタ
ーフェース)502が設計シート入力画面実現メソッド
535を利用する。設計シート入力画面実現メソッド5
35は、前記設計シート固定データと前記クラス設計内
容データの少なくとも一を利用する
【0103】自由項目532の属性”定義域”は、どの
ような値を入力してもよいかを意味する。 入力値は実
際に入力された値である。属性”定義域”は固定の場合
もあれば、他の入力項目511の入力値により変化する
ように記述することもできる。自由項目532は、入力
された値を表示したり、入力手段から値の入力を受け付
けたり、入力値が定義域を満足するかチェックしたりす
るなどのメソッドを持つ。これらのメソッドも、設計シ
ート入力画面実現メソッド535である。
【0104】横向表534の属性”表要素”は、属する
表要素533の集合である。属性”直行軸”は、表要素
を並べる向きに直行する軸に書かれる項目名の集合であ
る。表要素533の属性”項目集合”は、属する自由項
目532の集合である。表要素533に属する自由項目
532は、属性”項目名”が横向表534の属性”直行
軸”に有るものが1個ずつなければならない
【0105】有効性変化条件529の例を図22に示
す。図22は、リレー種別でPCMまたは回線選択が選
択されると、AIボード枚数が2をとれなくなることを
意味する。属性”変化の向き”は、有効化または無効化
のいずれかの値をとる。属性”対象要素”は、有効性が
変化する要素を意味する。属性”対象選択値”は、選択
項目531のある選択肢の有効性を変化させる場合だけ
使用される。選択できなくなった選択肢は、選択項目5
31の属性”選択不可能値”の要素になる。属性”変化
条件”は、有効性の変化が起きる条件が入る。図22で
は、1個の要素に関する要素条件544を使用している
が、複数の要素条件をAND またはOR結合することも可能
である。 設計シート501や入力項目511の属性”
有効性条件”には、対象要素または変化条件に自分を記
述する有効性変化条件529が入る。図22では、有効
性変化条件529の対象要素が選択項目002であり、
変化条件には選択項目001が使用されている。そのた
め、選択項目001と選択項目002の属性“有効性条
件”には、この有効性変化条件529が入る。
【0106】有効化の有効性変化条件529が満足され
ると対象要素の属性”有効”がYESに変化する。逆に、
無効化の有効性変化条件529が満足されると、対象要
素の属性”有効”がNOに変化する。 ある要素で、有効
化と無効化の有効性変化条件529の両方が満足される
場合には、無効化の方を優先し、対象要素の属性”有
効”はNOになる。
【0107】オブジェクト作成用データ8の例を図23
に示す。属性”要求クラス名”は、その子孫のクラスの
オブジェクトを作成する必要が有るクラス名である。属
性”実現クラス名”は、実際に作成されるオブジェクト
のクラス名である。クラスごとにオブジェクトの初期化
に必要な属性の数は異なるので、初期化必要属性データ
551により、1個の初期化必要属性とその属性値を表
現する。属性”初期化必要属性”から初期化必要属性デ
ータ551の集合を参照する。
【0108】図23に示すデジタルリレーのように、子
孫クラスのオブジェクトが必要ならばそのクラスを要求
クラス名とするオブジェクト作成用データ8が作成され
る。この時、要求クラス名のオブジェクトが存在できる
ならば、実現クラス名も要求クラス名と同じにされる。
オブジェクトが存在できないならば、属性”実現クラス
名”の値は未定にされる。初期化必要属性データ551
の属性値は未定にされる。
【0109】オブジェクト作成用データ8の未定部分
は、オブジェクト関係付けデータ561を利用して、設
計シート501に入力されたデータから設定される。オ
ブジェクト関係付けデータ561の例を図24に示す。
オブジェクト関係付けデータ561の種類として、実現
クラス名決定と、設計シート501に入力されたデータ
を初期化必要属性データ551の属性値にそのまま代入
する等値代入と、変換して代入する変換代入とが有る
図24(a)の実現クラス名決定の例では、リレー種別
でPCM が選択されると、要求クラス名がデジタルリ
レーのオブジェクト作成用データ8の実現クラス名がP
CM リレーになる。(b)の等値代入の例では、要求
クラス名がデジタルリレーのオブジェクト作成用データ
8のスロットIDの属性値には、自由項目001の入力値
がそのまま代入される。(c)変換代入の例では、AI
ボード枚数で2または3が設定されると、2枚目のAI
ボードを表現する要求クラス名がAIボードであるオブ
ジェクト作成用データ8のAIボードIDに2が設定さ
れる。
【0110】図25にオブジェクト関係付けデータ56
1と入力項目511とオブジェクト作成用データ8との
間の関係を示す。入力項目511では、属性”オブジェ
クト関係付け”にオブジェクト関係付けデータ561が
格納される。オブジェクト作成用データ8では、属性”
設計シート関係付け”にオブジェクト関係付けデータ5
61が格納される。このとき、入力項目511は存在す
るすべてのオブジェクト関係付けデータ561を持つ
が、オブジェクト作成用データ8は設計シート側の条件
が満足されるオブジェクト関係付けデータ561だけを
持つ。設計シート側の条件が満足されるオブジェクト関
係付けデータ561に対して、条件を満足させるオブジ
ェクト作成用データ8が存在しない場合には、オブジェ
クト作成用管理データ処理部507は、条件を満足させ
るオブジェクト作成用データ8を新たに作成する。
【0111】次に動作について説明する。オブジェクト
型モデル1の作成と利用の手順は図26のフローチャー
トに示すようになる。まず、クラス設計内容読み込み処
理102が、クラス設計内容ファイル103を読み込ん
で、第1の実施例の場合と同様にしてクラス設計内容デ
ータ101を作成する(ステップST401)。 次
に、設計シート内容データ509に関するデータを未定
にして、設計シート501および入力項目511を作成
する(ステップST402)。有効性変化条件529や
オブジェクト関係付けデータ561など、設計シート固
定データ508を表現するすべてのオブジェクトを作成
する。その次に、モデル作成処理部503は、クラス設
計内容データ101を処理して必要なオブジェクト作成
用データ8を作成する(ステップST403)。子孫ク
ラスのオブジェクトが存在する必要が有るクラスがあれ
ば、そのクラスを要求クラス名としてオブジェクト作成
用データ8を作成する。
【0112】モデル作成者13は、設計シート入力イン
ターフェース502からデータを入力する(ステップS
T404)。 オブジェクト作成用データ管理処理部5
07は、ある入力項目511に関するデータが入力され
たならば、その入力項目511に関係する設計シート5
01や入力項目511の有効性を修正する(ステップS
T405)。設計シート501や入力項目511の有効
性は、その入力項目511に関係する有効性変化条件5
29がその時点で満足されるかどうかを検査することで
調べられる。そして、その結果に合わせて修正される。
【0113】オブジェクト作成用データ管理処理部50
7は、オブジェクト作成用データ8を、図27のフロー
チャートに示すような手順で修正する(ステップST4
06)。 まず、入力操作がされた入力項目511の属
性”オブジェクト関係付け”にあるオブジェクト関係付
けデータ561を、処理すべきオブジェクト関係付けデ
ータ561の集合(以下、YET と呼ぶ)の初期値とする
(ステップST501)。また、作成または修整された
オブジェクト作成用データ8の集合(以下、MOD と呼
ぶ)の初期値を空集合とする(ステップST502)。
そして、入力操作前にその入力項目511の値が未定か
どうかを調べる(ステップST503)。未定でなけれ
ばその入力項目511の値は変更されているので、入力
操作前に設計シート側の条件が満足されていたオブジェ
クト関係付けデータ561をオブジェクト作成用データ
8の属性”設計シート関係付け”から除き、古い値で設
定されていたオブジェクト作成用データ8を未定に戻し
(ステップST504)、未定に戻されたオブジェクト
作成用データ8の属性をMOD に追加する(ステップST
505)。入力操作前にその入力項目511の値が未定
ならば、ステップST503から直接にステップST5
06へ進む。
【0114】オブジェクト作成用データ8の属性を未定
に戻す例を図28に示す。図28に示す例は、選択項目
001でブスプロからPCM へと選択値が変更された
場合である。要求クラスがデジタルリレーであるオブジ
ェクト作成用データ8の実現クラスとオブジェクト名と
が未定に戻される。また、設計シート側設定値がブスプ
ロのオブジェクト関係付けデータ561がオブジェクト
作成用データ8の属性”設計シート関係付け”から除か
れる。
【0115】オブジェクト作成用データ管理処理507
は、YET から1個のオブジェクト関係付けデータ561
を取り出し、処理対象オブジェクト関係付けデータ56
1とする(ステップST506)。また、処理対象オブ
ジェクト関係付けデータ561を、YET から除く(ステ
ップST507)。そして、処理対象オブジェクト関係
付けデータ561の設計シート側の条件が満足するかど
うかを調べる(ステップST508)。満足しなけれ
ば、ステップST512へ進む。満足すれば、処理対象
オブジェクト関係付けデータ561の条件に照合するオ
ブジェクト作成用データ8が存在するかどうかを調べる
(ステップST509)。 存在しなければ、オブジェ
クト作成用データ8を作成する(ステップST51
0)。オブジェクト作成用データ管理処理部507は、
オブジェクト作成用データ8を修正し、属性”設計シー
ト関係付け”に処理対象オブジェクト関係付けデータ5
61を追加し、オブジェクト作成用データ8をMOD へ追
加する(ステップST511)。そして、YET が空集合
かどうか調べる(ステップST512)。空集合でなけ
れば、ステップST506へ戻る。空集合ならば、ステ
ップST513へ進む。
【0116】オブジェクト作成用データ8の属性を修正
する例を図29に示す。この例は、図28の処理後の例
である。オブジェクト作成用データ8の実現クラスが未
定からPCMリレーに変更される。そして、オブジェク
ト名には、“PCMリレー0 01”というように実現ク
ラス名に作成されたオブジェクト数を続けた名前に自動
的に設定される。また、設計シート側設定値がPCM
であるオブジェクト関係付けデータ561が、オブジェ
クト作成用データ8の属性”設計シート関係付け”に追
加される。
【0117】オブジェクト作成用データ管理処理部50
7は、MOD から1個のオブジェクト作成用データ8を取
り出し、それをMOD から除く(ステップST513)。
また、クラス設計内容データ101を利用して、取り
出したオブジェクト作成用データ8または他のオブジェ
クト作成用データ8を修正する(ステップST51
4)。さらに、修正された他のオブジェクト作成用デー
タ8が存在すればそれをMOD に追加する(ステップST
515)。そして、MOD が空集合かどうか調べる(ステ
ップST515)。空集合でなければ、ステップST5
13へ戻る。空集合ならば終了する。
【0118】図30にクラス設計内容データ101を利
用するオブジェクト作成用データ8の修正例を示す。こ
の例は、図29に示す処理により実現クラス名がPC
Mリレーに決った後の処理を説明する。処理前には、要
求クラス名がデジタルリレーと要求クラス名がAIボー
ドの2個のオブジェクト作成用データ8が有る。PCM
リレーの属性”AIボード”の属性別データ142の
定義域から、PCM用AIボードまたはその子孫のクラ
スを作成する必要が有ることがわかる。 また、PCM
用AIボードのクラス別データ141から、PCM 用
AIボードのオブジェクトが存在可能とわかる。従っ
て、オブジェクト作成用データ管理処理507は、要求
クラス名がAIボードのオブジェクト作成用データ8の
実現クラス名に、PCM 用AIボードを設定する。
【0119】実現クラス名がPCM 用AIボードに設
定されたオブジェクト作成用データ8の初期化必要属性
である“所属リレー”は、この段階では未定である。
以下、初期化必要属性である“所属リレー”の属性値を
決める過程を説明する。初期化必要属性である“所属リ
レー”は関係別データ143のfrom属性名になってい
る。この関係別データ143のtoクラス名はデジタルリ
レーである。デジタルリレーのオブジェクトは1個しか
なくて、そのオブジェクト名はPCM リレー001に
なっている。従って、“所属リレー”の属性値はPCM
リレー001になる。以上で、ステップST406で
の処理の細部を説明する図27のフローチャートの説明
を終える。そして、図26のフローチャートの説明にも
どる。
【0120】オブジェクト作成用データ管理処理部50
7は、ステップST407においてオブジェクト作成用
データ8を作成する指示が入力されたかどうかを調べ
る。作成指示が入力されていなければ、ステップST4
04へ戻り、設計シート501からのデータ入力を待
つ。作成指示が入力されれば、必要なオブジェクト作成
用データ8がそろっているか調べる(ステップST40
8)。必要なオブジェクト作成用データ8がそろってい
るとは、すべてのオブジェクト作成用データ8で、実現
クラス名と初期化必要属性の属性値が決定されているこ
とである。そろっていなければ、オブジェクト作成用デ
ータ管理処理部507は、設計シート501入力すべ
き入力項目511を設計シート入力インターフェース5
02によりモデル作成者13に提示し、ステップST4
04へ戻る(ステップST409)。入力すべき入力項
目511は、未定のオブジェクト作成用データ8を決定
できるような、値が未定の有効な入力項目511であ
る。そろっていれば、ステップST410へ進む。
【0121】オブジェクト作成用データ管理処理部50
7は、オブジェクト作成用データ8を並べ替える(ステ
ップST410)。並べ替えは、初期化必要属性の属性
値にオブジェクト名が出てくる前に、そのオブジェクト
名のオブジェクト作成用データ8がくるようにされる。
そして、モデル作成部4が起動され、オブジェクト型モ
デル1が作成される(ステップST411)。アプリケ
ーションプログラム3のモデル利用部5は、オブジェク
ト型モデル1を利用する(ステップST412)。
【0122】実施例10.以下、この発明の第10の実
施例によるオブジェクト型モデル作成システム100
図について説明する。図31はこの実施例によるオブジ
ェクト型モデル作成システム100の構成を示すブロッ
ク図である。図31に示すオブジェクト型モデル作成シ
ステム100は、図19に示すシステムに対して、設計
シート入力インターフェース502をなくし、設計シー
ト内容ファイル601と設計シート内容読み込み処理部
(設計シート内容作成手段)602が追加された点、設
計シート501と入力項目511から画面表示データ5
12をなくした点、関数ライブラリ104から設計シー
ト入力画面実現メソッド535をなくした点、およびモ
デル作成処理部503に設計シート矛盾検査処理部60
3が追加された点が異なっている。
【0123】設計シート内容ファイル601は、設計シ
ート内容読み込み処理部602で1度に処理される単位
である設計シート内容記述604から構成されるテキス
トファイルである。設計シート内容ファイル601に記
述された設計シート内容記述604は、設計シート入力
画面505の表示内容ように記述される。設計シート
内容読み込み処理部602は、設計シート固定データ5
08またはクラス設計内容データ101の少なくとも一
を利用して設計シート内容記述604を設計シート内容
データ509に変換する。設計シート内容読み込み処理
部602は、ファイル読み込み部605、記述エラーチ
ェック部606および状態設定部607から構成され
る。
【0124】次に動作について説明する。オブジェクト
型モデル1の作成と利用の手順は図32のフローチャー
トに示すようになる。まず、クラス設計内容読み込み処
理102は、クラス設計内容ファイル103を読み込ん
で、第1の実施例の場合と同様にしてクラス設計内容デ
ータ101を作成する(ステップST601)。 次
に、オブジェクト作成用データ管理処理507は、設計
シート501と入力項目511を、設計シート内容デー
タ509に関するデータを未定にして作成する(ステッ
プST602)。すなわち、有効性変化条件529やオ
ブジェクト関係付けデータ561など、設計シート固定
データ508を表現するすべてのオブジェクトを作成す
る。その次に、設計シート内容読み込み処理部602
は、設計シート内容ファイル601を読み込んで、入力
項目511に値を設定する(ステップST603)。設
計シート内容読み込み処理部602の記述エラーチェッ
ク部606は、記述エラーが有るかどうかをチェックす
る(ステップST604)。記述エラーチェック部60
6は、記述エラーが有ることを検出したらエラーメッセ
ージを出して終了する(ステップST605)。
【0125】記述エラーがなければ、状態設定部607
は、設計シート501や入力項目511の有効や入力さ
れた値などを設定する(ステップST606)。設計シ
ート矛盾検査処理603は、入力項目511に入力され
値の中に有効性変化条件529または入力項目511
の入力値の定義域521と矛盾するものが有るかどうか
を調べる(ステップST607)。矛盾するものがあれ
ば、エラーメッセージを出して終了する(ステップST
605)。矛盾がなければ、オブジェクト作成用データ
管理処理507が、オブジェクト作成用データ8を作成
する(ステップST608)。なお、入力値がそのまま
オブジェクトの属性値になる入力項目511では、入力
値の定義域521ではなく、対応する属性の定義域12
1と入力項目511に入力された値とが矛盾するかチェ
ックしてもよい。
【0126】オブジェクト作成用データ管理処理507
は、必要なオブジェクト作成用データ8がそろっている
かを調べる(ステップST609)。そろっていなけれ
ば、エラーメッセージを出して終了する(ステップST
605)。そろっていれば、オブジェクト作成用データ
管理処理507は、オブジェクト作成用データ8を並べ
替える(ステップST610)。そして、モデル作成部
4が起動され、オブジェクト型モデル1が作成される
(ステップST611)。アプリケーションプログラム
3のモデル利用部5は、オブジェクト型モデル1を利用
する(ステップST612)。
【0127】実施例11.以下、この発明の第11の実
施例によるオブジェクト型モデル作成システム100
図について説明する。図33はこの実施例によるオブジ
ェクト型モデル作成システム100の構成を示すブロッ
ク図である。図33に示すオブジェクト型モデル作成シ
ステム100は、図19に示すシステムに対して、設計
シート復元処理部(復元手段)701を追加するように
変更したものである。設計シート復元処理部701は、
オブジェクト型モデル1またはオブジェクト作成用デー
タ8から設計シート501を復元するものである。
【0128】次に動作について説明する。設計シート復
元処理部701がオブジェクト型モデル1から設計シー
ト501を復元する手順は図34のフローチャートに示
すようになる。設計シート復元処理部701は、オブジ
ェクト型モデル1からオブジェクト作成用データ8を復
元する(ステップST701)。オブジェクト2のクラ
スがオブジェクト作成用データ8の実現クラスになる。
また、オブジェクト2の初期化必要な属性値がそのまま
オブジェクト作成用データ8の初期化必要な属性値にな
る。次に、オブジェクト関係付けデータ561を利用し
て、オブジェクト作成用データ8から一意的に決められ
る設計シート501の入力項目511の値だけを決める
(ステップST702)。そして、オブジェクト作成用
データ管理処理507は、第9の実施例の場合と同様の
手順で有効な設計シート501と入力項目511を決め
る(ステップST703)。また、設計シート501の
入力項目511の値から第9の実施例の場合と同様の手
順でオブジェクト作成用データ8を作成する(ステップ
ST704)。
【0129】設計シート復元処理部701は、設計シー
ト501から作成したオブジェクト作成用データ8が、
オブジェクト型モデル1から復元したものと一致するか
調べる。(ステップST705)、一致すれば、設計シ
ート501が復元できたので終了する。一致しなけれ
ば、ステップST702へ戻り同様の処理を繰り返す。
この処理を繰り返すと、オブジェクト作成用データ8か
ら値が一意的に決められる入力項目511の数が増えて
いく。
【0130】復元された設計シート501は、設計シー
ト入力インターフェース502に表示され、モデル作成
者13が修正できる。なお、その他の処理は、第9の実
施例における処理と同様である。 以上のように、オブ
ジェクト型モデル1から設計シート501が復元され、
それが提示されるので、モデル作成者は、容易にオブジ
ェクト型モデル1が正しくモデル化対象物を模擬してい
るかどうかを検証できる。
【0131】実施例12.以下、この発明の第12の実
施例による故障診断システム作成システム31を図につ
いて説明する。図35は、この実施例による故障診断シ
ステム作成システムを示すブロック図である。図35に
示す構成において、オブジェクト型モデル1を作成する
部分に第9の実施例によるオブジェクト型モデル作成シ
ステム100が適用されている。図41に示す従来の構
成に対して、モデル作成インターフェース10に代え
て、設計シート入力インターフェース502が設けられ
ている。また、クラス設計内容データ101、クラス設
計内容読み込み処理部102、クラス設計内容ファイル
103、オブジェクト作成メソッド6を含む関数ライブ
ラリ104、設計シート501、設計シート入力インタ
ーフェース502、モデル作成処理503が追加されて
いる。
【0132】次に動作について説明する。第9の実施例
の場合と同様にして、モデル作成者13が設計シート入
力インターフェース502からデータ入力すると、オブ
ジェクト型モデル1が作成される。そして、遷移ネット
ワーク合成部(遷移ネットワーク作成手段)801は、
オブジェクト型モデル1と機能ルール35とから遷移ネ
ットワーク36を合成する。
【0133】診断対象ごとに故障診断インターフェース
43を作成する。これで、故障診断システム42が作成
できる。
【0134】なお、ここでは、第9の実施例によるオブ
ジェクト型モデル作成システム100が適用された場合
について説明したが、その他の実施例によるオブジェク
ト型モデル作成システム100を適用することもでき
る。また、各実施例の特徴を合わせ持つようなオブジェ
クト型モデル作成システム100を適用することもでき
る。さらに、故障診断システム作成システム31は、オ
ブジェクト型モデル1を 有する診断対象モデル32を備
えるものであれば、どのようなものでもよい。
【0135】
【発明の効果】以上のように、この発明に係るオブジェ
クト型モデル作成システムは、ブジェクトの属性の定
義域オブジェクト間の関係を定義するオブジェクト関
係データの何れかまたは両方を有するクラス設計内容デ
ータと、該クラス設計内容データの内容を専用言語で記
述したクラス設計内容記述とオブジェクト指向言語で記
述されたクラスの定義記述からなるテキストファイルで
あるクラス設計内容ファイルと、前記クラス設計内容フ
ァイルを読み込み、前記クラス設計内容記述の構文規則
違反の有無をチェックし、前記クラス設計内容データに
変換し、変換した前記クラス設計内容データ間でクラス
の継承関係及びオブジェクト間の関係に関する矛盾の有
無をチェックするクラス設計内容データ作成手段と、前
記クラス設計内容データを利用してオブジェクトを作成
するオブジェクト作成メソッドを有する関数ライブラリ
と、前記関数ライブラリを利用してオブジェクト型モデ
ルを作成するオブジェクト型モデル作成手段とを備え、
前記オブジェクト作成メソッドが下記(1)と(2)の
何れかまたは両方の処理を行うものであるので、クラス
設計内容データを検査してクラス設計の矛盾を検出で
き、オブジェクトの属性の異常な値を検出でき、オブジ
ェクト間の関係を矛盾なく設定でき、これらを総合して
矛盾のないオブジェクト型モデルを用意に作成できるも
のが得られるという効果が有る。 (1)オブジェクトの属性の前記定義域とオブジェクト
の属性値を比較し、前記定義域に含まれない属性値の場
合にエラーとして出力する (2) 前記オブジェクト関係データを利用して、オブジ
ェクトが作成される場合に、他のオブジェクトとの間の
関係付けを自動で作成する。ものである。
【0136】また、前記クラス設計内容記述にオブジェ
クトの属性値の参照と設定の可否を記述し、該記述を前
記クラス設計内容データ作成手段が前記クラス設計内容
データに変換し、前記クラス設計内容データを利用して
可否を判断して、否の場合はエラーとして出力し、可の
場合には前記オブジェクト型モデルを利用するデータ処
理メソッドが前記関数ライブラリに有り、前記関数ライ
ブラリを使用してオブジェクト型モデルを利用するモデ
ル利用手段を備え、下記の少なくとも一の処理を行う前
記データ処理メソッドを有するので、アプリケーション
プログラムが直接にオブジェクト型モデルを参照または
設定する場合に比べて、より確実にオブジェクト型モデ
ルの処理ができるものが得られる効果が有る。 (1)オブジェクトの属性値を返す。 (2)オブジェクトの属性値に値を設定する。 (3)オブジェクトの属性値の集合に値を追加する。 (4)オブジェクトの属性値の集合から指定された条件
を満足する1個のものを返す。 (5)オブジェクトの属性値の集合から指定された条件
を満足するものの集合を返す。
【0137】さらに、前記クラス設計内容記述にオブジ
ェクト型モデルのデータを利用するメソッドを定義する
記述であるメソッド定義記述が有り、該メソッド定義記
述をクラス設計内容データの一部であるメソッド定義デ
ータに前記クラス設計内容データ作成手段が変換し、該
メソッド定義データからデータ処理メソッドを自動作成
する自動作成手段と、該自動作成手段が利用するメソッ
ド定義のひな型とを備え、自動定義される前記データ処
理メソッドで使用されるデータ処理関数を前記関数ライ
ブラリが有し、前記自動作成手段が前記メソッド定義デ
ータから使用する前記メソッド定義のひな型を選定し、
前記メソッド定義データを前記メソッド定義のひな型の
変数部分に代入して、前記データ処理メソッドを自動作
成し、下記の少なくとも一の種類の前記メソッド定義の
ひな型を有するので、不具合のないオブジェクト型モデ
ルを処理するプログラムを用意に作成できるものが得ら
れる効果が有る。 (1)オブジェクトの属性値を返す。 (2)オブジェクトの属性値に値を設定する。 (3)オブジェクトの属性値の集合に値を追加する。 (4)オブジェクトの属性値の集合から指定したクラス
のオブジェクトを1個返す。 (5)オブジェクトの属性値の集合から指定したクラス
のオブジェクトの集合を返す。 (6)オブジェクトの属性値の集合から指定した条件を
満足する1個のものを返す。 (7)オブジェクトの属性値の集合から指定した条件を
満足するものの集合を返す
【0138】さらにまた、設計内容の入力項目に関する
固定的なデータである設計シート固定データと入力項目
の内容データであり、かつモデル化対象物の設計内容を
記述する設計シート内容データを有する設計シートと、
前記設計シート内容データを前記オブジェクト作成用デ
ータに変換し、かつ、前記オブジェクト作成用データと
前記設計シート内容データを管理するオブジェクト作成
用データ管理手段とを備え、前記オブジェクト作成用デ
ータ管理手段が前記設計シート固定データを利用して前
記設計シート内容データに入力された値が入力可能な値
かどうかをチェックし、前記設計シート固定データとし
て下記(1)〜(5)のデータを有し、前記設計シート
内容データとして下記(A)〜(F)のデータを有する
ので、アプリケーション領域の専門家が設計するのと近
い形で設計内容を記述できるものが得られる効果が有
る。 (1)他の設計シートとの関係を表現するデータ。 (2)設計シートに所属する入力項目。 (3)以下を有する入力項目のデータ。 (ア)入力される値の定義域。 (イ)所属する設計シート。 (ウ)他の入力項目との関係を表現するデータ。 (エ)オブジェクト作成用データとの関係を表現するデ
ータ。 (4)設計シートまたは入力項目である対象要素と、対
象要素の状態の変更方向と、対象要素の状態を変更する
ための条件とを有する有効性変化条件。 (5)入力項目と存在するオブジェクト作成用データか
参照され、入力項目に入力された値からオブジェクト
作成用データの値を決定するためのデータであるオブジ
ェクト関係付け。 (A)設計シートに入力が必要かどうかの状態。 (B)設計シートに入力が完了しているかどうかの状
態。 (C)入力項目に入力が必要かどうかの状態。 (D)入力項目の定義域の中で入力可能な範囲。 (E)入力項目に入力が完了しているかどうかの状態。 (F)入力項目に入力された値。
【0139】さらに、前記関数ライブラリが前記設計シ
ート固定データを利用して前記設計シート入力手段を実
現する少なくとも1個の関数またはメソッドを有し、前
記関数ライブラリを使用して実現する前記設計シート内
容データを入力または変更する設計シート入力手段を備
え、前記設計シート固定データに設計シートまたは入力
目を画面に表示するためのデータを持たせるようにし
たので、アプリケーション領域の専門家が容易にオブジ
ェクト型モデルを作成できる環境を容易に実現できるも
のが得られる効果が有る。
【0140】そしてさらに、前記設計シート内容データ
を記述するテキストファイルである設計シート内容ファ
イルと、前記設計シート固定データを利用して該設計シ
ート内容ファイルを入力として前記設計シート内容デー
タに変換する設計シート内容データ作成手段とを備える
ようにしたので、設計シート内容データを理解しやすく
書いた設計シート内容ファイルを読み込んで設計シート
内容データを定義でき、アプリケーション領域の専門家
が容易にオブジェクト型モデルを作成できる環境を容易
に実現できるものが得られる効果が有る。
【0141】そしてさらにまた、オブジェクト型モデル
または前記オブジェクト作成用データの少なくとも一か
ら前記設計シート内容データを復元する設計シート内容
データ復元手段をさらに備えたので、オブジェクト型モ
デルが正しくモデル化対象物を模擬しているかどうかを
アプリケーション領域の専門家が容易に検証できるもの
が得られる効果が有る。
【0142】この発明に係る故障診断システム作成シス
テムは、この発明に係るオブジェクト型モデル作成シス
テムを備え、このオブジェクト型モデル作成システムに
よりオブジェクト型モデルを作成するので、細部が異な
る多くのバリエーションを持つ診断対象の故障診断シス
テムを容易に作成できるものが得られる効果が有る。
【図面の簡単な説明】
【図1】 この発明の第1の実施例によるオブジェクト
型モデル作成システムの構成を示すブロック図である。
【図2】 専用言語による記述を別ファイルにする場合
のクラス設計内容ファイルの一例を示す説明図である。
【図3】 専用言語による記述をコメントに埋め込む場
合のクラス設計内容ファイルの一例を示す説明図であ
る。
【図4】 クラス設計内容データの構成の一例を示す説
明図である。
【図5】 冗長な関係別データの一例を示す説明図であ
る。
【図6】 デジタルリレーのオブジェクト型モデルの一
例を示す説明図である。
【図7】 第1の実施例におけるオブジェクト作成メソ
ッドの処理手順のフローチャートである。
【図8】 この発明の第2の実施例によるオブジェクト
型モデル作成システムの構成を示すブロック図である。
【図9】 この発明の第3の実施例によるオブジェクト
型モデル作成システムの構成を示すブロック図である。
【図10】 この発明の第4の実施例によるオブジェク
ト型モデル作成システムにおけるクラス設計内容読み込
み処理部の構成を示すブロック図である。
【図11】 この発明の第5の実施例によるオブジェク
ト型モデル作成システムにおけるクラス設計内容データ
の構成を示す説明図である。
【図12】 この発明の第6の実施例によるオブジェク
ト型モデル作成システムにおけるクラス設計内容データ
の構成を示す説明図である。
【図13】 この発明の第7の実施例によるオブジェク
ト型モデル作成システムの構成を示すブロック図であ
る。
【図14】 図13におけるクラス設計内容データの中
のデータ処理に関するデータ表現の一例を示す説明図で
ある。
【図15】 第7の実施例における属性値をそのまま返
すデータ処理メソッドの処理手順を示すフローチャート
である。
【図16】 第7の実施例における属性に新しい属性値
を設定するデータ処理メソッドの処理手順を示すフロー
チャートである。
【図17】 この発明の第8の実施例によるオブジェク
ト型モデル作成システムの構成を示すブロック図であ
る。
【図18】 第8の実施例におけるメソッド定義に関す
るデータや処理の関係の一例を示す説明図である。
【図19】 この発明の第9の実施例によるオブジェク
ト型モデル作成システムの構成を示すブロック図であ
る。
【図20】 第9の実施例におけるデジタルリレーのモ
デルを作成する場合の設計シート入力画面の一例を示す
説明図である。
【図21】 第9の実施例における設計シートの一例を
示す説明図である。
【図22】 第9の実施例における有効性変化条件を説
明するための説明図である。
【図23】 第9の実施例におけるオブジェクト作成用
データの一例を示す説明図である。
【図24】 第9の実施例におけるオブジェクト関係付
けデータの一例を示す説明図である。
【図25】 第9の実施例におけるオブジェクト関係付
けデータ、入力項目およびオブジェクト作成用データの
間の関係を説明するための説明図である。
【図26】 第9の実施例におけるオブジェクト型モデ
ルの作成と利用の手順を示すフローチャートである。
【図27】 第9の実施例におけるオブジェクト作成用
データの修正の手順のフローチャートである。
【図28】 第9の実施例におけるオブジェクト作成用
データの属性を未定に戻す例を説明するための説明図で
ある。
【図29】 第9の実施例におけるオブジェクト作成用
データの属性を修正する例を説明するための説明図であ
る。
【図30】 第9の実施例におけるクラス設計内容デー
タを利用するオブジェクト作成用データの修正の例を説
明するための説明図である。
【図31】 この発明の第10の実施例によるオブジェ
クト型モデル作成システムの構成を示すブロック図であ
る。
【図32】 第10の実施例におけるオブジェクト型モ
デルの作成と利用の手順を示すフローチャートである。
【図33】 この発明の第11の実施例によるオブジェ
クト型モデル作成システムの構成を示すブロック図であ
る。
【図34】 第11の実施例におけるオブジェクト型モ
デルから設計シートを復元する手順を示すフローチャー
トである。
【図35】 この発明の第12の実施例による故障診断
システム作成システムの構成を示すブロック図である。
【図36】 従来のオブジェクト型モデル作成システム
の構成を示すブロック図である。
【図37】 従来のオブジェクト型モデル作成システム
の他の構成を示すブロック図である。
【図38】 従来のオブジェクト型モデル作成システム
のさらに他の構成を示すブロック図である。
【図39】 従来のオブジェクト型モデル作成システム
におけるモデル作成インターフェースの一例を説明する
ための説明図である。
【図40】 従来のオブジェクト指向データベース構築
環境の構成を示すブロック図である。
【図41】 従来の故障診断システム作成システムの構
成を示すブロック図である。
【符号の説明】
1 オブジェクト型モデル2 オブジェクト 3 アプリケーションプログラム 4 モデル作成部(オブジェクト型モデル作成手段) 5 モデル利用部(モデル利用手段) 6 オブジェクト作成メソッド7 オブジェクト作成記述 8 オブジェクト作成用データ 9 オブジェクト作成用データ読み込み部 10 モデル作成インターフェース11 オブジェクト作成用データ保存部 12 オブジェクト作成用データ入力部 13 モデル作成者 21 オブジェクト指向データベース構築環境 22 オブジェクト・インスペクタ 31 故障診断システム作成システム 32 診断対象モデル 33 診断アルゴリズム34 モデル開発用 インターフェース 35 機能ルール 36 遷移ネットワーク39 仮説検証部 40 機能ルールエディタ 41 遷移ネットワークモニタ 42 故障診断システム43 故障診断 インターフェース44 観測データ設定部 45 診断解表示部 46 観測データ 47 変換後観測データ 48 故障の仮説 49 シミュレーション結果 50 診断解 100 オブジェクト型モデル作成システム 101 クラス設計内容データ 102 クラス設計内容読み込み処理部(クラス設計内
容データ作成手段) 103 クラス設計内容ファイル 104 関数ライブラリ111 クラス名 112 継承関係 113 属性名 114 メソッド 120 オブジェクト管理データ 121 属性の定義域 122 他のオブジェクトとの関係(オブジェクト関係
データ) 123 クラスに関するその他のデータ 131 ファイル読み込み部 132 シンタックスチェック部 133 クラス設計内容データ作成部 134 クラス設計内容データ矛盾検査部 135 クラス設計内容記述 136 その他の関数 137 オブジェクト指向言語による記述 138 専用言語による記述 141 クラス別データ 142 属性別データ 143 関係別データ 300 データ処理に関するデータ 301 データ処理メソッド(モデル利用手段) 301A データ処理自動定義メソッド 303 データ処理記述 305 データ参照可能 306 データ設定可能 401 メソッド定義処理部(自動生成手段)402 データ処理関数 403 メソッド定義データ 404 メソッド記述のひな型 501 設計シート 502 設計シート入力インターフェース(入力インタ
ーフェース) 503 モデル作成処理部505 設計シート入力画面 507 オブジェクト作成用データ管理処理部508 設計シート固定データ 509 設計シート内容データ 510 入力項目表示 511 入力項目 512 画面表示データ 514 他の設計シートとの関係 515 設計シートに関するその他のデータ 521 入力値の定義域 523 他の入力項目との関係 525 オブジェクト作成用データとの関係 526 入力項目に関するその他のデータ 527 設計シートの状態 528 入力項目の状態 529 有効性変化条件 531 選択項目 532 自由項目 533 表要素 534 横向表 535 設計シート入力画面実現メソッド 544 要素条件 551 初期化必要属性データ 561 オブジェクト関係付けデータ 565 オブジェクト作成用データ管理メソッド 601 設計シート内容ファイル 602 設計シート内容読み込み処理部(設計シート内
容データ作成手段)603 設計シート矛盾検査処理部 604 設計シート内容記述 605 ファイル読み込み部 606 記述エラーチェック部 607 状態設定部 701 設計シート復元処理部(設計シート内容データ
復元手段) 801 遷移ネットワーク合成部(遷移ネットワーク作
成手段)
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 「モデルに基づく診断手法と電力系統 事故診断への適用」、電気学会論文誌 B、1990,Vol.110,No.4,p p258−266 「モデルに基づく診断用シェルDAS H」,電気学会電力技術研究会資料 (1990)No.PE−90−77,pp.91 −100 「支店社故障復旧支援システムの検 証,MELDASHの実系統への適 用」,電気学会電力技術研究会資料 (1991),No.PE−91−36,pp. 49−58 「診断用タスクシェルDASH」,電 気学会全国大会講演論文集(1990),V ol.1990,No.9,pp.73−74 (58)調査した分野(Int.Cl.7,DB名) G06F 9/06 G06F 9/44 G05B 17/00 G05B 23/02 G06F 11/22

Claims (12)

    (57)【特許請求の範囲】
  1. 【請求項1】 ブジェクトの属性の定義域オブジェ
    クト間の関係を定義するオブジェクト関係データの何れ
    かまたは両方を有するクラス設計内容データと、該クラ
    ス設計内容データの内容を専用言語で記述したクラス設
    計内容記述とオブジェクト指向言語で記述されたクラス
    の定義記述からなるテキストファイルであるクラス設計
    内容ファイルと、前記クラス設計内容ファイルを読み込
    み、前記クラス設計内容記述の構文規則違反の有無をチ
    ェックし、前記クラス設計内容データに変換し、変換し
    た前記クラス設計内容データ間でクラスの継承関係及び
    オブジェクト間の関係に関する矛盾の有無をチェックす
    クラス設計内容データ作成手段と、前記クラス設計内
    容データを利用してオブジェクトを作成するオブジェク
    ト作成メソッドを有する関数ライブラリと、前記関数ラ
    イブラリを利用してオブジェクト型モデルを作成するオ
    ブジェクト型モデル作成手段とを備え、前記オブジェク
    ト作成メソッドが下記(1)と(2)の何れかまたは両
    の処理を行うものであるオブジェクト型モデル作成シ
    ステム。 (1)オブジェクトの属性の前記定義域とオブジェクト
    の属性値を比較し、前記定義域に含まれない属性値の場
    合にエラーとして出力する (2) 前記オブジェクト関係データを利用して、オブジ
    ェクトが作成される場合に、他のオブジェクトとの間の
    関係付けを自動で作成する。
  2. 【請求項2】 作成可能なオブジェクト数と作成したオ
    ブジェクト数をクラスごとに管理するオブジェクト管理
    データをさらに前記クラス設計内容データが有し、前記
    クラス設計内容記述に前記オブジェクト管理データに変
    換される記述がなされ 該記述も前記クラス設計内容デ
    ータ作成手段が前記オブジェクト管理データに変換し、
    前記オブジェクト作成メソッドが前記オブジェクト管理
    データを利用して、作成可能なオブジェクト数が制限さ
    れるクラスのオブジェクトが可能数を超えて作成される
    場合にエラーとして出力する処理をさらに行うものであ
    ることを特徴とする請求項1に記載のオブジェクト型モ
    デル作成システム。
  3. 【請求項3】 前記クラス設計内容記述にオブジェクト
    の属性値の参照と設定の可否を記述し、該記述を前記ク
    ラス設計内容データ作成手段が前記クラス設計内容デー
    タに変換し、前記クラス設計内容データを利用して可否
    を判断して、否の場合はエラーとして出力し、可の場合
    には前記オブジェクト型モデルを利用するデータ処理メ
    ソッドが前記関数ライブラリに有り、前記関数ライブラ
    リを使用してオブジェクト型モデルを利用するモデル利
    用手段を備え、下記の少なくとも一の処理を行う前記デ
    ータ処理メソッドを有することを特徴とする請求項1
    請求項2の何れか一に記載のオブジェクト型モデル作成
    システム。 (1)オブジェクトの属性値を返す。 (2)オブジェクトの属性値に値を設定する。 (3)オブジェクトの属性値の集合に値を追加する。 (4)オブジェクトの属性値の集合から指定された条件
    を満足する1個のものを返す。 (5)オブジェクトの属性値の集合から指定された条件
    を満足するものの集合を返す。
  4. 【請求項4】 前記クラス設計内容記述にオブジェクト
    型モデルのデータを利用するメソッドを定義する記述で
    あるメソッド定義記述が有り、該メソッド定義記述をク
    ラス設計内容データの一部であるメソッド定義データに
    前記クラス設計内容データ作成手段が変換し、該メソッ
    ド定義データからデータ処理メソッドを自動作成する自
    動作成手段と、該自動作成手段が利用するメソッド定義
    のひな型とを備え、自動定義される前記データ処理メソ
    ッドで使用されるデータ処理関数を前記関数ライブラリ
    が有し、前記自動作成手段が前記メソッド定義データか
    ら使用する前記メソッド定義のひな型を選定し、前記メ
    ソッド定義データを前記メソッド定義のひな型の変数部
    分に代入して、前記データ処理メソッドを自動作成し、
    下記の少なくとも一の種類の前記メソッド定義のひな型
    を有することを特徴とする請求項1〜請求項3の何れか
    一に記載のオブジェクト型モデル作成システム。 (1)オブジェクトの属性値を返す。 (2)オブジェクトの属性値に値を設定する。 (3)オブジェクトの属性値の集合に値を追加する。 (4)オブジェクトの属性値の集合から指定したクラス
    のオブジェクトを1個返す。 (5)オブジェクトの属性値の集合から指定したクラス
    のオブジェクトの集合を返す。 (6)オブジェクトの属性値の集合から指定した条件を
    満足する1個のものを返す。 (7)オブジェクトの属性値の集合から指定した条件を
    満足するものの集合を返す
  5. 【請求項5】 前記オブジェクト型モデル作成手段がオ
    ブジェクトを作成する元データであるオブジェクト作成
    用データを備え、前記オブジェクト型モデル作成手段が
    前記オブジェクト作成用データを入力としてオブジェク
    ト型モデルを作成することを特徴とする請求項1〜請求
    項4の何れか一に記載のオブジェクト型モデル作成シス
    テム。
  6. 【請求項6】 オブジェクト型モデルから前記オブジェ
    クト作成用データを作成して保存するオブジェクト作成
    用データ保存手段を備えることを特徴とする請求項5
    記載のオブジェクト型モデル作成システム。
  7. 【請求項7】 設計内容の入力項目に関する固定的なデ
    ータである設計シート固定データと入力項目の内容デー
    タであり、かつモデル化対象物の設計内容を記述する設
    計シート内容データを有する設計シートと、前記設計シ
    ート内容データを前記オブジェクト作成用データに変換
    し、かつ、前記オブジェクト作成用データと前記設計シ
    ート内容データを管理するオブジェクト作成用データ管
    理手段とを備え、前記オブジェクト作成用データ管理手
    段が前記設計シート固定データを利用して前記設計シー
    ト内容データに入力された値が入力可能な値かどうかを
    チェックし、前記設計シート固定データとして下記
    (1)〜(5)のデータを有し、前記設計シート内容デ
    ータとして下記(A)〜(F)のデータを有することを
    特徴とする請求項5〜請求項6の何れか一に記載のオブ
    ジェクト型モデル作成システム。 (1)他の設計シートとの関係を表現するデータ。 (2)設計シートに所属する入力項目。 (3)以下を有する入力項目のデータ。 (ア)入力される値の定義域。 (イ)所属する設計シート。 (ウ)他の入力項目との関係を表現するデータ。 (エ)オブジェクト作成用データとの関係を表現するデ
    ータ。 (4)設計シートまたは入力項目である対象要素と、対
    象要素の状態の変更方向と、対象要素の状態を変更する
    ための条件とを有する有効性変化条件。 (5)入力項目と存在するオブジェクト作成用データか
    参照され、入力項目に入力された値からオブジェクト
    作成用データの値を決定するためのデータであるオブジ
    ェクト関係付け。 (A)設計シートに入力が必要かどうかの状態。 (B)設計シートに入力が完了しているかどうかの状
    態。 (C)入力項目に入力が必要かどうかの状態。 (D)入力項目の定義域の中で入力可能な範囲。 (E)入力項目に入力が完了しているかどうかの状態。 (F)入力項目に入力された値。
  8. 【請求項8】 前記関数ライブラリが前記設計シート固
    定データを利用して前記オブジェクト作成用データ管理
    手段を実現する少なくとも1個の関数またはメソッドを
    有し、前記関数ライブラリを使用して実現する前記オブ
    ジェクト作成用データ管理手段が、前記設計シート固定
    データを利用して前記入力項目に入力された値から少な
    くとも一の他の入力項目または設計シートの状態を変更
    することを特徴とする請求項7に記載のオブジェクト型
    モデル作成システム。
  9. 【請求項9】 前記関数ライブラリが前記設計シート固
    定データを利用して前記設計シート入力手段を実現する
    少なくとも1個の関数またはメソッドを有し、前記関数
    ライブラリを使用して実現する前記設計シート内容デー
    タを入力または変更する設計シート入力手段を備え、前
    記設計シート固定データに設計シートまたは入力項目を
    画面に表示するためのデータを持たせることを特徴とす
    請求項7〜請求項8の何れか一に記載のオブジェクト
    型モデル作成システム。
  10. 【請求項10】 前記設計シート内容データを記述する
    テキストファイルである設計シート内容ファイルと、前
    記設計シート固定データを利用して該設計シート内容フ
    ァイルを入力として前記設計シート内容データに変換す
    る設計シート内容データ作成手段とを備えることを特徴
    とする請求項7〜請求項9の何れか一に記載のオブジェ
    クト型モデル作成システム。
  11. 【請求項11】 オブジェクト型モデルまたは前記オブ
    ジェクト作成用データの少なくとも一から前記設計シー
    ト内容データを復元する設計シート内容データ復元手段
    を備えたことを特徴とする請求項7〜請求項10の何れ
    か一に記載のオブジェクト型モデル作成システム。
  12. 【請求項12】 診断対象の要素がモデル化されたもの
    であるオブジェクト型モデルを有する診断対象モデルを
    用いて前記診断対象の故障診断を行う故障診断システム
    を作成する故障診断システム作成システムにおいて、請
    求項1〜請求項11の何れか一に記載のオブジェクト型
    モデル作成システムを備え、該オブジェクト型モデル作
    成システムにより前記オブジェクト型モデルを作成する
    ことを特徴とする故障診断システム作成システム。
JP32520493A 1993-12-22 1993-12-22 オブジェクト型モデル作成システム、および故障診断システム作成システム Expired - Fee Related JP3452960B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32520493A JP3452960B2 (ja) 1993-12-22 1993-12-22 オブジェクト型モデル作成システム、および故障診断システム作成システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32520493A JP3452960B2 (ja) 1993-12-22 1993-12-22 オブジェクト型モデル作成システム、および故障診断システム作成システム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2003017001A Division JP2003288231A (ja) 2003-01-27 2003-01-27 故障診断システム

Publications (2)

Publication Number Publication Date
JPH07182152A JPH07182152A (ja) 1995-07-21
JP3452960B2 true JP3452960B2 (ja) 2003-10-06

Family

ID=18174189

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32520493A Expired - Fee Related JP3452960B2 (ja) 1993-12-22 1993-12-22 オブジェクト型モデル作成システム、および故障診断システム作成システム

Country Status (1)

Country Link
JP (1) JP3452960B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7146231B2 (en) * 2002-10-22 2006-12-05 Fisher-Rosemount Systems, Inc.. Smart process modules and objects in process plants
US20040186764A1 (en) * 2003-03-18 2004-09-23 Mcneill Kevin M. Method and system for evaluating business service relationships
CN110083339A (zh) * 2018-01-26 2019-08-02 拜椰特(上海)软件技术有限公司 一种新型计算机编程语言

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
「モデルに基づく診断手法と電力系統事故診断への適用」、電気学会論文誌B、1990,Vol.110,No.4,pp258−266
「モデルに基づく診断用シェルDASH」,電気学会電力技術研究会資料(1990)No.PE−90−77,pp.91−100
「支店社故障復旧支援システムの検証,MELDASHの実系統への適用」,電気学会電力技術研究会資料(1991),No.PE−91−36,pp.49−58
「診断用タスクシェルDASH」,電気学会全国大会講演論文集(1990),Vol.1990,No.9,pp.73−74

Also Published As

Publication number Publication date
JPH07182152A (ja) 1995-07-21

Similar Documents

Publication Publication Date Title
US10162738B2 (en) System, method, and computer readable medium for universal software testing
US7216340B1 (en) Analysis data validation tool for use in enterprise architecture modeling with result based model updating
US6941546B2 (en) Method and apparatus for testing a software component using an abstraction matrix
US8826225B2 (en) Model transformation unit
Konrad et al. Facilitating the construction of specification pattern-based properties
CN110020307A (zh) 一种客户端视图的绘制方法和装置
CN106843878B (zh) 一种模型生成方法和系统
US8676808B2 (en) Data store interface that facilitates distribution of application functionality across a multi-tier client-server architecture
EP2105837B1 (en) Test script transformation analyzer with change guide engine
US20200249916A1 (en) Automated generation of software bindings
Son et al. Automated generation of a model view definition from an information delivery manual using idmXSD and buildingSMART data dictionary
Zhao et al. Pattern-based design evolution using graph transformation
JP3452960B2 (ja) オブジェクト型モデル作成システム、および故障診断システム作成システム
JP2008225898A (ja) 変換装置、変換プログラム及び変換方法
Lombardi et al. Co-evolution of Metamodel and Generators: Higher-order Templating to the Rescue.
CN113704083A (zh) 测试用例生成方法、装置、存储介质和电子设备
van der Hoek et al. Capturing architectural configurability: Variants, options, and evolution
Anureev Operational ontological approach to formal programming language specification
Liu et al. MVDLite: A Light-weight Representation of Model View Definition with Fast Validation for BIM Applications
Williams Toward a test-ready meta-model for use cases
Laleau et al. An automatic generation of B specifications from well-defined UML notations for database applications
CN116540997B (zh) 数据类型声明方法、介质、装置和计算设备
Guo et al. Model-based test generation using extended symbolic grammars
KR100656559B1 (ko) Bibd 방법론을 이용하는 프로그램 자동 개발 장치
Potiyenko et al. Generation of multipurpose formal models from legacy code

Legal Events

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

Free format text: PAYMENT UNTIL: 20070718

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20080718

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090718

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees