“だが,表層的な違いに惑わされず,本質を見ると,両者はかなり似通っていることに気付く。
SOAはアプリケーションを複数のサービスとして開発し,ネットワーク経由でサービス同士を連携させるモデル。連携にはSOAP(Simple Object Access Protocol)などXML(eXxtensible Markup Language)の技術が使われることが多い。
一方,Web2.0の重要な概念の一つである「マッシュアップ」は,他社が公開しているサービスを使って新サービスを作り出すモデルだ。他社のサービスの利用にはSOAPやREST(REpresentational State Transfer)など,やはりXMLの技術が使われる。技術的に見れば,SOAとWeb2.0(のマッシュアップ)は分散アプリケーションを実現するという意味でそっくりである。 ”あまりにタイトルがキャッチーなので、思わず反応した人も多いようだが、的を射た話ではある。
少なくとも、ネット上にXMLが氾濫して、その連携でシステムが出来るというのは、SOAもWeb 2.0も同じだ。
SOAでのサービスの連携を、マッシュアップと言い換えて何が悪い!という話である。コンピューティングは、ネットワーク上で行われるようになったのであり、ローカルのPC等は端末に過ぎなくなる。
結局のところ、大事なのはSOAとかWeb 2.0とかの言葉ではなく、コンピューティングの舞台がローカルからネットワーク上に移ったということ。
そうしたパラダイムシフトを、違う文化圏からの視点で述べようとしたので、SOAとWeb 2.0という2つの言葉が発生したのだろうと、自分は思っている。ただ、根本的な技術論としては似ていても、背景にある文化が違う故に、具体的な技術論にも差が出ている。
例えば、RESTとSOAPだろうし、WS-*のような複雑な技術が必要になる所以だ。Web 2.0とSOAを分断しているのは、梅田望夫氏が言うように「開放性とトレードオフ」だと思う。
Web 2.0が企業システムの世界で受け入れられるには、企業システム側が開放性とトレードオフを了解しなければならない。
しかし、企業システム側では、とりあえずは了解できない話なのであり、よってSOAに存在意義がある。“両者が今後融合してゆくのか。それとも一方がもう一方を飲み込むのか。それはまだ分からないが,今後1年くらいはWeb2.0 vs SOAの“主導権争い”が起こるのではないかと予想したい。”
と、この記事は締められているのだが、主導権争いというよりは、企業システムが開放性とトレードオフを了解できるかということに過ぎないのだろう。
OKならWeb 2.0で良いし、NGならSOAを持ち出すしかない。