特集

ファットからスマートへ進化する企業システムのクライアント

― マイクロソフトが普及をもくろむ「スマート・クライアント」とは何か? ―

デジタルアドバンテージ
2004/03/31
Page1 Page2 Page3 Page4

 企業システム(業務アプリケーション)はこれまで、コンピュータ技術の発展に伴い常に進化してきた。メイン・フレームにおけるホスト/端末型コンピュータ・システムの時代から、クライアント/サーバ型システム(以降、C/Sシステム)の時代へと移り変わり、さらに現在はWebアプリケーション型システム(以降、Webシステム)が全盛である。

 しかしここ最近、Webシステムに対する問題点が数多く認識されるようになり、時代は企業システムの新たな進化を求めるようになった。こうした時代のニーズに応えてマイクロソフトが普及をもくろんでいるのが、本稿で紹介する「スマート・クライアント」である。

 スマート・クライアントとは一体何なのか? すでにC/SシステムやWebシステムを提供しているベンダに影響/関係があるのか? まずはスマート・クライアントの前提知識として、企業システムの変遷について少し振り返ってみよう。

C/Sシステムの限界とWebシステムの台頭

 現在はWebシステム全盛の時代だと述べた。このようにWebシステムが、従来のC/Sシステムに取って代わり、企業システムを席巻した理由は簡単だ。WebシステムがC/Sシステムの抱える問題をうまく解決してくれたからである。

 一般的にC/Sシステムは、LANなどのネットワーク上に、1つのサーバ・コンピュータとそれを利用する複数のクライアント・コンピュータで企業システムを構成する。C/Sシステムはこの構成のため、サーバ・サイドにデータベースを置き、クライアント・サイドにはアプリケーションを配置して、そのクライアント・アプリケーションに業務の機能/サービスを実現するためのビジネス・ロジック(情報処理)を実装するというパターンが多い。

 このようなシステム形態の最大の問題点は、アプリケーションの展開にある。

 つまり、すべてのクライアントに業務アプリケーションを配布してインストールしなければならない。数台のクライアントならたいした手間ではないが、多数のクライアントにインストールするとなると、かなり大変な作業になる。

 また、業務アプリケーションのバージョン・アップの際にも、すべてのクライアント・アプリケーションを更新する必要がある。C/Sシステムでは、ほとんどのビジネス・ロジックがクライアント・アプリケーションに含まれているため、ビジネス・ロジックをほんの少し変更するだけでも、すべてのクライアント・アプリケーションの更新を徹底しなければならない。しかもそれを、プログラム修正が発生するたびに行う必要がある。さもなければ、クライアントごとでバージョンが統一されず(バージョン不整合になり)、システムを正しく管理できないからだ。

 このようにC/Sシステムは、その構築とメンテナンスでの展開・運用コストが非常に高い。その問題を解決する最良の手段として近年急速に台頭してきたのがWebシステムである。

Webシステムの問題点とリッチ・クライアントの登場

 Webシステムは、機能/サービスを提供するビジネス・ロジック、表示/操作を行うためのユーザー・インターフェイスなど、すべての処理をサーバ側で集中管理する。これにより、クライアントは標準的にインストールされているInternet Explorer(IE)などのWebブラウザを使ってWebサーバにアクセスするだけで、アプリケーションの機能やサービスを実行できるようになる。

 つまりWebシステムでは、システム管理者がクライアントに対してアプリケーションを配布する必要がなく、アプリケーションの更新(バージョン管理)もサーバ側で一括して行うことができる。これによって、特にビジネス・ロジックが頻繁に変るような情報システムでは、展開・運用コストがC/Sシステムと比べてかなり低減する。

 C/Sシステムの反省もあり、Webシステムは多くの企業システムに採用された。しかし実運用を開始すると、展開・運用コストは確かに下がったものの、用途によっては肝心の業務の生産性までも低下してしまうという問題が露呈してきた。その理由は、Webシステムに次のような問題があったからだ。

表現力の低下 ユーザー・インターフェイスの表現力が乏しい
操作性の低下 ・キーボードからの大量かつ高速な入力ができない(入力データを反映させるにはページをリフレッシュする必要があるため、連続的に次々と操作できない)
・マウスによるドラッグ&ドロップ機能が使えない
・キーボードによるショート・カット機能が使えない
機能の低下 クライアント・サイドのローカル・リソース(ファイルなど)を使った処理ができない
非接続性の欠如 必ずネットワークに接続しないと利用できない

Webシステムにおける問題点

 これらの問題点は、Webシステムが企業システムとして定着していくにつれて広く認識されるようになった。それに伴い最近では、従来のC/Sシステムの長所が見直され、再びC/Sシステムの表現力や操作性を取り戻そうという声が大きくなってきている。だがもちろん、ただ単にC/Sシステムに逆戻りするというわけではない。従来のC/Sシステムの利点は生かしながら、そこにWebシステムの経験で培った展開・運用の利便性を持ち込もうというのだ。このような新たな業務システムは一般に「リッチ・クライアント」と呼ばれる。

 この「リッチ・クライアント(rich client)」という用語に対比して、Webシステムにおけるクライアントは「シン・クライアント(thin client)」(“thin”は「薄い」の意)、従来のC/Sシステムにおけるクライアントは「ファット・クライアント(fat client)」もしくは「シック・クライアント(thick client)」(“thick”は「太い」の意)と呼ばれる。リッチ・クライアントという用語は多義的に使われ、ファット・クライアントと同義に使われることもあるので注意が必要だ(マイクロソフトのドキュメントにも多数ある)。

 リッチ・クライアントについて触れる前に、ここまで述べてきた企業システムの変遷を図にまとめておこう。

企業システムのリッチ・クライアントへの変遷

 なお、リッチ・クライアントへの変遷について詳しくは、@IT 情報マネジメントの「Webは生産性を下げる? ブラウザを超える手段とは」が参考になる。

 

 INDEX
  [特集]ファットからスマートへ進化する企業システムのクライアント
   1.従来型システムの限界とリッチ・クライアントの登場
     2.リッチ・クライアントとスマート・クライアントの関係
     3.スマート・クライアントの特長と利便性
     4.マルチ・デバイス、オフライン対応
 


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

業務アプリInsider 記事ランキング

本日 月間
ソリューションFLASH