基本情報技術者 2013年 春期 午前(科目A) 問45
問題文
開発プロセスにおける、ソフトウェア方式設計で行うべき作業はどれか。
選択肢
ア:顧客に意見を求めて仕様を決定する。
イ:既に決定しているソフトウェア要件を、どのように実現させるかを決める。(正解)
ウ:プログラム1行ごとの処理まで明確になるように詳細化する。
エ:要求内容を図表などの形式でまとめ、段階的に詳細化して分析する。
🔒 解説は解答すると表示されます
ソフトウェア方式設計【午前解説】
正解の理由
正解は イ です。ソフトウェア方式設計は「既に決定しているソフトウェア要件を、どのように実現させるか」を決める工程であり、システムを構成するモジュールやサブシステムの分割、インタフェース、データの扱い方、利用するミドルウェアやプロトコル、非機能要件(性能・可用性・セキュリティなど)を満たす方式を選定・設計します。
これに対して、要件の決定や顧客との合意形成は要件定義フェーズ、プログラム行レベルの詳細化は詳細設計フェーズの仕事であり、選択肢の文意から方式設計に該当するのは イ だけです。
これに対して、要件の決定や顧客との合意形成は要件定義フェーズ、プログラム行レベルの詳細化は詳細設計フェーズの仕事であり、選択肢の文意から方式設計に該当するのは イ だけです。
解法ステップ
- 設問中のキーワードを探す:「どのように実現させるか」「方式」「実装方針」などを確認する。
- 各選択肢がどの工程に該当するかを整理する:要件定義、方式設計、詳細設計、要求分析のどれかに分類する。
- 方式設計の定義に合致する選択肢を選ぶ:要件の実現方法(技術選定、構成、インタフェース)を示すものを正答とする。
選択肢別の誤答解説
- ア: 顧客に意見を求めて仕様を決定する。
- 誤り。これは要件定義(要求仕様の確定)に該当し、方式設計の作業ではありません。
- イ: 既に決定しているソフトウェア要件を、どのように実現させるかを決める。
- 正解。方式設計はここで述べる「どのように実現するか(方式・アーキテクチャ・実装方針)」を決める工程です。
- ウ: プログラム1行ごとの処理まで明確になるように詳細化する。
- 誤り。これは詳細設計(コーディングに近いレベル、アルゴリズムやデータ構造、関数単位)の作業です。
- エ: 要求内容を図表などの形式でまとめ、段階的に詳細化して分析する。
- 誤り。これは要求分析や仕様整理に相当し、方式設計が本来行う「実現方法の選定」とは目的が異なります。
よくある誤解
- 要件決定と方式設計を混同しやすい:顧客と仕様を決める作業(ア)は要件定義であり、方式設計ではありません。
- 詳細設計と方式設計の境界が曖昧になる:方式設計はアーキテクチャやコンポーネント設計を行い、プログラムの1行単位の処理は詳細設計(ウ)です。
- 分析資料作成(エ)は要求分析や仕様整理に相当し、方式設計と目的が異なります。
補足コラム
方式設計の成果物例としては、ソフトウェア方式設計書(アーキテクチャ図、モジュール構成図、主要コンポーネント間のインタフェース仕様、データフロー、使用するミドルウェア・プロトコル一覧、非機能要件の満足方法案など)が挙げられます。試験対策では「方式=実現方法・アーキテクチャ」をキーワードとして押さえ、設問で「どのように」「どの方式で」と問われているかを見極める練習を重ねると効果的です。
FAQ
Q1: 方式設計と詳細設計の違いは何ですか?
A1: 方式設計はシステムの構成や実現方針(アーキテクチャ、技術選定、コンポーネント分割)を決める上位設計で、詳細設計はその方式に基づき関数・クラス単位やアルゴリズム、データ構造を明確にする下位設計です。
A1: 方式設計はシステムの構成や実現方針(アーキテクチャ、技術選定、コンポーネント分割)を決める上位設計で、詳細設計はその方式に基づき関数・クラス単位やアルゴリズム、データ構造を明確にする下位設計です。
Q2: 要件定義で曖昧な点があった場合、方式設計で決めてよいですか?
A2: 要件の不明確点は原則要件定義段階で解消すべきですが、方式設計を進める過程で実現性や制約から追加の確認が必要になることがあり、その場合は要件定義側と連携して調整します。
A2: 要件の不明確点は原則要件定義段階で解消すべきですが、方式設計を進める過程で実現性や制約から追加の確認が必要になることがあり、その場合は要件定義側と連携して調整します。
Q3: 試験ではどんな表現が方式設計を示しますか?
A3: 「方式」「アーキテクチャ」「実装方針」「技術選定」「構成・インタフェースを決める」といった語が方式設計を示します。
A3: 「方式」「アーキテクチャ」「実装方針」「技術選定」「構成・インタフェースを決める」といった語が方式設計を示します。
関連キーワード: ソフトウェア方式設計、方式設計、ソフトウェア設計、詳細設計、アーキテクチャ、要件定義、実装方針、設計段階、非機能要件、構成図、インタフェース設計

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

