ソフトウェア20年間の歴史とミドルウェア
――早速ですが、ミドルウェアの世界は現在どのような状況にあるのでしょうか? 製品としてはかなり成熟の進んだ分野であるため、例えば、最新の機能などを見ていても非常に複雑化している印象を受けます。
最近、お客様から非常に多く寄せられる質問です。結論から言うと、ミドルウェアは大きな転換点に立っています。個別の機能を紹介するよりも、ソフトウェアの全体像のどこにマッピングされるのかをお話しした方が最新の動向も理解しやすいと思いますので、まずは、この20年間の概況を振り返るところから始めましょう。
1990年代前半は、クライアント・サーバーの大波がIT業界を被い、さまざまなプロセス間、システム間連携技術が群雄割拠した時代と言えます。多くのベンダーが独自のアイディアを提唱し、業界の主導権を巡ってしのぎを削った。その中で、あるアイディアは生き残り、あるアイディアは淘汰されました。
IBMもそのベンダーの一つとして、失敗もあれば成功もあったわけですが、OMG(Object Management Group)のCORBA (Common Object Request Broker Architecture)は、現在のJava EEを支える技術として今でも現役で活用されています。CORBAは、さまざまなアプリケーションを異なるベンダープラットフォーム環境下で連携させる機能を持ち、現在でも多くのミッションクリティカルなシステムがこの仕組みの下で稼働しています。
さて、1990年代中盤にインターネットの商用化が開始されると、Web上でさまざまなサービスを展開するニーズが生まれます。1990年代後半から2000年代前半はWebシステムを前提とした標準化の時代と言えます。インターネット上で様々なシステムが稼働すると、必然的に連携のニーズが生まれます。そこで、Webシステムがよりスムーズに連携できるようにするために、ベンダーが協力し合って統一した標準を作る動きが出てきます。
例えば、XMLを利用してデータをやりとりするために、SOAP (Simple Object Access Protocol)が生まれ、その後、SOA(Service Oriented Architecture)を実現するベース技術になっていきます。アプリケーションを標準技術上で稼働させることで、多様なビジネス用途に応えるシステムを素早く作り上げるためにミドルウェアは重要な役割を果たします。要素技術の標準化が進む一方で、各社はミドルウェアの性能の向上に努めました。
この標準化の時代にあって、IBMは標準化の策定やオープンソースソフトウェアの開発にもっとも貢献した企業の一つといえるでしょう。例えば、Javaを使ったシステム開発では、デファクトスタンダードとなったEclipse (統合開発環境)が生まれたのもこの頃です。
――なるほど。そうした流れを受けて、現在はどのような状況にあるのでしょうか?
ミドルウェアは、今やOSと同じような存在になりつつあります。コモディティ化しつつあるといってもいいでしょう。もちろん、それはミドルウェアの価値が低下したとか、存在感が薄れたという意味ではありません。現在、ミドルウェアを使用しないシステムはほとんどありません。重要だからこそ、存在そのものが所与の前提、当然のこととして認識されるようになったということです。
ハードウェア、OSと進んできた標準化とコモディティ化の流れがミドルウェアにまで及び、今やIT担当者の視点はより上位のビジネスレイヤーに移っています。ITがビジネスに直結する現在の環境にあって、ユーザー企業が求めているもの。それは複雑なビジネス要件を満たし、安定的に稼働するシステムを素早く構築すること。既存のIT資産を有効に活用しつつ、ビジネスの変化にも迅速に対応させる柔軟性を持たせることです。
IBMのミドルウェアの歴史を振り返ってみると、オブジェクト指向に注目した1990年代、サービス志向に力を注いだ2000年代という時を辿ってきています。この間に培ってきた基盤技術があるからこそ、ビジネスを強固、かつ柔軟に支えることができるのです。