JP2002342099A - 多階層システムおよびオブジェクト転送プログラム - Google Patents

多階層システムおよびオブジェクト転送プログラム

Info

Publication number
JP2002342099A
JP2002342099A JP2001148412A JP2001148412A JP2002342099A JP 2002342099 A JP2002342099 A JP 2002342099A JP 2001148412 A JP2001148412 A JP 2001148412A JP 2001148412 A JP2001148412 A JP 2001148412A JP 2002342099 A JP2002342099 A JP 2002342099A
Authority
JP
Japan
Prior art keywords
layer
transfer
information
unique
common
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2001148412A
Other languages
English (en)
Other versions
JP3726708B2 (ja
Inventor
Takao Osaki
隆夫 大崎
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2001148412A priority Critical patent/JP3726708B2/ja
Publication of JP2002342099A publication Critical patent/JP2002342099A/ja
Application granted granted Critical
Publication of JP3726708B2 publication Critical patent/JP3726708B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Multi Processors (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 各層間の情報の授受を簡易化し、設計者等の
負担を軽減することができる多階層システムを提供す
る。 【解決手段】 ある対象を表現するオブジェクトは、層
Nにおいて層Nオブジェクト4となり、層Mにおいて層
Mオブジェクト14となる。共通部31は、一つのオブ
ジェクトが、各層において共通に有している属性やメソ
ッドである。層N固有部6は、共通部31に付加される
ことによって、オブジェクトの層Nにおける機能を実現
するデータやメソッドである。層M固有部16は、共通
部31に付加されることによって、オブジェクトの層M
における機能を実現するデータやメソッドである。層N
から層Mにオブジェクトが転送される場合、層Nオブジ
ェクト4から層N固有部6が取り外され、共通部31が
転送用オブジェクトとして転送される。そして、層Mに
おいて共通部31に層M固有部16が付加される。層M
から層Nにオブジェクトが転送される場合も同様であ
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数の層からなる
多階層システムおよび各層間でオブジェクトを転送する
オブジェクト転送プログラムに関する。
【0002】
【従来の技術】多階層システムは、複数の層を組み合わ
せることによって構築される。「層」とは、ある特定の
特徴を持つ機能を実装する論理的な単位である。この機
能の例としては、例えば、データベースにアクセスする
機能や、業務ロジックを実行する機能等がある。
【0003】ある層で実行される処理は、その層に存在
するオブジェクトによって変化する。例えば、データベ
ースにアクセスする機能に対応する層に、預金口座オブ
ジェクト(預金口座を表現するオブジェクト)が存在す
る場合、預金口座オブジェクトは、そのオブジェクトが
表す預金口座の名義人や預金残高等の情報をデータベー
スに保存したり、データベースから名義人や預金残高等
の情報を呼び出す機能を提供する。この層に他のオブジ
ェクトが存在する場合、そのオブジェクトは、名義人や
預金残高等ではなく、他の情報の保存や呼出しを行う機
能を提供する。また、例えば、業務ロジックの実行機能
に対応する層に預金口座オブジェクトが存在する場合、
預金口座オブジェクトは、利息計算処理や入出金処理等
を実行する機能を提供する。この層に他のオブジェクト
が存在する場合、そのオブジェクトは、利息計算処理や
入出金処理等ではなく、オブジェクトに応じた業務ロジ
ックを実行する機能を提供する。
【0004】多階層システムの形態として、例えば、各
層がそれぞれ異なる情報処理装置によって実現され、各
層間の情報の授受が、各装置を接続する通信ネットワー
クを介して行われる場合がある。あるいは、各層が同一
の情報処理装置内で実現され、各層間の情報の授受が、
プロセス間通信によって行われる場合がある。また、例
えば、各層が同一の情報処理装置内で実現され、同一の
プロセスのもとで各層間の情報の授受が行われる場合が
ある。
【0005】従来の多階層システムでは、同一の対象を
表すオブジェクトを層毎に別々に作成して、各層に存在
するオブジェクト同士が情報を授受するように設計され
る場合があった。以下、このような設計の手法を、第一
の手法と記す。第一の手法では、例えば、層Nにおいて
オブジェクトAが作成され、層Mにおいてオブジェクト
Bが作成され、オブジェクトA,Bが情報を授受するよ
うに設計されていた。オブジェクトA,Bは、同一の対
象Xを表現するオブジェクトであるが、存在する層が異
なる別個のオブジェクトである。層Mに存在するオブジ
ェクトBによって対象Xに対してある処理を行い、引き
続き同一の対象Xに対する処理をオブジェクトAに要求
する場合、層Mは、オブジェクトAによる処理に必要な
情報を層Nに送る。そして、層Mは、対象Xに対するオ
ブジェクトAの処理結果をオブジェクトBに反映させる
ための情報を層Nから返される。層Nでは、層Mから返
された情報を元に対象Xに関する情報を更新する。
【0006】より具体的な例として、オブジェクトA,
Bがともに、預金口座を表現する預金口座オブジェクト
である場合を例に説明する。オブジェクトが層Nにおい
て提供する機能は、業務ロジックを実行する機能であ
り、オブジェクトが層Mにおいて提供する機能は、デー
タベースにアクセスする機能であるとする。層Nに存在
する預金口座オブジェクト(オブジェクトA)は、利息
計算処理や入出金処理等の実行機能を提供するように設
計される。また、層Mに存在する預金口座オブジェクト
(オブジェクトB)は、名義人等の情報の保存や呼出し
を行う機能を提供するように設計される。オブジェクト
Bによってデータベースから呼び出した名義人の口座に
ついて利息計算を要求する場合、層Mは、利息計算に必
要な情報を層Nに送り、オブジェクトAによる利息計算
結果を返される。
【0007】また、第一の手法とは異なる手法として、
一つのオブジェクトに全ての層の機能を持たせて、その
オブジェクトが存在する層で利用できない機能について
は利用しないように設計する手法がある。例えば、オブ
ジェクトが層Nにおいて提供する機能は、業務ロジック
を実行する機能であり、オブジェクトが層Mにおいて提
供する機能はデータベースにアクセスする機能であると
する。この場合、預金口座オブジェクトは、利息計算処
理等の実行機能と、情報の保存や呼出しを行う機能とを
提供するように設計される。そして、このオブジェクト
は、層Nに存在するときには情報の保存や呼出しを行う
機能を利用せず、また、層Mに存在するときには利息計
算処理等の機能を利用しないように設計される。このよ
うな設計の手法を、以下、第二の手法と記す。
【0008】
【発明が解決しようとする課題】第一の手法では、同一
の対象を表すオブジェクトを各層毎に設計しなくてはな
らなかった。すなわち、同一の対象に対して複数のオブ
ジェクトを設計しなくてはならなかった。
【0009】また、各層間の情報の授受が複雑化すると
いう問題があった。例えば、オブジェクトAによる処理
に必要な情報を層Mから層Nに送る場合、オブジェクト
B全体の情報を送るとする。この場合、層Mは、層Nに
おいて必要でない情報も送ってしまうため、層Nが層M
のオブジェクト全体の情報を受け取ることができるよう
にしなければならなかった。同様に、各層が、他の層の
オブジェクト全体の情報を受け取ることができるように
しなければならなかった。
【0010】層Mが、オブジェクトB全体の情報を送る
のではなく、オブジェクトAによる処理に必要な情報の
みを抽出して層Nに送る場合には、抽出すべき情報を特
定しておく必要がある。同様に、他の層Lに処理を要求
する場合には、層Lで必要とされる情報を特定しておく
必要がある。このため、設計者は、層毎で必要とされる
情報を特定して、層に応じた情報を抽出するように設計
しなければならなかった。例えば、層の数がnであっ
て、全ての層間で情報の授受がある場合には の組
み合わせの関係を管理して設計を行わなければならない
ので、その設計は容易でない。
【0011】また、第二の手法では、オブジェクトは、
ある層に存在するときにオブジェクト自身が持つ他の層
の機能を利用しないように設計され、プログラマは設計
に従いプログラムを記述する。しかし、プログラマが誤
った記述をしやすいという問題があった。例えば、プロ
グラマが、オブジェクトが存在する層では本来利用でき
ない機能を利用するような記述をすることがあった。そ
して、このような記述がなされると、実際に処理を実行
するまでプログラムの誤りを検出しにくいという問題が
あった。そのため、プログラマは、オブジェクトがある
層に存在しているときに、そのオブジェクトの他の層に
おける機能を利用しないように、注意してプログラムを
記述しなければならなかった。さらに、第二の手法で
は、オブジェクトが、全部の層の機能を持ち、各層にお
いて利用しない機能も持つことになるので、情報処理装
置のリソースが多く消費されてしまうという問題があっ
た。
【0012】本発明は、各層間の情報の授受を簡易化す
ることができる多階層システム、および、この多階層シ
ステムに適用されるオブジェクト転送プログラムを提供
することを目的とする。また、設計者やプログラマの負
担が少なく、情報処理装置のリソースの消費が少ない多
階層システムを提供することを目的とする。
【0013】
【課題を解決するための手段】本発明による多階層シス
テムは、特定の特徴を持つ機能を実装する論理的な単位
である層を複数有し、各層間でオブジェクトを転送して
所定の目的を達成する多階層システムであって、各層
は、一つのオブジェクトが各層で共通に有する共通部を
転送用オブジェクトとして転送するオブジェクト転送手
段を備え、各層間で転送されるオブジェクトは、前記オ
ブジェクト転送手段によって転送用オブジェクトとして
転送され、各層で、その層に応じた機能を提供すること
を特徴とする。所定の目的とは、例えば、銀行で扱われ
る情報に対する各種処理の遂行である。
【0014】多階層システムは、例えば、転送用オブジ
ェクトを受け取ったときに、転送用オブジェクトに対し
て固有の情報を付加する固有部付加手段を備えた層を有
し、前記層に転送されるオブジェクトは、前記固有部付
加手段によって固有の情報が付加されることによって、
その層に応じた機能を提供する。固有の情報は、例え
ば、各層が固有に備えるメソッドあるいはデータを含
む。
【0015】また、多階層システムは、転送用オブジェ
クトを受け取った層が、転送用オブジェクトとして転送
された共通部のみによって、その層に応じた機能を提供
するように構成されていてもよい。すなわち、固有の情
報が必要ない場合には、転送用オブジェクトから共通部
のみを受け取るように構成されていてもよい。
【0016】また、本発明によるオブジェクト転送プロ
グラムは、特定の特徴を持つ機能を実装する論理的な単
位である層の間でオブジェクトを転送するオブジェクト
転送プログラムであって、コンピュータに、層内に存在
するオブジェクトから前記層に固有の情報を取り外すこ
とによって、前記オブジェクトが各層で共通に有する共
通部を得る処理、前記共通部を他の層に転送する処理、
および、他の層から共通部を受け取り、前記共通部に前
記固有の情報を付加する処理、を実行させることを特徴
とする。
【0017】
【発明の実施の形態】以下、本発明の実施の形態を図面
を参照して説明する。図1は、本発明による多階層シス
テムの実施の一形態を示すブロック図である。図1は、
情報処理装置1と情報処理装置11とが、通信ネットワ
ーク41によって接続されている場合の例を示す。情報
処理装置1は、オブジェクトが層Nに存在するときに提
供する機能を実現する。情報処理装置11は、オブジェ
クトが層Mに存在するときに提供する機能を実現する。
すなわち、情報処理装置1,11は、それぞれ層N、層
Mに対応する。なお、層の数は、二つに限定されず、三
以上の層からなるシステムであってもよい。
【0018】情報処理装置1,11において、CPU
2,12は、それぞれ記憶装置3,13が記憶するプロ
グラムやオブジェクトに従って処理を実行する。ネット
ワークインタフェース部9,19は、それぞれ他の情報
処理装置と情報を送受信する。
【0019】層Nオブジェクト4と層Mオブジェクト1
4は、ともに同一の対象を表現するオブジェクトであ
る。ある対象を表現する一つのオブジェクトは、層Nと
層Mとの間で転送され、そのオブジェクトが、層Nに存
在するときには層Nオブジェクト4となり、層Mに存在
するときには層Mオブジェクト14となる。したがっ
て、層Nオブジェクト4と層Mオブジェクト14は、別
個のオブジェクトではない。また、層Nと層Mとの間で
転送されるオブジェクトは、存在する層によって提供す
る機能が変化する。したがって、層Nオブジェクト4と
層Mオブジェクト14は、別個のオブジェクトではない
が、提供する機能は異なる。なお、ある対象を表現する
オブジェクトは、層Nと層Mとの間で転送される場合、
後述する転送用オブジェクトとして転送される。
【0020】共通部31は、ある一つのオブジェクト
が、各層において共通に有している属性(データ)とメ
ソッドである。すなわち、共通部31は、一つのオブジ
ェクトが層Nに存在する場合と層Mに存在する場合とで
共通に有している属性とメソッドである。共通部31と
なる属性やメソッドは、オブジェクトが表す対象に応じ
て予め定められている。層N固有部6は、共通部31に
付加されることによって、オブジェクトの層Nにおける
機能を提供するデータやメソッドである。層Nオブジェ
クト4は、共通部31と、層N固有部6とからなる。層
Mオブジェクト14も、層Nオブジェクト4と同様の構
成であり、共通部31と、層M固有部16とからなる。
層M固有部16は、共通部31に付加されることによっ
て、オブジェクトの層Mにおける機能を提供するデータ
やメソッドである。
【0021】オブジェクト転送プログラム7は、層Nオ
ブジェクト4の共通部31を転送用オブジェクトとして
情報処理装置11に送信するプログラムである。すなわ
ち、オブジェクト転送プログラム7は、層Nオブジェク
ト4から層N固有部6を取り外して、転送用オブジェク
トを作成し、情報処理装置11に送信する。同様に、オ
ブジェクト転送プログラム17は、層Mオブジェクト1
4の共通部31を転送用オブジェクトとして情報処理装
置1に送信するプログラムである。
【0022】また、オブジェクト転送プログラム7は、
情報処理装置1が転送用オブジェクトを受信したとき
に、そのオブジェクトの層Nにおける機能を実現する層
Nオブジェクト4を作成する。記憶装置3は、予め所定
の場所に層N固有部6を記憶しておく。オブジェクト転
送プログラム7は、転送用オブジェクトを受信したとき
に、所定の場所から層N固有部6を呼び出して、共通部
31(受信した転送用オブジェクト)に付加することに
よって、層Nオブジェクト4を作成する。同様に、オブ
ジェクト転送プログラム17も、情報処理装置11が転
送用オブジェクトを受信したときに、記憶装置13の所
定の場所から層M固有部16を呼び出して、共通部31
(受信した転送用オブジェクト)に付加することによっ
て、層Mオブジェクト14を作成する。なお、記憶装置
13は、予め所定の場所に層M固有部16を記憶してお
く。
【0023】各記憶装置3,13は、転送用オブジェク
トの種類と、転送用オブジェクトに応じて呼び出すべき
固有部の記憶場所との対応関係を予め記憶する。図2
(a)は、記憶装置3が記憶する対応関係の例である。
オブジェクト転送プログラム7は、この対応関係にした
がって、転送用オブジェクトを受信したときに、層N固
有部6を呼び出す。図2(a)に示す例では、転送用オ
ブジェクトとして共通部31を受信したときに、記憶場
所Pから層N固有部6を呼び出す。同様に、図2(b)
は、記憶装置13が記憶する対応関係の例である。図2
(b)に示す例では、オブジェクト転送プログラム17
は、転送用オブジェクトとして共通部31を受信したと
きに、記憶場所Qから層M固有部16を呼び出す。
【0024】図2では、共通部31に対応する固有部の
記憶場所を示したが、転送用オブジェクトとして転送さ
れるオブジェクトは、共通部31に限定されない。共通
部31以外の共通部が定められているならば、記憶装置
3,13は、その共通部と、その共通部に応じて呼び出
すべき固有部の記憶場所との対応関係を予め記憶する。
【0025】各層において、オブジェクト転送プログラ
ム7,17以外のプログラムが、所定の場所から層N固
有部6や層M固有部16を呼び出して、層Nオブジェク
ト4や層Mオブジェクト14を作成してもよい。これら
のプログラムがオブジェクト4,14を作成するのは、
転送用オブジェクトを受信したときに限定されない。
【0026】層は、転送用オブジェクトを受け取ったと
きに、転送用オブジェクトに固有部を付加することな
く、転送用オブジェクトをそのまま保持してもよい。こ
のような層において、層Nオブジェクト4や層Mオブジ
ェクト14は、転送用オブジェクトとして転送された共
通部31のみを含む。すなわち、オブジェクトが、ある
層に存在しているときに提供する機能を、共通部31の
みが実現してもよい。例えば、共通部31があるデータ
とそのデータを表示するメソッドを備えているとする。
そして、オブジェクトが層Mにおいてデータ表示機能を
提供するならば、層Mオブジェクト14は層M固有部1
6を含まず、共通部31のみを備える。そして、共通部
31のメソッドにより層Mにおいてデータ表示機能を提
供する。
【0027】ある層においてオブジェクトが提供する機
能が共通部31のみによって提供されるならば、記憶装
置は固有部(層N固有部6や層M固有部16)を記憶し
ない。また、転送用オブジェクトの種類と固有部の記憶
場所の対応関係として、転送用オブジェクトの種類に対
応させて「固有部はない。」という情報を記憶する。図
2(c)は、固有部を記憶しない場合の、転送用オブジ
ェクトの種類と記憶場所との対応関係の例である。記憶
装置3,13が、図2(c)に例示する情報を持つ場
合、オブジェクト転送プログラム7,17は、受信した
転送用オブジェクトをそのまま層Nオブジェクト4や層
Mオブジェクト14とする。例えば、転送用オブジェク
トとして共通部31を受信したならば、共通部31をそ
のまま層Nオブジェクト4等とする。
【0028】本例において、オブジェクト転送手段およ
び固有部付加手段は、層Nでは、CPU2、記憶装置
3、オブジェクト転送プログラム7によって実現され
る。また、層Mでは、CPU12、記憶装置13、オブ
ジェクト転送プログラム17によって実現される。オブ
ジェクト転送プログラム7は、コンピュータに、層内に
存在するオブジェクト(層Nオブジェクト4)から前記
層に固有の情報(層N固有部6)を取り外すことによっ
て、前記オブジェクトが各層で共通に有する共通部を得
る処理、前記共通部を他の層に転送する処理、および、
他の層から共通部を受け取り、前記共通部に前記固有の
情報(層N固有部6)を付加する処理を実行させるため
のプログラムである。オブジェクト転送プログラム17
も、同様のプログラムである。
【0029】次に、転送用オブジェクトの授受を行う場
合の動作について説明する。ここでは、情報処理装置1
から情報処理装置11に転送用オブジェクトを送信する
場合を例に説明する。図3は、オブジェクト転送プログ
ラム7に従うCPU2の動作の例を示す流れ図である。
図4は、オブジェクト転送プログラム17に従うCPU
12の動作の例を示す流れ図である。
【0030】層Nから層Mにオブジェクトを転送し、そ
のオブジェクトの層Mにおける処理を要求する場合、オ
ブジェクト転送プログラム7には、まず層Nオブジェク
ト4の情報が渡される(ステップS71)。続いて、C
PU2は、ステップS71において渡された層Nオブジ
ェクト4が層N固有部6を含んでいるか否かを判断する
(ステップS72)。この判断は、層Nオブジェクト4
が予め定められた共通部31のデータやメソッド以外の
情報を含んでいるか否かによって行う。
【0031】層Nオブジェクト4が層N固有部6を含ん
でいなければ、層Nオブジェクト4は、共通部31のみ
からなるので、その共通部31(層Nオブジェクト4)
を転送用オブジェクトとする(ステップS74)。ま
た、層Nオブジェクト4が層N固有部6を含んでいれ
ば、CPU2は、層N固有部6を取り外す処理を行う
(ステップS73)。そして、層N固有部6が取り外さ
れた共通部31を転送用オブジェクトとする(ステップ
S74)。続いて、CPU2は、転送用オブジェクトを
情報処理装置11に送信する(ステップS75)。
【0032】情報処理装置11において、CPU12
は、ステップS75において送信された転送用オブジェ
クトを受信する(ステップS76)。続いて、CPU1
2は、転送用オブジェクトの種類と固有部との対応関係
の情報を参照して、固有部を付加する必要があるか否か
を確認する(ステップS77)。CPU12は、対応関
係を示す情報において、固有部の記憶場所が示されてい
るならば、固有部を付加する必要があると判断する。ま
た、対応関係を示す情報において、「固有部はない。」
という情報が示されているならば、固有部を付加する必
要はないと判断する。例えば、記憶装置13が図2
(b)に例示する対応関係の情報を保持しているのであ
れば、CPU12は、受信した転送用オブジェクト(共
通部31)に、対応する層M固有部16を付加する必要
があると判断する。一方、記憶装置13が図2(c)に
例示する対応関係の情報を保持しているのであれば、C
PU12は、受信した転送用オブジェクト(共通部3
1)に対して固有部を付加する必要はないと判断する。
【0033】CPU12は、ステップS77において固
有部を付加する必要がないと判断したならば、受信した
転送用オブジェクトを層Mオブジェクト14とする(ス
テップS79)。また、ステップS77において固有部
を付加する必要があると判断したならば、転送用オブジ
ェクトの種類に対応する記憶場所から固有部を呼び出す
(ステップS78)。例えば、記憶装置13が図2
(b)に例示する情報を記憶していれば、転送用オブジ
ェクト(共通部31)に対応する固有部として、記憶場
所Qから層M固有部16を呼び出す。CPU12は、ス
テップS78の次に、転送用オブジェクトに層M固有部
16を付加して層Mオブジェクト14を作成する(ステ
ップS79)。CPU12は、ステップS79において
作成した層Mオブジェクト14を記憶装置13に保持さ
せる(ステップS80)。
【0034】情報処理装置11から情報処理装置1に転
送用オブジェクトを送信する場合の動作も、ステップS
71〜S80と同様である。
【0035】このような多階層システムによれば、各層
の間でオブジェクトを授受するときに、層N固有部6を
含む層Nオブジェクト4全体や、層M固有部16を含む
層Mオブジェクト14全体を転送することがない。その
ため、従来の第一の手法のように、層N(情報処理装置
1)が層Nで実行されないメソッド等を受け取れるよう
にする必要がない。層M(情報処理装置11)も、層M
で実行されないメソッド等を受け取れるようにする必要
がない。また、オブジェクトを他の層に転送するときに
は、共通部を転送用オブジェクトとして授受し、転送用
オブジェクトに、各層で必要なメソッドやデータが付加
される。したがって、処理を要求する層では、固有部を
除いて共通部を送ればよいので、送り先毎に必要な情報
を選び出す必要がない。本発明では、授受する共通部を
定め、固有部の付加や取り外しを行えばよいので、設計
時の負担が軽減される。また、オブジェクトは、各層に
おいて、その層での役割に適した機能のみを提供する。
したがって、設計時に、各層毎の役割を明確にすること
ができ、オブジェクトの各層における機能を洗い出すこ
とができる。
【0036】また、従来の第二の手法と異なり、層Nに
存在するオブジェクトは、そのオブジェクトが他の層に
存在するときに提供する機能を持つことがない。同様
に、層Mに存在するオブジェクトは、そのオブジェクト
が他の層に存在するときに提供する機能を持つことがな
い。従って、オブジェクトがある層に存在しているとき
に、そのオブジェクトの他の層における機能を利用しな
いようにプログラムを記述する必要がなく、プログラマ
の負担が軽減される。また、プログラマが誤って、利用
できない機能を利用するような記述をしても、その誤り
をすぐに検出できる。そして、各層に存在するオブジェ
クトは、他の層における機能を持たないので、情報処理
装置のリソースの消費を少なくすることができる。
【0037】次に、預金口座を扱うシステムに本発明を
適用した場合の動作の例を説明する。システムの構成
は、図1に例示する場合と同様である。オブジェクトが
層Nにおいて提供する機能は、業務ロジックを実行する
機能であり、オブジェクトが層Mにおいて提供する機能
はデータベースにアクセスする機能であるとする。預金
口座を表現する預金口座オブジェクトは、層Nにおい
て、入出金や利息計算処理等の機能を提供する。また、
預金口座オブジェクトは、層Mにおいて、名義人、残高
等の情報の保存や呼び出し機能を提供する。預金口座オ
ブジェクトは、層Nに転送されたときには層Nオブジェ
クト4になり、層Mに転送されたときには層Mオブジェ
クト14になる。本例において、預金口座オブジェクト
の共通部31は、預金口座の名義人情報、残高情報、入
手金履歴等のデータを含む。また、預金口座オブジェク
トの共通部31は、名義人情報等を共通部31の属性と
して設定するメソッドや、設定されている情報を提供す
るメソッド等を含む。
【0038】層N固有部6は、預金口座の入出金処理や
利息計算処理を行うメソッドを含む。また、層M固有部
16は、名義人情報、残高情報、入出金履歴等のデータ
を保存したり、保存したデータを呼び出すメソッドを含
む。層M固有部16は、データ保存場所の情報も含む。
【0039】記憶装置3は、図2(a)に例示するよう
に、名義人情報等を含む共通部31に対応させて、層N
固有部6の記憶場所を保持する。したがって、情報処理
装置1が転送用オブジェクトとして共通部31を受信し
た場合、共通部31に対応する層N固有部6(入出金処
理を行うメソッド等)が呼び出され、共通部31には層
N固有部6が付加される。記憶装置13は、図2(b)
に例示するように、共通部31に対応させて、層M固有
部16の記憶場所を保持する。情報処理装置11が転送
用オブジェクトとして共通部31を受信した場合、共通
部31に対応する層M固有部16(データ保存を行うメ
ソッド等)が呼び出され、共通部31に層M固有部16
が付加される。
【0040】図5は、呼び出した名義人の口座に対し
て、預金口座オブジェクトが層Nにおいて入出金処理等
を行い、その結果を層Mで保存する際の動作の例を示す
流れ図である。まず、記憶装置13が記憶するプログラ
ムに従い、CPU12が層Mオブジェクト14を作成す
る(ステップS101)。このプログラムは、オブジェ
クト転送プログラム17でなくてもよい。また、ステッ
プS101において作成される層Mオブジェクトには、
名義人情報等の具体的データは含まれていない。続い
て、CPU12は、作成した層Mオブジェクト14の層
M固有部16のメソッドにより、名義人情報、残高情
報、入出金履歴等のデータを呼び出し、共通部31の属
性として設定する(ステップS102)。この処理によ
り、層Mオブジェクト14は、名義人情報等の具体的デ
ータを備える。
【0041】続いて、オブジェクト転送プログラム17
に、層Mオブジェクト14の情報が渡され、CPU12
は、層Mオブジェクト14から層M固有部16を取り外
す(ステップS103)。層Mオブジェクト14には共
通部31以外のデータやメソッドが含まれているので、
CPU12は、層M固有部6があると判断し、データの
保存場所の情報や、データの保存、呼び出しを行うメソ
ッドを取り外す。ステップS103は、前述のステップ
S71〜ステップS73に相当する処理である。
【0042】ステップS103の処理によって、名義人
情報等のデータや、データの設定等を行うメソッドを含
む共通部31が得られる。CPU12は、この共通部3
1を転送用オブジェクトとし(ステップS104)、情
報処理装置1に送信する(ステップS105)。情報処
理装置1は、転送用オブジェクトを受信する。ステップ
S104,S105は、ステップS74〜S76に相当
する処理である。このように、層Mオブジェクト14と
して存在していた預金口座オブジェクトは、転送用オブ
ジェクトとして転送される。
【0043】情報処理装置1のCPU2は、転送用オブ
ジェクトとして共通部31を受信したならば、対応する
層N固有部6を呼び出して、共通部31に付加する(ス
テップS106)。すなわち、入出金処理や利息計算処
理を行うメソッドを呼び出し、受信した共通部31に付
加することにより層Nオブジェクト4を作成する。ステ
ップS106は、ステップS77〜S79に相当する処
理である。CPU2は、作成した層Nオブジェクト4を
記憶装置3に保持させる(ステップS107)。これ
は、ステップS80に相当する処理である。
【0044】CPU2は、層N固有部6のメソッドによ
って入出金処理等を行い、共通部31の残高情報や入出
金履歴等を更新する(ステップS108)。続いて、オ
ブジェクト転送プログラム7に、層Nオブジェクト4の
情報が渡され、CPU2は、層Nオブジェクト4から層
N固有部6を取り外す(ステップS109)。層Nオブ
ジェクト4には共通部31以外のメソッドが含まれてい
るので、CPU2は、層N固有部6があると判断し、入
出金処理や利息計算処理を行うメソッドを取り外す。ス
テップS109は、前述のステップS71〜ステップS
73に相当する処理である。
【0045】ステップS109の処理によって、名義人
情報等のデータや、データの設定等を行うメソッドを含
む共通部31が得られる。CPU2は、この共通部31
を転送用オブジェクトとし(ステップS110)、情報
処理装置11に送信する(ステップS111)。情報処
理装置11は、転送用オブジェクトを受信する。ステッ
プS110,S111は、ステップS74〜S76に相
当する処理である。このように、層Nオブジェクト4と
して存在していた預金口座オブジェクトは、転送用オブ
ジェクトとして転送される。
【0046】情報処理装置11のCPU12は、転送用
オブジェクトとして共通部31を受信したならば、対応
する層M固有部16を呼び出して、共通部31に付加す
る(ステップS112)。すなわち、名義人情報等のデ
ータを保存したり、保存したデータを呼び出すメソッド
や、データの保存場所の情報を呼び出し、受信した共通
部31に付加することにより層Mオブジェクト14を作
成する。ステップS112は、ステップS77〜S79
に相当する処理である。CPU12は、作成した層Mオ
ブジェクトを記憶装置13に保持させる(ステップS1
13)。これは、ステップS80に相当する処理であ
る。
【0047】CPU12は、ステップS108で更新さ
れた共通部31の情報を、層M固有部16のメソッドに
よってデータ保存場所に記憶させる(ステップS11
4)。
【0048】このようなシステムでは、層Nが、データ
を保存するメソッド等を受け取る必要がない。同様に、
層Mが、入出金処理を行うメソッド等を受け取る必要が
ない。また、預金口座オブジェクトを他の層に転送する
ときには、名義人情報、残高情報、入出金履歴等のデー
タや、それらのデータを設定するメソッド等を共通部3
1として送受信すればよい。本例のシステムでは、この
ような共通部を定め、固有部の付加や取り外しを行えば
よいので、設計時の負担が軽減される。
【0049】また、層Nに存在する預金口座オブジェク
ト(層Nオブジェクト4)は、データの保存や呼び出し
を行うメソッドを有していないので、層Nにおいて、こ
れらの機能を利用しないようにプログラムを記述する必
要はない。同様に、層Mに存在する預金口座オブジェク
ト(層Mオブジェクト14)は、入出金処理や利息計算
処理を行うメソッドを有していないので、層Mにおい
て、これらの機能を利用しないようにプログラムを記述
する必要がない。したがって、プログラマの負担を軽減
させることができる。
【0050】また、上記の例では、情報処理装置1,1
1において、受信した転送用オブジェクトに対して層N
固有部6や層M固有部16を付加する場合を示したが、
ある層における機能が共通部31のメソッドによって実
現される場合には、固有部を付加しなくてもよい。例え
ば、預金口座を扱うシステムにおいて、オブジェクトの
層Nにおける機能は、上記の例と同様に業務ロジックの
実行機能であるとする。そして、オブジェクトの層Mに
おける機能は、データ表示機能およびデータ設定機能で
あるとする。預金口座オブジェクトは、層Mに存在する
場合、名義人情報、残高情報、入出金履歴の情報を表示
する機能や、ユーザから入力された情報を共通部の属性
として設定する機能を提供する。これらの機能は、預金
口座オブジェクトの共通部31(情報を共通部31の属
性として設定するメソッド、設定されている情報を提供
するメソッド)により実現される。
【0051】この場合、情報処理装置11の記憶装置1
3は、層M固有部16を保持しない。そして、図2
(c)に例示するように、共通部31に対応させて「固
有部はない。」という情報を記憶する。CPU12は、
転送用オブジェクトとして共通部31を受信したとき、
「固有部はない。」という情報に基づいて、受信した共
通部31を層Mオブジェクトとする。そして、CPU1
2は、共通部31のメソッドにより、データの表示等を
行う。
【0052】また、情報処理装置1に、転送用オブジェ
クトを送信する場合、層Mオブジェクトは共通部31の
みからなるので、CPU12は、固有部を取り外すこと
なく共通部31を転送用オブジェクトとする。なお、こ
の場合、情報処理装置1が転送用オブジェクトを受信し
たときの動作は、ステップS106〜S111と同様で
ある。
【0053】上記の各例では、各層に対応する情報処理
装置が異なり、通信ネットワーク41を介してオブジェ
クトを授受する場合を示した。本発明の形態は、各層に
対応する情報処理装置が異なる場合に限定されない。例
えば、各層が同一の情報処理装置によって実現され、プ
ロセス間通信によってオブジェクトが転送される構成で
あってもよい。また、各層が同一の情報処理装置によっ
て実現され、同一プロセスのもとでオブジェクトが転送
される構成であってもよい。
【0054】このように本発明では、各層は、通信ネッ
トワークを介して接続される複数の情報処理装置によっ
て実現され、前記通信ネットワークを介して転送用オブ
ジェクトを転送する構成であってもよいまた、各層は、
同一の情報処理装置によって実現され、プロセス間通信
により転送用オブジェクトを転送する構成であってもよ
い。また、各層は、同一の情報処理装置によって実現さ
れ、同一プロセスのもとで転送用オブジェクトを転送す
る構成であってもよい。
【0055】
【発明の効果】本発明によれば、各層は、一つのオブジ
ェクトが各層で共通に有する共通部を転送用オブジェク
トとして転送するオブジェクト転送手段を備え、各層間
で転送されるオブジェクトは、前記オブジェクト転送手
段によって転送用オブジェクトとして転送され、各層
で、その層に応じた機能を提供するので、各層は、実行
されないメソッド等を受け取る必要がない。また、オブ
ジェクト転送先の層毎に必要な情報を選び出す必要がな
く、共通部を転送用オブジェクトとして送信すればよ
い。したがって、層間の情報の授受に関する設計の負担
が軽減される。さらに、オブジェクトがある層に存在し
ているときに、そのオブジェクトの他の層における機能
を利用しないようにプログラムを記述する必要がなく、
プログラマの負担が軽減される。オブジェクトは、ある
層に存在しているときに、他の層において提供すべき機
能を有さないので、情報処理装置のリソースを多く消費
することもない。
【図面の簡単な説明】
【図1】 本発明による多階層システムの実施の一形態
を示すブロック図である。
【図2】 転送用オブジェクトの種類と固有部の記憶場
所との対応関係の例を示す説明図である。
【図3】 転送用オブジェクトを転送する際の動作の例
を示す流れ図である。
【図4】 転送用オブジェクトを受け取る際の動作の例
を示す流れ図である。
【図5】 預金口座を扱う多階層システムの動作の例を
示す流れ図である。
【符号の説明】
1 情報処理装置 2 CPU 3 記憶装置 4 層Nオブジェクト 6 層N固有部 7 オブジェクト転送プログラム 11 情報処理装置 12 CPU 13 記憶装置 14 層Mオブジェクト 16 層M固有部 17 オブジェクト転送プログラム 31 共通部31

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 特定の特徴を持つ機能を実装する論理的
    な単位である層を複数有し、各層間でオブジェクトを転
    送して所定の目的を達成する多階層システムであって、 各層は、一つのオブジェクトが各層で共通に有する共通
    部を転送用オブジェクトとして転送するオブジェクト転
    送手段を備え、 各層間で転送されるオブジェクトは、前記オブジェクト
    転送手段によって転送用オブジェクトとして転送され、
    各層で、その層に応じた機能を提供することを特徴とす
    る多階層システム。
  2. 【請求項2】 転送用オブジェクトを受け取ったとき
    に、転送用オブジェクトに対して固有の情報を付加する
    固有部付加手段を備えた層を有し、 前記層に転送されるオブジェクトは、前記固有部付加手
    段によって固有の情報が付加されることによって、その
    層に応じた機能を提供する請求項1記載の多階層システ
    ム。
  3. 【請求項3】 固有の情報は、各層が固有に備えるメソ
    ッドあるいはデータを含む請求項2記載の多階層システ
    ム。
  4. 【請求項4】 転送用オブジェクトを受け取った層は、
    転送用オブジェクトとして転送された共通部のみによっ
    て、その層に応じた機能を提供する請求項1記載の多階
    層システム。
  5. 【請求項5】 特定の特徴を持つ機能を実装する論理的
    な単位である層の間でオブジェクトを転送するオブジェ
    クト転送プログラムであって、コンピュータに、 層内に存在するオブジェクトから前記層に固有の情報を
    取り外すことによって、前記オブジェクトが各層で共通
    に有する共通部を得る処理、 前記共通部を他の層に転送する処理、および他の層から
    共通部を受け取り、前記共通部に前記固有の情報を付加
    する処理、 を実行させるためのオブジェクト転送プログラム。
JP2001148412A 2001-05-17 2001-05-17 多階層システムおよびオブジェクト転送プログラム Expired - Fee Related JP3726708B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001148412A JP3726708B2 (ja) 2001-05-17 2001-05-17 多階層システムおよびオブジェクト転送プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001148412A JP3726708B2 (ja) 2001-05-17 2001-05-17 多階層システムおよびオブジェクト転送プログラム

Publications (2)

Publication Number Publication Date
JP2002342099A true JP2002342099A (ja) 2002-11-29
JP3726708B2 JP3726708B2 (ja) 2005-12-14

Family

ID=18993734

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001148412A Expired - Fee Related JP3726708B2 (ja) 2001-05-17 2001-05-17 多階層システムおよびオブジェクト転送プログラム

Country Status (1)

Country Link
JP (1) JP3726708B2 (ja)

Also Published As

Publication number Publication date
JP3726708B2 (ja) 2005-12-14

Similar Documents

Publication Publication Date Title
CN102893272B (zh) 对象的共享和同步
US20090300017A1 (en) Transaction Parallel Control Method, and Database Managemet System
US7502876B1 (en) Background memory manager that determines if data structures fits in memory with memory state transactions map
CN110049113A (zh) 业务消息处理方法及装置
US20090234906A1 (en) Computer processing system for realizing data upgrade and a data upgrading method
JP7012689B2 (ja) コマンド実行方法及び装置
JPH09244940A (ja) 分散計算機資源の管理方法
CN103729373A (zh) 一种数据库代理方法和装置
US8499298B2 (en) Multiprocessing transaction recovery manager
US6732360B1 (en) System and method for providing connection between client and heterogeneous database management systems
US20060123070A1 (en) Method and system of committing operations of a synchronized transaction
CN114564435A (zh) 异构多核芯片的核间通信方法、装置及介质
CN112787999B (zh) 跨链调用方法、装置、系统与计算机可读存储介质
CN109634764A (zh) 工作流控制方法、装置、设备、存储介质和系统
CN107682460A (zh) 一种分布式存储集群数据通信方法及系统
US7133913B2 (en) Information routing
JPH11272630A (ja) サ―バ処理装置、サ―バ処理方法、コンピュ―タ・プログラム製品及びサ―バ
CN109889406A (zh) 用于管理网络连接的方法、装置、设备和存储介质
CN116643854A (zh) 一种服务编排方法、装置、流程控制器及任务处理器
US11157690B2 (en) Techniques for asynchronous execution of computationally expensive local spreadsheet tasks
JP3726708B2 (ja) 多階層システムおよびオブジェクト転送プログラム
CN112083914B (zh) 实现对象模型嵌入式操作系统软总线的方法及系统
JP2007011550A (ja) プログラム制御方法、計算機および計算機制御プログラム
CN106878414B (zh) 数据写请求处理方法、装置及分布式数据存储系统
US7693988B2 (en) Subject/observer update control method and apparatus

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050602

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050621

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050810

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050906

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050919

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees