JPH06332772A - データ処理システムにおけるエノバージョン管理処理方式 - Google Patents

データ処理システムにおけるエノバージョン管理処理方式

Info

Publication number
JPH06332772A
JPH06332772A JP5122559A JP12255993A JPH06332772A JP H06332772 A JPH06332772 A JP H06332772A JP 5122559 A JP5122559 A JP 5122559A JP 12255993 A JP12255993 A JP 12255993A JP H06332772 A JPH06332772 A JP H06332772A
Authority
JP
Japan
Prior art keywords
class
enoversion
instance
composite
processing
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
JP5122559A
Other languages
English (en)
Inventor
Tadamitsu Ryu
忠光 龍
Hiroyuki Izumi
寛幸 泉
Masahiko Murakawa
雅彦 村川
Masanobu Toyoda
雅信 豊田
Takeshi Adachi
武史 足立
Naomi Ichikawa
なおみ 市川
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 JP5122559A priority Critical patent/JPH06332772A/ja
Priority to US08/247,665 priority patent/US5594836A/en
Publication of JPH06332772A publication Critical patent/JPH06332772A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99954Version management

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Operations Research (AREA)
  • Physics & Mathematics (AREA)
  • Educational Administration (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Game Theory and Decision Science (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

(57)【要約】 【目的】 本発明は,オブジェクトに対応して,エノバ
ージョン管理を行い,将来に向かってのより優れたオブ
ジェクトの生成に利用することを目的としている。 【構成】 本発明に用いる4つの階層である所の,クラ
スと複合クラスとインスタンスと複合インスタンス(セ
ッション)との夫々について,エノバージョン管理を行
い,かついずれか2つ以上の変更に関係がある場合にス
ーパ・エノバージョン管理を行う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】実世界をオブジェクト・モデルと
みなして把握し,当該実世界を外延的外辞と内包とに対
応づけ,内包を情報隠蔽された領域に置き,当該内包を
特定するいわばiD情報を外延的外辞と対応づけて構成
し,当該外延的外辞に対応づけて,上記実世界を,オブ
ジェクトの世界を構成する静的世界と動的世界とで表現
しておき,当該静的世界についてはクラスおよび/また
は複合クラスによってシステムの仕組みを与え,当該動
的世界については,上記クラスおよび/または複合クラ
スのインスタンスによって当該動的モデルの動きを与え
るようにしておくと共に,データ処理システムにおける
エノバージョン管理処理方式に関する。
【0002】
【従来の技術】図15は本発明の場合の如くオブジェク
トをカプセル化する利点を説明する図である。例えば実
行処理データ214を例にとると,図15(A)に示す
如く,当該実行処理データは一連の命令(又は命令群)
250を処理順にシリヤライズされたものとして与えら
れる。これらの命令(又は命令群)250の幾つかがま
とまって,所定の処理を実行する即ち或る振る舞いを行
う処理単位251を構成する。
【0003】したがって図15(A)に示す実行処理デ
ータは,図15(B)に示す如く,或る振る舞いを行う
処理単位251が処理順にシリヤライズされたものとみ
ることができる。図15(B)に示す如くシリヤライズ
された実行処理データ214は全体でもって或る特定の
動作を行うためのものである。したがって,他の特定の
処理を行うための実行処理データ214は,組み合わせ
を異にした処理単位251の連結された別の実行処理デ
ータとして与えられる。
【0004】異なる振る舞いを発揮する既存の処理単位
251が多量に得られるにつれて,図15(C)に示す
如く,個々の処理単位251を,所定のメソッドMの下
で,必要に応じて,統合させ,図15(B)に示す実行
処理データ214と同じ動作を行わせるものを得ること
ができる。
【0005】予めオブジェクトとオブジェクト・コマン
ドとオブジェクト部品との関係を説明しておく。以下,
より具体的に本発明にいうオブジェクトとオブジェクト
・コマンドとオブジェクト部品との関係を説明する。
【0006】実世界,例えば会社部門についてモデル化
を行った例が図16に示される。図16においては,
「従業員」を表わす枠内に,例えば「仕事の型=1」に
属する「秘書」がおり,「仕事の型=2」に属する「リ
ーダ」がおり,「仕事の型=3」に属する「労働者」が
いる。そして「従業員」という枠は「チーム」という枠
に属している。
【0007】「リーダ」は「チーム・リーダ」という関
係の下で「チーム」と関係づけられ,また「労働者」は
「作業単位」という枠内で「労働者・機械」という関係
の下で「機械」と関係づけられる。
【0008】また「チーム」と「機械」とは「機械・作
業場」という関係の下で関係づけられており,「労働
者」と「機械」とはまた「機械・労働者」という関係の
下で関係づけられる。更に「従業員」は「部門・従業
員」という関係の下で「部門」と関係づけられる。
【0009】また更に,「従業員」は「従業員・属性」
という関係の下で「所属」と関係づけられ,「作業単
位」は「作業単位・部品」という関係の下で「部品」と
関係づけられる。
【0010】更にその上で,(1)「部門」はオブジェ
クト「部門名」やオブジェクト「ドル」と関係づけら
れ,(2)「チーム」は,チーム識別番号によってオブ
ジェクト「名前」と関係づけられ,仕事の型によってオ
ブジェクト「従業員番号」と関係づけられ,名前によっ
てオブジェクト「コード名」やオブジェクト「姓」と関
係づけられ,給与によってオブジェクト「ドル」と関係
づけられ,平均給与によってオブジェクト「ドル」と関
係づけられ,部門の平均数によってオブジェクト「数」
と関係づけられ,(3)「秘書」はタイピング速度によ
ってオブジェクト「数」と関係づけられ,(4)「所
属」は,名前によってオブジェクト「名」と関係づけら
れ,歳によってオブジェクト「年」と関係づけられ,
(5)「部品」はオブジェクト「部品番号」やオブジェ
クト「ドル」と関係づけられ,(6)「作業単位・部
品」は数量によってオブジェクト「数」と関係づけら
れ,(7)「作業単位」は必要な時間によってオブジェ
クト「時間」と関係づけられ,(8)「機械」は,オブ
ジェクト「機械番号」やオブジェクト「ドル」やオブジ
ェクト「機械名」と関係づけられ,(9)「機械・労
働」は使用時間によってオブジェクト「時間」と関係づ
けられる。
【0011】図16に示されるモデルは,一般に,例え
ば,丸印を「振る舞い」(あるいはメソッド)とし,角
印を「データ」とし,菱形印を「関係」とすると,図1
7に示す如く一般化して表わすことができる。即ち,
(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】図17に示す夫々の丸印や角印や菱形印は
1つ1つオブジェクトとして取り扱われ得るものであ
る。今図17に示すメソッドaとデータIとの如き集ま
りを考慮して,図18(A)に示す如きカプセル化を考
える。図18(A)においてカプセルの上方に孔があけ
られているのは,メッセージを交信可能であることを示
している。当該図18(A)に示すカプセルの上方の孔
を仮にふさいだとすると,図17に示すメソッドaとデ
ータIとの如き集まりであるデータIVに相当する。当該
データが図18(B)の左端に示されている。図18
(B)の左端のデータDに対してメソッドMを付して複
合されたオブジェクトを得ると,図18(B)の中央に
示されるデータとなり,更にその上にメソッドを付して
複合されたオブジェクトを得ると,図18(B)の右端
に示すものとなる。このように複合化してゆく態様が図
18(C)に対応して示されている。
【0013】複合化が行われる態様は,図18(B)の
形に限られるものではない。例えば図18(C)の最左
端に示すオブジェクトにおいてデータDが,メソッドと
データとよりなるオブジェクトで置換されると,図18
(C)左端から2番目に示すものとなる。この場合に
は,図示のメソッドM1 とデータD1 との間にメッセー
ジ・パッシングが必要となり,図18(C)左端から3
番目に示すものの如くメソッドM1 が1つのオブジェク
トとなる。この結果,オブジェクトCの中にオブジェク
トAとオブジェクトBとが存在し,オブジェクトAとオ
ブジェクトBとの間にメッセージ・パッシングが存在す
るという構造をもつものとなる。
【0014】また更に,図示のオブジェクトBにおける
メソッドMをオブジェクトB1 とし,オブジェクトBに
おけるデータDをオブジェクトB2 とすると,図18
(C)最右端に示す如く,オブジェクトBの中に,オブ
ジェクトB1 とオブジェクトB 2 とが存在し,オブジェ
クトB1 とオブジェクトB2 との間にメッセージ・パッ
シングが存在するという構造となる。
【0015】以上説明した如く,後述する所の,いわば
原子オブジェクトが複合化されて,例えばカプセル・オ
ブジェクトとなり,当該カプセル・オブジェクトが複合
化されて例えばイベント・オブジェクトとなり,当該イ
ベント・オブジェクトが複合化されて例えばシステム・
オブジェクトとなる・・・如く,次々と複合化されてゆ
く。
【0016】なお,上記においてデータDとして示され
るものは,一般に,複数個の処理対象単位であり,メソ
ッドMとして示したものは当該複数個の処理対象単位を
どのように利用してゆくかを指示する情報または情報群
と考えてよい。図18において,オブジェクトとして表
現したものは,個々の「処理対象単位」,あるいは個々
の処理対象単位がまとめられて1つのまとまった処理対
象単位として取り扱われ得る「処理対象単位」である。
【0017】上記図17に示す如く,個々のオブジェク
トI,II,III は夫々より大きいオブジェクトIV,V,
VIの一部を構成する。また当該オブジェクトIV,V,VI
はまたより大きいオブジェクトVII の一部を構成する。
換言するとオブジェクトIV,V,VIは夫々オブジェクト
VII からみると当該オブジェクトVII における“イズ・
ア(is−a)”で表される関係や“パート・オブ(part
−of)”で表わされる関係にある。
【0018】図示のオブジェクトI,II,III を最小単
位と考えるとき,これらオブジェクトI,II,III はい
わば原子オブジェクトである。そしてそれらが集まって
いわばカプセル・オブジェクトと呼ばれるものが形成さ
れ,当該カプセル・オブジェクトなどが集まっていわば
イベント・オブジェクトと呼ばれるものが形成され,更
により大きいシステム・オブジェクトと呼ばれるものが
形成される。
【0019】これらの各オブジェクトを総称して複合オ
ブジェクトと呼んでいる。なお当該複合オブジェクトの
概念の中に,上記原子オブジェクトをも含ませている。
しかし原子オブジェクトは上述の如く最小単位のオブジ
ェクトであり,複合オブジェクトあるいは単にオブジェ
クトと一般に称する場合には上記原子オブジェクトの如
く分解不可能な単体で存在しているものを除外したもの
と考えてよい。
【0020】上述したカプセル化されたオブジェクトは
一般に上記複合オブジェクトがカプセル化されたもので
ある。実世界は,上記図16に例示される如く,個々の
「処理対象単位」あるいは個々の処理対象単位がまとめ
られて1つのまとまった処理対象単位として取り扱われ
得る「処理対象単位」に該当するオブジェクトが互いに
入り組んで関連し合っている。
【0021】
【発明が解決しようとする課題】上述の如く,一般的
に,実世界をオブジェクトをもってモデル化することが
できる。このことから発展させて,本発明においては,
情報隠蔽の世界に保持しているクラスや複合クラスを呼
び出して,システム設計に利用するようにされ,当該シ
ステム設計に当って,クラスと,複合クラスと,インス
タンスと,複合インスタンス(セッション)との4つの
階層を用いるようにする。
【0022】しかし,従来から一般に知られているプロ
グラムのバージョン管理においては,上記クラスと上記
複合クラスと上記インスタンスと上記複合インスタンス
(セッション)との夫々に対応づけてバージョン管理を
行うという概念が存在していない。
【0023】また従来のバージョン管理に当っては,原
のプログラムに誤りを含む何らかの不都合が存在したた
めに改変が行われ,その改変の状況を管理するという思
想であった。しかし,本願発明におけるデータ処理シス
テムにおいては,特に上記複合クラスや複合インスタン
スに関しては,ユーザが所望する要求された処理にマッ
チするように部分的に手直しを行うことが生じ,従来の
バージョン管理の域を超えて,より優れた複合クラスや
複合インスタンスを将来において得るための管理という
概念を導入することが望まれる。
【0024】このために,本発明においては,(i) 原の
オブジェクト(クラスや複合クラスやインスタンスや複
合インスタンスなどもオブジェクトの1つである)に誤
りを含む改変要因が存在した場合での管理,即ちバージ
ョン(Version) 管理と,(ii)原オブジェクトに誤りがな
い場合での内容の増減に対応する管理,即ちエボリュー
ション(Evolution) 又はイノベーション(Innovation)管
理との両者を含む意味で,エノバージョン(Ennoversio
n) を行うようにしている。
【0025】本発明は,オブジェクトに対応して,エノ
バージョン管理を行い,将来に向かってのより優れたオ
ブジェクトの生成に利用することを目的としている。
【0026】
【課題を解決するための手段】図1は本発明の原理構成
図を示す。図中の符号302はクラス,302−1は複
合クラス,303はインスタンス,304はセッション
(複合インスタンス),701はクラス内エノバージョ
ン管理部,702は複合クラス内エノバージョン管理
部,703はインスタンス内エノバージョン管理部,7
04は複合インスタンス内エノバージョン管理部,70
5はスーパ・エノバージョン管理部を表している。
【0027】本発明の場合,後述する如く,クラスAや
クラスBなどが,また場合によって複合クラスX1 や複
合クラスX2 が情報隠蔽の世界に格納されており,ユー
ザからの所望する要求される処理を実行するシステムを
組上げるために,静的世界に読み出される。そしてこれ
ら各クラスに対応してインスタンスa1 やインスタンス
1 ・・・が生成される。これら生成されたインスタン
スa1 やb1 ・・・は,上記システムに対応した処理を
実行すべく,一般にはセッション304に組上げられ,
当該セッション304を実行することによって上記所望
する要求される処理が実行されてゆく。
【0028】上記クラスAやクラスBなどが複数個結合
されて,複合クラスX1 やX2 ・・・が生成され,以後
の利用に供されることもある。
【0029】
【作用】本発明の場合には,上記クラス302,上記複
合クラス302−1,上記インスタンス303,上記セ
ッション(複合インスタンス)304の4つの階層の夫
々に対応して,エノバージョン管理部をもつ。
【0030】即ち,例えばクラスAについての改変によ
ってクラスA′が得られるとすると,クラス内エノバー
ジョン管理部701が当該改変に対応した情報を保持す
る処理を行う。
【0031】例えばクラスAに対応して一般に複数のイ
ンスタンスa1 ,a2 ・・・が生成されることがある
が,それら各インスタンスa1 やa2 において改変が行
われて,インスタンスa1 ′やa2 ′が得られると,イ
ンスタンス内エノバージョン管理部703が当該改変に
対応した情報を保持する処理を行う。
【0032】同様に,複合クラスX1 が改変されて複合
クラスX2 やX3 が得られたり,複合インスタンスI1
が改変されて複合インスタンスI2 やI3 が得られたり
することに対応して,前者の場合には複合クラス内エノ
バージョン管理部702が動作し,後者の場合には複合
インスタンス内エノバージョン管理部704が動作す
る。
【0033】更に,上記クラス302,上記複合クラス
302−1,上記インスタンス303,上記複合インス
タンス304の少なくとも2つに関連する改変を行う必
要がある如き場合には,スーパ・エノバージョン管理部
705が働いて,相互の関連を処理するようにされる。
【0034】
【実施例】図2は本発明の構成図を示す。図中の符号3
10は内部スキーマであって,新しい目的を与えられた
処理要求に対応してクラスや複合クラスを生成し,また
生成されたクラスや複合クラス(以下,簡単のためクラ
スをもって両者を代表させることがある)に対応づけら
れたインスタンスを生成する。
【0035】符号410は静的世界,420は動的世
界,431は機能的モデルを表している。実世界をオブ
ジェクト・モデルとみなして把握し,当該実世界を外延
的外辞と内包とに対応づけ,(i) 内包が,情報隠蔽され
た領域において,機能的モデル431として,既存のメ
ソッド313やクラス302を格納する(新しく作成さ
れたメソッドやクラスも格納される)形で,システム内
に取り込まれ,(ii)外延的外辞が,静的世界410と動
的世界420として,システム内に取り込まれている。
【0036】静的世界410は,複数のメソッド313
やクラス302を,新しい処理要求に対応するクラスと
してまとめられ,当該クラスが組み合わされて,当該新
しい処理要求を実行するシステムの仕組みを与える。ま
た動的世界420は,各クラスに対応するインスタンス
を,上記新しい処理要求を実行する処理順に結合され,
セッションがつくられるようにして,当該システムを実
行する動的モデルを与える。
【0037】図中の符号312はクラス・スキーマであ
ってクラスを生成する機能部分,313ないし315は
夫々メソッドであってクラス・スキーマ312によって
上記新しい処理要求に対応するクラスの構成要素として
取り込まれるメソッドである。
【0038】符号316はインスタンス・スキーマであ
って,上記新しい処理要求に対応するクラスの夫々に対
応づけられるインスタンスを生成する機能部分を表して
いる。
【0039】符号303はインスタンス,414は状態
テーブル,415は因果関係制約群,416はクラス変
数/定数を表している。なお状態テーブル414は,上
記新しい処理要求に対応するよう組み上げられたシステ
ムに,構成要素として取り込まれた複数のクラスについ
ての上下関係などを記述したり,使用されるクラス変数
/定数をリンクづけているものと考えてよい。因果関係
制約群415も,状態テーブル414に書き込まれ,図
示の動的世界420におけるセッションを実行する上で
制約となる因果関係を記述している。例えばインスタン
スbを実行するに当たってはインスタンスaが実行済み
でなければならないなどの因果関係が記述されており,
セッションの実行に当たっては当該因果関係がチェック
される。
【0040】図中の符号500は強リンクであり,50
1は弱リンクである。強リンク500が与えられている
リンクについては事象発火に対応して必ず情報遺伝を行
う必要があることを意味し,弱リンク501が与えられ
ているリンクについては必要に応じて情報遺伝を行うよ
うにされる。
【0041】新しい処理要求に対応するシステムを組み
上げることが指示されると,当該システムの構成要素と
なる各クラスを生成するようにされる。当該各クラスを
生成するに当たっては,クラス・スキーマ312に対し
て,当該クラスを構成するに必要なメソッドやクラスの
名前と当該メソッドやクラスをポイントするポインタと
が与えられる。そして,当該必要なメソッドやクラスが
機能的モデル431から,内部スキーマ310側に取り
込まれる。当該クラスの生成に対応して,インスタンス
・スキーマ316が,当該クラスを実行する上で必要と
するインスタンスを生成する。そして,生成された各イ
ンスタンスは自己を使用するクラスと対応づけられる。
【0042】上記生成された各クラスは,静的世界41
0内で,状態テーブル414に連結されて,上記の新し
い処理要求に対応すべく組み上げられたシステムにおけ
る構成要素とされる。図示のクラス302′は当該構成
要素とされたクラスを表している。一方,動的世界42
0においては,当該システムを実行するために,各イン
スタンス303が時系列に結合され,セッションが組み
上げられる。そして,当該セッションを実行することに
よって,当該システムが実行されることとなる。または
当該セッションを組み上げることによって,当該システ
ムが実行可能状態に準備されたことになる。
【0043】上述のようにして,新しい処理要求に対応
したクラスや複合クラスが生成されるが,これらは機能
的モデル431として保持され,以降の更に新しい処理
要求に対応したシステムを組み上げるために利用される
ことになる。当該システムが組み上げられる際に,上述
の強リンク500や弱リンク501を用いて,必要に応
じた,また状況に応じた,またその時々の気分に応じた
システムの組み上げを可能にし,情報遺伝を巧みに行い
得るようにする。
【0044】図3は静的世界と動的世界とを説明する説
明図である。実世界(例えばユーザの要求)は,当該実
世界を表現する具体的な情報を与える内包402と,当
該実世界400をいわば簡単に表現する外延的外辞40
1とを対応づけてモデル化することができる。情報の交
換に当って,例えば或る実世界400についての情報交
換を行うに当って,当該実世界400について互にその
内包402が理解されている場合には,当該実世界40
0についての外延的外辞401を与えることで足りる。
即ち,いちいち具体的な情報を相手方に通知する必要は
なく,いわばその実世界400の呼称を相手方に通知す
れば足りる。
【0045】図3(A)は静的世界と動的世界とを説明
する説明図である。図3(A)において内包402は,
上記した理由から,図3(A)に示す如く,一般に情報
が隠蔽されるものであり,「情報隠蔽の世界」430に
対応している。一方,実世界は,当該実世界400につ
いての仕組みやその仕組みの中での因果関係などを与え
る「静的世界」410と,当該実世界の時間的な動きを
表現したりまた複数のセッションについての並列処理を
許すか否かを指示したりする「動的世界」420とをも
ってモデル化することができる。そして,当該「静的世
界」や「動的世界」と,上述の「情報隠蔽の世界」と
が,図3(A)に示す如く,外延的外辞401によって
対応づけられている。
【0046】更に言えば,内包402は情報隠蔽の世界
であり,外延的外辞によって特定される内容について,
当該内容を規定するデータを含んでいる。この外延的外
辞即ち或る意味を含んだ外延的外辞を使って実世界をシ
ミュレートする。それが,「静的世界」に対応する静的
モデルであり,「動的世界」に対応する動的モデルであ
る。
【0047】図3(B)は静的モデルと動的モデルと機
能的モデルとの関係を説明する説明図である。図3
(B)に示す静的モデル411は図3(A)に示す静的
世界410に対応するモデルであり,同じく動的モデル
421は動的世界420に対応するモデルである。また
図3(A)に示す情報隠蔽の世界430を機能的モデル
431に対応づけている。
【0048】システムについての仕組みを特定化してゆ
き,また上述した“is−a”や“part−of”などの関係
(テンプレート)を設計することによって,静的モデル
が形成される。そして機能設計が得られ,それに対応す
る形で図2に示すクラス302(あるいは複数のクラス
が更に複合化されて得られるクラス−複合化クラス)が
設計される。
【0049】動的モデルは,上述のクラス302内にイ
ンスタンス・データを割り付けることによって,特定の
処理対象単位(インスタンス)が形成され,当該各処理
対象単位間での時間的な順序関係を設計することによっ
て形成される。そして,静的モデルと動的モデルとの間
に,因果関係による制約が与えられることとなる。
【0050】既存のメソッド313や,クラス302
や,新しく生成されたクラスは機能的モデル431とし
て保持され,以降の更に新しい処理要求に対応したシス
テムを組み上げるために利用されるが,これらメソッド
やクラスがシステムとしてダイナミックに,組み上げら
れて利用されてゆくが,当該ダイナミック・オブジェク
ト処理について説明する。
【0051】図4はダイナミック・オブジェクト処理部
における動作の一部を説明する図である。上述のメソッ
ドやクラスは後述する図6に示す如くオブジェクト部品
206として,部品属性ファイル205に保持される。
図4に示すダイナミック・オブジェクト処理部は,当該
オブジェクト部品を用いて処理を行う。言うまでもな
く,本発明の場合には,上述の如く,各オブジェクト部
品206あるいは更に複合された形でのオブジェクト部
品206を適宜組み合わせることが可能となる。
【0052】図4に示す符号212はダイナミック・オ
ブジェクト処理部であって,シミュレーションなどを行
う仮動作モード216と,テストなどを行うインスタン
ト動作モード217と,データ処理を行ないあるいは他
端末との交信処理を行う本番動作モード218とをもっ
ている。
【0053】符号205は部品属性ファイルであり,符
号205’は当該部品属性ファイル205の内容の全部
または一部についてコンパイル処理を行うなどして実動
動作を高速度で実行し得るようにまとめた実行処理デー
タ214を保持しているものである。なお実行処理デー
タ214は,処理実行のためのオブジェクト・プログラ
ムの場合で言えば,一般に,数10から数100ステッ
プよりなる処理単位がいわば処理順にシリヤルに結合づ
けられているものである。
【0054】符号213は,上述のオブジェクト206
に対応するものであって,一般には,上述の原子オブジ
ェクトの形のままのものや,上述のカプセル・オブジェ
クトの状態のもの,上述のイベント・オブジェクトの状
態のもの,上述のシステム・オブジェクトの状態のもの
の夫々に相当するものである。当該オブジェクト213
は,オブジェクト部品206の形でオブジェクト・コマ
ンドによって特定されるように格納されている。
【0055】符号215はダイレクト・オブジェクト処
理展開処理を表わしており,上記個々のオブジェクト2
13を展開し,あるいは複数のオブジェクトをまとめて
展開して,実行処理データ214を得る処理を行う。
【0056】図15を参照して上述した如く一般に複合
オブジェクトの形で処理対象単位にまとめられて,1つ
のある目的をもった処理を実行するための振る舞いを発
揮する単位となる。そしてそれらは,オブジェクト・コ
マンド201をもって特定されるオブジェクト部品20
6の形で,部品属性ファイル205に格納されている。
【0057】新しい処理要求に対応したシステムに(新
しい処理機能に相当する)を生成するような場合,当該
新しい処理要求に対応する処理を実行し得るようにする
ために,新しくオブジェクトが生成されあるいは既存の
オブジェクトが合目的的に結合されて,当該新しい処理
機能を発揮するオブジェクトが上記オブジェクト部品2
06の1つとして用意される。
【0058】当該生成されたオブジェクトについては,
現実に正しく機能するか否かについてシミュレーション
を行ったり,あるいはシミュレーションの終了したもの
については仮動作を行わせてみるなどの処理を行う。こ
の処理が図4図示の仮動作モード216であり,ダイナ
ミック・オブジェクト処理部212は,部品属性ファイ
ル205の内容を利用して,該当する処理動作をシミュ
レーションしてみるようにする。
【0059】仮動作モード216によって一応正常に動
作したオブジェクト213あるいはオブジェクト群につ
いては,このままでは実動動作に当たってオブジェクト
管理部(図5参照)との間で多くの交信を必要として処
理速度が遅いことから,実行処理データ(EXEデー
タ)214に展開される(コンパイルされて1つのEX
Eデータとされる)。当該展開処理が図示のダイレクト
・オブジェクト処理展開処理215において行われ,部
品属性ファイル205’に格納される。
【0060】ダイナミック・オブジェクト処理部212
においては,部品属性ファイル205の内容を利用し
て,所定の処理について一時的に代行処理を行ってみた
り,あるいはテスト処理を行ってみたりする必要が生じ
た場合,上記ダイレクト・オブジェクト処理展開処理2
15を発動して実行処理データ214を生成して,当該
処理を行うことがある。このような処理モードが,図4
においてインスタント動作モード217として示されて
いる。
【0061】また図4図示の本番動作モード218は,
図示の実行処理データ214を用いて,本番の処理動作
を行うモードである。なお部品属性ファイル205内で
のメタ・データには,当該オブジェクトの性質などに関
する意味データが記述されていると共に,自分のオブジ
ェクトからみての上位のオブジェクト(“is−a”で示
されるオブジェクト)についての結合関係や自分のオブ
ジェクトに含まれるより下位のオブジェクト(“part−
of”で示されるオブジェクト)群についての結合関係
(上述の強リンク500や弱リンク501を含む)を指
示する記述が存在していると考えてよい。
【0062】図5は端局の構成を示している。符号10
1は端局であって実行処理データ214を用いて処理実
行を行いあるいは回線を介して他の端局と交信を行うも
のを表わしている。また符号103はLANまたは交換
回線などの回線を表わしている。
【0063】端局101内には,更に符号219で示す
通信/受信処理部,符号220で示すオブジェクト管理
部,符号221で示すディスプレイ,符号222で示す
ハイパー言語処理部などが存在している。
【0064】図示のディレクトリ処理部204はコマン
ド・リンク処理部であって,デイレクトリ処理部とも呼
ばれる。1つの新しいオブジェクトが出来たとき,当該
オブジェクトの呼称名に対応するコマンド(オブジェク
ト・コマンド)を設定し,実データ203やメタ・デー
タ202の格納場所を割り付け,コマンド・リンク・テ
ーブルを作成する。このときオブジェクトの型を決定
し,大きさが決まる。そして当該コマンド・リンク・テ
ーブルを用いて,メタ・データ202と実データ203
との結合体を入出力できるようにする。
【0065】図5に示す(仮動作サポート)は,図4に
示した仮動作モード216を行うまでの動作に対応する
サポート機能である。図示のハイパー言語処理部222
には「部品表示・選択」機能があり,使用可能なオブジ
ェクト部品をディスプレイ221から検索して出力す
る。もしも適当なものがなければ新しいオブジェクト部
品として「部品指定」機能を用いて部品指定を行なう。
「属性設定」機能によってクラス・オブジェクト部品を
生み出し,「スキーマ」設定機能などによってインスタ
ンス・オブジェクト部品を生み出すことができる。
【0066】ディスプレイ221を用いての「部品表
示」機能には,オブジェクト部品のメタデータである所
の(i)名称やコメントを出力する目次表示,(ii)オ
ブジェクト部品の内容を示すスキーマや属性の表示,
(iii )クラス属性やインスタンス定数の表示などがあ
る。
【0067】またハイパー言語処理部222による「部
品組み合わせ」機能には,即ちオブジェクト部品を組み
合わせてより大きい複合されたオブジェクト部品を得る
には,クラスの作成に関して属性の追加・変更・削除機
能が用意され,インスタンス定数の作成に関してスキー
マの追加・変更・削除機能が用意されている。
【0068】ハイパー言語処理部222による「ユーザ
画面作成」機能では,画面作成および表示に当たって,
「画面作成および表示」クラスのバッファに画面のデー
タを入れてインスタンスをつくるようにする。このた
め,当該「ユーザ画面作成」機能は画面クラスをインス
タンス化することに相当する。
【0069】またハイパー言語処理部222における
「仮動作」機能では,メッセージをインスタンスが受け
るとクラスで示すメソッドとリンクさせて一次メモリ上
に一時的にカプセル(図18参照)を実現し当該カプセ
ルのもつ振る舞いを実行するようにする。
【0070】更にハイパー言語処理部222における
「部品変更」の機能は,図2に示す内部スキーマ310
の機能に対応するものであり,属性やスキーマの変更・
追加・削除によって,オブジェクト部品を変更する機能
である。また「部品登録」機能は,部品属性ファイル2
05上に,オブジェクト・コマンド(当該オブジェクト
部品の呼称である)と対応づけて,当該オブジェクト部
品を登録する機能である。
【0071】図5に示す(展開(コンパイル)」は,図
4に示すダイレクト・オブジェクト処理展開処理215
を表わしている。当該展開の処理では,データ処理装置
の一次メモリの大きさに合わせて,なるべく大きい実行
処理データ214に展開する。
【0072】オブジェクト管理部220は,図5に示し
たハイパー言語処理部222を制御して上述の如くオブ
ジェクト部品206を部品属性ファイル205上に保持
させ,ダイナミック・オブジェクト処理部212を制御
して仮動作モード216やインスタント動作モード21
7や本番動作モード218の各動作を行わせる。また,
回線103を介してのメッセージ受信に対応して,仮動
作モードでのインスタンス起動を行ない,一次メモリ上
で仮にカプセル化を行ってデータ処理装置を動かし,当
該処理の結果をメッセージ送信するようにする。勿論,
既に実行処理データ214に展開済みのものがあれば,
それを実行して,相手端局にメッセージ送信する。
【0073】自己端局101内での処理に当たって,所
望されるオブジェクト部品が自己端局101内に存在し
なかったり,属性がなかったり,スキーマがなかったり
すると,回線103を介して他端局から転送を受けて,
自己端局101内に取り込む所のラーニングを行う。
【0074】図6はオブジェクトを取扱う処理態様を示
す。図6に示した部品属性ファイル205におけるオブ
ジェクト部品206は,従来のユーザ・データ・データ
ベース中のユーザ・データと,従来のメタ・データ・デ
ータベース中のメタ・データとを,1つにまとめること
ができるようにされて1つにまとめられたものであると
考えることもできる。勿論,従来の構成の場合には,ユ
ーザ・データ・データベースを管理するデータベース・
マネージメント・システムとメタ・データ・データベー
スを管理するデータ・ディクショナリ・アンド・ディレ
クトリ・システムとが互いに独立に動作していたもので
あった。またユーザ・データ・データベースの内容とメ
タ・データ・データベースの内容とは個別にアクセスさ
れ利用されるものであった。図6に示す場合には,図6
に示す実データ203とメタ・データ202とは結合さ
れ,オブジェクト・コマンドによって特定することによ
って,1つのオブジェクト部品206として取り扱い得
るようにされている。
【0075】上記ユーザ・データ・データ・ベース上の
個々のユーザ・データ(エンティティ・データ)と,上
記メタ・データ・データ・ベース上の個々のメタ・デー
タとを結合して,オブジェクト部品として取り扱うよう
にする思想が提起されつつある。
【0076】そして当該オブジェクト部品として取り扱
う対象には,いわば原子オブジェクトと呼ばれる最小規
模のオブジェクトから,逐次複合化されている所のカプ
セル・オブジェクト,イベント・オブジェクト,システ
ム・オブジェクトなどが存在している。このために,当
該取り扱われる対象がきわめて複雑化し複合化し,ある
1つのオブジェクトが与えられた場合に,当該オブジェ
クトがどのような性質をそなえているものかについて,
いわば直接の生成担当者しか判断がつかない状況になる
ことになりかねない。
【0077】このような状況から,上記オブジェクト部
品を構成するメタ・データとエンティティ・データとに
関して,当該メタ・データにはエンティティ・データの
説明文,即ち名称やコメントや,第3者にとって意味の
判る意味データモデル,概略フロー,詳細フロー,ソー
スプログラムなどが記述されることになる。
【0078】したがって,上記オブジェクト部品は,一
般に十分に大きい情報量をもつものとなり,当該オブジ
ェクト部品を,当該オブジェクト部品の内容を簡潔に説
明する呼称を与えることが望まれる。
【0079】本発明においては,複合化され得るオブジ
ェクトに関するオブジェクト部品の内容を説明できる呼
称を与え,当該呼称によって当該オブジェクト部品をア
クセスできるようにしている。
【0080】図7はオブジェクト管理を行う構成図を示
す。図中の符号101は端局であってデータ処理装置を
構成しているもの,103はLAN又は交換回線であっ
て他の端局と交信を行うためのものを表している。
【0081】また符号202はメタ・データ,203は
実データ(エンティティ・データ),205は部品属性
ファイル,206はオブジェクト部品,219は通信/
受信部,220はオブジェクト管理部を表している。ま
た符号214は実行処理データであってオブジェクト部
品の1つまたはそれらを組み合わせたものをコンパイル
して本番実行処理に適したように展開したもの,符号2
05’は部品属性ファイル205と同じものであって上
記の実行処理データ214を含んでいるものを表してい
る。
【0082】また図示の符号201は本発明において与
えられたオブジェクト・コマンドであって,上述のオブ
ジェクト部品206を特定する呼称として与えられるも
のである。
【0083】当該オブジェクト・コマンド201は,シ
グニチャー(サロゲイト)とオブジェクトiDとに大別
されるが,シグニチャーは次の如きパートからなってい
る。即ち, (i) ヘッダ:後述する説明文域や“is−a”階層や
“part−of”階層やシーケンスなどが,幾バイト
目から幾バイト分存在するかを指定する。 (ii)説明文域:オブジェクトの説明文を要約したもので
あってオブジェクトについての本来の意味でのメタ・デ
ータが圧縮して記述される。例えば「誰が作ったか」
「幾バージョン目か」などの説明文に対応する部分を圧
縮して示したものである。 (iii) “is−a”階層:例えば「犬は動物である」と
いう場合の下位「犬」についての上位「動物」との関係
を階層化して,犬の相対位置を表現するが,当該“is
−a”階層には,当該上位「動物」に対して下位「犬」
などが存在している状況を指示する。 (iv)“part−of”階層:例えば「本州」や「九
州」や「四国」は「日本本土」の一部を構成しているも
のであるが,このように例えば「九州」が「日本本土」
の一部を構成しているという構成関係にあることを,当
該“part−of”階層によって位置づけて表現する
ようにする。 (v) シーケンス:複雑に組み合わさったオブジェクト
(複合オブジェクト)には,多くのより細かいオブジェ
クトから成立っている。このような,より細かいオブジ
ェクトの群についての実行順序(分岐を含む)を指示す
る部分を圧縮して表現する。 (vi)オブジェクトiD:従来からのユーザ・データ・デ
ータ・ベースに格納されているデータに対して付与され
ているiDと同じものが与えられる。
【0084】オブジェクト管理部220は,部品属性フ
ァイル205内に,新しくオブジェクト部品206を生
成したり,存在しているオブジェクト部品を修正したり
また削除したり,複数のオブジェクト部品を統合して単
一のオブジェクトにまとめたり,単一のオブジェクト部
品を複数のオブジェクト部品に分割したりする機能をも
つと共に次の如き機能をもつ。
【0085】即ち,複数のオブジェクトと交信を行っ
て,個々のオブジェクトの処理順を順序づけて所望する
処理要求に合致した処理を行う機能をもつ。このような
各種処理を行うに当たって,オブジェクト管理部220
は,上記オブジェクト・コマンド201をもって,個々
のオブジェクト部品を特定する。
【0086】なお上述のように順序づけられたオブジェ
クト部品の群について,あるいは個々のオブジェクト部
品について,必要に応じて,コンパイルを行って実行処
理データ214を生成し,当該端局101内でのデータ
処理や,LAN又は交換回線103を経由しての他端局
との交信処理時に当該実行処理データ214を用いるよ
うにする(コンパイルされていることからファイル・ア
クセスなどが少なく処理が高速化される)。
【0087】図8は複数のクラス間での関係を説明する
説明図である。図8(A)は或るクラスXと他のクラス
Yとが“is−a”の関係にある場合を表している。例
えばクラスXが「車」に関するプログラムであるとし,
クラスYが「乗用車」に関するプログラムであるとする
如き関係にある場合を表している。
【0088】図8(A)の場合,クラスXに関してメソ
ッドa,b,cが取り込まれており,クラスYに関して
メソッドd,eが取り込まれているものとして示されて
いる。このような場合に,クラスYを実行することが指
示されたとすると,クラスYの実行に当たっては,クラ
スXからメソッドa,b,cがインヘリットされ(遺伝
され)て,メソッドa,b,c,d,eにもとづいた処
理を実行するようにされる。
【0089】図8(B)は或るクラスXと他のクラスα
やβとが“part−of”の関係にある場合を表して
いる。例えばクラスXが「車」に関するプログラムであ
るとし,クラスαやβが「車体」や「エンジン」や「車
輪」・・・などの1つであるプログラムであるとする如
き関係にある場合を表している。
【0090】図8(B)の場合,クラスXに関してメソ
ッドa,b,cが取り込まれており,クラスαに関して
メソッドp,qが取り込まれており,クラスβに関して
メソッドr,sが取り込まれているものとして示されて
いる。このような場合に,クラスXを実行することが指
示されたとすると,当該クラスXの実行に当たっては,
メソッドa,b,c,p,q,r,sにもとづいた処理
を実行するようにされる。
【0091】本発明は,上述した如く,新しい要求に対
応したシステムを,クラスとインスタンスとの形で把握
して,当該処理対象を適宜に自由に設計できるように
し,後日,他の処理に容易に利用できるようにしてい
る。このとき,図2に関連して述べた因果関係による制
約などに正しく対処する必要がある。
【0092】図9は処理実行のための説明図を示す。上
述している如く,図中の符号401は外延的外辞を表し
図3に示した外延的外辞に対応するものである。また符
号403は手続の世界であって,図3に示した内包に対
応するものである。更に符号404はオブジェクトの世
界であって,実世界をモデル化して表す世界である。
【0093】実世界(例えば新しい目的に対応したシス
テム)をモデル化するに当たって,本発明においては,
当該モデル化に必要なクラスおよび/またはメソッドに
ついての相互間の関係を指示する静的世界410と,当
該モデル化に当たって得られたインスタンスの処理の時
間順序関係を指示する動的世界420とを用いるように
する。
【0094】なお,上記静的世界410において指示さ
れる上記クラスおよび/またはメソッドを,更にはクラ
スを複合化した複合クラスを,簡単のために以下,クラ
ス302’をもって代表する。
【0095】符号302は手続の世界403に存在する
クラス,303はインスタンス,313,314,・・
・は夫々メソッドを表す。上記メソッド313,・・・
は,個々の処理を実行する既存の処理単位であり,当該
メソッドの群の中から更に複雑な処理を実行するために
複数のメソッドを取り込んでまとめたものがクラス30
2である。更に必要に応じては,クラス群やメソッド群
の中から,より複雑な処理を実行するために,クラスや
メソッドを取り込んで,複合クラスを成形させておくこ
ともある。これらは夫々オブジェクト単位の1つ1つに
相当している。
【0096】これらのメソッドやクラスは,今,既存の
ものとして存在しているものとする。例えばユーザから
或る種の処理に関して,当該処理対象を処理すべき要請
があったとする。このとき,本発明においては,当該処
理対象を処理するに必要なクラスやメソッドを,当該処
理対象の処理のために取り込んで,各クラスやメソッド
相互の間の関係づけを行う。これらの関係づけを行った
情報を記述しているのが,静的世界410の場である。
この場合に,上述の強リンク500や弱リンク501を
利用して当面必要とする範囲や必要とするであろう範囲
でシステムを組み上げてゆくようにされる。
【0097】図示の場合には,当該処理対象の処理のた
めに,クラス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’は,手続の世界40
3に存在するクラス302やメソッド313・・・をポ
イントするに足るIDを用いて与えられている。
【0098】クラス302’は,手続の世界403に存
在するクラスやメソッドと対応づけられているが,簡単
に言えば,個々の処理を実行するためのいわば数学にお
ける公式の如きプログラムであって,当該プログラム
は,当該プログラム内で値が一般的な変数をもって与え
られているものと考えてよい。当該クラスにおける一般
的な変数に対してインスタンス・データをセットし,個
々のインスタンス・データを組み込んだ特定のプログラ
ムとしたものがインスタンス303である。
【0099】動的世界420においては,静的世界41
0において取り込まれたクラス302’に対応したイン
スタンスa,b,c・・・の時間的な処理順序が指示さ
れて,上記ユーザが要請した処理が実行される。
【0100】例えばユーザから或る処理対象を処理する
ことが要請されたとすると,静的世界410上におい
て,当該処理に必要とされるクラス302’として,ク
ラスA,B,C,D,E,F,K,Lが指定される。そ
して,これら各クラス相互間で,“is−a”や“pa
rt−of”などの関係が明らかにされる。実際には,
状態テーブルが用意され,それらの関係が記述され,か
つクラス302’間で因果関係上の制約が存在すれば,
その旨も記述される。
【0101】ユーザからの上記処理対象を処理する処理
に当たっては,上記取り込まれたクラス302’をその
まま用いるのではなく,当該各クラス302’内の上記
一般的な変数に対して,個々のインスタンス・データを
設定したインスタンス303を用いる。そして,各イン
スタンスが処理されてゆく時間的順序関係にしたがった
処理が行われることとなる。
【0102】図示の場合,クラスAに対応するインスタ
ンスa,クラスBに対応するインスタンスb,クラスC
に対応するインスタンスc,クラスDに対応するインス
タンスd,クラスFに対応するインスタンスfが生成さ
れ,(i) インスタンスa,b,cと進むセッションと,
(ii)インスタンスf,c,dおよびaと進むセッション
とが与えられたものとして示されている。
【0103】言うまでもなくインスタンスaを生成する
に当たっては,いわば公式に相当するクラスAを用いて
当該インスタンスaが生成されるが,この場合,クラス
AはクラスEに対して,“is−a”の関係にあること
から,インスタンスaの生成に当たっては,クラスAは
クラスEに示される内容を遺伝されているものとみて,
クラスEとクラスAとの両者を用いて,生成が行われ
る。
【0104】また,インスタンスbの生成に当たって
は,クラスBに対して,クラスDとクラスKとが“pa
rt−of”の関係にあることから,インスタンスbは
クラスB,クラスD,クラスKを用いて生成される。
【0105】更に,各セッションの実行に当たっては,
例えばインスタンスaを実行する開始時点において,静
的世界410に存在する図2に示す状態テーブル414
を調べると共にその旨を書き込んで実行が行われ,イン
スタンスaの処理が終了した時点で,その旨が上述の状
態テーブルに書き込まれる。このようにして,静的世界
410に記述されて存在する上記因果関係に対応する制
約を侵すことのないようにされる。勿論,個々のインス
タンスa,b,c・・・が生成された状態の下でセッシ
ョンが組まれたことに起因する因果関係上の制約も,新
たに発生し得るが,この制約は当該セッションに対応づ
けて与えられる。しかし,上述の如く静的世界において
クラス302’が取り込まれて関係づけられた際に生成
する因果関係は,静的世界410において記述されてお
り,動的世界でのセッションの処理において引き継がれ
るようにされる。
【0106】図10はセッションの実行に当たって因果
関係が取り入れられる態様を説明する図である。図中の
414は図2に示すものと同じ状態テーブルを表してい
る。図示の場合,状態テーブル414内の情報として或
る処理のためにクラスPないしYが取り込まれているこ
とが示され,かつクラスPの下にクラスQ,R,S,
T,Uが存在し,クラスSの下にクラスX,Yが存在
し,クラスUの下にクラスV,Wが存在するものとして
示されている。そして,インスタンスr,u,t,w,
s,xが生成されて,セッションが組まれている。
【0107】動的モデル421の下で,セッションIや
セッションIIが実行されてゆく。しかし,個々のインス
タンス例えばuが自己の処理を実行される間には,他イ
ンスタンスとの間の因果関係を考慮する必要はない。当
該因果関係は,例えばインスタンスuが自己の処理を開
始する時点で,状態テーブル414の内容を調べ,因果
関係上の制約に反しているか否かをチェックした上で実
行し,インスタンスuの処理が終了した時点で状態テー
ブル414内に報告しておくことで足りる。
【0108】セッションIにおいてインスタンスuを実
行した結果,セッションIIにおけるインスタンスuの実
行に代えて他のインスタンスvを実行させる必要が生じ
る場合などにおいては,セッションIのインスタンスu
の実行終了報告にもとづいて,セッションIIのインスタ
ンスuに割り込んでインスタンスvに分岐させればよ
い。または,セッションIIのインスタンスuの開始時に
その旨が動的モデル421側に通知されればよい。
【0109】上述の如く,本発明の場合には,クラス3
02,複合クラス302−1,インスタンス303,複
合インスタンス(セッション)304の4つの階層が存
在するが,これらの4つの階層の夫々について,エノバ
ージョン管理を行い,より好ましい形でのクラスや複合
クラスやインスタンスや複合インスタンスを得て,将来
の再利用にそなえるようにされる。
【0110】図11はエノバージョン管理の説明図であ
る。オブジェクトが生成されると(誕生すると),それ
に対応して本発明にいうエノバージョン管理が開始され
る。すべてのオブジェクトに対応してエノバージョン管
理が行われることが基本であるが,オペレータの要求に
よって個々のオブジェクトについてエノバージョン管理
を行わないこともできる。
【0111】一方,上記誕生したオブジェクトに関して
新陳代謝(進化と退化)とが生じると,当該新陳代謝に
対応してエノバージョンがとられる。エノバージョン管
理は,新陳代謝(進化と退化)におけるデータを保管す
るものであるが,新陳代謝のモードによって(i) バージ
ョン管理(過去のものは原理的には抹消してもよい──
保存するのは任意)と,(ii)エボリューション又はイノ
ベーション管理(過去のオブジェクトに不都合があって
改変するのではなく,ユーザの要求により合致するよう
に一部改変するもので,保存する必要がある)とが行わ
れる。
【0112】図11には,エノバージョンの変更モード
をモードないしに分けて示している。はバージョ
ン管理が行われたもので,別のものに変更してしまった
場合である。はバージョン管理が行われたもので,条
件の追加が行われた場合である。はバージョン管理が
行われたもので,条件のつくりかえが行われた場合であ
る。はバージョン管理が行われたもので,バグ修正が
行われた場合である。
【0113】またはエボリューション又はイノベーシ
ョン管理が行われたもので,条件増となった場合であ
る。はと同様であるが,条件減となった場合であ
る。図11には,エノバージョンの例を図示している
が,最初にオブジェクト(内容(a))が存在してい
て,変更モードによって内容(a+b)となり,次い
で変更モードによって内容(b)となり,次いで変更
モードによって内容(c)となり,次いで変更モード
又は又はによって内容(c’)となったものとし
て示されている。
【0114】図12はコマンド・リンク・テーブルとエ
ノバージョン・リンク・テーブルとを説明する図であ
る。図中の符号710はコマンド・リンク・テーブル,
711はエノバージョン・リンク・テーブル,205は
図5に示す部品属性ファイル,205−1はデータ・フ
ァイルを表している。
【0115】図12にいう『コマンド』とは図7に示す
『オブジェクト・コマンド』201を意味している。そ
してコマンド・リンク・テーブル710上には,各オブ
ジェクト・コマンドA,B,C・・・毎に,エノバージ
ョン管理が行われた結果の最新のオブジェクトについて
記述されている。
【0116】コマンド・リンク・テーブル710におけ
る「ENOVナンバ」はエノバージョンが行われた最終
のナンバを表し,例えば図示「02」はオブジェクト・
コマンドA(オブジェクトAについてコマンドで指示す
るもの)に関して,「00」,「01」をへて現在「0
2」となっていることを表している。
【0117】テーブル710における「実データ・アド
レス」は,例えば当該オブジェクト・コマンドAに関し
ての実データがデータ・ファイル205−1上で番地
「0010」から20バイト分存在することを表してい
る。また「ENOVデータ・アドレス」は,例えば当該
オブジェクト・コマンドAに関して,エノバージョン・
リンク・テーブル711上で情報が存在するアドレス
「F002」を表している。
【0118】オブジェクト・コマンドAに関してのエノ
バージョン・ナンバ「02」のものの情報が,エノバー
ジョン・リンク・テーブル711上に存在し,(i) 「発
生年月日」は当該オブジェクトが生成された年月日を表
し,(ii)「コマンド」は「オブジェクト・コマンド」を
表し,(iii) 「ENOVナンバ」はエノバージョン・ナ
ンバを表し,(iv)「アドレス/大きさ」はデータ・ファ
イル205−1上に存在する情報位置と大きさとを表
し,(v) 「リンク先」は例えばオブジェクト・コマンド
Aに関してのエノバージョン・ナンバをたどるためのリ
ンク先を表し,(vi)「逆リンク先」は例えばオブジェク
ト・コマンドAに関してのエノバージョン・ナンバを逆
にたどる場合のリンク先を表し,(vii) 「変更モード」
は図11に関連して示したモードの形を表している。
【0119】部品属性ファイル205には,例えばオブ
ジェクトAに関して,エノバージョン・ナンバ「00」
をもつものと,エノバージョン・ナンバ「01」をもつ
ものと,エノバージョン・ナンバ「02」をもつものと
が,データ・ファイル205−1上に格納されている態
様を,スーパクラスとサブクラスの形で指示されてい
る。即ち,オブジェクトAのナンバ「00」をもつもの
に関してはA00が最上位クラスとして示され,ナンバ
「01」をもつものに関しては,A00のものがスーパ
クラスであって,A00とA01との差に相当するもの
がサブクラスV01として,上下関係をもつことが指示
されている。したがって,ナンバ「01」をもつものの
具体的内容は,データ・ファイル205−1における1
0バイト分のA00の内容と,10バイト分のA00と
A01との差に相当するV01の内容とを結合すること
によって得られることとなる。ナンバ「02」をもつも
のに関しては,(a)A01のものがスーパクラスであ
って,A01とA02との差に相当するものがサブクラ
スV02として指示される場合と,(b)A00のもの
がスーパクラスであって,A00とA02との差に相当
するものがサブクラスV0102として指示される場合
とがある。したがってナンバ「02」をもつものの具体
的内容は,ナンバ「01」をもつものの場合と同様に,
データ・ファイル205−1から得られる。
【0120】図13はエノバージョンを行うべきか否か
を判断する処理を説明する図である。アプリケーション
・プログラムから起動がかけられた際に, (S1)(S2):単にデータを抽出するだけの場合に
は,例えばオブジェクト・コマンドAに関して,コマン
ド・リンク・テーブル710が検索されることでエノバ
ージョンに関する処理は行われない。
【0121】(S3):ステップS1においてNOであ
る場合には4つの階層のうちの単に1つの階層に関して
のみエノバージョンが行われる場合か否かがチェックさ
れる。
【0122】(S4):ステップS3でYESの場合に
は,エノバージョン・リンク・テーブルを検索される。 (S5):ステップS3でNOの場合には,スーパ・エ
ノバージョン・リンク・テーブルを検索される。
【0123】(S6):必要なデータを検索して,エン
ドとなる。なお,スーパ・エノバージョン・リンク・テ
ーブル712は,図13中に示されており,例えばオブ
ジェクト・コマンドA(クラスであるとする)に関して
の変更がインスタンス内のオブジェクトや,複合オブジ
ェクト内のオブジェクトや,複合インスタンス内のオブ
ジェクトの変更を考慮する必要がある場合には夫々の欄
に「関連コマンド」が記述され,処理条件として例えば
ある条件m1 が記述されている。図示の「関連コマン
ド」を記述する必要がある場合に,スーパ・エノバージ
ョン管理部が動作されるものと考えてよい。
【0124】図14はエノバージョン処理の態様を示す
図である。 (S7):オブジェクトに対して強制的に変更がかけら
れることとなる。 (S8):変更モードが決められる。
【0125】(S9):クラス内のエノバージョンか,
インスタンス内のエノバージョンか,複合クラス内のエ
ノバージョンか,複合インスタンス内のエノバージョン
かが調べられる。
【0126】(S10):単に単一のエノバージョンの
みであるか否かがチェックされる。 (S11):ステップS10においてYESであれば,
(i) エノバージョン・リンク・テーブルにデータが追加
され,(ii)データ・ファイル205−1にデータが圧縮
されて格納され,(iii) 部品属性ファイル205にデー
タが格納される。
【0127】(S12):コマンド・リンク・テーブル
の内容を最新のものに書き換える。 (S13):ステップS10においてNOであれば,4
個の各エノバージョンとどういう関係にあるのかについ
て記述するデータが作成される。
【0128】(S14):スーパ・エノバージョン・リ
ンク・テーブルに関連条件と制約指定とを行う。
【0129】
【発明の効果】以上説明した如く,本発明によれば,情
報隠蔽の世界に保持されている既存のオブジェクトや新
しく作られて保持される生成されたオブジェクトを,ユ
ーザの要求にあわせて,オブジェクト・コマンドによっ
て呼び込み,静的モデルや動的モデルを設計し,ユーザ
の要求に対処してゆくことができる。そして当該ユーザ
の要求に対処してゆく処理がきわめて融通性に富むもの
となっており,更に将来の利用のために蓄積されてゆく
こととなる。そして,各オブジェクトに関して,より好
ましい(再利用に適した)オブジェクトを得るために,
エノバージョン管理を行うことが可能となる。
【図面の簡単な説明】
【図1】本発明の原理構成図を示す。
【図2】本発明の構成図を示す。
【図3】静的世界と動的世界とを説明する説明図であ
る。
【図4】ダイナミック・オブジェクト処理部における動
作の一部を説明する図である。
【図5】端局の構成を示す。
【図6】オブジェクトを取扱う処理態様を示す。
【図7】オブジェクト管理を行う構成図を示す。
【図8】複数のクラス間での関係を説明する説明図であ
る。
【図9】処理実行のための説明図を示す。
【図10】セッションの実行に当たって因果関係が取り
入れられる態様を説明する説明図である。
【図11】エノバージョン管理の説明図である。
【図12】コマンド・リンク・テーブルとエノバージョ
ン・リンク・テーブルとを説明する図である。
【図13】エノバージョンを行うべきか否かを判断する
処理を説明する図である。
【図14】エノバージョン処理の態様を示す図である。
【図15】本発明の場合の如くオブジェクトをカプセル
化する利点を説明する図である。
【図16】会社部門をモデル化した状態を説明する図で
ある。
【図17】モデル抽象化を説明する図である。
【図18】カプセルを説明する図である。
【符号の説明】
101 端局 102 端局 103 LAN又は交換回線 201 オブジェクト・コマンド 202 メタ・データ 203 実データ 204 コマンド・リンク処理部(ディレクトリ処理
部) 205 部品属性ファイル 206 オブジェクト部品 212 ダイナミック・オブジェクト処理部 213 オブジェクト(オブジェクト部品206に相
当) 214 実行処理データ 215 ダイレクト・オブジェクト処理展開処理 216 仮動作モード 217 インスタント動作モード 218 本番動作モード 219 通信/受信処理部 220 オブジェクト管理部 221 ディプレイ 222 ハイパー言語処理部 250 一連の命令 251 処理単位 302 クラス 303 インスタンス 310 内部スキーマ 312 クラス・スキーマ 313 メソッド 314 メソッド 315 メソッド 316 インスタンス・スキーマ 401 外延的外辞 403 手続の世界 404 オブジェクトの世界 410 静的世界 411 静的モデル 414 状態テーブル 415 因果関係制約群 416 クラス変数/定数 420 動的世界 421 動的モデル 430 情報隠蔽の世界 431 機能的モデル 701 クラス内エノバージョン管理部 702 複合クラス内エノバージョン管理部 703 インスタンス内エノバージョン管理部 704 複合インスタンス内エノバージョン管理部 705 スーパ・エノバージョン管理部 710 コマンド・リンク・テーブル 711 エノバージョン・リンク・テーブル 712 スーパ・エノバージョン・リンク・テーブル
───────────────────────────────────────────────────── フロントページの続き (72)発明者 村川 雅彦 神奈川県川崎市高津区坂戸100番1 富士 通ネットワークエンジニアリング株式会社 内 (72)発明者 豊田 雅信 神奈川県川崎市高津区坂戸100番1 富士 通ネットワークエンジニアリング株式会社 内 (72)発明者 足立 武史 神奈川県川崎市高津区坂戸100番1 富士 通ネットワークエンジニアリング株式会社 内 (72)発明者 市川 なおみ 神奈川県川崎市中原区上小田中1015番地 富士通株式会社内

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 単一の処理単位および/または単一の処
    理単位を複合化した複合処理単位をオブジェクトと名付
    け,当該オブジェクトを組み合わせ,所望される処理を
    実行するデータ処理システムにおけるエノバージョン管
    理処理方式において,実世界をオブジェクト・モデルと
    みなして把握し,当該実世界を外延的外辞と内包とに対
    応づけ,内包を情報隠蔽された領域に置き,当該内包を
    特定するいわばiD情報を外延的外辞と対応づけて構成
    し,当該外延的外辞に対応づけて,上記実世界を,上記
    オブジェクトの世界を構成する静的世界と動的世界とで
    表現しておき,当該静的世界については,静的モデルと
    して,クラスおよび/または複合クラスを用いてシステ
    ムの仕組みを与え,上記動的世界については,動的モデ
    ルとして,上記クラスおよび/または複合クラスのイン
    スタンスを用いて当該動的モデルの動きに対応するセッ
    ションを与え,上記動的モデルから発生した因果関係を
    上記静的モデルの中に情報として与えるよう構成してな
    り,既存および/または新たに生成された複数のメソッ
    ドを組み合わせて上記クラスおよび/または複合クラス
    を構成せしめると共に,当該クラスおよび/または複合
    クラスの夫々に対応づけて,上記インスタンスを構成し
    て処理を実行するよう構成されてなり,上記既存および
    /または新たに生成されたメソッドと,上記構成された
    クラスおよび/または複合クラスと,上記動的モデルの
    動きに対応するセッションとを夫々複合オブジェクトと
    して上記内包に対応する情報隠蔽された領域において機
    能的モデルとして格納されると共に,当該機能的モデル
    として内包に格納されている夫々のオブジェクトおよび
    /または複合オブジェクトを,上記iD情報によって対
    応づけて利用可能に構成し,上記クラスと上記複合クラ
    スと上記インスタンスと上記セッションとの夫々につい
    て,エノバージョン管理を行うエノバージョン・リンク
    ・テーブルをもつ,ようにしたことを特徴とするデータ
    処理システムにおけるエノバージョン管理処理方式。
  2. 【請求項2】 上記エノバージョン管理は,原のオブジ
    ェクトに誤りを含む改変要因が存在した場合でのバージ
    ョン管理と,原のオブジェクトに誤りがない場合で内容
    の増減を行うエボリューション又はイノベーション管理
    との両者の管理を行うようにされることを特徴とする請
    求項1記載のデータ処理システムにおけるエノバージョ
    ン管理処理方式。
  3. 【請求項3】 上記クラスと上記複合クラスと上記イン
    スタンスと上記セッションとの少なくとも2つに関係し
    た変更が行われる場合に対応してスーパ・エノバージョ
    ン・リンク・テーブルをそなえることを特徴とする請求
    項1記載のデータ処理システムにおけるエノバージョン
    管理処理方式。
JP5122559A 1993-05-25 1993-05-25 データ処理システムにおけるエノバージョン管理処理方式 Withdrawn JPH06332772A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP5122559A JPH06332772A (ja) 1993-05-25 1993-05-25 データ処理システムにおけるエノバージョン管理処理方式
US08/247,665 US5594836A (en) 1993-05-25 1994-05-23 Ennoversion management system for data processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5122559A JPH06332772A (ja) 1993-05-25 1993-05-25 データ処理システムにおけるエノバージョン管理処理方式

Publications (1)

Publication Number Publication Date
JPH06332772A true JPH06332772A (ja) 1994-12-02

Family

ID=14838895

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5122559A Withdrawn JPH06332772A (ja) 1993-05-25 1993-05-25 データ処理システムにおけるエノバージョン管理処理方式

Country Status (2)

Country Link
US (1) US5594836A (ja)
JP (1) JPH06332772A (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6336106B1 (en) 1994-02-15 2002-01-01 R.R. Donnelley & Sons Company System and method for partitioning a real-valued attribute exhibiting windowed data characteristics
US6507832B1 (en) 1994-02-15 2003-01-14 R.R. Donnelley & Sons Company Using ink temperature gain to identify causes of web breaks in a printing system
JPH0981582A (ja) * 1995-09-12 1997-03-28 Fujitsu Ltd 値を基本としたデータ管理装置及びデータ管理方法
JPH09128380A (ja) * 1995-10-30 1997-05-16 Matsushita Electric Ind Co Ltd 文書蓄積管理システム
US20020128990A1 (en) * 1997-05-01 2002-09-12 Kaminskas Paul A. Control methodology and apparatus for reducing delamination in a book binding system
US6148438A (en) * 1998-01-06 2000-11-14 National Instruments Corporation System and method for creating composite classes for objects having virtual functions for avoidance of user mode/kernel mode transitions
US7901400B2 (en) 1998-10-23 2011-03-08 Covidien Ag Method and system for controlling output of RF medical generator
US6438661B1 (en) * 1999-03-03 2002-08-20 International Business Machines Corporation Method, system, and program for managing meta data in a storage system and rebuilding lost meta data in cache
US6513097B1 (en) 1999-03-03 2003-01-28 International Business Machines Corporation Method and system for maintaining information about modified data in cache in a storage system for use during a system failure
US6502174B1 (en) * 1999-03-03 2002-12-31 International Business Machines Corporation Method and system for managing meta data
US6735772B1 (en) * 2000-04-13 2004-05-11 International Business Machines Corporation System and method for handling orphaned cause and effect objects

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4558413A (en) * 1983-11-21 1985-12-10 Xerox Corporation Software version management system
US4853843A (en) * 1987-12-18 1989-08-01 Tektronix, Inc. System for merging virtual partitions of a distributed database
US5287496A (en) * 1991-02-25 1994-02-15 International Business Machines Corporation Dynamic, finite versioning for concurrent transaction and query processing
DE4415651C1 (de) * 1994-05-04 1995-04-27 Daimler Benz Ag Bremsdruck-Steuereinrichtung

Also Published As

Publication number Publication date
US5594836A (en) 1997-01-14

Similar Documents

Publication Publication Date Title
JPH06332786A (ja) 複合オブジェクトを持つデータ処理システム
US7966356B2 (en) Apparatus and methods for displaying and determining dependency relationships among subsystems in a computer software system
JPH06214865A (ja) オブジェクト・ベース・データ処理装置
JPH06332712A (ja) オブジェクトを持つデータ処理システム
JP3170646B2 (ja) 製品構造管理
US9395958B2 (en) Systems and methods for drag-and-drop data binding
US20090125875A1 (en) Method for manufacturing a final product of a target software product
JPH06332772A (ja) データ処理システムにおけるエノバージョン管理処理方式
Ford et al. An information engineering approach to modelling building design
Gomaa et al. Domain modeling for software reuse and evolution
Sanvido Linking levels of abstraction of a building design
JPH06332711A (ja) データ処理システムにおけるオブジェクト管理処理方式
Zhang et al. Mockup‐driven fast‐prototyping methodology for Web application development
JPH06332785A (ja) オブジェクト指向データ処理システム
JPH0683693A (ja) オブジェクトを組み合わせて処理を実行するデータ処理装置
JPH07114464A (ja) オブジェクト指向データ処理システム
JPH06332784A (ja) オブジェクト指向データ処理システム
Johnson et al. Incorporating design schedule management into a flow management system
JPH06332787A (ja) オブジェクト指向データ処理システムにおけるデータ利用処理方式
JPH06332714A (ja) オブジェクトの自己pr方式
JPH06332713A (ja) オブジェクト指向データ処理システム
Juhás et al. Collecting Structured Logs of Instances as Process Nets in Petriflow Language.
Centeno et al. Databases: designing and developing integrated simulation modeling environments
JPH06332715A (ja) オブジェクト指向データ処理システム
JPH07114472A (ja) オブジェクト指向データ処理システム

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: 20000801