用語集
n階層システム
システム設計において、複数の階層に分けたアーキテクチャのこと。「エヌ階層システム」と呼ばれる。初期の業務アプリケーションにおいては、クライアントやサーバという概念がない単一のものだったが、高性能でオープンなOSが登場し、重要で複雑な処理を行ってその結果を返すサーバ(英語で召使の意)と、サーバからの処理結果を受け取るクライアント(英語でお客さまの意)という2階層のアーキテクチャが主流となった。これを「2階層システム」または「クライアント/サーバ」(「C/S」と表記されることもあるが、読み方は「クライアントサーバ」が一般的)という。
ただしクライアント/サーバの場合、クライアント側でもある程度の処理を行う必要があった。例えば、ある業務アプリケーションを起動し、画面を表示したり、入力や計算を行ってその結果を返すのもクライアント側のプログラムで、サーバはクライアント側のプログラムの管理・制御やデータベースの管理を行う役割がメインだった。そのため、バージョンアップなどの際には、クライアント側プログラムを1つひとつ手直しする必要があり、運用負荷がかかるという問題があった。
そこで登場した3階層システムは、エンドユーザーに見える画面「プレゼンテーション層」と、計算など業務処理を行うプログラム「ビジネスロジック」と、「データベース」と3階層に分け、クライアント側にはプレゼンテーション(画面表示)機能しか持たせないというアーキテクチャ。具体的には、Webブラウザなどの画面から、サーバ側にある入力や計算といった処理を行うビジネスロジックやデータベースにアクセスするというもので、これにより運用負荷工数が大きく削減された。こうしたアプリケーションのビジネスロジックを受け持つサーバを「アプリケーションサーバ」という。登場時は「Webアプリケーションサーバ」と呼ばれており、現在でもアプリケーションサーバとWebアプリケーションサーバはほぼ同義と考えてよい。ただWebアプリケーションサーバと言った場合、主にJava(J2EE)によるビジネスロジックの開発・実行環境を指すこともある。
この3階層システムは、現在ほとんどのシステムで採用されているが、主にWebブラウザをインターフェイスに据えていたことから、クライアント側の機能が制限される(Webブラウザで実装できる機能しか使えない。例えばファンクションキーの機能を、Webブラウザの入力フィールドに当てはめることはできない、など)ため、使い勝手にやや難があるという指摘もあった。それを打破するために登場したのが、「リッチクライアント」という技術群である。なお、プレゼンテーション機能しか持たないクライアントソフトのことを「プアクライアント」もしくは「プアアプリケーション」と呼ぶこともある。
ただしクライアント/サーバの場合、クライアント側でもある程度の処理を行う必要があった。例えば、ある業務アプリケーションを起動し、画面を表示したり、入力や計算を行ってその結果を返すのもクライアント側のプログラムで、サーバはクライアント側のプログラムの管理・制御やデータベースの管理を行う役割がメインだった。そのため、バージョンアップなどの際には、クライアント側プログラムを1つひとつ手直しする必要があり、運用負荷がかかるという問題があった。
そこで登場した3階層システムは、エンドユーザーに見える画面「プレゼンテーション層」と、計算など業務処理を行うプログラム「ビジネスロジック」と、「データベース」と3階層に分け、クライアント側にはプレゼンテーション(画面表示)機能しか持たせないというアーキテクチャ。具体的には、Webブラウザなどの画面から、サーバ側にある入力や計算といった処理を行うビジネスロジックやデータベースにアクセスするというもので、これにより運用負荷工数が大きく削減された。こうしたアプリケーションのビジネスロジックを受け持つサーバを「アプリケーションサーバ」という。登場時は「Webアプリケーションサーバ」と呼ばれており、現在でもアプリケーションサーバとWebアプリケーションサーバはほぼ同義と考えてよい。ただWebアプリケーションサーバと言った場合、主にJava(J2EE)によるビジネスロジックの開発・実行環境を指すこともある。
この3階層システムは、現在ほとんどのシステムで採用されているが、主にWebブラウザをインターフェイスに据えていたことから、クライアント側の機能が制限される(Webブラウザで実装できる機能しか使えない。例えばファンクションキーの機能を、Webブラウザの入力フィールドに当てはめることはできない、など)ため、使い勝手にやや難があるという指摘もあった。それを打破するために登場したのが、「リッチクライアント」という技術群である。なお、プレゼンテーション機能しか持たないクライアントソフトのことを「プアクライアント」もしくは「プアアプリケーション」と呼ぶこともある。
関連用語
| ・リッチクライアント |






