IPA過去問ドリル

令和3年度 秋期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問21

テクノロジ/開発技術

ヒューマンインタフェースをもつシステムにおいて,機能とヒューマンインタフェースの相互依存を弱めることによって,修正性や再利用性を向上させることを目的としたアーキテクチャパターンはどれか。

出典:令和3年度 秋期 エンベデッドシステムスペシャリスト試験 午前Ⅱ 問21

正解:ア

解説

MVC(Model-View-Controller)は,アプリケーションをデータとビジネスロジックを扱う Model,画面表示を扱う View,利用者からの入力を受けて Model と View を仲介する Controller の三つの役割に分離するアーキテクチャパターンです。機能(Model)とヒューマンインタフェース(View,Controller)を分離することで,互いの相互依存を弱め,一方を変更しても他方への影響を抑えられるため,修正性や再利用性の向上につながります。

選択肢ごとの解説

  • 正しい。MVC は,機能を担う Model と,ヒューマンインタフェースを担う View・Controller とを分離することで,両者の相互依存を弱め,修正性や再利用性を高めるアーキテクチャパターンです。
  • 誤り。イベントシステムは,イベントの発生とそれを処理するハンドラとを疎結合にする仕組みであり,機能とヒューマンインタフェースの分離を主目的としたアーキテクチャパターンではありません。
  • 誤り。マイクロカーネルは,中心となる最小限のカーネル機能と,追加機能を提供する外部のサーバ(プラグイン)とを分離するアーキテクチャパターンであり,ヒューマンインタフェースとの分離を主目的とするものではありません。
  • 誤り。レイヤは,システムを階層状に分割し,各層が下位層のサービスを利用する構成にするアーキテクチャパターンであり,機能とヒューマンインタフェースの相互依存を弱めることを直接の目的とするものではありません。
エンベデッドシステムスペシャリストの過去問を演習モードで解く