JP4876032B2 - Soaアーキテクチャのシステム設計支援方法およびsoaアーキテクチャのシステム設計支援装置 - Google Patents

Soaアーキテクチャのシステム設計支援方法およびsoaアーキテクチャのシステム設計支援装置 Download PDF

Info

Publication number
JP4876032B2
JP4876032B2 JP2007167590A JP2007167590A JP4876032B2 JP 4876032 B2 JP4876032 B2 JP 4876032B2 JP 2007167590 A JP2007167590 A JP 2007167590A JP 2007167590 A JP2007167590 A JP 2007167590A JP 4876032 B2 JP4876032 B2 JP 4876032B2
Authority
JP
Japan
Prior art keywords
service
variable
business process
macro
macro service
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2007167590A
Other languages
English (en)
Other versions
JP2009009207A (ja
Inventor
大輔 宮本
佳史 里
規生 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2007167590A priority Critical patent/JP4876032B2/ja
Publication of JP2009009207A publication Critical patent/JP2009009207A/ja
Application granted granted Critical
Publication of JP4876032B2 publication Critical patent/JP4876032B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、Webサービスの設計装置および方法に関するものであり、特に設計しようとしているビジネスプロセスのシステム構成要素の詳細度(以下「粒度」と呼ぶ)と、ビジネスプロセスの構成要素に割り当てるサービスの粒度とが異なる場合に、ビジネスプロセスの粒度のサービスを用意することで、ビジネスプロセスの設計者の設計作業を容易にするSOAアーキテクチャのシステム設計支援方法およびSOAアーキテクチャのシステム設計支援装置に関する。
ビジネスプロセスの構成要素に対してサービスを割り当てる際には、そのサービスが提供する機能情報/非機能情報を考慮することになるが、本発明で使用しているサービスの機能情報とは、「プログラムの動きそのものに関する項目」を意味し、非機能情報とは、「プログラムの動きに関する性質を表す項目(応答時間等)」を意味する。
コンピュータシステムの設計においては、高度な技術を要するため、設計者の負担は大きい。そのため、その負担を軽減するために、容易に設計を行えるための設計ツールが要求されている。Webサービスを利用したSOAアーキテクチャのシステム構築についても、既に数社から設計支援ツールが販売されているが、実際の現場での設計に利用するに当たってはまだ解決すべき課題が少なくなく、そうした課題を克服した設計支援ツールの開発が待たれている状況にある。
例えば、設計は扱う対象の粒度/抽象度によっていくつかのレベルに分けることができる。ここではそれを単純化して、より粒度の粗い「業務レベルの設計」と、個々の計算機システムのアプリケーションインタフェースの関数の知識が必要になるような、より粒度の細かい「実装レベルの設計」の2つのレベルがあるものとして、図17を用いて課題を例示する。図17は現在のSOAシステム設計手段が抱えている課題を説明するための説明図である。
業務レベルのビジネスプロセスの設計者は、実装レベルの関数呼び出しまで考慮したくなく、あくまでも業務レベルでの議論を行いたい。この対象領域が図17の301である。これに対して、世の中に多く存在するのは、既存の計算機システムをそのままSOAサービス化した実装レベルのサービスである(図17の302)。
このように、業務レベルの設計者が扱いたいレベルと、実際にサービスが用意されているレベルとの間に乖離が生じており、業務レベルのビジネスプロセスに実装レベルのサービスを割り当てることはできない。このような乖離を解決していくことが、SOAアーキテクチャに則ったシステムを構築していく上での重要な課題となっている。
この課題を解決するために、従来、例えば、特開平11−316780号公報(特許文献1)に開示されているような、階層化されたビジネスプロセス(BP)定義において、サブBPを上位のメインBPから独立させることによって体系的で理解の容易なBP定義を行い、そのメンテナンス性を向上させる階層化されたビジネスプロセス定義を有するワークフローシステムがあった。
特開平11−316780号公報
しかしながら、特許文献1が開示している方法を用いて、上述した「ビジネスプロセスとサービス間の粒度の乖離」を解決しようとすると、図18に示すような形になる。図18は現在のSOAシステム設計手段が抱えている課題を、特許文献1の手法を適用して解決を図る場合の概要を示す図である。
すなわち、業務レベルのビジネスプロセスの構成要素(例:図18の401)を、実装レベルの粒度の細かいビジネスプロセス(例:図18の402)として展開し、その実装レベルのビジネスプロセスの構成要素に対して実装レベルのサービスを割り当てる(図18の403)ことにより、完結したSOAモデルを構築しようとする方法である。
しかし、この解決方法には以下のような問題点があった。
・SOAモデルがビジネスプロセス+サービスの組合せとして完結するのはサービスが用意されている実装レベルのみであり、業務レベルで閉じた議論ができない。
・既存のBPEL(”Business Process Execution Language for Web Services” の略で、複数のWebサービスを組合せたビジネスプロセスを定義するためのXMLベースの言語仕様)+WSDL(”Web Services Description Language”の略で、Webサービスを記述するためのXMLをベースの言語仕様)対応ツールを使って取り扱えるレベルが実装レベルに限定されるため、業務レベルの設計者が動作環境やシミュレーションを行ったり、トライ&エラーで設計を進めたりするには、実装レベルの知識を持つことを強要される。
よって、特許文献1では、より粒度の粗いモデルを扱う業務レベルの設計者の要望を満たす形で課題を解決することができないという問題があった。
そこで、本発明の目的は、SOAシステム設計時に、サービスが用意されていない粒度(システム構成要素の詳細度)においてもビジネスプロセス+サービスの形でSOAシステム設計が完結するように、細かい粒度におけるビジネスプロセスとサービスの組合せから、粒度の粗い仮想的なサービスである「マクロサービス」を生成することができるSOAアーキテクチャのシステム設計支援方法およびSOAアーキテクチャのシステム設計支援装置を提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
本発明によるSOAアーキテクチャのシステム設計支援方法は、ビジネスプロセスを構築し、その構成要素にサービスを割り当てるSOAアーキテクチャのシステム設計支援方法であって、情報処理装置上で処理手段を実行し、処理手段により、細かいシステム構成要素の詳細度におけるサービス割当済みのビジネスプロセスのサブセットから、システム構成要素の詳細度の粗い仮想的なサービスであるマクロサービスを生成するものである。
また、本発明によるSOAアーキテクチャのシステム設計支援装置は、ビジネスプロセスを構築し、その構成要素にサービスを割り当てるSOAアーキテクチャのシステム設計支援装置であって、処理手段が格納される主記憶装置と、主記憶装置に格納された処理手段を実行する中央演算処理装置とを備え、中央演算処理装置は、処理手段を実行し、細かいシステム構成要素の詳細度におけるサービス割当済みのビジネスプロセスのサブセットから、システム構成要素の詳細度の粗い仮想的なサービスであるマクロサービスを生成するものである。
本発明によれば、SOAシステム設計時に、サービスが用意されていない粒度(システム構成要素の詳細度)においてもビジネスプロセス+サービスの形でSOAシステム設計が完結するように、細かい粒度におけるビジネスプロセスとサービスの組合せから、粒度の粗い仮想的なサービスである「マクロサービス」を生成することができる。
まず、本発明の概要について説明する。
本発明は、特定の粒度においてビジネスプロセスを構築する手段[手段1]と、特定の粒度において非機能情報を持つサービスに関する情報を蓄積する手段[手段2]と、特定の粒度においてサービスをビジネスプロセスの構成要素に割り当てる手段[手段3]と、サービスを割り当てた複数のビジネスプロセスの構成要素の間で、サービスとやりとりする変数間の変換を行う手段[手段4]と、より細かい粒度におけるサービス割当済みのビジネスプロセスのサブセットから、より粗い粒度の粗い仮想的なサービスである「マクロサービス」を生成する手段[手段5]とを具備する。
前記[手段5]は、「応答時間」等の非機能情報を持つサービスが割り当てられた構成要素(以下「アクティビティ」と呼ぶ)の集合であるビジネスプロセスのサブセットに対して、BPEL形式で表現されるビジネスプロセスのサブセットからWSDL形式で表現されるマクロサービスを生成するビジネスプロセス解析/マクロサービス生成手段[手段5−A]と、サブセットを構成する個々のアクティビティの非機能情報(例えば、個々のアクティビティに割り当てられたサービスの応答時間)からサブセット全体の非機能情報(例えば、サブセット全体としての応答時間)を算出するためのシミュレート手段[手段5−B]を具備する。
これらの手段を具備することにより、上述したような「より詳細な粒度smallにおけるサービス群と、より粗い粒度largeのビジネスプロセスとの乖離の問題」を以下のようにして解決できる。
[Step1]まず、粒度largeのビジネスプロセスを[手段1]により構成する。
[Step2]前記Step1のビジネスプロセスを基に、実際にサービスが存在している粒度smallのビジネスプロセスを生成する。このとき、粒度largeの各アクティビティは、粒度smallのビジネスプロセスのサブセットと1:1で対応する。
[Step3][手段4]を用いて、[手段3]に蓄積されている粒度smallのサービスを上記Step2で生成した粒度smallのビジネスプロセスのアクティビティに割り当てる。このとき、サービスが保持していた非機能情報が、割当先のアクティビティに引き継がれる。
[Step4]手段[5−A]を用いて、粒度smallのビジネスプロセスの各サブセットを表現するBPELから、粒度largeのマクロサービスのWSDLを生成する。さらに、手段[5−B]を用いてサブセットを構成する個々の非機能情報からサブセット全体の非機能情報をシミュレートにより算出し、これをマクロサービスの非機能情報とする(このとき、粒度smallのビジネスプロセスにおける各サブセットは、粒度largeにおける各マクロサービスと1:1で対応する)。そして、生成したマクロサービスを粒度largeのサービス情報蓄積手段[手段3]に登録する。
[Step5]上記Step4で生成し、粒度largeのサービス情報蓄積手段[手段3]に蓄積されたマクロサービスを、[手段1]によって粒度largeのビジネスプロセスの各アクティビティに割り当てる。
これにより、より粗い粒度である粒度largeのサービスを用意することができるため、粒度largeにおいてビジネスプロセスとサービスが完備することになる。
ここで、なぜ「マクロサービス」を生成する際に、単に粒度smallのサービスをグルーピングするだけでは不十分で、粒度smallのビジネスプロセスからマクロサービスを生成する必要があるのかについて説明する。これは、以下の2つの理由による。
[理由1]サービスの入出力を表す変数の名称は、一般にサービスによって異なりうる。それを、「サービスPの出力変数VpとサービスQの入力変数Vqは実は同じものだから、Vpの値をVqに代入する」というように変数間を関連付けるのは、BPEL+WSDLを用いるSOAの分野ではビジネスプロセスを表現するBPELにおいて行う。複数のサービスを連携させる際に変数間を関連付けるにはビジネスプロセスが必要であり、サービスを表現するWSDLをグループ化するだけではその関連付けを実現できない。
[理由2]粒度largeのマクロサービス全体としての非機能情報)(例えばマクロサービス自体の「応答時間」等)は、粒度smallのサービスがどのような順番で呼び出されるのか、またどのような条件分岐/並行処理が存在するのか等、粒度smallのビジネスプロセスの処理フローに依存する。そのため、粒度smallのサービス群のみからではマクロサービスの非機能情報は導き出せない。
以上の理由により、マクロサービスを生成するには、単に粒度smallのサービスをグルーピングするだけでは不十分で、粒度smallのビジネスプロセスからマクロサービスを生成する必要がある。
次に、図1により、本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置の構成について説明する。図1は本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置の構成を示す構成図である。
図1において、情報処理装置などにより構成されるSOAアーキテクチャのシステム設計支援装置100は、中央演算処理装置(CPU)101、キーボード102、ディスプレイ103、ポインティングデバイス104、主記憶装置(メモリ)105、磁気ディスク装置106、およびこれらを結ぶバス107から構成される。
磁気ディスク装置106は2次記憶装置の1つであり、ビジネスプロセス設計情報リポジトリ120やサービス情報リポジトリ121が格納される。磁気ディスク装置106は、通信回線(図1には示していない)等で接続された他の装置と接続するような構成をとってもかまわない。
主記憶装置105には、制御プログラム110、ビジネスプロセス構築プログラム111、データ関連付けプログラム112、ビジネスプロセス解析/マクロサービス生成手段であるビジネスプロセス解析/マクロサービス生成プログラム113およびシミュレート手段であるシミュレートプログラム114が格納され、これらの各プログラムにより、処理手段を構成している。以上の各プログラムは磁気ディスク装置106や、フロッピー(登録商標)ディスク等のコンピュータで読み書きできる記憶媒体に格納することもできる。
制御プログラム110は、キーボード102やポインティングデバイス104からのユーザ指示や、他のプログラムからの関数呼び出し等を受け起動し、ビジネスプロセス構築プログラム111、データ関連付けプログラム112、ビジネスプロセス解析/マクロサービス生成プログラム113およびシミュレートプログラム114の制御を行う。
次に、図2により、本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置内の各プログラムの機能概要および磁気ディスク装置内に格納される各情報との関連について説明する。図2は本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置内の各プログラムの機能概要および磁気ディスク装置内に格納される各情報との関連を説明するための説明図である。
図2において、ユーザは、ビジネスプロセス構築プログラム111を用いて、所望の粒度のビジネスプロセス(ビジネスフロー)を構築する。サービス情報リポジトリ121内にその粒度のサービス情報が存在する場合には、そのサービス情報をビジネスプロセス内のアクティビティに割り当てることもできる。ここで設計したビジネスプロセスは、ビジネスプロセス設計情報リポジトリ120に格納することができる。
データ関連付けプログラム112は、ビジネスプロセス構築プログラム111の動作中に呼び出されるプログラムであり、ビジネスプロセスのアクティビティに割り当てられたサービスを呼び出す際に利用する変数(名称は一般にサービスによって異なりうる)間の関連付けを行うためのプログラムである。このプログラムが生成した関連付けのための情報は、データ関連付け専用のアクティビティとしてビジネスプロセス内に記述される。
ビジネスプロセス解析/マクロサービス生成プログラム113は、サービスを割り当てたある粒度のビジネスプロセスのサブセットから、より粗い粒度のサービスであるマクロサービスを生成するためのプログラムである。このプログラムを有することが、従来技術に見られない本実施の形態の特徴となる。
シミュレートプログラム114は、ビジネスプロセス解析/マクロサービス生成プログラムから呼び出されるプログラムであり、ビジネスプロセスのサブセットに対して、そのサブセットを構成するアクティビティに割り当てられたサービスの非機能情報(応答時間など)を基に、サブセット全体としての非機能情報、すなわちマクロサービスの非機能情報を算出するものである。
次に、図3により、本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置を使用して、SOAアーキテクチャのシステムを設計する場合の手順の概要について説明する。図3は本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置を使用して、SOAアーキテクチャのシステムを設計する場合の手順を示すフローチャートである。以下、本実施の形態ではより粗い粒度を「業務レベルの粒度」で代表させ、より細かい粒度を「実装レベルの粒度」で代表させる。そして、業務レベルではサービスが用意されておらず、実装レベルでのみサービスが用意されているものとする。
まず、ステップS000で、業務レベルの設計者が本設計装置を起動する。次に、ステップS001で、業務レベルの設計者がビジネスプロセス構築プログラム111を用いて業務レベルのビジネスプロセスを構築する。この段階では、業務レベルのサービスが存在しないので、業務レベルの設計者はビジネスプロセスのアクティビティにサービスを割り当てることができない。
次に、ステップS002で、実装レベルの設計者が、ステップ001の業務レベルのビジネスプロセスを基に、ビジネスプロセス構築プログラム111を用いて実装レベルのビジネスプロセスを構築する。実装レベルではサービスが存在するので、実装レベルの設計者は作成したビジネスプロセスのアクティビティにサービスを割り当てる。
また、割り当てたサービス間で変数名が異なる場合には、データ関連付けプログラム112を利用して変数間の関連付けを行い、関連付けを行うアクティビティをビジネスプロセスに埋め込む。
次に、ステップS003で、実装レベルの設計者がビジネスプロセス解析/マクロサービス生成プログラム113を用いて、指定したビジネスプロセスのサブセットから、マクロサービスを生成する。このとき、シミュレートプログラム114を利用して、そのマクロサービスの非機能情報を算出する。
そして、生成したマクロサービスをサービス情報リポジトリ121に格納する。これにより、業務レベルのサービスが用意されたことになるので、次のステップS004において業務レベルの設計者がビジネスプロセス構築プログラム111を用いてビジネスプロセスにマクロサービスを割り当てることができる。すなわち、サービスを割り当て済みの完結したSOAシステムを設計できる。
また、マクロサービスには非機能情報が付与されているため、シミュレートプログラム114を業務レベルのビジネスプロセスに適用して、業務レベルでのシミュレーションを実行することも可能になる。
次に、図4〜図15により、本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置を使用して、SOAアーキテクチャのシステムを設計する場合の手順の各ステップの詳細について説明する。図4〜図15は本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置を使用して、SOAアーキテクチャのシステムを設計する場合の手順の各ステップの詳細を説明するための説明図であり、図4は図2のビジネスプロセス構築プログラムが使用するビジネスプロセス構築画面(粒度が業務レベル)の表示例、図5は図2のビジネスプロセス構築プログラムが使用するビジネスプロセス構築画面(粒度が実装レベル)の表示例、図6は図2のデータ関連付けプログラムが使用するデータ関連付け画面と、その画面によって生成されるデータ関連情報の大まかな構造の例を示す図、図7は実装レベルのサービスの一例として扱う住所録サービスのWSDL表記を示す図、図8は実装レベルのサービスの一例として扱う郵便番号簿サービスのWSDL表記を示す図、図9は実装レベルのビジネスプロセスの一例として扱う統合サービスのBPEL表記を示す図、図10は住所録サービスと郵便番号簿サービスの間で変数の関連付けを行う例を示す図、図11は図2のビジネスプロセス解析/マクロサービス生成プログラムの処理手順の詳細を示す図、図12は図2のビジネスプロセス解析/マクロサービス生成プログラムが使用するマクロサービスからの出力変数選択画面の表示例、図13は図2のビジネスプロセス解析/マクロサービス生成プログラムが生成するマクロサービスのWSDLを示す図、図14は図2のビジネスプロセス解析/マクロサービス生成プログラムが使用するマクロサービスへの機能概要付与画面の表示例、図15は図2のビジネスプロセス構築プログラムが使用するビジネスプロセス構築画面(粒度が業務レベルで、マクロサービス生成後)の表示例である。
図4において、ビジネスプロセス構築画面400は、粒度表示部4001、ビジネスプロセスをグラフィカルに設計するための部品を集めたツール部4002、部品を配置してビジネスプロセスを組み立てる場となる設計フィールド4003、設計したビジネスプロセスをビジネスプロセス設計情報リポジトリ(図2の120)に登録するための登録ボタン4004、ビジネスプロセスのサブセットからマクロサービスを生成するためのマクロサービス生成ボタン4005、サービス情報リポジトリ(図2の121)に登録されているサービス情報の中でこの粒度のに属するサービス一覧を表示するサービス情報表示部4006、設計フィールド4003で選択したアクティビティに、サービス情報表示部4006で選択したサービスを割り当てるためのサービス割当ボタン4007から構成される。
ツール部4002は、例えば、図4に示すように遷移アイコン40021、サービス呼び出しアイコン40022、判断アイコン40023、合流アイコン40024、分岐アイコン40025、データ変換アイコン40026、サブセット指定アイコン40027などから構成される。
この図4では、サービス表示部4006にデータの見出しだけ表示され、具体的なサービスが何も表示されていないが、これは粒度表示部4001が示す「業務レベル」の粒度のサービスがサービス情報リポジトリ(図の121)に登録されていないためである。
図3のステップS001において、図4に示したような画面を利用して業務レベルの設計者が業務レベルのビジネスプロセスを構築すると、次に、図3のステップS002において実装レベルの設計者が、業務レベルのビジネスプロセスから実装レベルのプロセスを作成する。ある粒度のビジネスプロセスについて、その粒度を細かくしたビジネスプロセスを作成する手段については公知例(例えば、上記特許文献1等)に記載されているのでここでは省略する。
例えば、実装レベル粒度のビジネスプロセスを表す図5においては、図4のサービス呼び出し40031がサービス呼び出し群5002に、図4のサービス呼び出し40032がサービス呼び出し群5003に、図4のサービス呼び出し40033がサービス呼び出し群5004にそれぞれ詳細化される。
この三つのサービス呼び出し群の中で、5002のみがサブセット指定アイコン40027をクリックすることで指定可能になるサブセット指定が施されており、他の2つのサービス呼び出し群については説明の便宜上点線の四角で囲っている。この実装レベルでは、業務レベルと違ってサービスがサービス情報リポジトリ121用意されており、これをビジネスプロセス構築プログラム111が読み出して図5に示すようにサービス情報表示部4006に列挙する。
ここでは、サービス情報としてはID40060、URL40061、機能概要40067の他に、非機能情報として最小処理時間40062、最大処理時間40063、平均処理時間40064、待ち可能時間40065、平均処理件数40046などを保持する。実装レベルの設計者は、まず設計フィールド4003上でサービス呼び出しを1つ選択し、次にサービス情報表示部4006から適切なサービスを1つ選択し、割当ボタン4007を押すことによって、4003上で選択したサービス呼び出しに4006上で選択したサービスを割り当てる。
この操作を各サービス呼び出しについて行うことにより、実装レベルにおいて完結した、すなわちサービス割当済みのSOAビジネスプロセスを作成することができる。
この図3のステップS002では、必要に応じてデータの関連付けを行う。データの関連付けとは、同一の概念を指しながらもサービスによって呼び方が異なる変数の間の関連付けを行うことを意味する。例えば、図5のサービス呼び出し群5002の中のサービス呼び出し”Web11”50021にサービスAというIDのサービスが、サービス呼び出し”Web12”50023にサービスBというIDのサービスが割り当てられているとする。
そして、サービスAでは商品の名称を「商品名」、商品の価格を「価格」という変数名で扱い、サービスBでは商品の名称を「name」、商品の価格を「price」という変数名で扱うものとする。このとき、サービスAとサービスBをビジネスプロセスで連携させるためには、変数間の関連付けを行う必要がある。
このために、実装レベルの設計者はデータ変換アクティビティ50023を配置し、このアクティビティアイコンをダブルクリックする。この操作によりデータ関連付けプログラム(図2の112)が起動して、図6の(a)に示すようなデータ関連付け画面を設計者に提示する。この画面は、サービスを表すノード(6001など)やそのサービスで扱う変数を表すノード(6002など)、および決定ボタン6004から構成される。設計者は、関連付けたい変数のノード間を関連線(6003など)で結ぶことによって、変数間の関連付けを定義する(図6の(b))。
そして、設計者が決定ボタン6004を押すことにより、データ関連付けプログラム112は設計者が付与した関連線から図6の(c)に示すようなデータ関連情報を生成する。このデータ関連情報は、データ変換アクティビティ50022の内部データとしてビジネスプロセス内で保持する(具体的な保持形式については後述する)。
このデータ関連付けの方式は実用化された公知技術(例えば、IBM社の製品“WebSphere”における実現例→ http://www−06.ibm.com/jp/domino01/mkt/websphere.nsf/499721c3388537bd49256b1a001aab28/49256dcd00196530492570a000201ff4/$FILE/WPSV6_08_WSBPEL20.pdfのP.13 等)であるので、ここでは詳細な手法の説明を省く。
次に、図3のステップS003においてビジネスプロセス解析/マクロサービス生成プログラム113が実装レベルのビジネスプロセスのサブセットからマクロサービスを生成する手順について説明する。
このプログラムは、設計者が図5の5002のように特定のアクティビティ群をサブセット指定し、マクロサービス生成ボタン4005を押すことによって起動する。図7および図8はこれからの説明で用いる住所録サービスと郵便番号サービスのWSDLファイル(サービスのインタフェースを記述するWSDL形式のファイル)の例である。また、図9は住所録サービスと郵便番号サービスを呼び出すビジネスプロセスのBPELファイル(ビジネスプロセスを記述するためのBPEL型式のファイル)の例である。
WSDLについては“http://www.w3.org/TR/wsdl”を、BPELについては“http://www.oasis−open.org/apps/org/workgroup/wsbpel/documents.php”(無料の登録が必要)の規格文書群を参照のこと。
図7は、「住所録サービス」に関わる(2行目参照)WSDLの例である。13〜18行目は、このサービスが「住所録portType」というportType(Java(登録商標)の「インタフェース」に似た概念)を持ち、そのportTypeに「現住所取得」というoperation(関数)が存在し、そのoperationは「氏名」という入力message(変数群)と「現住所」という出力message(変数群)を持つことを表している。
また、7〜9行目はmessage(変数群)「氏名」が文字列型のpart(変数)「氏名」から構成されることを示し、10〜12行目はmessage(変数群)「現住所」が文字列型のpart(変数)「現住所」から構成されることを示している。
図8は、「郵便番号簿サービス」に関わる(2行目参照)WSDLの例である。13〜18行目は、このサービスが「郵便番号検索portType」というportType(Java(登録商標)の「インタフェース」に似た概念)を持ち、そのportTypeに「郵便番号取得」というoperation(関数)が存在し、そのoperationは「住所」という入力message(変数群)と「郵便番号」という出力message(変数群)を持つことを表している。
また、7〜9行目はmessage(変数群)「住所」が文字列型のpart(変数)「住所」から構成されることを示し、10〜12行目はmessage(変数群)「郵便番号」が文字列型のpart(変数)「番号」から構成されることを示している。
図9は、「統合サービス」と称するビジネスプロセスの一部であり、主に図7と図8に示した2つのサービスを利用して、ある人物の氏名から郵便番号を得るためのサブセットを中心に抜粋している。
3、4行目は、addressという名前空間接頭辞が住所録サービスに、postalという名前空間接頭辞が郵便番号サービスにそれぞれ対応していることを表している。そして9〜12行目は、「住所録住所」「住所録氏名」「郵便番号簿住所」「郵便番号」というvariable(BPELにおける変数群)が、それぞれ住所録サービスの「現住所」、住所録サービスの「氏名」、郵便番号簿サービスの「住所」、郵便番号簿サービスの「郵便番号」というmessage(WSDLにおける変数群)に対応していることを表している。
15行目40行目までの<sequence>要素がこの「統合サービス」全体の処理を表し、その中のサブセットとして19〜23行目のinvoke(サービス呼出)、25〜30行目のassign(変数間の対応付け)、32〜36行目のinvoke(サービス呼出)が存在する。19〜23行目のinvokeは、住所録サービスに属する住所録portTypeの現住所取得operation(関数)を呼び出し、入力変数群としてvariable住所録氏名を与え、出力変数群としてvariable住所録住所を受け取ることアクティビティである。
また、32〜36行目のinvokeは、郵便番号簿サービスに属する郵便番号検索portTypeの郵便番号取得operation(関数)を呼び出し、入力変数群としてvariable郵便番号簿住所を与え、出力変数群としてvariable郵便番号を受け取るアクティビティである。
そして、25〜30行目のassignは、上記の2つのinvokeの間の変数間の関係を規定するアクティブティであり、variable住所録住所の変数「現住所」の値をvariable郵便番号簿住所の変数「住所」にコピーしている。
これは、すなわち図6の(c)の表記法を用いると図10の表に示すような関係が存在し、住所録サービスの変数「現住所」が郵便番号簿サービスの変数「住所」に関係していることを示す。このような関係を、BPELでは25〜30行目に例示したようなassignアクティビティを用いて表現する。
以上が図3のステップS003で扱うWSDLとBPELの例であるが、次に、ステップS003においてBPELのサブセットを解析してマクロサービスのWSDLを生成する手順について説明する。
図11に示すように、ステップS1401は、BPELのサブセットの全てのサービス呼出における入力変数を抽出するステップである。例えば、図9のBPELのサブセットの例では、19〜23行目のサービス呼出(invoke)におけるvariable住所録氏名の「氏名」と、32〜36行目のサービス呼出(invoke)におけるvariable郵便番号簿住所の「住所」がある。
次の、ステップS1402は、ステップS1401で抽出した入力変数から、その変数自体あるいはその変数と関連付けられた変数が他のサービス呼出の出力変数に含まれるものを除き、「マクロサービスへの入力変数」とするステップである。
図9の例では、入力変数の1つであったvarialbe郵便番号簿住所の「住所」は、25〜30行目の<assign>要素によってvariable住所録住所の「現住所」と関連付けられており、かつそのvariable住所録住所は19〜23行目のサービス呼出における出力変数(outputVariable)に含まれている。
そのため、ステップS1401で抽出した2つの入力変数からvariable郵便番号簿住所の「住所」を除き、variable住所録氏名の「氏名」のみを「マクロサービスへの入力変数」とする。
次に、ステップS1403は、本システムがBPELのサブセットの出力変数を設計者に提示し、その中から設計者が「マクロサービスからの出力変数」を選択するステップである。このステップにおいては、このサービスで必要になる出力変数をシステムが自動的に判定することはできないために、設計者による選択処理が必要になる。
ここで、ビジネスプロセス解析/マクロサービス生成プログラム113がユーザに提示する「マクロサービスからの出力変数選択画面」の例を、図12の1501に示す。1502は出力変数の表示部であり、設計者はここに表示された出力変数の中から「マクロサービスからの出力変数」とする変数をハイライトさせて選択し、最後に1503の決定ボタンを押すことによって決定する。
図12の例では郵便番号簿サービスの「番号」、すなわちvariable郵便番号の「番号」が「マクロサービスからの出力変数」として選択されている。
次に、ステップS1404において、ビジネスプロセス解析/マクロサービス生成プログラム113が「マクロサービスへの入力変数」からマクロサービスの入力用message要素を生成し、また「マクロサービスからの出力変数」からマクロサービスの出力用message要素を生成する。図13にビジネスプロセス解析/マクロサービス生成プログラム113が生成するマクロサービスのWSDLの例を示す。
ステップS1404では、ステップS1402で得たマクロサービスへの入力変数「氏名」(7行目)を包含する入力用message要素「住所録氏名」(6〜8行目)と、ステップS1403で得た出力変数「番号」(10行目)を包含する出力用message要素「郵便番号」(9〜11行目)を生成する。
これらのmessageの名称(name属性)は、変数を含んでいたvariableの名称から取得する。次に、ステップS1405において、ビジネスプロセス解析/マクロサービス生成プログラム113が上記入力用messageをinput要素とし、上記出力用messageをoutput要素とするようなoperation要素を生成する。
図13の例では、入力用message「住所録氏名」をinput要素(14行目)とし、出力用message「郵便番号」をoutput要素(15行目)とするようなoperation(13〜16行目)を生成するステップになる。
次に、ステップS1406において、ビジネスプロセス解析/マクロサービス生成プログラム113が上記operationを唯一の子要素とするportTypeを生成する。図13の例では、ステップS1405で生成したoperation(13〜16行目)を唯一の子要素とするようなportType(12〜17行目)を生成するステップになる。
最後に、ステップS1407において、ビジネスプロセス解析/マクロサービス生成プログラム113がステップS1404〜ステップS1406で生成した全ての要素を包含するdefinitions要素を生成する。図13の例では、ステップS1404〜ステップS1406で生成した全ての要素(6〜17行目)を包含するdefinitions要素(2〜18行目)を生成するステップになる。
以上、ステップS1401〜ステップS1407に示した手順によって、ビジネスプロセス解析/マクロサービス生成プログラム113がBPEL型式のビジネスプロセスのサブセットから、図13に例示するようなWSDL形式のマクロサービスのインタフェースを生成することができる。
次に、ステップS1408において、設計者がマクロサービスに機能概要を付与する。ビジネスプロセス解析/マクロサービス生成プログラム113が表示する機能概要付与画面の例を図14の1701に示す。1702は設計者が機能概要を表す文字列を入力する機能概要入力部であり、1703は設計者がマクロサービスの粒度を入力するサービス粒度入力部である。
これらを入力し、続けて決定ボタン1704を押すことにより、機能概要と粒度としてマクロサービスに付与される。
最後に、ステップS1409で、ビジネスプロセス解析/マクロサービス生成プログラム113がシミュレートプログラム114を呼び出して詳細レベルのサービスの非機能情報に基づいたシミュレーションを実行することにより、マクロサービスの非機能情報を設定する。非機能情報およびそれに基づくシミュレーションについては既存の技術であり、非機能情報管理については特願2006−201907号(この特許では、非機能情報は「非機能要件」と表記されている)で実現されており、またシミュレーションについてはIBM社の製品WebShphere(http://www−06.ibm.com/jp/software/websphere/)等で実現されているため、ここでは詳細な説明を省略する。
以上のステップS1401〜ステップS1409によって業務レベルのマクロサービスが生成され、図3のステップS003が完結する。
次に、図3のステップS004において、業務レベルの設計者が業務レベルのビジネスプロセスにマクロサービスを割り当てる。これは、ビジネスプロセス構築プログラム111が表示する業務レベルでのビジネスプロセス構築画面を用いて行う。
図15にそのビジネスプロセス構築画面の例を示す。図3のステップS001に相当する図4の段階では、業務レベルでのサービスが用意されていなかったためにサービス情報表示部4006は空欄になっていたが、図3のステップS004に相当する図15サービス情報表示部4006には、図3のステップ003で生成したマクロサービスが業務レベルのサービスとして列挙されている。
業務レベルの設計者は、設計フィールド4003上で選択したアクティビティ(ex.40031)に対して割り当てるサービスをサービス情報表示部4006の中から選び、割当ボタン4007を押すことにより、該当アクティビティにサービスを割り当てる。
以上により、図3に示した設計手順が完結する。業務レベルの設計者は、この設計データを利用してトライ&エラーでSOAシステムの設計を進めたり、各アクティビティに割り当てられたサービスの非機能情報を利用して、シミュレートプログラム114を用いたシミュレーションを行ったりすることが可能になる。
このように、本実施の形態では、例えば、次のようなシナリオで効果を発揮する(図16参照)。図16は現在のSOAシステム設計手段が抱えている課題を、本発明の手法を用いて解決を図る場合の概要を示す図である。
登場人物は、業務レベル(より粒度が粗いレベル)の設計担当者と実装レベル(より粒度が細かいレベル)の設計担当者の2名である。業務レベルの担当者は業務レベルでSOAシステムの設計を完結させたいと考えているが、サービスは実装レベルでしか用意されていない。
[シナリオStep1] 業務レベルの設計者は、自分の考える業務の内容を実装レベルの設計者に伝える。
[シナリオStep2] 実装レベルの設計者は、ヒアリングした業務を実現するような実装レベルのビジネスプロセスを、業務レベルの1アクティビティが実装レベルの1サブセットに対応する形で構築する(図16の501)。
[シナリオStep3] 実装レベルの設計者が、実装レベルの各サブセットと1:1に対応する形でマクロサービスを生成する(図16の502)。
[シナリオStep4] 業務の設計者は、業務レベルのビジネスプロセスの各アクティビティにマクロサービスを割り当てる(図16の503)ことにより、業務レベルで閉じた、実装レベルの知識な設計を実施することができるようになる。
これにより、業務レベルの設計者が既存のBPEL+WSDL対応ツールを使用して業務レベルでの動作検証やシミュレーションを行ったり、トライ&エラーで設計を進めたりすることができるようになる。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
本発明は、Webサービスの設計装置および方法に関し、設計しようとしているビジネスプロセスのシステム構成要素の粒度と、ビジネスプロセスの構成要素に割り当てるサービスの粒度とが異なる装置やシステムに広く適用可能である。
本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置の構成を示す構成図である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置内の各プログラムの機能概要および磁気ディスク装置内に格納される各情報との関連を説明するための説明図である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置を使用して、SOAアーキテクチャのシステムを設計する場合の手順を示すフローチャートである。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置のビジネスプロセス構築プログラムが使用するビジネスプロセス構築画面(粒度が業務レベル)の表示例である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置のビジネスプロセス構築プログラムが使用するビジネスプロセス構築画面(粒度が実装レベル)の表示例である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置のデータ関連付けプログラムが使用するデータ関連付け画面と、その画面によって生成されるデータ関連情報の大まかな構造の例を示す図である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置の実装レベルのサービスの一例として扱う住所録サービスのWSDL表記を示す図である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置の実装レベルのサービスの一例として扱う郵便番号簿サービスのWSDL表記を示す図である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置の実装レベルのビジネスプロセスの一例として扱う統合サービスのBPEL表記を示す図である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置の住所録サービスと郵便番号簿サービスの間で変数の関連付けを行う例を示す図である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置のビジネスプロセス解析/マクロサービス生成プログラムの処理手順の詳細を示す図である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置のビジネスプロセス解析/マクロサービス生成プログラムが使用するマクロサービスからの出力変数選択画面の表示例である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置のビジネスプロセス解析/マクロサービス生成プログラムが生成するマクロサービスのWSDLを示す図である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置のビジネスプロセス解析/マクロサービス生成プログラムが使用するマクロサービスへの機能概要付与画面の表示例である。 本発明の一実施の形態に係るSOAアーキテクチャのシステム設計支援装置のビジネスプロセス構築プログラムが使用するビジネスプロセス構築画面(粒度が業務レベルで、マクロサービス生成後)の表示例である。 現在のSOAシステム設計手段が抱えている課題を、本発明の手法を用いて解決を図る場合の概要を示す図である。 現在のSOAシステム設計手段が抱えている課題を説明するための説明図である。 現在のSOAシステム設計手段が抱えている課題を、特許文献1の手法を適用して解決を図る場合の概要を示す図である。
符号の説明
100…システム設計支援装置、101…中央演算処理装置、102…キーボード、103…ディスプレイ、104…ポインティングデバイス、105…主記憶装置、106…磁気ディスク装置、107…バス、110…制御プログラム、111…ビジネスプロセス構築プログラム、112…データ関連付けプログラム、113…ビジネスプロセス解析/マクロサービス生成プログラム、114…シミュレートプログラム、120…ビジネスプロセス設計情報リポジトリ、121…サービス情報リポジトリ。

Claims (5)

  1. ビジネスプロセスを構築し、その構成要素にサービスを割り当てるSOAアーキテクチャのシステム設計支援方法であって、
    情報処理装置上の中央演算処理装置で処理手段を実行し、前記処理手段により、記録装置に格納された情報から細かいシステム構成要素の詳細度におけるサービス割当済みのビジネスプロセスのサブセットの全ての呼出における入力変数を抽出し、抽出した入力変数から、その変数自体またはその変数を関連付けられた変数が他のサービス呼出の出力変数を除きマクロサービスへの入力変数を求め、設計者が選択した前記マクロサービスからの出力変数を入力とし、前記マクロサービスへの入力変数から前記マクロサービスの入力用要素を生成し、前記マクロサービスからの出力変数から前記マクロサービスの出力用要素を生成し、前記マクロサービスの入力用要素および前記マクロサービスの出力用要素の全ての要素を含有する詳細な要素を生成し前記記録装置に格納することにより、前記ビジネスプロセスのサブセットから、システム構成要素の詳細度の粗い仮想的なサービスであるマクロサービスを生成することを特徴とするSOAアーキテクチャのシステム設計支援方法。
  2. 請求項1記載のSOAアーキテクチャのシステム設計支援方法において、
    前記処理手段に含まれるビジネスプロセス解析/マクロサービス生成手段により、記録装置に格納された情報から細かいシステム構成要素の詳細度におけるサービス割当済みのビジネスプロセスのサブセットの全ての呼出における入力変数を抽出し、抽出した入力変数から、その変数自体またはその変数を関連付けられた変数が他のサービス呼出の出力変数を除きマクロサービスへの入力変数を求め、設計者が選択した前記マクロサービスからの出力変数を入力とし、前記マクロサービスへの入力変数から前記マクロサービスの入力用要素を生成し、前記マクロサービスからの出力変数から前記マクロサービスの出力用要素を生成し、前記マクロサービスの入力用要素および前記マクロサービスの出力用要素の全ての要素を含有する詳細な要素を生成し前記記録装置に格納することにより、前記ビジネスプロセスのサブセットから、システム構成要素の詳細度の粗い仮想的なサービスであるマクロサービスを生成し、
    前記処理手段に含まれるシミュレート手段により、前記記録装置に格納された前記ビジネスプロセスのサブセットを構成する個々の構成要素の非機能情報に基づいたシミュレーションをそれぞれ実行し、前記シミュレーション結果に基づいて、サブセット全体の非機能情報を算出し前記記録装置に格納することを特徴とするSOAアーキテクチャのシステム設計支援方法。
  3. 請求項1または2記載のSOAアーキテクチャのシステム設計支援方法において、
    前記処理手段に含まれるビジネスプロセス構築手段により、前記設計者から入力されたビジネスプロセスに関する情報に基づいて、特定の粒度においてビジネスプロセスを構築し、
    前記処理手段に含まれるデータ関連付け手段により、前記設計者から入力されたサービスを呼び出す際に利用する変数間の関連付けの情報に基づいて、前記特定の粒度においてサービスを前記ビジネスプロセスの構成要素に割り当てることを特徴とするSOAアーキテクチャのシステム設計支援方法。
  4. ビジネスプロセスを構築し、その構成要素にサービスを割り当てるSOAアーキテクチャのシステム設計支援装置であって、
    処理手段が格納される主記憶装置と、
    前記ビジネスプロスセスに関する情報が格納される記録装置と、
    前記主記憶装置に格納された前記処理手段を実行する中央演算処理装置とを備え、
    前記中央演算処理装置は、前記処理手段を実行し、前記記録装置に格納された情報から細かいシステム構成要素の詳細度におけるサービス割当済みのビジネスプロセスのサブセットの全ての呼出における入力変数を抽出し、抽出した入力変数から、その変数自体またはその変数を関連付けられた変数が他のサービス呼出の出力変数を除きマクロサービスへの入力変数を求め、設計者が選択した前記マクロサービスからの出力変数を入力とし、前記マクロサービスへの入力変数から前記マクロサービスの入力用要素を生成し、前記マクロサービスからの出力変数から前記マクロサービスの出力用要素を生成し、前記マクロサービスの入力用要素および前記マクロサービスの出力用要素の全ての要素を含有する詳細な要素を生成し前記記録装置に格納することにより、前記ビジネスプロセスのサブセットから、システム構成要素の詳細度の粗い仮想的なサービスであるマクロサービスを生成することを特徴とするSOAアーキテクチャのシステム設計支援装置。
  5. 請求項4記載のSOAアーキテクチャのシステム設計支援装置において、
    前記処理手段は、前記記録装置に格納された情報から性能やアーキテクチャに関する情報である非機能情報を持つサービスが割り当てられた構成要素の集合であるビジネスプロセスのサブセットの全ての呼出における入力変数を抽出し、抽出した入力変数から、その変数自体またはその変数を関連付けられた変数が他のサービス呼出の出力変数を除きマクロサービスへの入力変数を求め、設計者が選択した前記マクロサービスからの出力変数を入力とし、前記マクロサービスへの入力変数から前記マクロサービスの入力用要素を生成し、前記マクロサービスからの出力変数から前記マクロサービスの出力用要素を生成し、前記マクロサービスの入力用要素および前記マクロサービスの出力用要素の全ての要素を含有する詳細な要素を生成し前記記録装置に格納することにより、前記ビジネスプロセスのサブセットから、システム構成要素の詳細度の粗い仮想的なサービスであるマクロサービスを生成するビジネスプロセス解析/マクロサービス生成手段と、
    前記記録装置に格納された前記ビジネスプロセスのサブセットを構成する個々の構成要素の非機能情報に基づいたシミュレーションをそれぞれ実行し、前記シミュレーション結果に基づいて、サブセット全体の非機能情報を算出し前記記録装置に格納するためのシミュレート手段とを有することを特徴とするSOAアーキテクチャのシステム設計支援装置。
JP2007167590A 2007-06-26 2007-06-26 Soaアーキテクチャのシステム設計支援方法およびsoaアーキテクチャのシステム設計支援装置 Expired - Fee Related JP4876032B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007167590A JP4876032B2 (ja) 2007-06-26 2007-06-26 Soaアーキテクチャのシステム設計支援方法およびsoaアーキテクチャのシステム設計支援装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007167590A JP4876032B2 (ja) 2007-06-26 2007-06-26 Soaアーキテクチャのシステム設計支援方法およびsoaアーキテクチャのシステム設計支援装置

Publications (2)

Publication Number Publication Date
JP2009009207A JP2009009207A (ja) 2009-01-15
JP4876032B2 true JP4876032B2 (ja) 2012-02-15

Family

ID=40324251

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007167590A Expired - Fee Related JP4876032B2 (ja) 2007-06-26 2007-06-26 Soaアーキテクチャのシステム設計支援方法およびsoaアーキテクチャのシステム設計支援装置

Country Status (1)

Country Link
JP (1) JP4876032B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5379526B2 (ja) * 2009-03-19 2013-12-25 東芝テック株式会社 Webサービステスト支援装置及びプログラム
JP5202598B2 (ja) * 2010-09-16 2013-06-05 東芝テック株式会社 ワークフロー管理装置、及びワークフロー管理プログラム
JP6472840B2 (ja) * 2017-06-27 2019-02-20 株式会社日立製作所 ビジネスモデル設計支援システムおよびビジネスモデル設計支援方法
JP6785810B2 (ja) * 2018-03-01 2020-11-18 株式会社日立製作所 シミュレーター、シミュレーション装置、および、シミュレーション方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11316780A (ja) * 1998-05-06 1999-11-16 Hitachi Ltd 階層化されたビジネスプロセス定義を有するワークフローシステム

Also Published As

Publication number Publication date
JP2009009207A (ja) 2009-01-15

Similar Documents

Publication Publication Date Title
CN111078315B (zh) 微服务编排、执行方法及系统、架构、设备、存储介质
Van Eyk et al. The SPEC-RG reference architecture for FaaS: From microservices and containers to serverless platforms
US6275977B1 (en) Application cooperation method and apparatus
CN111552471A (zh) 混合云环境下的任务编排方法及系统
CN103208046B (zh) 基于交互式动态流程图的工作流引擎架构方法和系统
CN102193781B (zh) 集成设计应用
CN101820428B (zh) 基于协议组合机制的组合服务优化方法和装置
US20070245321A1 (en) Computer games localisation
CN101814029B (zh) 遥感影像处理系统中处理功能可快速扩展的构建方法
US20170192755A1 (en) Method and Apparatus for Enabling Agile Development of Services in Cloud Computing and Traditional Environments
Garrido et al. Requirements engineering in cooperative systems
Sorgalla et al. Applying model-driven engineering to stimulate the adoption of devops processes in small and medium-sized development organizations: the case for microservice architecture
CN113626128B (zh) 视听媒体微服务第三方模块接入方法、系统、电子设备
Oliveira Junior et al. SMartySPEM: a SPEM-based approach for variability management in software process lines
JP4876032B2 (ja) Soaアーキテクチャのシステム設計支援方法およびsoaアーキテクチャのシステム設計支援装置
US9542161B2 (en) Method and system for generating a source code for a computer program for execution and simulation of a process
Gutiérrez–Fernández et al. Redefining a process engine as a microservice platform
Petriu et al. Software performance models from system scenarios
CN101957754A (zh) 一种服务化业务流程中人机交互方法
JP2004362343A (ja) ソースコード変換装置、ソースコード変換方法、およびプログラム
Zhang et al. Object-oriented user interface customization: Reduce complexity and improve usability and adaptation
Heinrich et al. Challenges in the Evolution of Palladio—Refactoring Design Smells in a Historically-Grown Approach to Software Architecture Analysis
CN115309407B (zh) 一种可实现算力抽象的方法和系统
US20240241758A1 (en) Flexible computing resource cluster allocation
CN103282884B (zh) 路径变换装置及程序

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090611

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110809

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111007

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111128

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

Free format text: PAYMENT UNTIL: 20141202

Year of fee payment: 3

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