過去問ドリル

LinuCレベル4 システムアーキテクト システムアーキテクチャ 問10

システムアーキテクチャ/アーキテクチャの設計原則と主要パターン

業務アプリケーションの構造を「レイヤー(layer)」と「ティア(tier)」の観点で設計する。説明として適切でないものはどれか。

当サイトのオリジナル問題(LinuCレベル4 システムアーキテクトの出題範囲「システムアーキテクチャ」に対応。実際の試験問題ではありません)

正解:D

解説

レイヤーは責務による論理的な分割、ティアはどのサーバー(プロセス)に配置するかという物理的な分割で、両者は独立した設計判断です。3つのレイヤーを持つアプリケーションを1台のサーバーにまとめて配置することも、複数のレイヤーを1つのティアに同居させることもできます。ティアを分けると、ティアごとの拡張やネットワーク上の隔離がしやすくなる一方、ティア間の通信がネットワーク越しになり遅延や運用対象が増えます。レイヤーの依存方向を一方向に限るのは、変更の影響範囲を閉じ込めるための基本的な設計原則です。

選択肢ごとの解説

  • A誤り(正しい記述)。レイヤーは論理的な分割なので、複数のレイヤーを1つのプロセスに同居させる配置も可能です。
  • B誤り(正しい記述)。ティアを分けると境界にファイアウォールを置けるため、DBを内側のセグメントに隔離する構成が取りやすくなります。
  • C誤り(正しい記述)。上位が下位だけに依存する形にすると、下位の実装を差し替えてもインターフェースが変わらない限り上位は影響を受けにくくなります。
  • D正しい(誤っている記述)。レイヤーとティアは独立した概念で、1対1に対応させる必要はありません。3レイヤーのアプリケーションを1台や2台に配置することもできます。
LinuCレベル4 システムアーキテクトの問題を演習モードで解く