外部設計とは
外部設計とは、システム開発において、要件定義で決まった内容をもとに、システムの「ユーザーから見える部分」の仕様を決める工程のことです。「基本設計」とも呼ばれます。
主に、ユーザーが操作する画面のデザインや配置(画面レイアウト)、データを入力したり結果を表示したりする画面間の流れ(画面遷移図)、印刷される帳票のレイアウト、他システムとのデータのやり取りの方法などを設計します。発注者(クライアント)にとっても仕上がりイメージを確認しやすい部分であるため、認識のズレがないように打ち合わせを重ねながら合意を形成していく非常に重要なプロセスです。
具体例
スマートフォンの「お小遣い帳アプリ」を開発する際の外部設計の例です。
- 画面レイアウト設計:トップ画面の上部に「今月の支出合計」を大きな青い文字で表示し、右下に「+」ボタンを配置する。
- 画面遷移設計:右下の「+」ボタンをタップすると、「金額入力画面」が下からスライドして表示される。
- 操作の流れの設計:金額を入力して「保存」ボタンを押すと、「保存が完了しました」というポップアップを1秒間表示し、自動的にトップ画面に戻る。
もう少し詳しく
外部設計は、要件定義で合意された要件を実現するために、システムの「外側」、すなわちユーザーや外部システムから見える部分の仕様を決定する設計工程です。発注者やユーザーがレビューを行うため、専門的な技術用語を極力使わず、図やレイアウトを中心にして分かりやすく設計を進めるのが特徴です。
外部設計で策定される主なドキュメントには以下があります。
- 画面設計(UI/UX設計): 画面ごとのレイアウト(ワイヤーフレーム)、ボタンの配置、表示項目、および画面間の遷移ルール(画面遷移図)。
- 帳票設計: 印刷される紙のレポートやPDFファイルの出力項目、フォント、余白、改ページルールなど。
- コード設計: システム内で使用する商品コードや社員番号などの体系や桁数、入力チェックルール。
- 外部インターフェース設計: 他のシステムやデータベースとの間でやり取りするファイル形式(CSVやJSONなど)やAPIの通信プロトコル、データ項目マッピング。
これらの設計結果は「外部設計書(基本設計書)」としてまとめられ、発注者との間で設計内容の最終的なすり合わせ(レビュー)を行い、承認を得ます。
試験でのポイント
試験では、システム開発プロセスにおける「外部設計」の位置づけと、そこで設計される対象オブジェクトについて問われます。
特に、「ユーザーから見たシステムの仕様を決める工程」であること、そして「内部設計(詳細設計)」との違いが重要です。外部設計はクライアント(発注者)に見せて合意をとる工程であり、内部設計はプログラマー向けに実装方法を記述する工程であるため、発注者がレビューに参加するのは外部設計までとなります。この開発の進め方と役割分担を理解しておきましょう。
関連する用語
関連する用語には、外部設計に続いてプログラムの実装方法を設計する「内部設計」、ユーザーの操作性を考慮する「UI(ユーザーインターフェース)/UX(ユーザーエクスペリエンス)」、および画面の動作設計を決定する「ユースケース図」があります。