Subject   : SOA (service-oriented architecture)

カテゴリー : ビジネス


  SOA (service-oriented architecture)
 サービス指向アーキテクチャの略で、企業内のアプリケーションが業務的に意味のあるサービスという単位で整理されアクセスできることで、複数の組織がビジネス・ロジックやデータを再利用・共用できるようになり、開発期間の短縮、コスト削減などが可能になるメリットを享受できることを目標としたアーキテクチャ。

 ビジネスプロセスの構成単位に合わせて構築・整理されたソフトウェア部品や機能を、ネットワーク上に公開し、これらを相互に連携させることにより、柔軟なエンタープライズ・システム、企業間ビジネスプロセス実行システムを構築しようというシステムアーキテクチャのこと。
 ここでいう“サービス”とは、ほかのコンピュータから利用可能となるようにネットワーク上にインターフェイスを公開したソフトウェアという意味とであるのと同時に、「注文受付」「信用照会」「在庫確認」「出庫指示」「請求処理」などといった“ビジネスプロセス上の処理単位”を示している。
 すなわちSOAは、標準的なインターフェイスを持った再利用可能なソフトウェア部品の組み合わせによってシステムを構成するという“コンピュータシステムの作り方”であるとともに、独立して運営されるビジネスファンクションの組み合わせによってビジネスプロセスを構成するという“ビジネスシステム構築手法”という側面がある。

 全体システムを“組み合わせ”によって構築することによって、外部の“サービス”を新たにプロセスに組み込んだり、不要な“サービス”を外したりといった形で、プロセス変更が容易かつ柔軟に行えることがメリットとなる。また、(外部ソフトウェアからの)リクエストに対して処理結果をサービスとして返すスタイルであるため、ソフトウェアモジュールをデリバリ(配布)する必要がなく、ソフトウェア管理やメンテナンスの労力が軽減できる。
 コンピュータシステム・アーキテクチャとしてのSOAを実践するためには、構成要素となるソフトウェア・サービスは、標準化されたインターフェイスを実装している必要がある。1企業のエンタープライズ・システムのようなクローズドなシステムであれば、社内の標準としてプロトコルやデータ形式を定めればよいが、広範な社外連携を想定するならばグローバルな標準技術を採用することになる。
 その最右翼がWebサービスで、WebサービスがSOAの代名詞のように使われることもある。また、レガシーシステムのサービス化、サービス同士のビジネスプロセス制御などの機能を持つシステムインフラ製品としてEAI/BPM/ESBなどが登場している。
 SOAの発展には、いくつかの段階があるとされる。第1段階はきちんと記述言語で定義されたサービスが、統一されたインターフェイスで静的に相互に接続し、イベントドリブンに動作するフェイズ、第2段階はビジネスプロセス定義に基づいてサービス同士が統合されるフェイズ、第3段階がUDDIのようなサービスブローカによって、サービス同士が動的に協調・連携する“コンポジット・アプリケーション”が実現されるフェイズだという。単にサービス同士の接続によるシステム構築アーキテクチャは、サービスベース・アーキテクチャ(SBA)と呼び、区別すべきだとする意見もある。

 ⇒ CSF(クリティカルサクセスファクター)

[メニューへ戻る]  [HOMEへ戻る]  [前のページに戻る]