基本情報技術者 2016年 春期 午前(科目A) 問46
問題文
開発プロセスにおいて、ソフトウェア方式設計で行うべき作業はどれか。
選択肢
ア:顧客に意見を求めて仕様を決定する。
イ:ソフトウェア品目に対する要件を、最上位レベルの構造を表現する方式で、かつ、ソフトウェアコンポーネントを識別する方式に変換する。(正解)
ウ:プログラム1行ごとの処理まで明確になるように詳細化する。
エ:要求内容を図表などの形式でまとめ、段階的に詳細化して分析する。
🔒 解説は解答すると表示されます
ソフトウェア方式設計【午前解説】
正解の理由
正解は イ です。
ソフトウェア方式設計とは、要求(要件)をそのままプログラムに落とすのではなく、ソフトウェア品目(サブシステムやモジュールなど)単位の最上位構造に整理し、各ソフトウェアコンポーネントを識別してアーキテクチャを定義する工程です。選択肢イはまさに「要件→最上位構造へ変換」「コンポーネント識別」という方式設計の本質を表しているため正解となります。
ソフトウェア方式設計とは、要求(要件)をそのままプログラムに落とすのではなく、ソフトウェア品目(サブシステムやモジュールなど)単位の最上位構造に整理し、各ソフトウェアコンポーネントを識別してアーキテクチャを定義する工程です。選択肢イはまさに「要件→最上位構造へ変換」「コンポーネント識別」という方式設計の本質を表しているため正解となります。
解法ステップ
- 問題文のキーワードを抽出:「ソフトウェア方式設計」「行うべき作業」などに注目。
- 各選択肢と開発工程のフェーズを対応付ける:要件定義、方式設計(アーキテクチャ)、詳細設計、実装などで分類。
- 「最上位レベルの構造」「ソフトウェア品目」「コンポーネント識別」は方式設計の定義に合致するため正答を決定。
- 他選択肢が別工程(要求定義、詳細設計、分析)に該当するか検証して除外する。
選択肢別の誤答解説
- ア: 顧客に意見を求めて仕様を決定する。
→ 要件定義・要求工学の範囲。方式設計は要件を基に構造化する工程であり、顧客合意や仕様決定そのものは主目的ではありません。 - イ: イ: ソフトウェア品目に対する要件を、最上位レベルの構造を表現する方式で、かつ、ソフトウェアコンポーネントを識別する方式に変換する。
→ 正解。方式設計(アーキテクチャ設計)はまさに要件を構造化しコンポーネントを識別する工程です。 - ウ: プログラム1行ごとの処理まで明確になるように詳細化する。
→ 詳細設計またはコーディング直前の工程の説明。方式設計の粒度よりも遥かに詳細な文です。 - エ: 要求内容を図表などの形式でまとめ、段階的に詳細化して分析する。
→ 要求分析や要件定義(機能・非機能の整理)に近い記述で、方式設計の「構造化してコンポーネントを識別する」点とは焦点が異なります。
よくある誤解
- 「方式設計=詳細設計」と混同する誤解:方式設計はアーキテクチャや構成決定であり、プログラム1行単位の設計ではありません。
- 「顧客との合意形成も方式設計で行う」と考える誤解:顧客意見の取り込みや仕様決定は要求定義・要件定義の範囲です。
- 「図表で段階的に詳述する=方式設計」と安易に判断する誤解:図表化や段階的詳細化は要件分析や基本設計の説明にも当てはまりますが、方式設計は構造とコンポーネントの識別がキーワードです。
補足コラム
- 方式設計(ソフトウェア方式設計)の典型的成果物:ソフトウェア構成図、サブシステム/モジュールの分割図、インタフェース仕様概要、コンポーネント配置図、非機能要件の割当表など。
- 実務上の位置付け:要求定義で得た要求を基に、実装単位(ソフトウェア品目)と相互関係を決め、後続の詳細設計・担当分割・見積り・テスト計画に橋渡しします。
- 試験対策のコツ:問題文に「最上位」や「コンポーネント」「品目」といった語があれば方式設計を想起し、「1行ごと」「顧客に意見を求める」「図表で段階的に分析」はそれぞれ別工程に結び付ける習慣をつけると正答率が上がります。
FAQ
Q1: 方式設計と基本設計の違いは何ですか?
A1: 呼称は組織や教材で異なりますが、一般に方式設計はアーキテクチャや構造決定(上位レベル)、基本設計はその構成要素の機能仕様を定める段階と理解してください。詳細設計はさらに下位でプログラム設計に近い工程です。
A1: 呼称は組織や教材で異なりますが、一般に方式設計はアーキテクチャや構造決定(上位レベル)、基本設計はその構成要素の機能仕様を定める段階と理解してください。詳細設計はさらに下位でプログラム設計に近い工程です。
Q2: 要求分析(エ)と方式設計(イ)は似ているように見えます。どこで線引きするべきですか?
A2: 要求分析は「何を実現するか」を整理・明確化する工程で、方式設計は「どう構成して実現するか」を決める工程です。対象が「要求の整理」か「構造とコンポーネントの識別」かで見分けます。
A2: 要求分析は「何を実現するか」を整理・明確化する工程で、方式設計は「どう構成して実現するか」を決める工程です。対象が「要求の整理」か「構造とコンポーネントの識別」かで見分けます。
Q3: 顧客との調整はどの工程で行うのが主ですか?
A3: 顧客との合意形成や仕様決定は主に要件定義・要求分析フェーズで行い、方式設計はその合意済み要件を基に内部構造を設計します。
A3: 顧客との合意形成や仕様決定は主に要件定義・要求分析フェーズで行い、方式設計はその合意済み要件を基に内部構造を設計します。
関連キーワード: 方式設計、ソフトウェア方式設計、ソフトウェアアーキテクチャ、詳細設計、コンポーネント設計、要求分析、ソフトウェア品目、コンポーネント識別、設計工程、モジュール化

\ せっかくなら /
基本情報技術者を
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

