JPH06214865A - オブジェクト・ベース・データ処理装置 - Google Patents

オブジェクト・ベース・データ処理装置

Info

Publication number
JPH06214865A
JPH06214865A JP5003496A JP349693A JPH06214865A JP H06214865 A JPH06214865 A JP H06214865A JP 5003496 A JP5003496 A JP 5003496A JP 349693 A JP349693 A JP 349693A JP H06214865 A JPH06214865 A JP H06214865A
Authority
JP
Japan
Prior art keywords
class
instance
processing
relationship
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP5003496A
Other languages
English (en)
Inventor
Tadamitsu Ryu
忠光 龍
Naomi Ichikawa
なおみ 市川
Masahiko Murakawa
雅彦 村川
Masanobu Toyoda
雅信 豊田
Takeshi Adachi
武史 足立
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP5003496A priority Critical patent/JPH06214865A/ja
Priority to US08/179,047 priority patent/US5586326A/en
Publication of JPH06214865A publication Critical patent/JPH06214865A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • G06F9/4492Inheritance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/289Object oriented databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【目的】 本発明は,要請された処理対象を,クラスと
インスタンスとの形で把握して,当該処理対象を適宜に
自由に設計できるようにし,得られたクラスやインスタ
ンスを後日他の処理に容易に利用できるようにすること
を目的としている。 【構成】 既存のメソッドやクラスを機能的モデルとし
て蓄積しておき,要請された処理対象の処理に対応し
て,いわば公式の如きプログラムである所の上記メソッ
ドやクラスを適宜取り込んで組み合わせて静的モデルを
生成し,次いで当該取り込まれたメソッドやクラスを利
用してインスタンス・データを設定してインスタンスを
生成し,動的モデルとして当該インスタンスの群を用い
たセッションを組んで実行させるようにし,この際に因
果関係については静的モデルの場における状態テーブル
で管理する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は,オブジェクト・ベース
・データ処理装置において,個々の処理を実現するメソ
ッドおよび/またはクラスをオブジェクトの1つとして
手続の世界の情報群として格納すると共に,所望される
処理対象が,クラスおよび/またはメソッド群間の上位
下位関係を含む関係をモデル化した静的モデルと,イン
スタンス群間の時間的順序関係を示してモデル化した動
的モデルとの両者でモデル化するようにし,上記所望さ
れる処理対象についての各種要請に自由に対処できるよ
うにしたオブジェクト・ベース・データ処理装置に関す
る。
【0002】
【従来の技術】図16は本発明の場合の如くオブジェク
トをカプセル化する利点を説明する図である。例えば実
行処理データ214を例にとると,図16(A)に示す
如く,当該実行処理データは一連の命令(又は命令群)
250を処理順にシリヤライズされたものとして与えら
れる。これらの命令(又は命令群)250の幾つかがま
とまって,所定の処理を実行する即ち或る振る舞いを行
う処理単位251を構成する。
【0003】したがって図16(A)に示す実行処理デ
ータは,図16(B)に示す如く,或る振る舞いを行う
処理単位251が処理順にシリヤライズされたものとみ
ることができる。図16(B)に示す如くシリヤライズ
された実行処理データ214は全体でもって或る特定の
動作を行うためのものである。したがって,他の特定の
処理を行うための実行処理データ214は,組み合わせ
を異にした処理単位251の連結された別の実行処理デ
ータとして与えられる。
【0004】異なる振る舞いを発揮する既存の処理単位
251が多量に得られるにつれて,図16(C)に示す
如く,個々の処理単位251を,所定のメソッドMの下
で,必要に応じて,統合させ,図16(B)に示す実行
処理データ214と同じ動作を行わせるものを得ること
ができる。
【0005】予めオブジェクトとオブジェクト・コマン
ドとオブジェクト部品との関係を説明しておく。以下,
より具体的に本発明にいうオブジェクトとオブジェクト
・コマンドとオブジェクト部品との関係を説明する。
【0006】実世界,例えば会社部門についてモデル化
を行った例が図17に示される。図17においては,
「従業員」を表わす枠内に,例えば「仕事の型=1」に
属する「秘書」がおり,「仕事の型=2」に属する「リ
ーダ」がおり,「仕事の型=3」に属する「労働者」が
いる。そして「従業員」という枠は「チーム」という枠
に属している。
【0007】「リーダ」は「チーム・リーダ」という関
係の下で「チーム」と関係づけられ,また「労働者」は
「作業単位」という枠内で「労働者・機械」という関係
の下で「機械」と関係づけられる。
【0008】また「チーム」と「機械」とは「機械・作
業場」という関係の下で関係づけられており,「労働
者」と「機械」とはまた「機械・労働者」という関係の
下で関係づけられる。更に「従業員」は「部門・従業
員」という関係の下で「部門」と関係づけられる。
【0009】また更に,「従業員」は「従業員・属性」
という関係の下で「所属」と関係づけられ,「作業単
位」は「作業単位・部品」という関係の下で「部品」と
関係づけられる。
【0010】更にその上で,(1)「部門」はオブジェ
クト「部門名」やオブジェクト「ドル」と関係づけら
れ,(2)「チーム」は,チーム識別番号によってオブ
ジェクト「名前」と関係づけられ,仕事の型によってオ
ブジェクト「従業員番号」と関係づけられ,名前によっ
てオブジェクト「コード名」やオブジェクト「姓」と関
係づけられ,給与によってオブジェクト「ドル」と関係
づけられ,平均給与によってオブジェクト「ドル」と関
係づけられ,部門の平均数によってオブジェクト「数」
と関係づけられ,(3)「秘書」はタイピング速度によ
ってオブジェクト「数」と関係づけられ,(4)「所
属」は,名前によってオブジェクト「名」と関係づけら
れ,歳によってオブジェクト「年」と関係づけられ,
(5)「部品」はオブジェクト「部品番号」やオブジェ
クト「ドル」と関係づけられ,(6)「作業単位・部
品」は数量によってオブジェクト「数」と関係づけら
れ,(7)「作業単位」は必要な時間によってオブジェ
クト「時間」と関係づけられ,(8)「機械」は,オブ
ジェクト「機械番号」やオブジェクト「ドル」やオブジ
ェクト「機械名」と関係づけられ,(9)「機械・労
働」は使用時間によってオブジェクト「時間」と関係づ
けられる。
【0011】図17に示されるモデルは,一般に,例え
ば,丸印を「振る舞い」(あるいはメソッド)とし,角
印を「データ」とし,菱形印を「関係」とすると,図1
8に示す如く表わすことができる。即ち,(1)メソッ
ドaとデータIとがまとめられて1つのより大きいデー
タIVの働きをし,(2)メソッドbとcとが関係αによ
ってデータIIと関係づけられて1つのより大きいデータ
Vの働きをし,(3)メソッドcとdとが関係βによっ
てデータIII と関係づけられて1つのより大きいデータ
VIの働きをし,(4)メソッドeが関係γによってデー
タIVとVとVIと関係づけられて1つの更に大きいデータ
VII の働きをする,のように,互いにまとめられ,から
みあって,より大きい集団がつくられている形で表わす
ことができる。
【0012】図18に示す夫々の丸印や角印や菱形印は
1つ1つオブジェクトとして取り扱われ得るものであ
る。今図18に示すメソッドaとデータIとの如き集ま
りを考慮して,図19(A)に示す如きカプセル化を考
える。図19(A)においてカプセルの上方に孔があけ
られているのは,メッセージを交信可能であることを示
している。当該図19(A)に示すカプセルの上方の孔
を仮にふさいだとすると,図18に示すメソッドaとデ
ータIとの如き集まりであるデータIVに相当する。当該
データが図19(B)の左端に示されている。図19
(B)の左端のデータDに対してメソッドMを付して複
合されたオブジェクトを得ると,図19(B)の中央に
示されるデータとなり,更にその上にメソッドを付して
複合されたオブジェクトを得ると,図19(B)の右端
に示すものとなる。このように複合化していったものが
図16(C)に対応している。
【0013】複合化が行われる態様は,図19(B)の
形に限られるものではない。例えば図19(C)の最左
端に示すオブジェクトにおいてデータDが,メソッドと
データとよりなるオブジェクトで置換されると,図19
(C)左端から2番目に示すものとなる。この場合に
は,図示のメソッドM1 とデータD1 との間にメッセー
ジ・パッシングが必要となり,図19(C)左端から3
番目に示すものの如くメソッドM1 が1つのオブジェク
トとなる。この結果,オブジェクトCの中にオブジェク
トAとオブジェクトBとが存在し,オブジェクトAとオ
ブジェクトBとの間にメッセージ・パッシングが存在す
るという構造をもつものとなる。
【0014】また更に,図示のオブジェクトBにおける
メソッドMをオブジェクトB1 とし,オブジェクトBに
おけるデータDをオブジェクトB2 とすると,図19
(C)最右端に示す如く,オブジェクトBの中に,オブ
ジェクトB1 とオブジェクトB 2 とが存在し,オブジェ
クトB1 とオブジェクトB2 との間にメッセージ・パッ
シングが存在するという構造となる。
【0015】以上説明した如く,後述する所の,いわば
原子オブジェクトが複合化されて,例えばカプセル・オ
ブジェクトとなり,当該カプセル・オブジェクトが複合
化されて例えばイベント・オブジェクトとなり,当該イ
ベント・オブジェクトが複合化されて例えばシステム・
オブジェクトとなる・・・如く,次々と複合化されてゆ
く。
【0016】なお,上記においてデータDとして示され
るものは,一般に,複数個の処理対象単位であり,メソ
ッドMとして示したものは当該複数個の処理対象単位を
どのように利用してゆくかを指示する情報または情報群
と考えてよい。図19において,オブジェクトとして表
現したものは,個々の「処理対象単位」,あるいは個々
の処理対象単位がまとめられて1つのまとまった処理対
象単位として取り扱われ得る「処理対象単位」である。
【0017】上記図18に示す如く,個々のオブジェク
トI,II,III は夫々より大きいオブジェクトIV,V,
VIの一部を構成する。また当該オブジェクトIV,V,VI
はまたより大きいオブジェクトVII の一部を構成する。
換言するとオブジェクトIV,V,VIは夫々オブジェクト
VII からみると当該オブジェクトVII における“イズ・
ア(is−a)”で表される関係や“パート・オブ( pa
rt−of)”で表わされる関係にある。
【0018】図示のオブジェクトI,II,III を最小単
位と考えるとき,これらオブジェクトI,II,III はい
わば原子オブジェクトである。そしてそれらが集まって
いわばカプセル・オブジェクトと呼ばれるものが形成さ
れ,当該カプセル・オブジェクトなどが集まっていわば
イベント・オブジェクトと呼ばれるものが形成され,更
により大きいシステム・オブジェクトと呼ばれるものが
形成される。
【0019】これらの各オブジェクトを総称して複合オ
ブジェクトと呼んでいる。なお当該複合オブジェクトの
概念の中に,上記原子オブジェクトをも含ませている。
しかし原子オブジェクトは上述の如く最小単位のオブジ
ェクトであり,複合オブジェクトあるいは単にオブジェ
クトと一般に称する場合には上記原子オブジェクトの如
く分解不可能な単体で存在しているものを除外したもの
と考えてよい。
【0020】上述したカプセル化されたオブジェクトは
一般に上記複合オブジェクトがカプセル化されたもので
ある。上記個々のオブジェクトは次の如きモデルをもっ
て表わすことができる。即ち,図20はオブジェクトを
モデル化して把握するための説明図である。
【0021】或る実世界のもの,例えば写真は,当該写
真を表わす名前と,当該写真がどんなものであるか,例
えば誰の写真で何時撮ったものかなどを表わす性質とを
もって特定することができる。そして当該写真は,
(i)当該写真を特定する呼称としてのコマンドと,(i
i)当該写真のいわば白・黒のドットよりなる絵の実体物
(エンティティ・データ)と,(iii) 当該写真の性質や
上記絵の実体物が格納されている場所などや当該写真に
写っている複数の人などの関係などを記述しているリン
クとをもって,モデル化して把握することができる。
【0022】上述の個々のオブジェクトもまた図20に
表わした如き,コマンドとリンクとエンティティ・デー
タとをもって,モデル化して表わすことができる。図2
1はモデル化したオブジェクトの働きを説明する図であ
る。図21左側に示す如くオブジェクトは,コマンドと
リンクとエンティティ・データとをもって表わすことが
でき,エンティティ・データには図示の如きドット・デ
ータが与えられていると考えてよい。そして,上述のカ
プセル・オブジェクトやイベント・オブジェクトやシス
テム・オブジェクトは,一般に,図21右側に示す如
く,エンティティ・データとして他のオブジェクトX,
Y,Zを特定する記述が与えられて当該他のオブジェク
トX,Y,Zと関係づけられ当該他のオブジェクトX,
Y,Zのエンティティ・データx,y,zが利用される
形となる。
【0023】本願発明者らは,先に出願した特願平4−
236641号において,エンティティ・データと一緒
にメタ・データを記述したオブジェクト部品を,1つの
処理単位として把握することを提示した。
【0024】図22はオブジェクトを取り扱う処理態様
を示す。図中の符号201はオブジェクト・コマンドで
あって,図20や図21に示すコマンドと同じものであ
る。即ち,当該オブジェクトを特定する際の呼称であ
る。符号202はメタ・データであって,図20や図2
1に示すリンクに対応するものと考えてよい。即ち,実
データを意味づけて説明したデータ(実データの説明
文)であり,名称やコメントやコマンドなどであり,更
には上述した“is−a”階層関係や“part−of”階層関
係やオブジェクト間のシーケンス関係が記述される。当
該コメントは,実データを説明するに際し実データがど
んなものであるかについての意味が判るようにされた説
明文であり,また概略フローチャートや詳細フローチャ
ートやソース・プログラムである。また符号203は図
20や図21に示すエンティティ・データであり,処理
実行用のプログラムは実データの1つとして取り扱われ
る。
【0025】図22における符号204はコマンド・リ
ンク処理部であって,ディレクトリ処理部とも呼ばれ
る。1つの新しいオブジェクトが出来たとき,当該オブ
ジェクトの呼称であるコマンド(以下,オブジェクト・
コマンドということがある)を設定し,実データ203
やメタ・データ202の格納場所を割り付け,コマンド
・リンク・テーブルを作成する。このとき,オブジェク
トの型を決定し,大きさが決まる。そして,当該コマン
ド・リンク・テーブルを用いて,メタ・データ202と
実データ(エンティティ・データ)203との結合体を
入出力できるようにする。また入出力処理を行う。当該
結合体をオブジェクト部品と名付ける。そして当該オブ
ジェクト部品206は,上記オブジェクト・コマンドを
用いて特定することができる。
【0026】
【発明が解決しようとする課題】上述の如く,まとめら
れたオブジェクトまたは複合オブジェクトを,必要に応
じて,適宜,変更可能に組み合わせて,所望される処理
を実行することとなる。
【0027】従来から,図16を参照して述べた如く,
個々の処理単位の集合として,全体の処理対象を考える
ことが考慮されてはいた。しかし,従来の場合,要請さ
れる処理対象全体を個々の処理単位251の集合で与え
ることが考慮されていたとしても,いわばその都度の上
記要請される処理対象に合わせて,個々の処理単位25
1を結合していたに過ぎないものであった。このため
に,その都度の上記処理対象ごとに,いわば場あたり的
な解決がなされるだけであり,過去の努力が次回の設計
に積み重ねられることが十分でなかった。
【0028】本発明は,要請される処理対象を,クラス
とインスタンスとの形で把握して,当該処理対象を適宜
に自由に設計できるようにし,後日,他の処理に容易に
利用できるようにすることを目的としている。
【0029】
【課題を解決するための手段】図1は本発明の原理構成
図を示す。図中の符号401は外延を表らわし図20に
示した外延に対応するものである。また符号403は手
続の世界であって,図20に示した内包に対応するもの
である。更に符号404はオブジェクトの世界であっ
て,実世界をモデル化して表らわす世界である。
【0030】実世界(例えば要請される処理対象)をモ
デル化するに当って,本発明においては,当該モデル化
に必要なクラスおよび/またはメソッドについての相互
間の関係を指示する静的世界410と,当該モデル化に
当って得られたインスタンスの処理の時間順序関係を指
示する動的世界420とを用いるようにする。
【0031】なお,上記静的世界410において指示さ
れる上記クラスおよび/またはメソッドを,更にはクラ
スを複合化した複合クラスを,簡単のために以下,クラ
ス302’をもって代表する。
【0032】符号302は手続の世界403に存在する
クラス,303はインスタンス,313,314,・・
・は夫々メソッドを表らわす。上記メソッド313,・
・・は,個々の処理を実行する既存の処理単位であり,
当該メソッドの群の中から更に複雑な処理を実行するた
めに複数のメソッドを取り込んでまとめたものがクラス
302である。更に必要に応じては,クラス群やメソッ
ド群の中から,より複雑な処理を実行するために,クラ
スやメソッドを取り込んで,複合クラスを成形させてお
くこともある。これらは夫々オブジェクト単位の1つ1
つに相当している。
【0033】これらのメソッドやクラスは,今,既存の
ものとして存在しているものとする。例えばユーザから
或る種の処理に関して,当該処理対象を処理すべき要請
があったとする。このとき,本発明においては,当該処
理対象を処理するに必要なクラスやメソッドを,当該処
理対象の処理のために取り込んで,各クラスやメソッド
相互の間の関係づけを行う。これらの関係づけを行った
情報を記述しているのが,静的世界410の場である。
【0034】図示の場合には,当該処理対象の処理のた
めに,クラス302’として,A,B,C,D,E,
F,G,K,Lが取り込まれ,(i) クラスEに対してク
ラスG,クラスAとが“is−a”の関係にあり,(ii)ク
ラスAに対してクラスDが“is−a”の関係にあり,
(iii)クラスFに対してクラスBが“is−a”の関係に
あり,(iv)クラスBに対してクラスDとクラスKとが
“part−of”の関係にあり,(v) クラスCに対してクラ
スKとクラスLとが“part−of”の関係にある,ものと
して示されている。なお実際には,静的世界に記述され
るクラス302’は,手続の世界403に存在するクラ
ス302やメソッド313・・・をポイントするに足る
IDを用いて与えられている。
【0035】クラス302’は,手続の世界403に存
在するクラスやメソッドと対応づけられているが,簡単
に言えば,個々の処理を実行するためのいわば数学にお
ける公式の如きプログラムであって,当該プログラム
は,当該プログラム内で値が一般的な変数をもって与え
られているものと考えてよい。当該クラスにおける一般
的な変数に対してインスタンス・データをセットし,個
々のインスタンス・データを組み込んだ特定のプログラ
ムとしたものがインスタンス303である。
【0036】動的世界420においては,静的世界41
0において取り込まれたクラス302’に対応したイン
スタンスa,b,c・・・の時間的な処理順序が指示さ
れて,上記ユーザが要請した処理が実行される。
【0037】
【作用】上述の如く,例えばユーザから或る処理対象を
処理することが要請されたとすると,静的世界410上
において,当該処理に必要とされるクラス302’とし
て,クラスA,B,C,D,E,F,K,Lが指定され
る。そして,これら各クラス相互間で,“is−a”や
“part−of”などの関係が明らかにされる。実際には,
状態テーブルが用意され,それらの関係が記述され,か
つクラス302’間で因果関係上の制約が存在すれば,
その旨も記述される。
【0038】ユーザからの上記処理対象を処理する処理
に当っては,上記取り込まれたクラス302’をそのま
ま用いるのではなく,当該各クラス302’内の上記一
般的な変数に対して,個々のインスタンス・データを設
定したインスタンス303を用いる。そして,各インス
タンスが処理されてゆく時間的順序関係にしたがった処
理が行われることとなる。
【0039】図示の場合,クラスAに対応するインスタ
ンスa,クラスBに対応するインスタンスb,クラスC
に対応するインスタンスc,クラスDに対応するインス
タンスd,クラスFに対応するインスタンスfが生成さ
れ,(i) インスタンスa,b,cと進むセッションと,
(ii)インスタンスf,c,dおよびaと進むセッション
とが与えられたものとして示されている。
【0040】言うまでもなくインスタンスaを生成する
に当っては,いわば公式に相当するクラスAを用いて当
該インスタンスaが生成されるが,この場合,クラスA
はクラスEに対して,“is−a”の関係にあることか
ら,インスタンスaの生成に当っては,クラスAはクラ
スEに示される内容を遺伝されているものとみて,クラ
スEとクラスAとの両者を用いて,生成が行われる。
【0041】また,インスタンスbの生成に当っては,
クラスBに対して,クラスDとクラスKとが“part−o
f”の関係にあることから,インスタンスbはクラス
B,クラスD,クラスKを用いて生成される。
【0042】更に,各セッションの実行に当っては,例
えばインスタンスaを実行する開始時点において,静的
世界410に存在する上述の状態テーブルを調べると共
にその旨を書き込んで実行が行われ,インスタンスaの
処理が終了した時点で,その旨が上述の状態テーブルに
書き込まれる。このようにして,静的世界410に記述
されて存在する上記因果関係に対応する制約を侵すこと
のないようにされる。勿論,個々のインスタンスa,
b,c・・・が生成された状態の下でセッションが組ま
れたことに起因する因果関係上の制約も,新たに発生し
得るが,この制約は当該セッションに対応づけて与えら
れる。しかし,上述の如く静的世界においてクラス30
2’が取り込まれて関係づけられた際に生成する因果関
係は,静的世界410において記述されており,動的世
界でのセッションの処理において引き継がれるようにさ
れる。
【0043】
【実施例】実世界(例えばユーザの要求)は,図20に
モデル化して示した如く,当該実世界を表現する具体的
な情報を与える内包と,当該実世界をいわば簡単に表現
する外延とを対応づけてモデル化することができる。情
報の交換に当って,例えば或る実世界についての情報交
換を行うに当って,当該実世界について互にその内包が
理解されている場合には,当該実世界についての外延を
与えることで足りる。即ち,いちいち具体的な情報を相
手方に通知する必要はなく,いわばその実世界の呼称を
相手方に通知すれば足りる。
【0044】図2は静的世界と動的世界とを説明する説
明図である。内包は,上記した理由から,図2に示す如
く,一般に情報が隠蔽されるものであり,手続の世界4
03「情報隠蔽の世界」に対応している。一方,実世界
は,当該実世界400についての仕組みやその仕組みの
中での因果関係などを与える「静的世界」410と,当
該実世界の時間的な動きを表現したりまた複数のセッシ
ョンについての並列処理を許すか否かを指示したりする
「動的世界」420とをもってモデル化することができ
る。そして,当該「静的世界」や「動的世界」と,上述
の「情報隠蔽の世界」とが,図2に示す如く,外延40
1によって対応づけられている。
【0045】更に言えば,内包402は情報隠蔽の世界
であり,外延に意味を与えるデータを含んでいる。この
或る意味を含んだ外延を使って実世界をシミュレートす
る。それが,「静的世界」に対応する静的モデルであ
り,「動的世界」に対応する動的モデルである。
【0046】図3は静的モデルと動的モデルと機能的モ
デルとの関係を説明する説明図である。図3に示す静的
モデル411は図2に示す静的世界410に対応するモ
デルであり,同じく動的モデル421は動的世界420
に対応するモデルである。また図2に示す情報隠蔽の世
界を機能的モデル431に対応づけている。
【0047】システムについての仕組みを特定化してゆ
き,また上述した“is−a”や“part−of”などの関係
(テンプレート)を設計することによって,静的モデル
が形成される。そして機能設計が得られ,それに対応す
る形で図4に示すクラス302(あるいは複数のクラス
が更に複合化されて得られるクラス−複合化クラス30
2−1)が設計される。
【0048】動的モデルは,上述のクラス302内にイ
ンスタンス・データを割り付けることによって,特定の
処理対象単位(インスタンス)が形成され,当該各処理
対象単位間での時間的な順序関係を設計することによっ
て形成される。そして,静的モデルと動的モデルとの間
に,因果関係による制約が与えられることとなる。
【0049】図4は,図1に示す図と図3に示す図との
関係を関係づけて示す説明図である。図4に示す符号3
12ないし316は図1に対応している。また図4に示
す「静的世界」410は図3に示す「静的モデル」41
1に対応し,「動的世界」420は図3に示す「動的モ
デル」421に対応している。
【0050】夫々の目的とするデータ処理を行うための
メソッドが形成され,また複数のメソッドが組み合わさ
れてクラスが形成され,更に必要に応じて複数のクラス
が組み合わされて複合クラスが形成されるまたはされて
いる。これらが図2に示す情報隠蔽の世界に置かれる。
【0051】クラスを形成するに当っては,図5を参照
して説明する如く,クラス・スキーマ312内に,クラ
ス名を指定し,かつメソッド設定に対応して当該クラス
において使用される(変更可能に取り込まれる)メソッ
ドについてのメソッドIDを記述される。あわせて,当
該メソッドIDと各メソッド313,314・・・とが
リンク付けられる。また各メソッドが実行されるシーケ
ンスを設定するようにされる。
【0052】また,特定の処理に対応して,インスタン
ス・スキーマ316が形成される。即ち当該インスタン
ス・スキーマ内に,当該インスタンスを使用するクラス
のクラス名が記述され,個々のインスタンス・データが
記述される。
【0053】上記クラスの形成やインスタンス・スキー
マの形成に対応して,静的世界が,或る状態テーブル4
14の下にチェインづけられたクラスやメソッドと,各
メソッドに対して対応づけられた変数や定数416とが
存在する形となって形成される。また,必要に応じて,
上述の“is−a”の関係や“part−of”の関係の下で他
クラスと関係づけられる。更に,因果関係を与える制約
群が設定されることとなる。
【0054】動的世界においては,セッションが作られ
て処理順序が特定化され,また並行動作を行わせる場合
には,そのためのタイミングなどが指定されることとな
る。以下,クラスやインスタンスを生成する仕組みにつ
いて述べる。
【0055】図5はメタクラスからクラスを生成する状
態を説明する説明図である。図5に示す符号300は,
概念スキーマであって,本発明において考慮されている
情報階層関係を概念的に表現したものである。符号30
1はメタクラスであって本発明において適宜にメソッド
を変更可能に取り入れたクラスを生成し得るようにする
ために用意されたものである。
【0056】符号302は,クラスであって,当該クラ
スが仮に乗用車に関するものであれば乗用車に関する各
種メソッドを変更可能に取り込んで1つのクラスとして
取扱うよう考慮されているものである。符号303はイ
ンスタンスであって,例えば乗用車に関するクラス30
2内に取込まれている各メソッドが使用する一般名デー
タに個別の特定のデータを与えて,特定の乗用車につい
ての処理プログラムを作成したものを示したものであ
る。
【0057】符号310は,内部スキーマであって,上
記の概念スキーマ300に対応するものとして,データ
処理装置の内部に構成されているものである。そして符
号311は,メタクラス・メソッドであって,所望の個
々のクラスを生成するためのメソッドである。符号31
2は,クラス・スキーマであって,生成された或る1つ
のクラスに対応して,当該クラスに変更可能に取り込ま
れる各種メソッドについてのメソッドIDを記述すると
共に,当該各種メソッドが利用されてゆく順序関係など
を指示しているシーケンス・スキーマを記述している。
【0058】符号313,314,315・・・は夫々
メソッドであって,各メソッド313,314,315
がクラス・スキーマ312上のメソッドIDとリンクを
とられて当該クラスにおいて利用されるクラス・メソッ
ド群となる。
【0059】符号316は,インスタンス・スキーマで
ある。当該インスタンス・スキーマ216内には,自己
のインスタンス・スキーマ316が関係するクラス(例
えば312)のクラス名が記述されると共に,当該クラ
スにおいて利用されるメソッドが必要とするインスタン
ス・データ(上述のエンティティ・データ203と考え
てよい)が各メソッドIDとリンクをとられて記述され
る。
【0060】符号320は,ポップ・アップ・データで
あって,当該ポップ・アップ・データの中から,上記イ
ンスタンス・スキーマ316内にインスタンス・データ
として抽出されて書込まれる。また符号317はメッセ
ージ送信メソッド,318は一例として示されるガソリ
ン代計算用メソッド,319はオブジェクト管理部22
0内に設けられるシーケンス・テーブルを表らわしてい
る。また符号220はオブジェクト管理部を表らわして
いる。
【0061】例えば,乗用車に関するクラス302と当
該クラスに関連するインスタンス303とを生成しよう
とするとき,次のように行われる。当該生成しようとす
る人(操作者)が,そのときに頭に思い浮べた各種メソ
ッド(これらメソッドは既に存在していると考えてお
く)を,当該クラスを生成するために必要なメソッドと
して考慮する。当該考慮されたものが,図示のメタクラ
ス301と考えてよい。
【0062】当該操作者は,乗用車に関するクラスを生
成することをメタクラス・メソッド311に入力すると
共に,上記思い浮べた各種メソッド名を当該メタクラス
・メソッド311に入力する。
【0063】これに対応して,メタクラス・メソッド3
11は,クラス・スキーマ312上に,乗用車に関する
クラスである旨を記述すると共に,上記各種メソッド名
に対応するメソッドIDを記述する。このとき合わせ
て,メタクラス・メソッド311は,当該クラスにおい
て利用される各種メソッドについての利用順番を指示す
るシーケンス・スキーマや,当該クラスが他と交信する
際に必要とするであろうメッセージ送信メソッドについ
ての夫々のIDを,当該クラス・スキーマ312上に自
動的に記述する。
【0064】当該クラス・スキーマ312の生成に対応
して,各メソッドIDが夫々のメソッド313,314
・・・をポイントされたこととなり,クラスが生成され
る。なお,当該生成されたクラスに関して,上記利用す
るメソッドを適宜削除したり,交換したり,追加したり
することは自由に行われる。また,上記メタクラス・メ
ソッド311は生成しようとするクラスの側から起動さ
れると考えてよい。
【0065】更にインスタンス・スキーマ316に記述
されている所の上述したクラス名(自己が関連するクラ
スの名前)から,クラス・スキーマが発動され,当該ク
ラスが利用する各種メソッドにおいて使用されるインス
タンス・データが逐次入力されて,インスタンス・スキ
ーマ316上に記述される。なお,この動作は,クラス
の側から,操作者に対して夫々のインスタンス・データ
の入力をうながし,操作者が入力するものと考えてよ
い。これらインスタンス・データのうちでポップ・アッ
プ・データ320としてはその時点までに未登録であっ
たデータについては当該ポップ・アップ・データ320
上に自動登録される。
【0066】インスタンス・スキーマ316上のデータ
は,クラス・スキーマ312上のメソッドIDとリンク
付けされる。言うまでもなく,インスタンス・スキーマ
316上のインスタンス・データは,必要に応じて,適
宜削除したり,交換したり,追加したりされる。またク
ラスが利用するメソッドが変更されると,それに応じて
変更されることになる。
【0067】上記構成によって,所望するクラスを生成
したり,クラスにおいて利用するメソッドを変更した
り,インスタンス・データを変更したりしつつ,適宜に
メソッドを組み合わせて利用することが可能となる。
【0068】メタクラス・メソッド311を用いて,作
成しようとするクラスのクラス名が設定されると共に,
当該クラスにおいて使用されるメソッドが指定される。
その際に合わせて,当該クラスが他と交信するためのメ
ッセージ送信メソッド317などが自動的に設定される
と共に,当該クラスにおいて使用される各メソッドの順
序関係が設定される。
【0069】これに対応して,クラス・スキーマ312
上に各取り込まれたメソッドについてのメソッドID
や,メッセージ送信メソッドIDや,シーケンス・スキ
ーマが記述される。そして,各IDと各メソッドとがリ
ンクされる。
【0070】作成されたクラスを用いてインスタンスを
特定することによって特定の処理プログラムが形成され
るものとなる。図示の場合,「車」というクラスに対応
して,特定のインスタンスを取込んだインスタンス・ス
キーマ316が用意されている。
【0071】オブジェクト管理部220において例えば
所定のインスタンス・スキーマを利用するメッセージが
与えられると,オブジェクト管理部220は,当該イン
スタンスを起動し(インスタンス・スキーマを取り込
み),当該インスタンス・スキーマ内に記述されている
クラス名から図示のクラス・スキーマ312がリンクさ
れ,当該クラス・スキーマ312内のシーケンス・スキ
ーマがシーケンス・テーブル319内に取込まれる。こ
の処理の後に,オブジェクト管理部220は,シーケン
ス・テーブル319の内容を調べて,逐次必要とするメ
ソッドを使用し,インスタンス・スキーマ316の内容
を用いて,メッセージに対応するインスタンスを処理し
てゆく。
【0072】図6はクラスからインスタンスを生成する
状態を説明する説明図である。図6に示す符号は図5に
対応している。クラス302に対応して,当該クラスに
取り込むメソッドが特定されると,内部スキーマ310
内で,クラス・スキーマ312が作成され,かつ各メソ
ッド313,314・・・がリンクされる。
【0073】このようにして作成されたクラス,例えば
「車」に関するクラスは,簡単に言えば,書替え可能な
インスタンス・データがセットされ得る未だ空き状態に
あるデータ記憶域と,車に関しての各種処理を行うため
のメソッド群とよりなるものと考えてよい。そして,こ
のように作成されたクラスにおける上記データ記憶域
に,特定のインスタンス・データをセットすることによ
って,当該インスタンス(インスタンス・データが使用
される特定の処理プログラム)が作成されることにな
る。当該特定の処理プログラムが,図示されるインスタ
ンスである。
【0074】インスタンスを作成するに当っては,各メ
ソッドで使用されるインスタンス・データを,インスタ
ンス・スキーマ316上に設定してゆく。そして当該設
定したインスタンス・スキーマの内容が,クラス・スキ
ーマ312上のメソッドIDとリンクをとられる。これ
によって,インスタンス・スキーマ316の内容を使用
して,対応づけられているクラスにおけるメソッドが実
行される。特定の処理プログラム(インスタンス)が実
行可能となる。当該実行は,オブジェクト管理部220
が,インスタンス・スキーマ316や各メソッド31
3,314・・・を起動することによって行われる。
【0075】上述の如く,メタクラス・メソッド311
を用いて,作成対象となるクラスのクラス名を入力さ
せ,当該クラスに取り込む各種メソッドを変更可能に取
り込んで,適宜所望する形でクラスが作成される。即
ち,各メソッドを適宜に組合わせることによって,所望
されるクラスが作成される。当該クラスは,処理プログ
ラムの例で言えば,インスタンス・データがいわば未だ
変数の形で記述されている状態の処理プログラムである
と考えてよい。
【0076】当該クラス,即ちインスタンス・データが
いわば未だ変数の形で記述されている状態の処理プログ
ラムにおいて,当該変数に対応して特定のインスタンス
・データを指定した上で完成されたものが,特定の処理
を行う処理プログラムである。当該変数をいわば定数に
設定した処理プログラムが,上述のインスタンスであ
る。上述のインスタンス・スキーマ316にインタンス
・データを書替え可能に設定することによって,適宜所
望するインスタンスが作成される。
【0077】図7はダイナミック・オブジェクト処理部
における動作の一部を説明する図である。上述の内部ス
キーマ310に関連する各種情報は,図22に示したオ
ブジェクト部品206として,部品属性ファイル205
に保持される。図7に示すダイナミック・オブジェクト
処理部は,当該オブジェクト部品を用いて処理を行う。
言うまでもなく,上述の如く,各オブジェクト部品20
6あるいは更に複合された形でのオブジェクト部品20
6を適宜組み合わせることが可能となる。
【0078】図7に示す符号212はダイナミック・オ
ブジェクト処理部であって,シミュレーションなどを行
う仮動作モード216と,テストなどを行うインスタン
ト動作モード217と,データ処理を行ないあるいは他
端末との交信処理を行う本番動作モード218とをもっ
ている。
【0079】符号205は図22に示した部品属性ファ
イルであり,符号205’は当該部品属性ファイル20
5の内容の全部または一部についてコンパイル処理を行
うなどして実動動作を高速度で実行し得るようにまとめ
た実行処理データ214を保持しているものである。な
お実行処理データ214は,処理実行のためのオブジェ
クト・プログラムの場合で言えば,一般に,数10から
数100ステップよりなる処理単位がいわば処理順にシ
リヤルに結合づけられているものである。
【0080】符号213は,上述のオブジェクトであっ
て,一般には,上述の原子オブジェクトの形のままのも
のや,上述のカプセル・オブジェクトの状態のもの,上
述のイベント・オブジェクトの状態のもの,上述のシス
テム・オブジェクトの状態のものの夫々に相当するもの
である。当該オブジェクト213は図22を参照して説
明した如く,オブジェクト部品206の形でオブジェク
ト・コマンドによって特定されるように格納されている
と考えてよい。
【0081】符号215はダイレクト・オブジェクト処
理展開処理を表わしており,上記個々のオブジェクト2
13を展開し,あるいは複数のオブジェクトをまとめて
展開して,実行処理データ214を得る処理を行う。
【0082】図16を参照して上述した如く一般に複合
オブジェクトの形で処理対象単位にまとめられて,1つ
のある目的をもった処理を実行するための振る舞いを発
揮する単位となる。そしてそれらは,図22に示した如
く,オブジェクト・コマンド201をもって特定される
オブジェクト部品206の形で,部品属性ファイル20
5に格納されている。
【0083】新しい処理機能を生成するような場合,当
該新しい処理機能を行ない得るようにするために,新し
くオブジェクトが生成されあるいは既存のオブジェクト
が合目的的に結合されて,当該新しい処理機能を発揮す
るオブジェクトが上記オブジェクト部品206の1つと
して用意される。
【0084】当該生成されたオブジェクトについては,
現実に正しく機能するか否かについてシミュレーション
を行ったり,あるいはシミュレーションの終了したもの
については仮動作を行わせてみるなどの処理を行う。こ
の処理が図7図示の仮動作モード216であり,ダイナ
ミック・オブジェクト処理部212は,部品属性ファイ
ル205の内容を利用して,該当する処理動作をシミュ
レーションしてみるようにする。
【0085】仮動作モード216によって一応正常に動
作したオブジェクト213あるいはオブジェクト群につ
いては,このままでは実動動作に当ってオブジェクト管
理部(図8参照)との間で多くの交信を必要として処理
速度が遅いことから,実行処理データ(EXEデータ)
214に展開される(コンパイルされて1つのEXEデ
ータとされる)。当該展開処理が図示のダイレクト・オ
ブジェクト処理展開処理215において行われ,部品属
性ファイル205’に格納される。
【0086】ダイナミック・オブジェクト処理部212
においては,部品属性ファイル205の内容を利用し
て,所定の処理について一時的に代行処理を行ってみた
り,あるいはテスト処理を行ってみたりする必要が生じ
た場合,上記ダイレクト・オブジェクト処理展開処理2
15を発動して実行処理データ214を生成して,当該
処理を行うことがある。このような処理モードが,図7
においてインスタント動作モード217として示されて
いる。
【0087】また図7図示の本番動作モード218は,
図示の実行処理データ214を用いて,本番の処理動作
を行うモードである。なお部品属性ファイル205内で
のメタ・データには,当該オブジェクトの性質などに関
する意味データが記述されていると共に,自分のオブジ
ェクトからみての上位のオブジェクト(“is−a”で示
されるオブジェクト)についての結合関係や自分のオブ
ジェクトに含まれるより下位のオブジェクト(“part−
of”で示されるオブジェクト)群についての結合関係を
指示する記述が存在していると考えてよい。
【0088】図8は端局の構成を示している。図中の符
号202,203,204,205,205’,20
6,212,214は図22や図7に対応している。ま
た符号101は端局であって実行処理データ214を用
いて処理実行を行いあるいは回線を介して他の端局と交
信を行うものを表わしている。また符号103はLAN
または交換回線などの回線を表わしている。
【0089】端局101内には,更に符号219で示す
通信/受信処理部,符号220で示すオブジェクト管理
部,符号221で示すディスプレイ,符号222で示す
ハイパー言語処理部などが存在している。
【0090】図示のディレクトリ処理部204の処理は
図22を参照して述べた如きものであり,また図示のダ
イナミック・オブジェクト処理部212の処理も図7を
参照して述べた如きものである。
【0091】図8に示す(仮動作サポート)は,図7に
示した仮動作モード216を行うまでの動作に対応する
サポート機能である。図示のハイパー言語処理部222
には「部品表示・選択」機能があり,使用可能なオブジ
ェクト部品をディスプレイ221から検索して出力す
る。もしも適当なものがなければ新しいオブジェクト部
品として「部品指定」機能を用いて部品指定を行なう。
「属性設定」機能によってクラス・オブジェクト部品を
生み出し,「スキーマ」設定機能などによってインスタ
ンス・オブジェクト部品を生み出すことができる。
【0092】ディスプレイ221を用いての「部品表
示」機能には,オブジェクト部品のメタデータである所
の(i)名称やコメントを出力する目次表示,(ii)オ
ブジェクト部品の内容を示すスキーマや属性の表示,
(iii )クラス属性やインスタンス定数の表示などがあ
る。
【0093】またハイパー言語処理部222による「部
品組み合わせ」機能には,即ちオブジェクト部品を組み
合わせてより大きい複合されたオブジェクト部品を得る
には,クラスの作成に関して属性の追加・変更・削除機
能が用意され,インスタンス定数の作成に関してスキー
マの追加・変更・削除機能が用意されている。
【0094】ハイパー言語処理部222による「ユーザ
画面作成」機能では,画面作成および表示に当って,
「画面作成および表示」クラスのバッファに画面のデー
タを入れてインスタンスをつくるようにする。このた
め,当該「ユーザ画面作成」機能は画面クラスをインス
タンス化することに相当する。
【0095】またハイパー言語処理部222における
「仮動作」機能では,メッセージをインスタンスが受け
るとクラスで示すメソッドとリンクさせて一次メモリ上
に一時的にカプセル(図19(C)参照)を実現し当該
カプセルのもつ振る舞いを実行するようにする。
【0096】更にハイパー言語処理部222における
「部品変更」の機能は,属性やスキーマの変更・追加・
削除によって,オブジェクト部品を変更する機能であ
る。また「部品登録」機能は,部品属性ファイル205
上に,オブジェクト・コマンド(当該オブジェクト部品
の呼称である)と対応づけて,当該オブジェクト部品を
登録する機能である。
【0097】図8に示す「展開(コンパイル)」は,図
7に示すダイレクト・オブジェクト処理展開処理215
を表わしている。当該展開の処理では,データ処理装置
の一次メモリの大きさに合わせて,なるべく大きい実行
処理データ214に展開する。
【0098】オブジェクト管理部220は,図8に示し
たハイパー言語処理部222を制御して上述の如くオブ
ジェクト部品206を部品属性ファイル205上に保持
させ,ダイナミック・オブジェクト処理部212を制御
して仮動作モード216やインスタント動作モード21
7や本番動作モード218の各動作を行わせる。また,
回線103を介してのメッセージ受信に対応して,仮動
作モードでのインスタンス起動を行ない,一次メモリ上
で仮にカプセル化を行ってデータ処理装置を動かし,当
該処理の結果をメッセージ送信するようにする。勿論,
既に実行処理データ214に展開済みのものがあれば,
それを実行して,相手端局にメッセージ送信する。
【0099】自己端局101内での処理に当って,所望
されるオブジェクト部品が自己端局101内に存在しな
かったり,属性がなかったり,スキーマがなかったりす
ると,回線103を介して他端局から転送を受けて,自
己端局101内に取り込む所のラーニングを行う。
【0100】図9はセッションの実行に当って因果関係
が取り入れられる態様を説明する図である。図中の符号
411,421,431は夫々図3に対応しており,符
号414は図4に示すものと同じ状態テーブルを表らわ
している。
【0101】図示の場合,状態テーブル414内の情報
として或る処理のためにクラスPないしYが取り込まれ
ていることが示され,かつクラスPの下にクラスQ,
R,S,T,Uが存在し,クラスSの下にクラスX,Y
が存在し,クラスUの下にクラスV,Wが存在するもの
として示されている。そして,インスタンスr,u,
t,w,s,xが生成されて,セッションが組まれてい
る。
【0102】動的モデル421の下で,セッションIや
セッションIIが実行されてゆく。しかし,個々のインス
タンス例えばuが自己の処理を実行される間には,他イ
ンスタンスとの間の因果関係を考慮する必要はない。当
該因果関係は,例えばインスタンスuが自己の処理を開
始する時点で,状態テーブル414の内容を調べ,因果
関係上の制約に反しているか否かをチェックした上で実
行し,インスタンスuの処理が終了した時点で状態テー
ブル414に報告しておくことで足りる。
【0103】セッションIにおいてインスタンスuを実
行した結果,セッションIIにおけるインスタンスuの実
行に代えて他のインスタンスvを実行させる必要が生じ
る場合などにおいては,セッションIのインスタンスu
の実行終了報告にもとづいて,セッションIIのインスタ
ンスuに割り込んでインスタンスvに分岐させればよ
い。または,セッションIIのインスタンスuの開始時に
その旨が動的モデル421側に通知されればよい。
【0104】図10はクラスの存在とインスタンスによ
る処理実行との関係を説明する図である。図中の符号は
図3や図9に対応している。上述の如く,クラス30
2’の群について,テンプレートや因果関係が状態テー
ブル414に記述されている。そして図示の場合,取り
込まれているクラス302’としてのクラスA,B,C
に対応して,インスタンスa,b,cが生成され,イン
スタンスaの処理終了に対応してメッセージ交信により
インスタンスbが起動され,インスタンスbの処理終了
に対応してメッセージ交信によりインスタンスcが起動
される。当該インスタンスを組合わせたセッションの作
成に当っては,図4において当該図4の下方に(セッシ
ョン作り)や(パラレル動作タイミング)として示して
いるように,操作者が指示するものであり,その結果が
動的モデル内に記述されていてセッションの実行に当っ
て利用される。
【0105】図11は複数のクラス間での関係を説明す
る説明図である。図11(A)は或るクラスXと他のク
ラスYとが“is−a”の関係にある場合を表わしてい
る。例えばクラスXが「車」に関するプログラムである
とし,クラスYが「乗用車」に関するプログラムである
とする如き関係にある場合を表わしている。
【0106】図11(A)の場合,クラスXに関してメ
ソッドa,b,cが取り込まれており,クラスYに関し
てメソッドd,eが取り込まれているものとして示され
ている。このような場合に,クラスYを実行することが
指示されたとすると,クラスYの実行に当っては,クラ
スXからメソッドa,b,cがインヘリットされ(遺伝
され)て,メソッドa,b,c,d,eにもとづいた処
理を実行するようにされる。
【0107】図11(B)は或るクラスXと他のクラス
αやβとが“part−of”の関係にある場合を表わしてい
る。例えばクラスXが「車」に関するプログラムである
とし,クラスαやβが「車体」や「エンジン」や「車
輪」・・・などの1つであるプログラムであるとする如
き関係にある場合を表わしている。
【0108】図11(B)の場合,クラスXに関してメ
ソッドa,b,cが取り込まれており,クラスαに関し
てメソッドp,qが取り込まれており,クラスβに関し
てメソッドr,sが取り込まれているものとして示され
ている。このような場合に,クラスXを実行することが
指示されたとすると,当該クラスXの実行に当っては,
メソッドa,b,c,p,q,r,sにもとづいた処理
を実行するようにされる。
【0109】なお,テンプレートの例として,上記“is
−a”と“part−of”とのみを示したが,これに限られ
るものではない。図12はオブジェクト管理部における
構成を説明する図である。オブジェクト管理部220
は,図5,図6,図8に示されているものであり,部品
属性ファイル205に存在している各種情報を利用した
処理を実行するものである。
【0110】当該オブジェクト管理部220は,図5や
図6に示した如くメッセージに対応して処理を実行する
ものであることから,複数のメッセージを並行して実行
することが可能になるようにされるべきである。このこ
とから,図12に示す如く,オブジェクト管理部クラス
330(以下,オブ管クラスと呼ぶことがある)が用意
され,メッセージを受信することに対応して,複数個の
オブ管インスタンス331,332,…333を生成可
能にされる。そして各メッセージの受信に対応してその
都度1つのオブ管インスタンスが割振られ,複数のオブ
管インスタンスが並行に処理されて複数のメッセージを
並行して処理されてゆく。勿論,メッセージが短期間に
集中する場合には,個々のオブ管インスタンス例えば3
31に対応する待キューが形成されることがある。
【0111】図13はオブジェクト管理部における動作
フローを示している。 (S1):メッセージに対応して当該メッセージを実行
する上で必要とするインスタンスに対応して,インスタ
ンス・スキーマ316を読み込む。 (S2):インスタンス・スキーマ316の中に記述さ
れているクラス名によって,クラス・スキーマ312を
読み込む。 (S3):当該クラス・スキーマ312の内容にもとづ
いて,当該クラス・スキーマが指定するメソッドを引き
出す。
【0112】このようにして,必要とするメソッドが引
き出されるが,クラス・スキーマ312の中に“is−
a”や“part−of”の関係にある上位や下位のクラスが
存在する場合には,それらクラスが求められる。
【0113】当該関係のあるクラスについてのメソッド
が,図11(A)や図11(B)に関連して説明した如
く遺伝されることとなる。 (S31):“is−a”や“part−of”の関係にあるク
ラスを求める。 (S32):関連するメソッドをすべて引き出す。 (S4):クラス・スキーマ312の中に記述されてい
るシーケンス・データにしたがって,クラスに取り込ま
れているメソッドを逐次起動する。 (S5):1つのメッセージに対応する上述の処理が終
了すると,次のメッセージについての処理を実行するこ
ととなる。
【0114】図14はセッションの実行に当って因果関
係のチェックが行われる態様を説明する図である。図中
の符号411は静的モデル,415は因果関係制約群,
417は受付けメソッドを表らわしている。また図中の
A,B,P,Q,C,D,Eなどの大文字で示している
のは夫々クラス302’であり,a,b,f,p,q,
c,dなど小文字で示しているのは夫々対応するクラス
を利用して得られたインスタンスを表らわしている。
【0115】図示の場合,因果関係制約群415内に次
の如き制約が与えられているものとして示されている。 (a)クラスAは自己クラスA内での制約を受ける。制
約条件C0 として, A=(空白) なる記述が与えられている。 (b)クラスP又はクラスQは,クラスAの処理が終了
したことを条件として開始し得る。制約条件C1 とし
て, A→P,Q なる記述が与えられている。 (c)クラスBは,クラスPとクラスQとの両者の処理
が終了したことを条件として開始し得る。制約条件C2
として, (P,Q)→B なる記述が与えられている。 (d)クラスAは,クラスC又はクラスD又はクラスE
の処理が終了したことを条件として開始し得る。制約条
件C3 として, C,D,E→A なる記述が与えられている。
【0116】上記の如き制約条件C0 , 1 ,C2 ,C
3 が与えられているとき,動的モデル421におけるセ
ッションの実行に当って,インスタンスaの開始時に受
付けメソッド417を介して上記制約条件C0 ないしC
3 がチェックされ,条件C0,C3 が満たされているこ
とから,処理が開始される。そしてインスタンスaの処
理の終了時t2 に,受付メソッド417を介して,その
旨が状態テーブルに通知される。
【0117】次いでインスタンスpやインスタンスqの
処理が開始される際に,制約条件C 1 が満たされている
ことがチェックされる。またインスタンスbの開始に当
っては制約条件C2 を満たしているか否かがチェックさ
れる。
【0118】図15はクラス相互間の横関係を説明する
図である。図15(A)はリレーショナル・リンクの場
合を表らわし,図15(B)はネットワーク・リンクの
場合を表らわし,図15(C)は二項リンクの場合を表
らわしている。図15(A)(B)(C)において,符
号302’−1,302’−2・・・,302’A,3
02’B・・・は夫々クラスを表らわしている。
【0119】図11を参照して説明したクラス相互間の
関係の場合には,図示の“ia−a”の場合や“part−o
f”の場合のいずれも,上位下位の関係が存在する場合
である。
【0120】上記に対して,2つのクラス間あるいは2
つ以上のクラス間で,互いに同位列関係にある場合が存
在する。即ち,クラス相互間で,上位下位関係でなく,
同位レベルの下での,いわば横関係にある場合が存在す
る。これらの横関係にあるクラス相互間でも,必要に応
じて,一方にのみ記述されている情報を他方にも流用さ
せることが望ましい場合がある。図15は当該横関係の
場合を例示したものである。
【0121】図15(A)においては,クラス302’
−2,302’−3,302’−4の夫々がキークラス
302’−1と同じ或る所定の関連をもつ場合に相当す
る。図示の「関連」は,記憶領域の1つに記述された関
連情報である。
【0122】図15(B)においては,ネット親クラス
302’Aから或る関連の下て他クラスを探すと,ネッ
ト子クラス302’Bが見出され,次いでネット子クラ
ス302’Cが見出され・・・,ネット子クラス30
2’Nが見出され,更に,ネット子クラス302’Nか
らはまた或る関連の下でネット親クラス302’Aが見
出される場合である。
【0123】図15(C)においては,2つのクラス3
02’−5と302’−6との間で,2者においてのみ
関係する情報が存在する場合である。図15(A)
(B)(C)のいずれの場合も,図示の「関連」情報ま
たは「関係」情報は,一般には,各クラスが共通にアク
セスできる記憶領域上に置かれ,各クラスは必要に応じ
てその情報を流用する。
【0124】図15に示す如き横関係も,上述の“is−
a”や“part−of”と同様に,クラス間の相互関係の1
つの形態であり,静的モデルの場に保持される。
【0125】
【発明の効果】以上説明した如く,本発明によれば,例
えばユーザが要請した処理に対応して,操作者は,既存
のメソッドまたはクラスを取り込み,あるいは新しくク
ラスを生成して,当該要請された処理を実行するに足る
所の,いわば公式の如きプログラムを抽出し,次いで取
り込まれたメソッドやクラスを利用して所望されるイン
スタンス・データを設定したインスタンス群を生成し,
セッションを組んで実行させるようにしている。
【0126】このようにしたことによって,ユーザから
の要請などで作成されたメソッドやクラスは逐次蓄積さ
れて後日の利用を可能にし,かつ直接的にインスタンス
を生成するのでなく,いわば公式に相当するような一般
的な変数をもって記述したクラスを生成しておいて,必
要に応じてインスタンスを生成することから,上記メソ
ッドやクラスが後日の他の利用に耐えるものとなってい
て,努力の結果の蓄積が可能となる。
【図面の簡単な説明】
【図1】本発明の原理構成図である。
【図2】静的世界と動的世界とを説明する説明図であ
る。
【図3】静的モデルと動的モデルと機能的モデルとの関
係を説明する説明図である。
【図4】図1に示す図と図3に示す図との関係を関係づ
けて示す説明図である。
【図5】メタクラスからクラスを生成する状態を説明す
る説明図である。
【図6】クラスからインスタンスを生成する状態を説明
する説明図である。
【図7】ダイナミック・オブジェクト処理部における動
作の一部を説明する図である。
【図8】端局の構成を示す図である。
【図9】セッションの実行に当って因果関係が取り入れ
られる態様を説明する図である。
【図10】クラスの存在とインスタンスによる処理実行
との関係を説明する図である。
【図11】複数のクラス間での関係を説明する説明図で
ある。
【図12】オブジェクト管理部における構成を説明する
図である。
【図13】オブジェクト管理部における動作フローを示
している。
【図14】セッションの実行に当って因果関係のチェッ
クが行われる態様を説明する図である。
【図15】クラス相互間の横関係を説明する図である。
【図16】オブジェクトをカプセル化する利点を説明す
る図である。
【図17】会社部門をモデル化した説明図である。
【図18】モデルを抽象化して示す説明図である。
【図19】カプセルを説明する図である。
【図20】オブジェクトをモデル化して説明する図であ
る。
【図21】モデル化したオブジェクトの働きを説明する
図である。
【図22】オブジェクトを取扱う処理態様を示す。
【符号の説明】
101 端局 103 LAN又は交換回線 205 部品属性ファイル 206 オブジェクト部品 212 ダイナミック・オブジェクト処理部 220 オブジェクト管理部 301 メタクラス 302 クラス 303 インスタンス 310 内部スキーマ 311 メタクラス・メソッド 312 クラス・スキーマ 313 メソッド 316 インスタンス・スキーマ 330 オブジェクト管理部クラス 331 オブ管インスタンス 410 静的世界 420 動的世界 411 静的モデル 421 動的モデル 431 機能的モデル 414 状態テーブル 415 因果関係制約群
───────────────────────────────────────────────────── フロントページの続き (72)発明者 村川 雅彦 神奈川県川崎市高津区坂戸100番1 富士 通ネットワークエンジニアリング株式会社 内 (72)発明者 豊田 雅信 神奈川県川崎市高津区坂戸100番1 富士 通ネットワークエンジニアリング株式会社 内 (72)発明者 足立 武史 神奈川県川崎市高津区坂戸100番1 富士 通ネットワークエンジニアリング株式会社 内

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 単一の処理単位および/または単一の処
    理単位を複合化した複合処理単位をオブジェクトと名付
    け,当該オブジェクトを組み合わせ,所望される処理を
    実行するオブジェクト・ベース・データ処理装置におい
    て,上記オブジェクトを,当該オブジェクトを構成する
    エンティティ・データと当該オブジェクトの性質を記述
    したメタ・データとをもって,オブジェクト部品(20
    6)として,部品属性ファイル(205)に格納してお
    くよう構成すると共に,オブジェクト管理部(220)
    が,上記部品属性ファイル(205)上の上記オブジェ
    クト部品(206)と交信して,上記所望される処理を
    実行するよう構成されてなり,手続の世界(403)に
    おける情報群として,個々の処理を実現するメソッド
    (312,・・・)および/またはクラス(302)を
    上記オブジェクトの1つとして格納すると共に,1つま
    たは複数個のメソッドをクラスにまとめて,当該クラス
    (302’)に取り込まれた上記1つまたは複数個のメ
    ソッドについての当該メソッド名を記述するクラス・ス
    キーマ(312)と,上記クラス内に存在する一般名称
    の変数を特定のインスタンス・データにて置換したイン
    スタンス(303)が,上記クラス・スキーマ(31
    2)によって指定されたメソッドとリンク付けて生成可
    能に用意される,インスタンス・スキーマ(316)と
    をそなえ,上記複合処理単位に該当するオブジェクト部
    品(206)が,上記クラス・スキーマ(312)に記
    述されたメソッドまたはメソッド群と,上記インスタン
    ス・スキーマ(316)の内容とをリンクづけた形で構
    成されており,所望される処理対象が,上記クラス群お
    よび/またはメソッド群の存在と当該クラス群および/
    またはメソッド群についての相互間の関係とを指示する
    静的モデル(411)と,上記インスタンス群の存在と
    当該インスタンス群間の時間的順序関係とを指示する動
    的モデル(421)との,両モデルでモデル化して与え
    られ,上記動的モデル(421)におけるインスタンス
    (303)の処理進行状況が,上記静的モデルにおける
    クラス間の因果関係と照合をとられて,実行されるよう
    にしたことを特徴とするオブジェクト・ベース・データ
    処理装置。
  2. 【請求項2】 上記クラスが対応づけられる静的モデル
    (411)において,複数のメソッドおよび/または複
    数のクラス相互間での上位下位関係を含む相互関係を表
    らわす仕組みが記述されると共に,上記動的モデル(4
    21)における上記インスタンスの処理進行に対応する
    セッションの動作において,上記相互関係の下で対応す
    る一方のメソッドおよび/またはクラスがもつ情報を他
    方のメソッドおよび/またはクラスがもつべき情報とし
    て遺伝させるようにしたことを特徴とする請求項1記載
    のオブジェクト・ベース・データ処理装置。
  3. 【請求項3】 上記静的モデル(411)において,状
    態テーブル(414)がもうけられ,当該状態テーブル
    (414)の内容について,上記各セッションの動作の
    開始時点において調べられると共に当該各セッションの
    動作の終了時点において当該動作の結果を記述するよう
    構成されることを特徴とする請求項1記載のオブジェク
    ト・ベース・データ処理装置。
  4. 【請求項4】 上記相互関係が,“is−a”の関係およ
    び/または“part−of”の関係で与えられる上位下位関
    係であることを特徴とする請求項2記載のオブジェクト
    ・ベース・データ処理装置。
  5. 【請求項5】 上記相互関係が,リレーショナル・リン
    クで関係づけられる関係を含む同位列関係であることを
    特徴とする請求項2記載のオブジェクト・ベース・デー
    タ処理装置。
JP5003496A 1993-01-12 1993-01-12 オブジェクト・ベース・データ処理装置 Withdrawn JPH06214865A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP5003496A JPH06214865A (ja) 1993-01-12 1993-01-12 オブジェクト・ベース・データ処理装置
US08/179,047 US5586326A (en) 1993-01-12 1994-01-07 Object base data processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5003496A JPH06214865A (ja) 1993-01-12 1993-01-12 オブジェクト・ベース・データ処理装置

Publications (1)

Publication Number Publication Date
JPH06214865A true JPH06214865A (ja) 1994-08-05

Family

ID=11558956

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5003496A Withdrawn JPH06214865A (ja) 1993-01-12 1993-01-12 オブジェクト・ベース・データ処理装置

Country Status (2)

Country Link
US (1) US5586326A (ja)
JP (1) JPH06214865A (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6044205A (en) * 1996-02-29 2000-03-28 Intermind Corporation Communications system for transferring information between memories according to processes transferred with the information
US5694546A (en) 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
JPH08297573A (ja) * 1995-04-27 1996-11-12 Fujitsu Ltd オブジェクトデータ処理装置
US6625617B2 (en) 1996-01-02 2003-09-23 Timeline, Inc. Modularized data retrieval method and apparatus with multiple source capability
US5862325A (en) * 1996-02-29 1999-01-19 Intermind Corporation Computer-based communication system and method using metadata defining a control structure
US5761678A (en) * 1996-06-26 1998-06-02 International Business Machines Corporation Creation of clone storage area with identification of base storage area and deferred cloning of metadata
JP3763937B2 (ja) * 1996-06-28 2006-04-05 富士通株式会社 オブジェクト指向プログラミング装置、およびオブジェクト結合プログラム記憶媒体
US5991765A (en) * 1997-05-06 1999-11-23 Birdstep Technology As System and method for storing and manipulating data in an information handling system
US6003040A (en) 1998-01-23 1999-12-14 Mital; Vijay Apparatus and method for storing, navigating among and adding links between data items in computer databases
US6088511A (en) * 1998-05-13 2000-07-11 Microsoft Corporation Nested parallel 2D Delaunay triangulation method
US6292822B1 (en) 1998-05-13 2001-09-18 Microsoft Corporation Dynamic load balancing among processors in a parallel computer
US6480203B1 (en) 1999-03-19 2002-11-12 Corel Inc. System and method for processing an event of a graphical object
US6549199B1 (en) 1999-03-19 2003-04-15 Corel Inc. System and method for adjusting a graphical object
US6469716B1 (en) 1999-03-19 2002-10-22 Corel Inc. System and method for processing data for a graphical object
US6469715B1 (en) 1999-03-19 2002-10-22 Corel Inc. System and method for controlling the operation of a graphical object using a project
US7152228B2 (en) * 1999-07-08 2006-12-19 Science Applications International Corporation Automatically generated objects within extensible object frameworks and links to enterprise resources
AUPQ152599A0 (en) 1999-07-09 1999-08-05 Canon Kabushiki Kaisha Digital image meta-data
AU744516B2 (en) * 1999-07-09 2002-02-28 Canon Kabushiki Kaisha Combining a plurality of images and transforming an image having associated meta-data
US7024657B2 (en) * 2000-02-21 2006-04-04 Matsushita Electric Industrial Co., Ltd. Program generation apparatus for program execution system, replaces variable name in each class file by assigned offset number so that same offset numbers are assigned to non-dependent variables with same variable name
US6735772B1 (en) * 2000-04-13 2004-05-11 International Business Machines Corporation System and method for handling orphaned cause and effect objects
US6718335B1 (en) 2000-05-31 2004-04-06 International Business Machines Corporation Datawarehouse including a meta data catalog
US7058939B2 (en) * 2001-04-05 2006-06-06 International Business Machines Corporation Automatic link maintenance to ensure referential integrity constraints
US6976036B2 (en) * 2001-11-06 2005-12-13 Science Applications International Corporation Database management system
JP4859456B2 (ja) * 2005-12-27 2012-01-25 株式会社日立製作所 データスキーマのマッピングプログラム及び計算機システム
US8032858B2 (en) * 2007-08-28 2011-10-04 International Business Machines Corporation Method and system for navigationally displaying HTTP session entry and exit points
US8607197B2 (en) * 2007-08-28 2013-12-10 International Business Machines Corporation Displaying HTTP session entry and exit points
US10331419B2 (en) * 2017-11-30 2019-06-25 International Business Machines Corporation Creating composite templates for service instances
US10331421B2 (en) * 2017-11-30 2019-06-25 International Business Machines Corporation Execution of a composite template to provision a composite of software service instances
US11055134B2 (en) 2017-11-30 2021-07-06 International Business Machines Corporation Performing an action on a composite of software instances

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2602205B2 (ja) * 1986-01-16 1997-04-23 株式会社日立製作所 データベース・アクセス制御方法
JP2808672B2 (ja) * 1989-05-31 1998-10-08 株式会社日立製作所 オブジェクト指向言語のクラスを用いるメリッド決定方法
US5313629A (en) * 1989-10-23 1994-05-17 International Business Machines Corporation Unit of work for preserving data integrity of a data-base by creating in memory a copy of all objects which are to be processed together
US5161225A (en) * 1989-10-23 1992-11-03 International Business Machines Corporation Persistent stream for processing time consuming and reusable queries in an object oriented database management system
JP2591217B2 (ja) * 1990-02-06 1997-03-19 日本電気株式会社 オブジェクトクラス定義情報実装装置
JPH047640A (ja) * 1990-04-25 1992-01-13 Hitachi Ltd クラス継承解決処理方法
US5297279A (en) * 1990-05-30 1994-03-22 Texas Instruments Incorporated System and method for database management supporting object-oriented programming
US5265206A (en) * 1990-10-23 1993-11-23 International Business Machines Corporation System and method for implementing a messenger and object manager in an object oriented programming environment
JP2556189B2 (ja) * 1990-10-29 1996-11-20 富士ゼロックス株式会社 オブジェクト指向計算機システムにおけるメソッド起動装置
US5295256A (en) * 1990-12-14 1994-03-15 Racal-Datacom, Inc. Automatic storage of persistent objects in a relational schema
US5187786A (en) * 1991-04-05 1993-02-16 Sun Microsystems, Inc. Method for apparatus for implementing a class hierarchy of objects in a hierarchical file system
US5355474A (en) * 1991-09-27 1994-10-11 Thuraisngham Bhavani M System for multilevel secure database management using a knowledge base with release-based and other security constraints for query, response and update modification
US5361350A (en) * 1991-12-12 1994-11-01 International Business Machines Corporation Object oriented method management system and software for managing class method names in a computer system

Also Published As

Publication number Publication date
US5586326A (en) 1996-12-17

Similar Documents

Publication Publication Date Title
JPH06214865A (ja) オブジェクト・ベース・データ処理装置
US5560012A (en) Object-oriented data processing system
CN106445536B (zh) 自动化业务设计管理***
US5572733A (en) Data processing system which executes composite objects by combining existing objects
JPH06266813A (ja) プロセス・モデルおよびデータ・モデルを構築するために複数のユーザからデータおよび要求事項を収集し入力するためのデータ収集装置および方法
CN105930344A (zh) 一种基于产品研制流程的数据库应用***快速开发平台
CN106528169A (zh) 一种基于AnGo动态演化模型的Web***开发可复用方法
US5594836A (en) Ennoversion management system for data processing system
CN103875008B (zh) 用于创建工作流程的图形的方法和***
US20060235660A1 (en) Customized processing in association with finite element analysis
CN114707429B (zh) 基于ear的可执行建模方法、装置、计算机设备和介质
US8875119B2 (en) System and method for generating a source code for a computer program
JPH0683693A (ja) オブジェクトを組み合わせて処理を実行するデータ処理装置
JPH06332711A (ja) データ処理システムにおけるオブジェクト管理処理方式
JPH07114464A (ja) オブジェクト指向データ処理システム
Barna et al. A workflow-driven design of web information systems
JPH06332785A (ja) オブジェクト指向データ処理システム
JPH06214790A (ja) オブジェクト指向データ処理装置
JPH07114472A (ja) オブジェクト指向データ処理システム
JPH06332784A (ja) オブジェクト指向データ処理システム
JPH06332714A (ja) オブジェクトの自己pr方式
JPH0683605A (ja) 改変したプログラムを実行するデータ処理方式
JPH06214791A (ja) オブジェクト・データ転送処理方式
JPH06332715A (ja) オブジェクト指向データ処理システム
Watkins ARL

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20000404