JP2000137614A - コンピュ―タ・システムおよび対話のための方法 - Google Patents

コンピュ―タ・システムおよび対話のための方法

Info

Publication number
JP2000137614A
JP2000137614A JP11230212A JP23021299A JP2000137614A JP 2000137614 A JP2000137614 A JP 2000137614A JP 11230212 A JP11230212 A JP 11230212A JP 23021299 A JP23021299 A JP 23021299A JP 2000137614 A JP2000137614 A JP 2000137614A
Authority
JP
Japan
Prior art keywords
navigator
command
execution
subcommand
event
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.)
Pending
Application number
JP11230212A
Other languages
English (en)
Inventor
Purujibuiruskii Pyotr
ピョートル・プルジブイルスキー
Baumeister Zaasha
ザーシャ・バウマイスター
Baijiigeru Michael
ミヒャエル・バイジーゲル
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2000137614A publication Critical patent/JP2000137614A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 (修正有) 【課題】 クライアントとバックエンド・システム内の
構成要素との対話を可能にするコマンドを含むコンピュ
ータ・システムおよび方法。 【解決手段】 コマンドは、バックエンド・システムに
よって変換される入力オブジェクトを有し、その変換後
の出力オブジェクトを定義し、またクライアントの対話
相手のバックエンド・システムの接続指定と、対話相手
の構成要素の識別のための対話指定とを含む。入力オブ
ジェクトは、対話指定と接続指定に従ってバックエンド
・システムの構成要素に供給される。コマンドは、実行
メソッドによって駆動され、入力オブジェクトの処理中
にバックエンド・システムの構成要素が例外に遭遇する
かどうかに応じて、成功イベントまたは失敗イベントを
通知する。対話フローを形成するためにナビゲータを構
築する。ナビゲータは、連鎖コマンドと他のナビゲータ
とを含む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピューティン
グ・システムの改良に関し、詳細には、コンピュータ・
システムまたは構成要素間の対話をモデリングするパタ
ーンに関する。
【0002】
【従来の技術】アプリケーション・システムと呼ばれる
多くの異なるコンピュータ・システムがある。例として
は、データベース管理システムやトランザクション処理
システムがある。このようなシステムは、特定のユーザ
がシステムに直接にはアクセスせず、特定の「フロント
エンド」またはユーザ・インタフェースを介してアクセ
スし、そのユーザ・インタフェースがアプリケーション
・システムと通信して、ユーザによって要求された機能
を実行するため、「バックエンド」システムと呼ばれる
こともある。バックエンド・システムは一般に、バック
エンド・システムの遠隔使用および分散使用を可能にす
る通信インタフェースによって、バックエンド・システ
ムの機能へのアクセスを提供する。
【0003】バックエンド・システムは、様々な会社や
グループによって開発されているため、そのサービスを
使用するための異なるアクセス方法、たとえば異なるA
PIのセットを備える。これによって、様々なバックエ
ンド・システムや、同じシステムによって様々な通信方
法をサポートするために異なるAPIの使用法の修得を
余儀なくされるアプリケーション開発者にとって重大な
問題が生じる。さらに、そのようなアクセスの汎用ツー
ルやいずれかのタイプの自動化機能を設けるのは、きわ
めて困難である。たとえば、コード生成にはカスタマイ
ズされたツールが必要だが、それは再使用することがで
きず、複数の対象をサポートすることができない。ま
た、そのようなツールは特定のランタイム・サポートを
必要とするが、それも再使用不可能である。この問題
は、様々なバックエンド・システムの機能へのアクセス
の抽象化がきわめて類似しているため、特に厄介であ
る。
【0004】
【発明が解決しようとする課題】したがって、コンピュ
ータ・システム間または構成要素間の上記の対話を汎用
的パターンでモデル化することができるようにするため
に、そのようなシステムが準拠する高水準インタフェー
スの標準セットを備えることが望ましい。
【0005】
【課題を解決するための手段】本発明の一態様による
と、改良されたコンピュータ・システムおよび方法が提
供される。
【0006】本発明の他の態様によると、クライアント
とバックエンド・システム内の構成要素の間の対話また
は通信のための改良されたコンピュータ・システムおよ
び方法が提供される。
【0007】本発明の他の態様によると、クライアント
とバックエンド・システム内の構成要素との間の対話の
ためのコマンドを含むコンピュータ・システムが提供さ
れる。このコマンドは、バックエンド・システムによっ
て変換される入力オブジェクトと、バックエンド・シス
テムによる変換後の入力オブジェクトを表す1つまたは
複数の出力オブジェクトと、クライアントが対話バック
エンド・システムの識別のための接続指定と、クライア
ントが対話するバックエンド・システム内の構成要素の
識別のための対話指定と、クライアントとバックエンド
・システムの構成要素との間の接続を行う通信オブジェ
クトとを含み、入力オブジェクトは対話指定と接続指定
に従ってバックエンド・システムの構成要素に供給さ
れ、1つまたは複数の出力オブジェクトは、バックエン
ド・システムの構成要素によって処理された後の変換済
み入力オブジェクトを受け取り、コマンドは、「実行」
メソッドによって駆動され、入力オブジェクトの処理中
にバックエンド・システムの構成要素が例外に遭遇しな
かったときにコマンドは成功イベントを通知し、入力オ
ブジェクトの処理中にバックエンド・システムの構成要
素が例外に遭遇するとコマンドは失敗イベントを通知す
る。
【0008】本発明の他の態様によると、コマンドがオ
ブジェクト指向クラスである上記のコンピュータ・シス
テムが提供される。
【0009】本発明の他の態様によると、入力オブジェ
クトおよび1つまたは複数の出力オブジェクトがそれぞ
れ、定義済みJavaフレームワーク内のレコード・ビ
ーンである上記のコンピュータ・システムが提供され
る。
【0010】本発明の他の態様によると、バックエンド
・システムとの対話フローを形成するナビゲータを含む
コンピュータ・システムであって、ナビゲータはサブコ
マンドとサブナビゲータを選択的に含むセットを含み、
セット内の各サブコマンドおよび各サブナビゲータの
「実行」メソッドが、ナビゲータの「実行」メソッドか
ら導き出されるナビゲータ内の内部イベントのうちの1
つのイベントか、またはサブコマンドおよびサブナビゲ
ータのセットのうちの選択された他の1つからの成功イ
ベントによってトリガされ、セット内のサブコマンドお
よびサブナビゲータの連続実行が、バックエンド・シス
テムとの対話フローを規定し、ナビゲータが「実行」メ
ソッドによって駆動され、セット内のサブコマンドおよ
びサブナビゲータの連続実行によって失敗イベントが通
知されないときにナビゲータが成功イベントを通知し、
セット内のサブコマンドおよびサブナビゲータの連続実
行のいずれか1つの実行によって失敗イベントが通知さ
れるとナビゲータが失敗イベントを通知し、サブコマン
ドがコマンドと同じ特性を有し、サブナビゲータがナビ
ゲータと同じ特性を有するコンピュータ・システムが提
供される。
【0011】本発明の他の態様によると、クライアント
とバックエンド・システム内の構成要素との間の対話の
ためのコマンド・クラスを含むオブジェクト指向コンピ
ュータ環境であって、コマンド・クラスは、バックエン
ド・システムのうちの選択された1つのバックエンド・
システムによって変換される入力オブジェクトと、バッ
クエンド・システムのうちの選択された1つのバックエ
ンド・システムによる変換後の入力オブジェクトを表す
1つまたは複数の出力オブジェクトと、バックエンド・
システムのうちの選択された1つのバックエンド・シス
テムの識別のための接続指定と、クライアントが対話す
るバックエンド・システムのうちの選択された1つのバ
ックエンド・システム内の構成要素のうちの選択された
1つの構成要素の識別のための対話指定と、クライアン
トとバックエンド・システムのうちの選択された1つの
バックエンド・システムの構成要素そのうちの選択され
た1つの構成要素との間の接続を行う通信オブジェクト
とを含み、入力オブジェクトは対話指定と接続指定とに
従ってバックエンド・システムのうちの選択された1つ
のバックエンド・システムの構成要素のうちの選択され
た1つの構成要素に供給され、1つまたは複数の出力オ
ブジェクトはバックエンド・システムのうちの選択され
たバックエンド・システムの構成要素のうちの選択され
た構成要素によって処理された後の変換済み入力オブジ
ェクトを受け取り、コマンド・クラスのインスタンスが
クライアントによって呼び出された「実行」メソッドに
よって駆動され、コマンドのインスタンスはバックエン
ド・システムのうちの選択された1つのバックエンド・
システムの構成要素のうちの選択された1つの構成要素
が例外に遭遇しなかったときに成功イベントを通知し、
入力オブジェクトの処理中にバックエンド・システムの
うちの選択された1つのバックエンド・システムの構成
要素のうちの選択された1つの構成要素が例外に遭遇す
るとコマンドは失敗イベントを通知する、オブジェクト
指向コンピュータ環境が提供される。
【0012】本発明の他の態様によると、環境がJav
aプログラミング言語環境であり、入力オブジェクトお
よび1つまたは複数の出力オブジェクトがそれぞれ、J
avaフレームワーク内のレコード・ビーンであり、上
述のナビゲータがクラスとして定義される上記のオブジ
ェクト指向コンピュータ環境が提供される。
【0013】本発明の利点には、異なる通信を使用する
異なるバックエンド・システムとの対話をサポートする
汎用ランタイムを提供することによる、問題の解決の実
現が含まれる。
【0014】本発明では、上述のシステムまたはプロセ
スを実行するようにプログラム・コードによってコード
化された媒体も提供される。
【0015】
【発明の実施の形態】図1を参照すると、好ましい実施
形態によるコマンドの構造がブロック図に示されてい
る。好ましい実施形態では、コマンドは、オブジェクト
指向プログラミング言語で定義されたクラスである。こ
の好ましい実施形態について、Javaプログラミング
言語に関して説明する。当業者なら、オブジェクト指向
構成をサポートする他のプログラミング言語も、本発明
の好ましい実施形態を実施するために使用可能であるこ
とがわかる。
【0016】図1のコマンド10は、バックエンド・シ
ステムにアクセスするために使用されるクラスである。
コマンド10は、ボックス12に示す入力プロパティ
(InPropertyボックスのセット)と、ボックス14に示
す出力プロパティを有する。入力プロパティ12は、入
力オブジェクト16に含まれ、同様に、出力プロパティ
14は出力オブジェクト18、または任意選択により、
図1の出力オブジェクト20によって表されている追加
の出力オブジェクトに含まれる。コマンド10は、「通
信」22というオブジェクトを含む。コマンド10に
は、オブジェクトConnectionSpec24およびInteractio
nSpec26も含まれる。コマンド10は、メソッド実行
28によって駆動され、メソッド実行28の実行によっ
て例外が生じる(unsuccessfulEvent32を通知する)
かまたは生じない(successfulEvent34を通知する)
かに応じて、successfulEvent30またはunsuccessfulE
vent32を通知する。
【0017】図1に示すように、バックエンド・システ
ムとの通信に関与する要素は、接続指定(図1にConnec
tionSpec24として図示)、対話指定(図1にInteract
ionSpec26として図示)、入力および出力レコード・
ビーン(図1に入力オブジェクト16および出力オブジ
ェクト18、20として図示)である。好ましい実施形
態のこのようなどのコマンド10でも、これらの要素が
必ず存在し、同じ論理を実施する。入力は通信によって
出力に変換される。このようにして、コマンド論理をど
のバックエンド・システムにも再使用することができ
る。
【0018】この好ましい実施形態によって、異なるバ
ックエンド・システムとの対話をサポートするランタイ
ムの実施態様を示す。好ましい実施形態のランタイム
は、対話をモデル化する汎用メソッドを提供し、しか
も、目的システムとその通信の異なる要件に対応するの
に十分な柔軟性がある。これによってさらに、そのよう
な対話の構成を自動化する高度なツールを作成すること
ができる。好ましい実施形態は異なるシステムにアクセ
スする一様な方法を備えるため、異なるバックエンドに
アクセスするための必要なツールの作成に伴うプログラ
マの労力を省く。好ましい実施形態の汎用パターンを使
用するアプリケーションおよびツールは、容易に再使用
可能である。
【0019】コマンド10は、バックエンド・システム
との単一の通信(または対話)を構築する基本構築ブロ
ックである。言い換えると、コマンド10はシステムと
の単一の対話をラップする。実行時、コマンドは入力デ
ータを受け取り、そのデータをコネクタ(図1のオブジ
ェクト「通信」22)を介してバックエンド・システム
に送り、バックエンド・システムによって返されたデー
タを出力として設定する。この記述レベルでは、コマン
ド10は多くのコンピュータ言語のプロシージャまたは
サブルーチンと機能を共用する。
【0020】しかし、コマンド10自体は、特定の構築
パターンに従う複合体である。コマンド10をバックエ
ンド・システムとの通信を可能にする際に価値あるもの
にするのは、この構築パターンである。
【0021】コマンド10の入力値は、入力オブジェク
ト16によって定義される。このような入力オブジェク
ト16の一例はJavaビーンである。ビーンとは、ク
ラスに相当するものであるが、視覚エディタによって編
集することができるJava言語の構築体である。コマ
ンド10の出力は出力オブジェクト18である。出力の
場合、候補として定義された複数の出力オブジェクト
(図1の例の出力オブジェクト18、20)がある可能
性がある。この場合も、Javaビーンを出力オブジェ
クトとして使用することができる。コマンドは、そのイ
ンタフェース内にオブジェクト全体を示すか、またはプ
ロパティ12、14によって例示されているように選択
されたオブジェクト・プロパティだけを示すことができ
る。
【0022】入力オブジェクトおよび出力オブジェクト
は異なる形式を有する。好ましい実施形態では、2つの
タイプの入力オブジェクトおよび出力オブジェクトを区
別することができる。入力オブジェクトまたは出力オブ
ジェクトの第1のタイプは、RecordJavaレコード・ビー
ンである。このタイプのビーンは、定義されたJava
フレームワークの一部であるIByteBufferインタフェー
スを実施する。第2のタイプの入力オブジェクトまたは
出力オブジェクトは、バックエンド・システムのコネク
タに固有のプロパティによって定義されるものである
(図1の通信22)。したがって、通信自体は、次の3
つのカテゴリに分類されると見なすことができる。すな
わち、RecordJavaレコード・ビーンをサポートするもの
と、コネクタ固有の入力オブジェクトおよび出力オブジ
ェクトとRecordJavaレコード・ビーンの両方をサポート
するものと、コネクタ固有の入力オブジェクトおよび出
力オブジェクトのみをサポートするものである。
【0023】コマンド10がバックエンド・システムと
通信する方法は、ConnectionSpec24とInteractionSpe
c26によって定義される。ConnectionSpec24は具体
的なコネクタ通信10のファクトリである。
【0024】ConnectionSpec24のプロパティは、コネ
クタの接続先のバックエンド・システムを定義する(た
とえばホスト名およびポート番号をConnectionSpec24
のプロパティとすることができる)。ConnectionSpec2
4は、システム間の通信に関するセッションを定義する
オブジェクトと見なすことができる。通信を定義する他
方のオブジェクトはInteractionSpec26である。この
オブジェクトは、すべての対話関係プロパティ(たとえ
ば通信22によって呼び出されるプログラムの名前はIn
teractionSpec26のプロパティとすることができる)
をもたらす。ConnectionSpec24は、セッション内の特
定の対話を定義するオブジェクトと見なすことができ
る。
【0025】コマンド実行を駆動するメソッドは「実
行」(図1の矢印28として示す)である。このメソッ
ドは以下のステップを含む。 1.ConnectionSpec24を受け取り、そこから通信をフ
ァクタリングし、 2.バックエンド・システムに通信10を接続し、 3.通信22を介して入力オブジェクト16のデータを
送り、 4.出力オブジェクト18(または任意選択により、出
力オブジェクト20で表す他の出力オブジェクト)のた
めのデータを受け取り、 5.例外が発生しない場合はexecutionSuccessfulイベ
ント(図1の矢印30で示す)を通知し、例外が発生し
た場合はexecutionUnsuccessfulイベント(矢印32)
を通知する。executionUnsuccessfulイベントの受領側
によって処理されない例外は再投入され、それによっ
て、実行メソッドのクライアントが捕えることができ
る。
【0026】上記からわかるように、コマンド10を使
用して異なるバックエンド・システムとの対話を作成す
ることができる。したがって、通信22の複雑さは、対
話相手のバックエンド・システムによって決まる。通信
22は単純なJavaクラスとするか、またはRPCま
たは通信インタフェースとすることができる。IBM共
通コネクタ・フレームワーク(Common Connector Frame
work)の通信インタフェースとすることができる。
【0027】前述のように、コマンド10はバックエン
ド・システムとの単一の対話をラップする。好ましい実
施形態によると、「ナビゲータ」と呼ばれる別のクラス
が設けられる。ナビゲータはバックエンド・システムと
の複数の対話をラップする。
【0028】図2は、ナビゲータ40の構造を示すブロ
ック図である。ナビゲータ40は作成済みコマンドであ
る。ナビゲータ40は、コマンドと同様にして外部オブ
ジェクトとインタフェースする。ナビゲータ40の構成
は、コマンドと、場合により、バックエンド・システム
との対話フローを形成するナビゲータとから成る。
【0029】図2では、コマンドCmd.1(42)、
Cmd.2(44)、Cmd.3(46)、およびNa
vi.1(48)とを有するナビゲータ40が図示され
ている。
【0030】実行すると、ナビゲータ40は入力値(In
Properties50)を入手し、その入力値をナビゲータを
構成するコマンドおよびナビゲータに供給する。次に、
図2の流れ線で示すように対話が次々に行われる。最後
の対話の後、個々のコマンド42、44、および46と
ナビゲータ48の出力値をナビゲータの出力値(OutPro
perties52)として使用することができる。図2に示
すように、Cmd.1(42)の実行メソッドは、ナビ
ゲータ40実行イベント(矢印54)によって開始され
る。Cmd.2(44)の実行メソッドは、Cmd.1
(42)からのsuccessfulEventによって開始され、ナ
ビゲータ40内の他のコマンドおよびナビゲータも同様
である。
【0031】ナビゲータがバックエンド・システムと通
信する方法は、任意選択により、構成内の各コマンドご
とに定義するのではなく、そのレベルの接続指定によっ
て定義することができる。接続指定は、ナビゲータが使
用する具体的なコネクタ通信(構成内のすべてのコマン
ドが使用する通信)のファクトリである。
【0032】コマンド42、44、または46あるいは
ナビゲータ48のうちの1つに例外が発生した場合、ナ
ビゲータ40は失敗実行状態になる。ナビゲータ40
は、executionUnsuccessfulイベント(矢印56)を通
知することによってこれを示す。executionUnsuccessfu
lイベントの受領側によって処理されない例外は再投入
され、それによって実行メソッドのクライアントが捕ら
えることができる。
【0033】上記のように、コマンド・クラスは、バッ
クエンド・システムとの対話を可能にするランタイムを
明確ではっきりした方式で定義する。コマンド・クラス
を使用して、定義する1つまたは複数のバックエンド・
システムとの対話フローを可能にするナビゲータ・クラ
スを作成することができる。
【0034】上記のコマンド・クラスとナビゲータ・ク
ラスは、視覚的プログラミング・システムに役立つ。こ
のため、Javaビーン(視覚プログラミングのために
設計されたクラス)の使用は、好ましい実施形態のクラ
スの作成の際に有利である。図2からわかるように、視
覚プログラミング環境は、コマンド・クラスおよびナビ
ゲータ・クラスによるプログラミングを比較的単純で効
率的にするような方式で、好ましい実施形態のオブジェ
クト間の関係を表すことができる。
【0035】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0036】(1)クライアントとバックエンド・シス
テム内の構成要素との間の対話のためのコマンドを含む
コンピュータ・システムであって、前記コマンドは、前
記バックエンド・システムによる変換のための入力オブ
ジェクトと、前記バックエンド・システムによる変換後
の前記入力オブジェクトを表す1つまたは複数の出力オ
ブジェクトと、前記クライアントの対話相手である前記
バックエンド・システムの識別のための接続指定と、前
記クライアントの対話相手である前記バックエンド・シ
ステム内の前記構成要素の識別のための対話指定と、前
記対話指定と前記接続指定とに従って前記入力オブジェ
クトが前記バックエンド・システムの前記構成要素に供
給され、前記バックエンド・システムの前記構成要素に
よる処理の後に前記1つまたは複数の出力オブジェクト
が変換された前記入力オブジェクトを受け取る、前記ク
ライアントと前記バックエンド・システムの前記構成要
素との間の接続を行う通信オブジェクトとを含み、前記
コマンドが実行メソッドによって駆動され、前記入力オ
ブジェクトの処理中に前記バックエンド・システムの前
記構成要素が例外に遭遇しないときに前記コマンドが成
功イベントを通知し、前記入力オブジェクトの処理中に
前記バックエンド・システムの前記構成要素が例外に遭
遇すると前記コマンドが失敗イベントを通知する、コン
ピュータ・システム。 (2)前記コマンドがオブジェクト指向クラスである、
上記(1)に記載のコンピュータ・システム。 (3)前記入力オブジェクトと前記1つまたは複数の出
力オブジェクトがそれぞれ、定義済みJavaフレーム
ワーク内のレコード・ビーンである、上記(2)に記載
のコンピュータ・システム。 (4)前記バックエンド・システムとの対話を形成する
ためのナビゲータをさらに含み、前記ナビゲータはサブ
コマンドとサブナビゲータを選択的に含むセットを含
み、前記セット内の各サブコマンドおよび各サブナビゲ
ータの実行メソッドが、前記ナビゲータの実行メソッド
から導き出されたナビゲータ内の内部イベントか、また
はサブコマンドおよびサブナビゲータの前記セットの他
の選択された1つからの成功イベントによってトリガさ
れ、前記セット内の前記サブコマンドおよび前記サブナ
ビゲータの連続実行が前記バックエンド・システムとの
対話フローを規定し、前記ナビゲータが前記実行メソッ
ドによって駆動され、前記ナビゲータが、前記セット内
の前記サブコマンドおよび前記サブナビゲータの連続実
行によって失敗イベントが通知されないときに成功イベ
ントを通知し、前記ナビゲータが、前記セット内の前記
サブコマンドおよび前記サブナビゲータの連続実行のう
ちのいずれか1つの実行によって失敗イベントが通知さ
れると失敗イベントを通知し、サブコマンドがコマンド
と同じ特性を有し、サブナビゲータがナビゲータと同じ
特性を有する、上記(1)に記載のコンピュータ・シス
テム。 (5)クライアントとバックエンド・システム内の構成
要素との間の対話のためのコマンド・クラスを含むオブ
ジェクト指向コンピュータ・システムであって、前記コ
マンド・クラスは、前記バックエンド・システムのうち
の選択された1つの前記バックエンド・システムによる
変換のための入力オブジェクトと、前記バックエンド・
システムのうちの選択された1つのバックエンド・シス
テムによる変換後の前記入力オブジェクトを表す1つま
たは複数の出力オブジェクトと、前記クライアントの対
話相手である前記バックエンド・システムのうちの選択
された1つの前記バックエンド・システムの識別のため
の接続指定と、前記クライアントの対話相手である前記
バックエンド・システムのうちの選択された1つの前記
バックエンド・システム内の前記構成要素のうちの選択
された1つの構成要素の識別のための対話指定と、前記
対話指定および前記接続指定に従って前記入力オブジェ
クトが前記バックエンド・システムのうちの選択された
1つの前記バックエンド・システムの前記構成要素のう
ちの選択された1つの前記構成要素に供給され、前記バ
ックエンド・システムのうちの選択された前記バックエ
ンド・システムの前記構成要素のうちの選択された1つ
の前記構成要素による処理の後に前記1つまたは複数の
出力オブジェクトが変換された前記入力オブジェクトを
受け取る、前記クライアントと前記バックエンド・シス
テムのうちの選択された1つの前記バックエンド・シス
テムの前記構成要素のうちの選択された1つの前記構成
要素との間の接続を行う通信オブジェクトとを含み、前
記コマンド・クラスのインスタンスが前記クライアント
によって呼び出された実行メソッドによって駆動され、
前記コマンドの前記インスタンスが、前記入力オブジェ
クトの処理中に前記バックエンド・システムのうちの選
択された1つの前記バックエンド・システムの前記構成
要素のうちの選択された1つの前記構成要素が例外に遭
遇しないときに成功イベントを通知し、前記コマンド
が、前記入力オブジェクトの処理中に前記バックエンド
・システムのうちの選択された1つの前記バックエンド
・システムの前記構成要素のうちの1つの選択された1
つの構成要素が例外に遭遇すると失敗イベントを通知す
る、オブジェクト指向コンピュータ・システム。 (6)前記システムがJavaプログラミング言語シス
テムであり、前記入力オブジェクトおよび前記1つまた
は複数の出力オブジェクトがそれぞれ、定義済みJav
aフレームワーク内のレコード・ビーンである、上記
(5)に記載のオブジェクト指向コンピュータ・システ
ム。 (7)バックエンド・システムとの対話フローを形成す
るナビゲータ・クラスをさらに含み、前記ナビゲータは
サブコマンドとサブナビゲータを選択的に含むセットを
含み、前記セット内の各サブコマンドおよび各サブナビ
ゲータの実行メソッドが、前記ナビゲータの実行メソッ
ドから導き出されたナビゲータ内の内部イベントか、ま
たはサブコマンドおよびサブナビゲータの前記セットの
他の選択された1つからの成功イベントによってトリガ
され、前記セット内の前記サブコマンドおよび前記サブ
ナビゲータの連続実行が前記バックエンド・システムと
の対話フローを規定し、前記ナビゲータが実行メソッド
によって駆動され、前記ナビゲータが、前記セット内の
前記サブコマンドおよび前記サブナビゲータの連続実行
によって失敗イベントが通知されないときに成功イベン
トを通知し、前記ナビゲータが、前記セット内の前記サ
ブコマンドおよび前記サブナビゲータの連続実行のうち
のいずれか1つの実行によって失敗イベントが通知され
ると失敗イベントを通知し、サブコマンドがコマンドと
同じ特性を有し、サブナビゲータがナビゲータと同じ特
性を有する、上記(5)に記載のオブジェクト指向コン
ピュータ・システム。 (8)クライアントとバックエンド・システム内の構成
要素との間の対話のための方法であって、実行メソッド
によってコマンドを駆動し、前記コマンドから前記クラ
イアントと前記バックエンド・システムとの間の対話の
成功実行または失敗実行を通知するイベントを受け取る
ステップを含み、前記実行メソッドは、接続指定と対話
指定から通信をファクタリングするステップであって、
前記接続指定は前記クライアントが対話する前記バック
エンド・システムを識別するオブジェクトであり、前記
対話指定は前記通信の対話関係プロパティを識別するオ
ブジェクトであるステップと、ファクタリングされた前
記通信を使用して前記クライアントを前記バックエンド
・システムと接続するステップと、ファクタリングされ
た前記通信を介して入力オブジェクトのデータを送るス
テップと、ファクタリングされた前記通信を介して1つ
または複数の出力オブジェクトのデータを受け取るステ
ップと、例外が発生しない場合は実行成功イベントを通
知し、例外が発生した場合は実行失敗イベントを通知す
るステップとを含む方法。 (9)上記(8)の方法中にコンピュータでの実行にお
いて使用するための命令を記憶するコンピュータ可読メ
モリ。
【図面の簡単な説明】
【図1】本発明の好ましい実施形態によるコマンドのア
ーキテクチャを示すブロック図である。
【図2】本発明の好ましい実施形態によるナビゲータの
アーキテクチャを示すブロック図である。
【符号の説明】
10 コマンド 12 入力プロパティ 14 出力プロパティ 16 入力オブジェクト 18 出力オブジェクト 20 出力オブジェクト 22 通信オブジェクト 24 接続指定 26 対話指定 28 実行メソッド 30 成功イベント 32 失敗イベント 40 ナビゲータ 42 コマンド 44 コマンド 46 コマンド 48 ナビゲータ 50 入力プロパティ 52 出力プロパティ 54 実行メソッド 56 失敗イベント 58 成功イベント
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ピョートル・プルジブイルスキー カナダ国 エム4エイチ1エル6 オンタ リオ州トロント ソーンクリフ・パーク・ ドライブ 85 アパートメント704 (72)発明者 ザーシャ・バウマイスター ドイツ 70469 シュツットガルト トリ ープヴェーク 105 (72)発明者 ミヒャエル・バイジーゲル カナダ国 エム4ピー1エックス7 オン タリオ州トロント エルビナ・ガーデンズ 35

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】クライアントとバックエンド・システム内
    の構成要素との間の対話のためのコマンドを含むコンピ
    ュータ・システムであって、前記コマンドは、 前記バックエンド・システムによる変換のための入力オ
    ブジェクトと、 前記バックエンド・システムによる変換後の前記入力オ
    ブジェクトを表す1つまたは複数の出力オブジェクト
    と、 前記クライアントの対話相手である前記バックエンド・
    システムの識別のための接続指定と、 前記クライアントの対話相手である前記バックエンド・
    システム内の前記構成要素の識別のための対話指定と、 前記対話指定と前記接続指定とに従って前記入力オブジ
    ェクトが前記バックエンド・システムの前記構成要素に
    供給され、前記バックエンド・システムの前記構成要素
    による処理の後に前記1つまたは複数の出力オブジェク
    トが変換された前記入力オブジェクトを受け取る、前記
    クライアントと前記バックエンド・システムの前記構成
    要素との間の接続を行う通信オブジェクトとを含み、 前記コマンドが実行メソッドによって駆動され、前記入
    力オブジェクトの処理中に前記バックエンド・システム
    の前記構成要素が例外に遭遇しないときに前記コマンド
    が成功イベントを通知し、前記入力オブジェクトの処理
    中に前記バックエンド・システムの前記構成要素が例外
    に遭遇すると前記コマンドが失敗イベントを通知する、
    コンピュータ・システム。
  2. 【請求項2】前記コマンドがオブジェクト指向クラスで
    ある、請求項1に記載のコンピュータ・システム。
  3. 【請求項3】前記入力オブジェクトと前記1つまたは複
    数の出力オブジェクトがそれぞれ、定義済みJavaフ
    レームワーク内のレコード・ビーンである、請求項2に
    記載のコンピュータ・システム。
  4. 【請求項4】前記バックエンド・システムとの対話を形
    成するためのナビゲータをさらに含み、 前記ナビゲータはサブコマンドとサブナビゲータを選択
    的に含むセットを含み、前記セット内の各サブコマンド
    および各サブナビゲータの実行メソッドが、 前記ナビゲータの実行メソッドから導き出されたナビゲ
    ータ内の内部イベントか、またはサブコマンドおよびサ
    ブナビゲータの前記セットの他の選択された1つからの
    成功イベントによってトリガされ、 前記セット内の前記サブコマンドおよび前記サブナビゲ
    ータの連続実行が前記バックエンド・システムとの対話
    フローを規定し、 前記ナビゲータが前記実行メソッドによって駆動され、
    前記ナビゲータが、前記セット内の前記サブコマンドお
    よび前記サブナビゲータの連続実行によって失敗イベン
    トが通知されないときに成功イベントを通知し、前記ナ
    ビゲータが、前記セット内の前記サブコマンドおよび前
    記サブナビゲータの連続実行のうちのいずれか1つの実
    行によって失敗イベントが通知されると失敗イベントを
    通知し、 サブコマンドがコマンドと同じ特性を有し、サブナビゲ
    ータがナビゲータと同じ特性を有する、請求項1に記載
    のコンピュータ・システム。
  5. 【請求項5】クライアントとバックエンド・システム内
    の構成要素との間の対話のためのコマンド・クラスを含
    むオブジェクト指向コンピュータ・システムであって、
    前記コマンド・クラスは、 前記バックエンド・システムのうちの選択された1つの
    前記バックエンド・システムによる変換のための入力オ
    ブジェクトと、 前記バックエンド・システムのうちの選択された1つの
    バックエンド・システムによる変換後の前記入力オブジ
    ェクトを表す1つまたは複数の出力オブジェクトと、 前記クライアントの対話相手である前記バックエンド・
    システムのうちの選択された1つの前記バックエンド・
    システムの識別のための接続指定と、 前記クライアントの対話相手である前記バックエンド・
    システムのうちの選択された1つの前記バックエンド・
    システム内の前記構成要素のうちの選択された1つの構
    成要素の識別のための対話指定と、 前記対話指定および前記接続指定に従って前記入力オブ
    ジェクトが前記バックエンド・システムのうちの選択さ
    れた1つの前記バックエンド・システムの前記構成要素
    のうちの選択された1つの前記構成要素に供給され、前
    記バックエンド・システムのうちの選択された前記バッ
    クエンド・システムの前記構成要素のうちの選択された
    1つの前記構成要素による処理の後に前記1つまたは複
    数の出力オブジェクトが変換された前記入力オブジェク
    トを受け取る、前記クライアントと前記バックエンド・
    システムのうちの選択された1つの前記バックエンド・
    システムの前記構成要素のうちの選択された1つの前記
    構成要素との間の接続を行う通信オブジェクトとを含
    み、 前記コマンド・クラスのインスタンスが前記クライアン
    トによって呼び出された実行メソッドによって駆動さ
    れ、 前記コマンドの前記インスタンスが、前記入力オブジェ
    クトの処理中に前記バックエンド・システムのうちの選
    択された1つの前記バックエンド・システムの前記構成
    要素のうちの選択された1つの前記構成要素が例外に遭
    遇しないときに成功イベントを通知し、前記コマンド
    が、前記入力オブジェクトの処理中に前記バックエンド
    ・システムのうちの選択された1つの前記バックエンド
    ・システムの前記構成要素のうちの1つの選択された1
    つの構成要素が例外に遭遇すると失敗イベントを通知す
    る、オブジェクト指向コンピュータ・システム。
  6. 【請求項6】前記システムがJavaプログラミング言
    語システムであり、前記入力オブジェクトおよび前記1
    つまたは複数の出力オブジェクトがそれぞれ、定義済み
    Javaフレームワーク内のレコード・ビーンである、
    請求項5に記載のオブジェクト指向コンピュータ・シス
    テム。
  7. 【請求項7】バックエンド・システムとの対話フローを
    形成するナビゲータ・クラスをさらに含み、 前記ナビゲータはサブコマンドとサブナビゲータを選択
    的に含むセットを含み、前記セット内の各サブコマンド
    および各サブナビゲータの実行メソッドが、 前記ナビゲータの実行メソッドから導き出されたナビゲ
    ータ内の内部イベントか、またはサブコマンドおよびサ
    ブナビゲータの前記セットの他の選択された1つからの
    成功イベントによってトリガされ、 前記セット内の前記サブコマンドおよび前記サブナビゲ
    ータの連続実行が前記バックエンド・システムとの対話
    フローを規定し、 前記ナビゲータが実行メソッドによって駆動され、前記
    ナビゲータが、前記セット内の前記サブコマンドおよび
    前記サブナビゲータの連続実行によって失敗イベントが
    通知されないときに成功イベントを通知し、前記ナビゲ
    ータが、前記セット内の前記サブコマンドおよび前記サ
    ブナビゲータの連続実行のうちのいずれか1つの実行に
    よって失敗イベントが通知されると失敗イベントを通知
    し、 サブコマンドがコマンドと同じ特性を有し、サブナビゲ
    ータがナビゲータと同じ特性を有する、請求項5に記載
    のオブジェクト指向コンピュータ・システム。
  8. 【請求項8】クライアントとバックエンド・システム内
    の構成要素との間の対話のための方法であって、 実行メソッドによってコマンドを駆動し、前記コマンド
    から前記クライアントと前記バックエンド・システムと
    の間の対話の成功実行または失敗実行を通知するイベン
    トを受け取るステップを含み、 前記実行メソッドは、 接続指定と対話指定から通信をファクタリングするステ
    ップであって、前記接続指定は前記クライアントが対話
    する前記バックエンド・システムを識別するオブジェク
    トであり、前記対話指定は前記通信の対話関係プロパテ
    ィを識別するオブジェクトであるステップと、 ファクタリングされた前記通信を使用して前記クライア
    ントを前記バックエンド・システムと接続するステップ
    と、 ファクタリングされた前記通信を介して入力オブジェク
    トのデータを送るステップと、 ファクタリングされた前記通信を介して1つまたは複数
    の出力オブジェクトのデータを受け取るステップと、 例外が発生しない場合は実行成功イベントを通知し、例
    外が発生した場合は実行失敗イベントを通知するステッ
    プとを含む方法。
  9. 【請求項9】請求項8の方法中にコンピュータでの実行
    において使用するための命令を記憶するコンピュータ可
    読メモリ。
JP11230212A 1998-09-24 1999-08-17 コンピュ―タ・システムおよび対話のための方法 Pending JP2000137614A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CA002248404A CA2248404C (en) 1998-09-24 1998-09-24 Patterns for modeling computer component interactions
CA2248404 1998-09-24

Publications (1)

Publication Number Publication Date
JP2000137614A true JP2000137614A (ja) 2000-05-16

Family

ID=4162848

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11230212A Pending JP2000137614A (ja) 1998-09-24 1999-08-17 コンピュ―タ・システムおよび対話のための方法

Country Status (7)

Country Link
US (1) US6484310B1 (ja)
JP (1) JP2000137614A (ja)
KR (1) KR100314775B1 (ja)
CN (1) CN1157670C (ja)
CA (1) CA2248404C (ja)
GB (1) GB2345357A (ja)
IL (1) IL130926A (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6993743B2 (en) * 2000-06-03 2006-01-31 Sun Microsystems, Inc. Method and apparatus for developing enterprise applications using design patterns
US7149752B2 (en) 2002-12-03 2006-12-12 Jp Morgan Chase Bank Method for simplifying databinding in application programs
US7085759B2 (en) 2002-12-06 2006-08-01 Jpmorgan Chase Bank System and method for communicating data to a process
US8032439B2 (en) 2003-01-07 2011-10-04 Jpmorgan Chase Bank, N.A. System and method for process scheduling
US7379998B2 (en) 2003-03-31 2008-05-27 Jp Morgan Chase Bank System and method for multi-platform queue queries
US7366722B2 (en) 2003-05-15 2008-04-29 Jp Morgan Chase Bank System and method for specifying application services and distributing them across multiple processors using XML
US8095659B2 (en) 2003-05-16 2012-01-10 Jp Morgan Chase Bank Service interface
US8051144B2 (en) * 2003-07-29 2011-11-01 At&T Intellectual Property I, L.P. J2EE enterprise information system (EIS) common object request broker architecture (CORBA) connector
US9734222B1 (en) 2004-04-06 2017-08-15 Jpmorgan Chase Bank, N.A. Methods and systems for using script files to obtain, format and transport data
GB2429371B (en) 2004-04-26 2008-03-26 J P Morgan Chase Bank System and method for routing messages
US7392471B1 (en) 2004-07-28 2008-06-24 Jp Morgan Chase Bank System and method for comparing extensible markup language (XML) documents
US7499933B1 (en) 2005-11-12 2009-03-03 Jpmorgan Chase Bank, N.A. System and method for managing enterprise application configuration
US7610172B2 (en) 2006-06-16 2009-10-27 Jpmorgan Chase Bank, N.A. Method and system for monitoring non-occurring events
US8910112B2 (en) * 2008-07-30 2014-12-09 Sap Ag Extended enterprise connector framework using direct web remoting (DWR)
US8972930B2 (en) * 2010-06-04 2015-03-03 Microsoft Corporation Generating text manipulation programs using input-output examples
US9613115B2 (en) 2010-07-12 2017-04-04 Microsoft Technology Licensing, Llc Generating programs based on input-output examples using converter modules
US9552335B2 (en) 2012-06-04 2017-01-24 Microsoft Technology Licensing, Llc Expedited techniques for generating string manipulation programs
US11256710B2 (en) 2016-10-20 2022-02-22 Microsoft Technology Licensing, Llc String transformation sub-program suggestion
US11620304B2 (en) 2016-10-20 2023-04-04 Microsoft Technology Licensing, Llc Example management for string transformation
US10846298B2 (en) 2016-10-28 2020-11-24 Microsoft Technology Licensing, Llc Record profiling for dataset sampling
US10671353B2 (en) 2018-01-31 2020-06-02 Microsoft Technology Licensing, Llc Programming-by-example using disjunctive programs
KR102247247B1 (ko) * 2019-06-05 2021-05-03 주식회사 티맥스티베로 데이터베이스 관리 방법

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5568616A (en) * 1993-09-14 1996-10-22 International Business Machines Corporation System and method for dynamic scheduling of 3D graphics rendering using virtual packet length reduction
WO1996017306A2 (en) * 1994-11-21 1996-06-06 Oracle Corporation Media server
US6233543B1 (en) * 1996-04-01 2001-05-15 Openconnect Systems Incorporated Server and terminal emulator for persistent connection to a legacy host system with printer emulation
US6179489B1 (en) * 1997-04-04 2001-01-30 Texas Instruments Incorporated Devices, methods, systems and software products for coordination of computer main microprocessor and second microprocessor coupled thereto
US6272556B1 (en) * 1996-07-01 2001-08-07 Sun Microsystems, Inc. Object-oriented system, method and article of manufacture for migrating a client-server application (#5)
US6038562A (en) * 1996-09-05 2000-03-14 International Business Machines Corporation Interface to support state-dependent web applications accessing a relational database
US6044218A (en) * 1997-01-31 2000-03-28 Sun Microsystems, Inc. System, method and article of manufacture for creating a live application or applet development environment
US6158044A (en) * 1997-05-21 2000-12-05 Epropose, Inc. Proposal based architecture system
US6119126A (en) * 1998-05-29 2000-09-12 Oracle Corporation Object-relational query builder which determines existence of structures from information loaded from the server and cached locally on the client computing system

Also Published As

Publication number Publication date
GB2345357A (en) 2000-07-05
US6484310B1 (en) 2002-11-19
CN1157670C (zh) 2004-07-14
KR20000022724A (ko) 2000-04-25
CA2248404A1 (en) 2000-03-24
IL130926A (en) 2003-12-10
GB9921268D0 (en) 1999-11-10
CA2248404C (en) 2002-06-25
CN1249471A (zh) 2000-04-05
IL130926A0 (en) 2001-01-28
KR100314775B1 (ko) 2001-11-23

Similar Documents

Publication Publication Date Title
JP2000137614A (ja) コンピュ―タ・システムおよび対話のための方法
US7647561B2 (en) System, method and computer program product for application development using a visual paradigm to combine existing data and applications
US6243862B1 (en) Methods and apparatus for testing components of a distributed transaction processing system
EP1236102B1 (en) Object property meta model emulator for legacy data structures
CN100545851C (zh) 使用命令行环境的远程系统管理
US6966050B2 (en) Software building support system
US5327559A (en) Remote and batch processing in an object oriented programming system
US6421822B1 (en) Graphical user interface for developing test cases using a test object library
CN100428149C (zh) 用于从同步接口和方法生成异步接口和方法的系统及方法
US7979525B2 (en) Method and apparatus for configuring and modeling server information in an enterprise tooling environment
US7779036B2 (en) Integration functionality for a test tool for application programming interfaces
US7971145B2 (en) Systems and methods for adapting service interface behaviors
EP1873706A1 (en) Systems and methods for integrating services
US20040168155A1 (en) Flow debugging software and method
WO2004029797A2 (en) Enterprise scoped software factory
US7707158B2 (en) Method and computer program product for enabling dynamic and adaptive business processes through an ontological data model
US20110137820A1 (en) Graphical model-based debugging for business processes
CN113961332A (zh) 一种工作流引擎实现的方法、装置、电子设备及存储介质
Ning et al. An architecture-driven, business-specific, and component-based approach to software engineering
US8539496B1 (en) Method and apparatus for configuring network systems implementing diverse platforms to perform business tasks
JP4358268B2 (ja) Webアプリケーション実行システム
JP4231087B2 (ja) Webページ画面表示システム及びWebページ画面表示方法
US20060221964A1 (en) Data relay method and data relay apparatus
US20020073397A1 (en) Component development supporting system
KR102679305B1 (ko) 외부 시스템들 간 연계 흐름을 제공하는 흐름 관리 시스템 및 연계 흐름 관리 방법

Legal Events

Date Code Title Description
RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20070306