特集
» 2005年11月24日 07時55分 公開

SOAは情報システムをどう変えていくのかSOAでつくる変幻自在の情報システム(1/3 ページ)

SOAは基本的にはWebサービスの技術に基づいている。そこで、ここでは改めてWebサービスの技術について確認しておこう。

[渡邉利和,ITmedia]

 SOAで企業の情報システムはどのように変化するのか。オンラインムック「SOAでつくる変幻自在の情報システム」で探る。

渡邉 利和

 現在話題になっているSOA(Service Oriented Architecture:サービス指向アーキテクチャー)は、基本的にはWebサービスの技術に基づいている。そこで、ここでは改めてWebサービスの技術について確認しておこう。

 Webサービスを成り立たせている技術的な要素には、SOAP(Simple Object Access Protocol)とWSDL(Web Service Description Language)、さらに汎用データフォーマットとしてのXMLがある。大雑把に紹介すると、「ネットワーク上に存在するコンポーネントのインタフェース仕様を“WSDL”から読み取り、“SOAP”を使ったアクセスで“XML”データをやり取りする」というのがWebサービスの基本的な動作だ。

 プログラマー的な視点で見れば、これは単なるオブジェクトの呼び出しであり、やり取りするメッセージが基本的にはXMLデータだという点に着目すると、XMLデータを変更するための仕掛け、ということもできるかもしれない。外部に用意されたソフトウェアコンポーネントを必要に応じて呼び出す、という根本的な機能でいえば、Webサービスも本質的にはサブルーチンコールであり、関数呼び出しであるともいえる。

 Webサービスが「インターネット対応のRPC(Remote Procedure Call)」と言われたのも当然のことだ。この視点からは、どこまで行っても「(アプリケーションの)外部にあるソフトウェアコンポーネントの呼び出し」であり、「サービス」という視点は出てこない。

 Webサービスを「サービス」としてとらえるのは、アプリケーションの機能をサービスとしてとらえようという大きな時代的な流れも影響している。この一部は、アプリケーションのサブスクリプションモデルとして定着しつつある。アンチウイルスソフトウェアなどではソフトウェアの更新を1年契約で行うのが一般化しており、ユーザーの意識からもパッケージソフトウェアを購入しているというよりも「ウイルス対策サービスを契約している」ととらえる方がむしろ自然といえる状況だ。

 同じような発想をエンタープライズアプリケーションに導入することで、アプリケーションの実装の内部に関与するのではなく、サービスとして利用できるようにしたい、という意識はユーザー側に強く、これの発展系として「ユーティリティコンピューティング」という概念も具体化しつつある。

 Webサービスは、SOAP、WSDL、XMLといった標準を確立することで、ソフトウェアコンポーネントを呼び出す際のインタフェースを標準化した。これによって外部コンポーネントを呼び出す際にアプリケーション側の実装を逐一調整する作業量は削減でき、確かにサービスとして利用できるための基礎技術は出来上がったといえる。

       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ