こんにちは、花粉症と風邪のダブルパンチで頭が回らない岩崎です。今回は予定を変更して、「SOAは死んだ」という話題が面白かったので、その話をひとつ致します。

"SOA is dead."

仕事柄、雑誌連載の打ち合わせやインタビュー(という名の編集協力)で編集者さんと会話する事が多いのですが、とある編集さんと話しているときの事です。

「この間"SOA is dead."というBlogの記事が出て話題になってたんですよ。岩崎さん知りませんか?」

「いや、知らないんですが・・・それ何ですか?」

なんてやり取りがありました。このあと編集さんから概略を聞いた私は、それ本当だろうか!? と思い、調べてみると確かに話題になっています。

January 05, 2009 SOA is Dead; Long Live Services (SOAは死に給ふた、サービス群万歳)

この記事、正月の5日に掲載されており、丁度盛り上がっていたその頃、私は実家の九州から長距離移動中でした。丁度お祭りに参加できず残念な気もしております。

さらに調べると、他の方のBlogでは独自にまとめをされている記事もあり、大変参考になりました。有り難うございます。日本語の関連記事もありましたので、ここに一例を挙げておきます。

InfoQ: 討論: SOAは死滅したのか?

この"○○○ is dead. Long live ○○○."というのは一種慣用句のようで、元々は"Le Roi est mort, vive le Roi!"の英訳として、"The King is dead. Long live the King!"が存在する、との事でした。この言葉は王様の即位時に発せられる言葉で、前王の不在の場合に(継承性などを意図して便宜的に)発せられるのだそうです。

その言葉の発せられるべき状況なども含めて意味深な感じも受けますが、まずは表記どおりに受け取っておきましょう。

The King is dead. Long live the King! - Wikipedia

SOAは死んだ

さて、ここで話題になってるSOAですが、いわゆる初期の「SOA」を意図しているのではないか、という私の解釈です。

初回の記事にも書きましたが、「SOA」はその初期について製品主導のマーケティング用語でした。いわゆる製品を売るための言葉です。「奥さん、○○○という新製品出ましたよ。えっ、知らないの? 皆さんもう使ってますよ!」というアレです。

こうした単語は、流行があれば廃りもある訳で、「SOA」も既にそのような段階に入っているのではと感じます。流行りすぎたあと完全に飽きられて見向きもされないという事ならまだ良いのですが、SOAの場合そこまで流行ったかというと疑問です。

またその中身についても、蓋を開けてみればSOA対応製品というのはあまり売れてなく、その製品事例も決して多くない、というのが結果のようです。メーカー側が投じたお金と比較しても、マーケティング目的の「SOA」は結果的に失敗と見ても良いでしょう。

こうした欧米流の荒っぽい経済活動はえてして反発を招きやすく、SOAという単語に拒絶反応を示される方も相当多い、と感じます。これまでの経緯を考えれば、それもまた致し方ありません。むしろ初期からSOAに本気で取り組まれていればいるほど、その落胆の程合いも窺い知れる訳で、ある意味当然でしょう。

つまり、「SOA」という単語が死んだ、というBlog記事が出ても不思議ではなく、それはそれでむしろ当然だろう、というのが筆者の意見です。

ちなみにこの記事は、その元ネタである慣用句の用途(即位の為の便宜的な宣言)で暗喩して、「SOA」はそもそも(有益なものとして)存在しなかったのだ、とまで言っている感じも受けます。痛烈ですね。

"Long live Services" (サービス群万歳)

このような現象は何を意味しているのでしょうか。筆者は、純粋な意味での「サービス指向」の萌芽ではないか、と捉えることができるだろうと考えています。フワフワとした掴み所のないマーケティング主導ではなく、地に足の付いた技術としてのサービス指向です。

サービス指向(Service-oriented)とは、サービスを指向する考えという意味です。広辞苑第六版によれば、指向とは「(1)ある方向をめざして向かうこと。(2)ある方向にさしむけること。」と記されています。つまりサービスの存在を強烈に意識しながらシステムを考えましょう、設計しましょうというものです。

例えば昨今ではクラウドやSaaS、Web2.0など多くのマーケティング用語が再び跋扈しています。まるで「雲」のようにモヤモヤとしているそれらの単語、この「サービス指向」のひとつの具象と捉えれば途端にすっきりします。

図

クラウドやSaaSなどを、ひとつのサービスとして捉えると、それらを有効に使いこなすためには、他のクラウドや社内システムなどと併せて連携動作させるのが望ましいのではないか、と連想できます。

一歩引いて俯瞰すれば、その姿はサービス指向と同じではないでしょうか。

オブジェクト指向もその萌芽から普及まで相当な時間がかかりました。サービス指向も多くの利点についての一致した認識が形成されるまでの歩みを、一歩ずつゆっくりと始めているように思えます。皆様はどうお考えでしょうか?