SAシステムアーキテクト試験 午前Ⅱ
令和元年度秋期 システムアーキテクト 午前Ⅱ 問3
問題文と選択肢を読んで答えを考えてから、下の「正解と解説を見る」で確認しましょう。
問題
選択肢
- アJavaのパターンとして引数オブジェクト,オブジェクトの可変性などで構成される。
- イオブジェクト指向開発のためのパターンとして生成,構造,振る舞いの三つのカテゴリに分類される。
- ウ構造,分散システム,対話型システム及び適合型システムの四つのカテゴリに分類される。
- エ抽象度が異なる要素を分割して階層化するための Layers, コンポーネント分割のための Broker などで構成される。
解き方のヒントを見る
設計上の目的に着目して考える
ソフトウェア設計を学ぶ際は、設計上の工夫が何を目的としているかに着目しましょう。用語からすぐに結論を出さず、目的に関する記述と自分の理解を分けて整理すると、考える軸を保てます。
この問題で問われていること
検討の観点は、設計の目的をどう捉えるかという一点に絞ります。名称から連想した内容をそのまま当てはめず、与えられた情報の中で目的について分かることと、まだ判断できないことを整理しましょう。
視点
設計の目的は、検討の軸を定めるための観点です。目的に関して読み取れる内容を短く言葉にし、用語の印象だけで補っていないかを確かめましょう。
確認ポイント
- 設計の目的に着目しているか
- 目的の捉え方に記述上の根拠があるか
- 目的を用語の印象だけで補っていないか
正解と解説を見る
正解
イ
解説
正解はイです。GoFのデザインパターンは、オブジェクト指向設計で再利用できる23種類のパターンをまとめたもので、生成、構造、振る舞いの三つのカテゴリに分類されます。
理由
GoFは、オブジェクト指向設計で繰り返し現れる問題への解決策を23種類のデザインパターンとして体系化しました。生成はオブジェクトの作り方、構造はクラスやオブジェクトの組合せ、振る舞いは責務の分担や相互作用を扱います。選択肢イの本文は、この用途と分類を正しく説明しています。
比較
アはJavaでの実装技法に関する説明です。ウの四分類はアーキテクチャパターンの分類であり、GoFの三分類とは異なります。エのLayersとBrokerもアーキテクチャパターンで、GoFの23種類には含まれません。設問自体は分類軸やカテゴリ数を指定しておらず、GoFについての知識から各説明の適否を判断します。
選択肢ア
これは不正解だよ。選択肢アは、Javaのパターンとして引数オブジェクトやオブジェクトの可変性を挙げています。これらは言語に即した実装上の工夫に関する説明です。GoFは特定の言語に限定せず、オブジェクト指向設計で再利用できる設計パターンを体系化しています。
選択肢イ(正解)
これは正解だよ。GoFのデザインパターンは、オブジェクト指向設計で繰り返し現れる問題と、その解決策をまとめたものです。代表的な23種類は、目的に応じて生成、構造、振る舞いに分類されます。選択肢イの本文は、この用途と三つのカテゴリを正しく説明しています。
選択肢ウ
これは不正解だよ。構造、分散システム、対話型システム、適合型システムという四分類は、ソフトウェアアーキテクチャのパターンに用いられる分類です。GoFの23種類は設計上の目的から生成、構造、振る舞いに分類されるため、この四分類はGoFの分類として適切ではありません。
選択肢エ
これは不正解だよ。選択肢エのLayersとBrokerは、システム全体の構成に関わるアーキテクチャパターンです。Layersは抽象度の異なる要素を階層化し、Brokerは分離されたコンポーネント間の通信を仲介します。いずれもGoFの23種類には含まれません。
学習のポイント
GoFの三つのカテゴリと、それぞれが扱う設計上の目的を理解し、アーキテクチャパターンとの違いを整理しましょう。
出典:独立行政法人 情報処理推進機構(IPA)令和元年度秋期 システムアーキテクト試験 午前Ⅱ 問3(公式資料:問題冊子(PDF) / 解答例)
関連する過去問一覧
IPA Advancedは非公式の学習サイトです。解説にはAIによる補助生成を含む場合があります。公式の問題冊子・解答例・採点講評を優先し、誤りは確認後に訂正します。運営・編集方針