SOAの定義『SOA―サービス指向アーキテクチャ』から転載(3/4 ページ)

» 2005年06月19日 02時46分 公開
[翔泳社]

 サービスはその属性によっていくつかの種類に分けることができる。前述のとおり、サービスはコンポーネントやモジュールに比べて粒度は大きくなるが、主な形態としてラッパー(Wrapper)と呼ばれる既存のシステムモジュールやデータベースなどをJ2EEや.NETなどのミドルウェアと接続し、Webサービスの通信機能とインタフェースを付加した構成をとる。ラッパーを用いることで、既存のさまざまなシステムをサービスプロバイダ化することができる。

 また、サービスの特徴は「自立性」である。WSDL(Web Services Description Language)によって定義された関数でサービスへ処理を依頼すると、サービスはその内部で処理を完結させ、結果を返す。内部ではいくつかの処理がコンポーネントとして分割されている場合もあれば、1つもしくは複数のビジネスプロセスを保持する場合もある。サービスの実装方法には制限はないが、トランザクションを他との間で共有したり、セッションを共有してステートデータを保持するなどの実装はサービスとは呼ばない。

 次に、SOAの基本構造を現実のシステムアーキテクチャに近い形に置き換

えてみよう。図1.6をご覧いただきたい。

SOA活用のイメージ

 図中央の共通基盤とは、J2EEベースのアプリケーションサーバもしくは同様の機能を提供するミドルウェア製品である。図1.6の下の部分は、企業内の各部門においてさまざまなシステムが運用されている状態を示している。各部門にはそれぞれの目的を実現するための業務システムが運用されており、業務に必要なデータベースも個別に運用されている場合が多い。業務システムは必要に応じてバージョンアップが行われ、新たな機能が追加されるが、現状では他部門との共有は考慮されていない場合が多い。その主な要因として考えられるのは以下の3点である。

Copyright © 2005 BEA Systems Japan, Ltd. All rights reserved

注目のテーマ