米Microsoftや米IBMといった大手ベンダーが次世代戦略の目玉としてWebサービスへの対応を打ち出している。ただ,Webサービスはまだ発展途上の段階にあり,トランザクションやセキュリティなど企業システムで利用するための課題は多い。Webサービス対応自体はそれほど難しくないため,まずはその仕組みやメリットを理解しておけばよいだろう。

 “Webサービス”という言葉を耳にする機会が増えてきた。米Microsoftが2000年6月に発表したMicrosoft .NETに始まり,米Hewlett-Packard,米IBM,米Sun Microsystems,米Oracleなど大手ベンダーの戦略には必ずと言っていいほどWebサービスという言葉が出てくる。2001年6月に開催されたJava開発者会議「JavaOne2001」でも話題の中心にあった。

図1●Webサービスとは何か
Webサービスとは,(1)インターネット上にあらかじめ公開されたサービス(アプリケーション)を,(2)検索して,(3)呼び出す――という仕組み,またはそのような仕組みを備えたアプリケーションのことである。狭義では(1)~(3)の仕組みをXMLやSOAP,WSDL,UDDIなどの技術で実現したものを指す
写真1●Webサービスの開発機能を備えるBorland Delphi 6の画面
開発したアプリケーションからWSDLを自動生成できるほか,SOAPを実装するためのライブラリもあらかじめ用意している。開発者はSOAPやXML,WSDL自体を意識することなくWebサービスを開発することが可能である

 しかし,現状のWebサービスは,トランザクションやセキュリティ面で機能が不足しているほか,運用や開発面のノウハウも欠けている。今すぐにユーザー企業が導入を検討するというレベルにはない。ただ,WebサービスはBtoB(Business to Business)システム構築の標準基盤として本命視されているため,その本質を理解しておくことは重要だ。以下では,Webサービスを利用するメリットおよび現状の課題をまとめた。

ベンダーごとに定義は異なる

 Webサービスが何を意味するかはベンダーによって定義が異なるが,基本的な考え方は共通だ。それは,(1)インターネット上にあらかじめ公開されたサービス(アプリケーション)を,(2)検索して,(3)呼び出すための仕組み,またはそのような仕組みを備えたアプリケーション――ということである(図1[拡大表示])。

 Webサービスの最終的な目標は,このような仕組みを利用することで,インターネットを介して自由に企業間取引を行い,“人”対“システム”ではなく“システム”対“システム”で業務の効率化を図ることにある。また,「各ベンダーがWebサービスにコミットすることで,マルチベンダー環境の通信インフラが実現する」(富士通 ソフトウェア事業本部 アプリケーションサーバソフトウェア事業部 第四開発部 部長の仲川眞弘氏)ため,この共通インフラを活用することでシステム間の連携を短期間で実現できるというメリットも出てくる。

 Webサービスを実装する技術の標準化も進んできた。(1)インターネット上にあるサービスはUDDI(Universal Description,Discovery and Integration)と呼ぶリポジトリで管理,(2)アプリケーションのインタフェースはWSDL(Web Services Description Language)で公開,(3)サービスはSOAP(Simple Object Access Protocol)で呼び出す,(4)データ・フォーマットにはXML(Extensible Markup Language)を使う――という方法である。狭義では,UDDI,WSDL,SOAP,XMLなどの技術で実現したものをWebサービスと呼ぶことも多い。

 既にWebサービス対応の製品も登場し始めた。米Borland Softwareの開発ツール「Borland Delphi 6」はSOAPやWSDLに対応した(写真1[拡大表示])。WSDLを自動生成する機能,取り込んだWSDLからスタブを自動生成する機能,SOAPをハンドリングする機能などを備える。基本的にSOAPやWSDL,XMLなどをそれほど意識しなくてもWebサービス対応のアプリケーションを開発できる*1

(榊原 康=sakakiba@nikkeibp.co.jp)