基本情報 平成27年度 春期 問13:テクノロジ系に関する問題
2 層クライアントサーバシステムと比較した 3 層クライアントサーバシステムの 特徴として, 適功なかものはどれか。
- aクライアント側で業務処理専用のミドルウェアを採用しているので, 業務処理 の追加・変更などがしやすい。
- bクライアント側で業務処理を行い, サーバ側ではデータベース処理に特化でき るので, ハードウェア構成の自由度も高く, 拡張性に優れている。
- cクライアント側の端末には, 管理が容易で入出力の GUI 処理だけを扱うシンク ライアントを使用することができる。正答
- dクライアントとサーバ間で SQL 文がやり取りされるので, データ伝送量をネッ トワークに合わせて最少化できる。
AI解説(初心者・標準・上級)
理解度に合わせて3レベルの解説を無料で読めます。
答えは c「端末は画面表示だけのシンクライアントが使える」です。
2層と3層の違いは「役割の数」。2層は[クライアント][サーバ]の2つ。3層は[画面][業務処理][データベース]の3つに分けます。
3層にすると、端末は画面を出すだけでOK。中の重い処理はサーバ側でやるので、端末は軽くて済む(=シンクライアント)。
👉 覚え方:3層=画面・業務・DBに分業=端末は軽くなる。
ほかの選択肢:a/b はむしろ2層の特徴/d SQLが端末まで流れるのは2層の話。
なぜこれが正解か
正解は c。3層クライアントサーバ(プレゼンテーション層・ファンクション層・データ層)はビジネスロジックをサーバ側のアプリケーションサーバに集約するため、クライアント端末はGUI処理のみを担当するシンクライアント(Thin Client)構成が可能。Webブラウザベースのシステムも実質3層型。
各選択肢の解説
- a 誤り:クライアント側に業務処理用ミドルウェアを置くのは2層型の特徴。
- b 誤り:クライアントで業務処理を行うのは2層型。3層ではアプリ層がサーバ側で処理。
- d 誤り:SQL文がクライアント⇔サーバ間でやり取りされ、結果セットが大量に流れるのは2層型の弱点。3層ではアプリ層でデータを加工してから返す。
覚え方・ひっかけ注意
3層は「プレゼン(画面)/ファンクション(業務)/データ(DB)」と機能分離。ビジネスロジック変更時にクライアント配布不要が最大メリット。2層は「ファットクライアント(端末が太い)」、3層は「シンクライアント(端末が薄い)」という対比で記憶する。
理論的背景
3層アーキテクチャ(Three-Tier Architecture)は、ガートナーが1990年代に提唱したエンタープライズアプリケーション設計パターン。プレゼンテーション層(UI)・ビジネスロジック層・データアクセス層を物理的・論理的に分離することで、(1) スケーラビリティ(各層を独立にスケールアウト可能)、(2) 保守性(変更影響の局所化)、(3) セキュリティ(DBへの直接アクセス遮断)を実現する。
実務での使われ方
現代のWebアプリケーションは典型的な3層構造:ブラウザ(プレゼン)→ APサーバ(業務ロジック:Tomcat/Node.js)→ DBサーバ(PostgreSQL/Oracle)。マイクロサービスアーキテクチャはこれをさらに細分化し、各層内でも複数サービスに分割する「N層型」。SaaSではこの構造を前提にマルチテナント設計を構築する。
試験での位置づけ
基本情報・応用情報の頻出論点。アプリケーションサーバ(AP server)・MVCモデル・ロードバランサ・リバースプロキシなど周辺概念とセットで出題される。応用情報ではマイクロサービス・サービスメッシュ・コンテナ(Docker/Kubernetes)との関連、ITストラテジでは「クラウドネイティブ」「12 Factor App」の文脈でも問われる。
選択肢の発展補足
- 2層型の弱点:(1) DBへの直接接続でセキュリティリスク、(2) クライアント配布のコスト、(3) SQL文が露出しSQLインジェクションリスク。
- シンクライアントの派生形:(1) ゼロクライアント(端末にOSすら持たない)、(2) VDI(仮想デスクトップ基盤:Citrix/VMware Horizon)、(3) クラウドデスクトップ(Amazon WorkSpaces/Azure Virtual Desktop)。テレワーク普及で再注目。
- MVCパターンとの対応:Model=データ層、View=プレゼン層、Controller=ビジネス層(ただし厳密には責務分離が異なる)。
出典:IPA(情報処理推進機構)公式 基本情報技術者試験 平成27年度 春期 問13/ 公的機関配布資料につき出典明記の上引用。解説は合格ナビによる独自AI解説です。