内部設計(詳細設計)とは?ないぶせっけい
内部設計(詳細設計)とは、外部設計で決めた外から見える仕様を、プログラムとして実装できる形まで具体化する設計工程。処理をモジュールへ分割して各モジュールの役割と受け渡しの取り決めを定め、内部で使うデータ構造やテーブルの物理設計、処理アルゴリズムを決める。利用者の目には触れない、開発者のための設計になる。
最終更新:2026-10-09
この語が出る過去問を解く →背景
画面と帳票が決まっても、それをどう分けて作るかには大きな自由度が残る。何も決めずに人数分で書き始めると、同じ処理が重複し、後から仕様を一つ直すのに何十か所を追いかける羽目になる。責務を分け、他へ影響を波及させない単位に区切っておくことが、変更に強い作りと分担作業の前提になる。モジュールは強度を高く結合度を低くという指針は、この工程の判断基準として問われる。
具体例
Redmine のような課題管理システムを作るなら、この工程で「チケット登録」「通知メール送信」「検索」といった単位にモジュールを分け、それぞれが受け取る値と返す値を決める。あわせて、チケット表のどの列に索引を張れば一覧表示が速くなるかといった、データベースの物理面も設計する。
試験での引っ掛け
V字モデルでどのテストと向かい合うかが最頻出だが、工程の呼び名の体系によって答えが変わる。外部設計・内部設計・プログラム設計の3段で呼ぶ体系では、内部設計と向かい合うのは結合テストで、単体テストと向かい合うのはさらに下のプログラム設計である。一方、共通フレームの呼び名(ソフトウェア方式設計・ソフトウェア詳細設計)では、方式設計が結合テストと、詳細設計が単体テストと向かい合う。このページの別名には両方の体系の名前が混ざっているので、問題文がどちらの呼び名を使っているかを先に確かめる。またモジュールの良し悪しは、機能のまとまり具合を見る強度が高いほどよく、他モジュールへの依存を見る結合度は低いほどよいと、向きが逆なので取り違えやすい。
関連用語
出た過去問
出典:平成28年度 春期 基本情報技術者試験 午前 問46(IPA)
出典:平成30年度 春期 基本情報技術者試験 午前 問47(IPA)
開発プロセスにおいて、ソフトウェア方式設計で行うべき作業はどれか。
正解:ソフトウェア品目に対する要件を、最上位レベルの構造を表現する方式であって、かつ、ソフトウェアコンポーネントを識別する方式に変換する。
要点:方式設計は要件を最上位構造とコンポーネントに変換する
ソフトウェア方式設計では、ソフトウェアに対する要件を最上位レベルの構造へ落とし込み、どのようなコンポーネントに分割し、それぞれがどう連携するかを決める。個々のモジュールの内部処理を詰めるのは、後続のソフトウェア詳細設計の作業である。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。