内部設計(ソフトウェア方式設計)とは?ないぶせっけい
内部設計(ソフトウェア方式設計)とは、作り手から見た構造を確定させる工程で、外部設計で合意した振る舞いを実装できる単位へ分解する。決めるのは、モジュールへの分割と各モジュールの責務、モジュール間で受け渡すデータの形式、データベースの物理設計、そして排他制御や異常時の扱いをどの方式でそろえるか。個々のモジュール内部の処理手順を書き下すのは次の詳細設計にあたる。
最終更新:2026-10-06
この語が出る過去問を解く →背景
利用者と合意した画面や業務の流れは、そのままでは実装の分担にならない。誰がどの部品を作り、部品どうしが何を受け渡すかを先に決めておかないと、結合の段階で引数や責務の食い違いが一斉に噴き出す。内部設計は、その食い違いを結合前に潰すために境界と方式を文書として確定させる工程である。ここで決めた境界がそのままテストの観点になるため、単体テストの項目はこの設計書から導ける。
具体例
在庫照会を「入力検査」「在庫問合せ」「表示整形」の3つのモジュールへ分け、問合せモジュールの引数と戻り値、キャッシュの有効期間30秒、在庫テーブルの索引設計を決める。異常時に例外を返すか既定値を返すかも、モジュール間で統一しておく。
試験での引っ掛け
内部設計と詳細設計を同一視しがちだが、方式設計はモジュール構成とインタフェース、詳細設計はモジュール内部の処理という粒度の差がある。また画面項目を1つ足すのは外部設計の変更であり、内部設計だけでは閉じない。V字モデルでは結合テストと向かい合う位置にある点も押さえる。
関連用語
出た過去問
出典:平成28年度 秋期 ネットワークスペシャリスト試験 午前Ⅱ 問24(IPA)
システム開発で行うテストについて、テスト要求事項を定義するアクティビティと対応するテストの組合せのうち、適切なものはどれか。
正解:システム方式設計:システム結合テスト、ソフトウェア方式設計:ソフトウェア結合テスト、ソフトウェア詳細設計:ソフトウェアユニットテスト
要点:設計段階と対応するテストはV字型に結び付く
共通フレームでは、各設計アクティビティでその段階に対応するテストの要求事項を定義する。システム方式設計ではシステム結合テスト、ソフトウェア方式設計ではソフトウェア結合テスト、ソフトウェア詳細設計ではソフトウェアユニットテストの要求事項を定める。設計とテストがV字型に対応する関係になっている。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。