Service Oriented Architecture - XML...
Transcript of Service Oriented Architecture - XML...
XML ConsortiumXML Consortium
© XML Consortium
Service Oriented Architecture 概説
テクノロジー部会Webサービスワークグループ牧野友紀 日本ユニシス天野富夫 日本IBM
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
テクノロジー部会Webサービスワークグループ
月1回のF2Fミーティング、メーリングリストでの議論Webサービス技術マップの作成テーマを決めて調査・議論(最近の話題はSOA)
議論に参加いただいたメンバー
リコー松井善郎
ブレイニーワークス芦田尚人
ネット・タイム岡村和英
キヤノン倉沢良明
NTT東日本山本倫生
NTTソフトウェア妹尾正身
JIEC坂下秀彦
ECOM斉藤幸則
日本ユニシス牧野友紀
日本IBM天野富夫
ウルシステムズ林浩一
(順不同、敬称略)
日立製作所山根利夫
都築ソフトウェア神田晴喜
住商情報システム森本信次
沖電気藤岡慎弥
伊藤忠産機小野達弘
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
アジェンダ
発表内容SOAとはSOAにおけるサービスとはSOAの位置づけサービスのオーケストレーション
まとめ
付録よく使われる用語(作業中)
XML ConsortiumXML Consortium
© XML Consortium
SOAとは
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOAとは
散在するシステムを,業務視点の機能(サービス)の集合と捉え,ビジネス環境の変化に対して,迅速にサービスを組み換える (Business ProcessIntegration) ことで,柔軟に対応するシステム構築方針アプリケーションをラップしてサービスにする外からはサービスのインタフェースのみを意識するハードウェア/OS/ミドルウェア開発言語 等々を隠蔽
サービス自体の実装には依らないインフォメーションバス (ネットワーク)にサービスをプラグインして統合を実現する
具体的には上記を実現するためのアーキテクチャパターンデザインパターンベストプラクティス等々の集まりである
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
WebサービスとSOAのハイプ曲線
●Webサービス技術
●SOA
黎明期 流行期 反動期
時間
回復期 安定期
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
今までと何が違うのか
SOAという概念は以前からある概念としてはシンプルで説得力がある
しかし、期待したほどの成果はあがっていない
Corba,DCOM, EJBに足りなかったもの共通のインタフェース定義言語
共通のインフォメーションバス
柔軟なインタフェース記述
インタフェースとプログラミングモデルの分離
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
WebサービスがSOAにもたらしたもの
Webサービスはインターオペイラビリティにフォーカス
共通のインタフェース定義言語WSDLによるインタフェースの記述
共通のインフォメーションバスインターネットプロトコルによるEnd-to-Endの接続
柔軟で抽象度の高いインタフェース記述RPC->ドキュメントベースの記述へ
Simple Endpoints, Rich Dataのスキームへ
インタフェースとプログラミングモデルの分離疎結合(ミドルウェアへの依存性の解消)
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ビジネスイノベーションを支える技術
Web Services Web Services Webサービス
相互運用性の実現
ビジネス・プロセス管理(BPM) ビジネスの定義
モデリング方法論
プロセスの管理・維持のためのツールの集合体
サービス指向アーキテクチャ(SOA)システム構築方針
アーキテクチャパターンSOASOA BPMBPM
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOA,BPM領域技術マップ
BPELBPEL
BPMNビジネス・プロセス表記方法
BPMNビジネス・プロセス表記方法
BPMLBPML
BPSSBPSS
WSDLWSDL
XMIXMI
Programing LanguagePrograming Language
Business Process Modeling
Public Collaboration language
Private processes language
Web Services
モデリング領域
実装領域
二つの用途あり
■抽象プロセスのモデリング言語
■実行可能なビジネス・プロセス実装
UMLUML
MDA
XML ConsortiumXML Consortium
© XML Consortium
SOAにおけるサービスとは
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOAにおけるサービスとは
プラットフォーム独立のインタフェース疎結合によるビジネスプロセスの実現ビジネス(業務)機能単位の粒度検索・発見可能
EAIWFL
相対的な概念であることに注意
Repository
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOAにおけるサービスとは
SOAで扱うサービスが持つべき性質性質 1個々のサービスの実装を隠蔽するインタフェースが定義され、機械処理可能な形式で記述されていること
WSDLで記述される広義のWebサービスであること
性質 2ビジネスプロセスとして適切な粒度・抽象度を持つインタラクションやメッセージが定義されていること
インタフェース定義の意味・内容が問われる
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
性質1について:みたび「Webサービスとは?」
Webサービスとは、A) URIによって識別され、
B) そのインターフェースおよびバインディング情報は、XMLによって定義・記述され、
C) それらの情報は他システムから検索が可能であり、
D) インターネット・プロトコル上の
E) XML書式のメッセージを使用して、他のWebサービスと交信する、
ソフトウェアシステムである(W3C WebサービスアーキテクチャWG)
インタフェースがWSDLによって記述されていればWebサービスとみなすことができる。
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
WSDL仕様によれば..
WSDL中のインタフェース記述には抽象レベル(ワイヤーフォーマットではない)のメッセージフォーマットが定義されている
具体的なフォーマットはバインディング記述によって決定される(ただし抽象から具体へのマッピングの手続きの詳細はWSDLには記述されていない、パラメータのみ)
ある種のバインディング記述(SOAP/HTTPバインディング)では具体フォーマットとして抽象フォーマットがほぼそのまま使われる
2.2 Message2.2.1 The Message ComponentA message component describes the abstract format of a particular message that a Web service sends orreceives. The format of a message is typically described in terms of XML element information items andattribute information items. A message binding (see 2.7 Binding [p.21] ) describes how the abstractcontent is mapped into a concrete format. However, in some cases, the abstract definition may match theconcrete representation very closely or exactly for one or more bindings. Such bindings will supply littleor no mapping information. However, another binding of the same message definition may requireextensive mapping information. For this reason, it is not until the binding is inspected that one candetermine "how abstract" a message really is.
WSDL 1.2 3月3日版ワーキングドラフト(http://www.w3.org/TR/2003/WD-wsdl12-20030303 )より
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
Webサービス呼出しフレームワーク
Javaアプリケーション
WSDL記述WSDL記述
PortTypeインタフェースの論理的な記述
Java用マッピング
Bindingトランスポート/ワイヤーフォーマットへの対応づけ
SOAP Binding実装
JMS Binding実装
Java Binding実装
: :
:Webサービス呼出し機構
HTTPRequest/Response
Queue
Javaコード
言語固有のAPIの提供(DOMの隠蔽)
Webサービスのクライアント
インタフェースの提供
インタフェース定義があればワイヤーフォーマットに関わらずサービスを呼び出すことができる
Webサービス
例えば、Java用のWSIF(http://ws.apache.org/wsif/)
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOAにおけるインタフェース記述の意義
全てのビジネス部品(サービス)の一元的な扱い共通のサービス呼び出し機構(WSIF)
SOAPでラップされたアプリケーション(通信プロトコルには依存せず)REST Webサービス(インターネットWebサービス)Javaコードレガシーアプリケーション
ワークフローによるWebサービスの合成BPEL4WSの記述はWSDLによるPortType等の定義を参照している
UDDI/WSDLによるサービスの検索
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
性質2について:ビジネスサービスの要件
粗粒度のインタラクション
実際のビジネスプロセスのインタラクション粒度に対応
Mediation(ギャップの解消)が容易
意味的に抽象度の高いメッセージ記述
複数具体記述を包含するメッセージ記述より具体的な記述への変換が可能
サービス内容に基づく検索
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ビジネスプロセスとしてのインタフェースビジネスプロセスのインタラクションの粒度はIT領域よりも大きい例えば、人が手作業で行っていた業務の自動化
プロセス全体としてのスループットや応答時間の改善が目標人を置き換えたクライアントプログラムはサーバー側が人相手に提供していたレベルのインタフェースを使用することになる
BusinessLogic 1
Session FacadeController
BusinessLogic 2
BusinessLogic 3
人/プログラム
ビジネス領域の境界
IT領域の境界
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ビジネスプロセスとしてのインタフェース
ビジネスプロセスではメッセージの内容をできるだけ高い抽象度で表現すべきSOAP-RPCでの文字列型パラメータ VS ビジネス用語彙をつかった表現
<SOAP-ENV:Body><m:GetLastTradePrice xmlns:m=“Some-URI”>
<symbol xsi:type= “string” >DEF</symbol></m:GetLastTradePrice>
</SOAP-ENV:Body>
パラメータの意味について実装(コード)に負うところが大きい
<SOAP-ENV:Body><m:GetLastTradePrice xmlns:m="Some-URI">
<n:company xmlns:n="business-vocabulary-URI" type= " symbol" >DEF
</n:company></m:GetLastTradePrice>
</SOAP-ENV:Body>
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOAで扱うサービスの分類(例)サービスの用途によって必要な粒度・抽象度は異なる
業務機能の充足(業務/業界固有)
非機能的要件の充足(共通のセキュリティ、トランザクションなど)公開
(共同利用)狭義のビジネスサービス:ビジネスプロセスの直接の部品になる
広義のサービス:ビジネスサービスの部品になるWebサービス
A 完結したビジネスサービスインタフェース
B 業務機能を提供するビジネスサービスインタフェース
C 業務独立の共通サービスインタフェース
D 業務機能の実装に使われるモジュールをラップした
サービスインタフェース
E 共通機能の実装に使われるモジュールをラップした
サービスインタフェース
非公開(内部利用)
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOAベース企業システム
業務遂行レベルサービス・リポジトリ
業務改革レベルサービス・リポジトリ
サービス
戦略レベル
業務改革レベル
業務遂行レベル
経営指標などのレポート作成(ex.XBRL)
日常業務オペレーション
サービス
リアル・タイムな経営資産(人,物,金)変移の統合的なモニタリング
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOAサービス構築で使用されるツール
既存コードをSOAPラッピングしてWebサービス化するツール(第一世代)インタフェース記述をベースにしてサービスを起動する機構(e.g. WSIF)プロセス定義エディタとワークフローエンジン
より上位の設計情報からインタフェース記述を生成するツール
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
上位設計情報からのスキーマ生成
設計情報UML/XML構造制約意味..
HTTPとバインドしたWSDL
MQとバインドしたWSDL
..
DBスキーマXMLスキーマ
抽象的なモデル
実装に依存しない設計情報
MDAツール群
実行可能な成果物
ワークフロー記述
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
企業システムのSOAによる実現
Business Vision,Mission,PrincipleBusiness Vision
,Mission,Principle
Business ArchitectureBusiness
Architecture
DataArchitecture
DataArchitecture
ApplicationArchitecture
ApplicationArchitecture
TechnologyArchitecture
TechnologyArchitecture
SOA:<<アーキテクチャ>>
Webサービス:<<テクノロジ>>
ビジネスの世界
ITの世界
BPM:<<メソトロジー>>
MDA:<<メソトロジー>>
XML ConsortiumXML Consortium
© XML Consortium
SOAの位置づけ
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOA背景にあるニーズ
ビジネス環境の変化を早い段階で察知し、近い将来を予見し、変化に柔軟で迅速に対応したい
ITとしては変化を知るためのシステムの能力
変化に対応するシステムの能力
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ビジネス環境の変化と対応ビジネス環境の変化ビジネス環境の変化
外的変化要因:顧客要求の変化
業界の成熟度(商品普及の飽和)
商品(製品、サービス)の競合力
商品提供までの待ち時間短縮要求
商品のカスタマイズやパーソナライズ物流や決済などの社会公共基盤における選択肢
価格競争による売上げの減少
内的変化要因:業界や企業内の事業構造の変化
業務提携(OEMなど)企業合併
事業統廃合(グループ企業内、競合他社間)
事業多角化・専門化
変化に対する対応変化に対する対応
•新しいビジネス・フローを作り出し競合他社と差別化する(ex.“見込み生産”から“受注生産”)。
•顧客要求に即時きめ細かく対応する。
•ビジネス・パートナーと提携して新商品を提供する。
•安価で良質な業務サービスをアウトソースする。
等々
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
変化に対応する
ビジネス構成、IT構成、双方の関連の把握が必要ビジネス・プロセスの組立,組み換えが容易
企業間でコンテンツやビジネス・ファンクションの合成が容易
ビジネスとITの統合的な管理機構(リポジトリ)
ソフトウェア開発(新規,変更)のスピード
ビジネス・プロセスの部品化、情報の部品化
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ビジネス・プロセスとサービスの関係自社内
サービス
サービス
サービス サービス サービス サービス
サービス
自部門 他部門
サービス
プロセス
サービス
プロセス
サービス
プロセス
プロセスビジネス・パートナー企業
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOAの位置づけ:なぜ重要なのか
企業のIT関連最大関心事はビジネスプロセスインテグレーション
Webサービスは、SOAPやWSDLなどのテクノロジの総称でもありますが、また、ビジネスのイノベーションのあり方に対するコンセプトでもあります。まだ、このコンセプトは十 分市民権を得ているわけではないようですが、Webサービスの本質を理解する上で重要です。今まで、情報技術は、ビジネスプロセスを効率化することで企業の競争力の向上に寄与してきました。最初は会計処理などの定型業務から始まり、オフィスなどの非定型業務もITなしには行えないようになってきました。現在のIT利用の主流は、SAPなどによる、企業全体のビジネスフローの効率化に移ってきています。個々の業務だけではなく、それらを統合化した形での企業の効率化を行うわけです。しかし、これらはいずれも、 「競争相手と基本的に同じ業務フローを、効率化によって差別化する」という企業戦略 に基づいています。
Webサービスの根底に流れるのは、「競争相手がまだやったことのない、新たなビジネスフローを作り出すことによって差別化する」というビジネス戦略です。今まで誰もやったことのないビジネスフローを作り出すのは、どうしたらよいでしょうか?それには、型にはまらない考え方が必要です。かといって、個々のビジネスプロセスをゼロから設計するのでは、この動きの速い世
界で他人より先に出ることは難しいでしょう。Webサービスのコンセプトは、「社内の個々のビジネスプロセスを部品化しておくことによって、それらの異なる組み合わせをいつでも自由に作ることができる」ということです(ここでの「ビジネスプロセス」は、システム的なものだけでないことに注意してください。人手によるプロセスは企業にとっては、システム的なプロセス以上に重要な資産です)。 このようなビジネスプロセスの部品化と再利
用は、社内の業務処理の標準化などを通して今までも試みられてきています。Webサービスは、この部品化と再利用のプロセスを効率化するための、ITが提供するソリューションなのです。 Webサービスの実践は始まっていますが、残念ながら、いまだにこのような大きな企業戦略に基づいて社内業務のWebサービス化を行っている企業は少ないと思います。しかし、これこそが、Webサービスが本当に目指しているものだと私は信じています。
(XMLテクノロジ通信7号http://www.xmlconsortium.org/wg/tech/tech_mlmaga_index.html日本IBM 丸山 宏氏「企業戦略としてのWebサービス」より)
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ソフトウェア開発のトレンド
複雑さに迅速に対処する方法はより抽象度の高いレベルで開発を行うことである
ハードウェアアーキテクチャ(命令セット)
オペレーティングシステム
高級言語
ミドルウェア/ライブラリ
(ビジネス)サービス
開発
しなけ
れば
ならな
い範
囲
高い
抽象度
低い
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOA情報基盤のオーナシップ
コンポーネント
ビジネスロジック
サービス
従来システム
ビジネス環境変化による影響度
IT環境変化
による影響度
ビジネスオペレータ(事業部門)
ビジネスオペレータ(事業部門)
ビジネスオペレータ(事業部門)
ビュー ビュー
プロセス
ビジネスロジック
ITオペレータ(情報システム部門)
コンポーネント
SOAシステム
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ビジネスプロセスフローの設計サービスを組み合わせてビジネスプロセスのフローを実現する
(例えば、プロセスのフローを定義するエディタ)
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ビジネスからITのトレーサビリティ
DBMSWebサービス
Java EJBサーバワークフロー
エンジン
ビジネスファンクション
サービス
写像
ビジネスファンクション
ビジネスファンクション
SOA
ビジネス
ITの世界
ビジネスとITの境界
オブジェクト オブジェクトオブジェクトオブジェクト
XML
情報モデル
データモデル
Business ArchitectureBusiness
Architecture
DataArchitecture
DataArchitecture
ApplicationArchitecture
ApplicationArchitecture
TechnologyArchitecture
TechnologyArchitecture
Business Vision,Mission,PrincipleBusiness Vision
,Mission,Principle 事業事業
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ビジネスファンクションとサービスの写像
顧客情報登録
顧客情報登録
見積内容聞き取り
見積内容聞き取り
在庫確認
在庫確認
商品価格参照
商品価格参照
見積計算
見積計算
注文書起票
注文書起票
与信与信
決済手段選択
決済手段選択
注文書作成
注文書作成
注文内容入力
注文内容入力
商品ビジネス・ファンクション 決済ビジネス・ファンクション
見積提示
見積提示
営業店受注ビジネス・プロセス
受注ビジネス・ファンクション
商品価格提供
商品価格提供
在庫情報提供
在庫情報提供
商品サービス
在庫確認UI
在庫確認UI商品価格
参照UI商品価格参照UI
顧客情報登録(UI含)
顧客情報登録(UI含)
注文書起票(UI含)
注文書起票(UI含)
注文内容入力(UI含)
注文内容入力(UI含)
決済手段選択(UI含)
決済手段選択(UI含)
注文書作成
注文書作成
営業店受注システム
ビジネス・ファンクショントとサービスの粒度をあわせトレーサビリティを確立する
与信与信
決済サービス
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ビジネス・プロセス部品の組合せ
アプリケーション・システム
サービス サービス
ワークフロー
サービス
受注 請求 生産 配送
サービス
インターネット
ビジネス・プロセスの部品
ビジネス・プロセス
ビジネス領域
IT領域
アプリケーション・システム
アプリケーション・システム
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ビジネスプロセス実現方式の比較密結合型システム統合 プロセス・オーナー:情報システム部門 画一的なプロセス
受注管理システム
在庫管理システム
生産管理システム
物流管理システム
会計管理システム
商品B
商品A
統合分散システム管理
受注管理システム
在庫管理システム
サービス サービス
生産管理システム
物流管理システム
サービス サービス
会計管理システム
サービス
受注
請求
生産
納品
商品A 受注
引当
納品
請求
商品B
疎結合型システム統合(SOA) プロセス・オーナー:サービス・ビジネス部門
事業部1 事業部2
統合分散システム管理
サービス管理
リポジトリ
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
製造業生産方式との類似
動力系統機能
ボディ組立機能
電気系統組立機能
内装組立機能検査機能
生産機器 生産機器 生産機器 生産機器 生産機器
生産機器
生産機器
生産機器
生産機器生産機器
車種A 車種B
セル生産方式
作業台
ベルトコンベア
動力系統
ベルトコンベア生産方式ボディ組立
電気系統組立
内装組立
検査車種A
動力組立
ボディ組立
内装組立
電気組立
検査
セル制御
車種A
動力組立
ボディ組立
内装組立
電気組立
検査
セル制御
車種B
動力組立
ボディ組立
ベルトコンベア
電気組立
内装組立
検査
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
変化を知る
変化を知る=ビジネス・イベント(受注など)を発起点に、終息点(商品の提供完了)に至るまで続くビジネス・フローを構成する複数のビジネス・プロセスと関連する資源(人、物、金)をEndToEndに把握する。
複数のビジネス・プロセスの接合(統合)が重要=>各ビジネス・プロセスを支援するシステムのシステム間の連携が必要
ビジネス・プロセスと資源の状態を統合的にモニタリングするためのシステムの機能が必要
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ビジネス・モニタリングビジネス・プロセス部品を連結する部分で、個々のプロセスが出力する情報を搾取監視する。ビジネス・プロセス部品を連結する部分で、個々のプロセスが出力する情報を搾取監視する。
サービス
サービスサービス
業務遂レベル業務遂行プロセス 業務遂行プロセス
業務改革or戦略レベル モニタリング・プロセス
情報の搾取連結部分
契約プロセス
販売工程 製造工程 配送工程
商品A関連情報
製造オーダプロセス
モニタリング・プロセス
配送オーダプロセス販促計画プロセス
北米の販売状況から、1ヶ月後、現地工場生産がパンクする。半年間、
島根工場生産を充て空路輸送を使おう。販促は一週間前倒しで中断だ。
北米の販売状況から、1ヶ月後、現地工場生産がパンクする。半年間、
島根工場生産を充て空路輸送を使おう。販促は一週間前倒しで中断だ。
販促工程
ビジネス・モニタリング
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOAのメリット
変化への対応
迅速なビジネスプロセスの組み換え
ビジネスとIT間のトレーサビリティ
事業者部門によるビジネスプロセス管理
変化の検出
組織(企業内、企業外)を横断したビジネス・モニタリングの実現
XML ConsortiumXML Consortium
© XML Consortium
サービスのオーケストレーション
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
サービスの複合・連鎖 ワークフロー基盤
ワークフロー定義ファイル
サービスサービス
サービス
サービス
データ
データ
イベント・シンク
イベント・データ
イベント・データ
イベント駆動基盤
シンク定義ファイル
イベント・ソース
ソース定義ファイル
処理フロー制御は存在しない。イベント駆動基盤がイベントのルーティングを行う。
サービスサービス
サービス
サービス
処理フロー制御はサービス要求側が、実施する。プログラム・ロジックで実装することが多い。
処理フロー制御はワークフロー基盤がワークフロー定義ファイルに従い行う。
サービス
イベント定義ファイル
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
サービス複合パターンの特徴
直接統合 ワークフロー型統合 イベント駆動型統合
同期性 同期 同期/非同期両方 非同期
送達確実性 ○ ◎ △
同報性 △ △ ○
拡張性サービス組替え
△ プログラム修正有り
○ ワークフロー修正 ◎ 設定変更
状態監視容易性 ◎ ○ △
ビジネス・プロセス実装
○ ビジネス・ロジックで実装
◎ ワークフロー定義言語で記述
△ ピア-ピア間のルーティングのみ
基盤確立初期コスト ◎ ○ △
用途 組替え頻度の少ない固定的な連携に向く
複合サービスの実現やビジネス・プロセスの部品化に向く
不特定多数のプロセスの結合に向く
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
複合パターンの組み合わせ観光情報流通基盤を例に
サービス
イベント駆動基盤
サービス
サービスサービス
観光情報表計算ソフト
PDA
携帯
電子メールサービス
ワークフロー基盤
コンテンツ集配信ブローカ エンドユーザ向け情報提供直接統合
直接統合
ワークフロー型統合ワークフロー型統合イベント駆動型合
イベント駆動型合
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
ワークフロー基盤の実現
Webサービス1
Webサービス2
Webサービス3
コーディネータ2
Webサービス4
Webサービス5
Webサービス6
コーディネータ1
ビジネスプロセス・モデル
ワークフロー
トランザクション管理
分散(協調処理)管理
WS 1 WS 3 WS 5
分散(協調処理)管理
トランザクション管理
ワークフロー
ビジネスプロセス・モデル
XML ConsortiumXML Consortium
© XML Consortium
まとめ
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOAへの発展
システムや組織の境界にまたがって接続を行うことによる連携のメリットを享受
Webサービスの適用
既存アプリのSOAPラッピング
WSIFによるプロトコル透過な呼び出し
サービスの再利用によるプロセスの実現
組織内におけるビジネスプロセス実現の効率化
ツールによるプロセス定義
ワークフローエンジン
プライベートUDDIとサービスロケータによる検索
組織にまたがるビジネスプロセスの実現プロセス定義の事業部門への移管
SOAの展開
ビジネスモデリングからメッセージ設計までの一貫した手順の確立
サービス内容による検索
日本での現状はこの段階の半ばか
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
SOA活用のために成すべきこと
1. ビジネスプロセス統合計画の作成(AsIsとToBe)
2. 既存システムのサービス化
3. サービスリポジトリの導入
4. ビジネスプロセス統合基盤(ツール・体制)の整備
5. ビジネスオーナー支援の実現
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
まとめSOAはアプリケーション・アーキテクチャ領域における概念で、特定の技術(Webサービスは技術)や製品に依存しないアーキテクチャ・パターン、デザイン・パターンなどの集合である。
SOAにおけるサービスは、シンプルなビジネス処理を提供するだけでなく、複数のビジネス・プロセス(部品)を組み合わせ統合するためのコネクタとして働く。
SOAは、サービスの実装手段に関与しない。唯一の制約はサービスのインタフェースを普遍的な記述方法により表現することである。
SOAはビジネスとITの橋渡しを担う。
ビジネスはサービスを操縦し、サービスはテクノロジーを駆動する。ビジネスはサービスを操縦し、サービスはテクノロジーを駆動する。
XML ConsortiumXML Consortium
© XML Consortium
よく使われる用語
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
用語(1)
ビジネス・プロセス相互関連したタスクのセットであり,独立した機能間の橋渡しをするアクティビティーを実現するワークフロー作業が始まってから終わるまでたどる道筋のこと。ワークフローは処理ロジックおよび経路指定ルールから構成される。処理ロジックでは,ワークフロー・エンジンで実施された期限や他のビジネス・ルールの他,タスクの順序や従うべき経路指定ルールを定義する。
ビジネス・プロセスとワークフローの関係ワークフロー・ソフトウェアでは,ビジネス・プロセスを作成するわけではない。しかし,ワークフローをビジネス・プロセスに適用すると,ビジネス・プロセスの定義を設計したり,必要なビジネス・ルールの定義を付け加えたりする際に,そのプロセスを確実に明確化することができる。ワークフローは,ビジネス・プロセスに対する「誰が?何を?いつ?」という問いに答える実装を提供する。
プロセス定義ワークフローの処理ロジック要素およびそれらの関係を表した、グラフィカルなプロセス定義、もしくはプロセス・マップのこと。
参考資料:IBM Webサービス分野でのビジネス・プロセスおよびワークフロー等
XM
L C
onso
rtiu
mX
ML
Con
sort
ium
© XML Consortium
用語(2)
ワークフロー管理システムプロセス定義を格納し、ワークフロー・エンジンのコンポーネントを介してこれらのプロセス定義に基づいたジョブを実行するソフトウェア・アプリケーションのこと。ワークフロー・エンジンは、ランタイム実行モジュール。
プロセス定義ツールプロセス定義を作成および変更するために使用するソフトウェア・ツールのこと。そのツールは、ビジネス・プロセス管理ソフトウェアのコンポーネントの1 つであるかもしれないし、スタンドアロンのアプリケーション、またはワークフロー管理システムのコンポーネントの1 つである可能性もある。プロセス定義ツールは、保管されたワークフロー要素、およびすべてのサブプロセスまでも再利用する機能を提供し、ワークフローを構築して他のアプリケーションと統合する際に、一から再度考案する必要がないため、ワークフロー・アプリケーションの開発者の生産性を高めることができる。
ワークフロー構成者次のようなタイプの中のいずれか。リソース・セット、特定のリソース、組織単位、役割 ((組織内での人の機能)、人、もしくはシステム ((自動エージェント)。ビジネス・プロセスでの「誰が?」という問いに対する答えに当たるもの。
アクティビティプロセス定義において1 つの論理ステップを形成するタスクのこと。自動もしくは手動に行うことが可能。