ヘッドラインを見ていたらIBMのSOAポータルに「SOAをたとえて言うと、SOAの類似、SOAをなじみの表現で」というPDFファイルがありました。ゴルフのクラブ、洋服ダンス、サッカーチームの戦略、コンポーネントステレオなどの組み合わせに関する示唆です。内容についてコメントは避けておきます。(いろいろな表現の仕方があるものだと感心したことは確かです。)
SOAを何とか理解するために、いろいろな説明をしなければならないのですが、一貫性ということも重要なポイントではないかと思います。SOAのたとえとは観点も言い方も違いますが、「What SOA isn't ?(SOAでないもの?)」というタイトルで、2004年の夏ごろ(だったと思います)にアイオナのSteve Vinoskiが表現した言い方があります。「SOAをたとえて…」を見て思い出したのでご紹介します。
What SOA isn't
Summon Our Architecture : SOAは貧弱な設計のシステムを魔法を使って簡単に生き返らせるようなものではない。
State Of the Art : SOAはなにも目新しい考え方ではない。ただ、今のサービス指向はメッセージングに焦点を当てていることが重要である。
Same On All, or Scrap Old Applications : SOAはこれまでの独自開発のシステムをなんでも連携しなければならないということではない。しかし、企業の中の異機種混合状態の改善をサポートする。
Services On Appservers : サービスはメッセージを中心に考えるべきものであり、実装方法やバックエンドの構築の議論からはじめるべきではない。
SOAP-Only Applications : SOAPはサービス指向を促進してきたし、中心的な技術にはなっているが、さらに、WSDLはマルチ・プロトコル上のサービスの抽象化を定義できる。これによってレガシーシステムと連携が可能となる。
Stateless and Only Asynchronous : ステートレスな非同期サービスのスケーラビリティは期待できるが、ステートフルな同期サービスも多くのケースで必要となる。
Standards Of Age : サービス指向の標準化は進んでいないが、幸いにもWS-* に関わるベンダはたくさんいる。
Service-Oriented Architecture : 厳密に言えば、そこにはアーキテクチャは存在しない。いわば、サービス指向アプローチである。
最後の一行は皮肉がだいぶ入っていますが、示唆に富んだ表現と思います。SOAについてはビジネスとITの融合という観点もあり、Vinoskiの言うSOAは、SOAを支える基盤に焦点を当てています。これがSOAだと言っていないところが、2年前の苦しい状況を表していると思います。「これがSOAだ!」は今後明らかにしていきたいと思います;-)
江川
