システムアーキテクチャのトレンドは、コンピューティング技術の進歩に合わせて変化を遂げてきた。80年代には、ホストコンピュータを中心とする中央集権型のシステムが、信頼性の高さやメンテナンスの容易さといったメリットから一般的なものとなっていたが、その後のオープン化の流れの中で、ハード、ソフト、運用管理にかかるコストの高さが浮き彫りとなり、徐々に主役の座を譲ることになる。デスクトップPCの機能向上や低価格化、オープン化の流れによって、90年代前半に注目を集めたのが、いわゆる「クライアント/サーバ型」と呼ばれる分散型のアーキテクチャだ。個々のPCに配備されたクライアントソフトウェアがプレゼンテーションと一部の処理を受け持ち、サーバ側でビジネスロジックの実行とデータの処理を行うスタイルは、システム負荷の分散という観点や、ハード、ソフト面でのコストメリットの大きさなどから支持を集める。
その後、90年代半ばからのインターネットの急速な普及をきっかけに登場したのが「ウェブ型」のシステムである。ウェブ型のシステムでは、広く一般に普及したウェブブラウザを軽量なクライアントソフトとして利用する。ウェブブラウザが受け持つのは、基本的にHTMLやスクリプトとしてサーバから受け取ったユーザーインターフェースの表示と、そこにユーザーが入力したデータの送信となる。クライアント/サーバ型でクライアント側に分散した機能の大部分は、再びサーバ側へと集約されることになった。ウェブブラウザは、その軽量さから「シンクライアント」とも呼ばれ、従来のクライアントソフトは、それとの対比で「ファットクライアント」などとも呼ばれるようになる。ウェブ型のアーキテクチャを採用するメリットは、これらの特徴に由来するシステム管理負荷の低減をはじめとして、オープンな技術をベースにすることによるコストの低さ、展開範囲の広さなどが挙げられる。
さて、ウェブ型のアーキテクチャは現在に至るまで多くのシステムで採用されているが、その登場を追うように現れて発展を続けているのが「リッチクライアント」と呼ばれるものだ。ウェブブラウザベースのシンクライアントには前述したようなメリットがあるものの、さまざまなシステムに採用される中で、いくつかのデメリットも見えてきた。それは例えば、ウェブブラウザの仕組みに由来する頻繁な再読込の発生や、HTMLとスクリプトをベースとした静的かつ貧弱なユーザーインターフェースによる作業効率の低下といった問題である。リッチクライアントは、こうした問題に対する解決策として登場してきた。
リッチクライアントでは、ウェブ型システムのメリットであるインターネットのオープンな技術をベースとしつつ、従来のクライアント/サーバ型システムと同等以上に扱いやすいユーザーインターフェースや、本来、ブラウザ単体では実現が難しいインタラクティブなプレゼンテーションの実現を目指す。早期からリッチクライアントに取り組んでいるベンダーの多くは、ウェブブラウザのプラグインや、ブラウザ経由でインストールできるランタイムの形式で実行環境を配布し、それを利用するウェブアプリケーション開発のためのフレームワーク、開発環境を提供してきた。また、さまざまなユーザーのニーズを取り入れた機能拡張も続けられている。
しかし近年、こうしたリッチクライアントを巡る状況に、新たな潮流が生まれつつある。「Ajax(Asynchronous JavaScript+XML)」と呼ばれる方法論の登場だ。Ajaxでは、XHTML、CSS、JavaScript、DOM、XMLHttpRequestといった既存の標準化された技術を組み合わせて用いることにより、一般的なウェブブラウザ上で従来のブラウザベースのウェブアプリケーションよりも格段にインタラクティブなユーザーインターフェースを構築できる。既存技術の組み合わせによって構成される「Ajaxエンジン」が、ウェブサーバ、XMLサーバと非同期通信を行って、ブラウザの再読込を行わずとも、ユーザーの操作にリアルタイムに反応するアプリケーションを実現できる。これは、従来よりリッチクライアントが目指していた方向性の一部を、ブラウザのみのクライアント環境で可能とする。
Google Mapsなどに代表されるAjaxアプリケーションの登場によって、その方法論は一躍脚光を浴び、先進的な開発者は、Ajaxによるアプリケーション開発に本格的に取り組みつつある。また、大手、新興を問わず、Ajax開発を支援する開発環境の提供を行うベンダーも現れ始めた。
リッチクライアントを巡るこうした新たな動きの中で、従来からこの市場に取り組んできた各ベンダーは、どのような方向を目指すのだろうか。この特集では、アドビシステムズ(アドビ)、アクシスソフト、日本IBMの3社に、変容を続けるリッチクライアント市場への取り組みを聞く。