内部設計
内部設計では、外部設計の内容をもとに開発するシステムを大まかな機能ごとに分割し、それらをつなぐインタフェースの仕様などを設計します。内部設計は「システム構造設計」「詳細設計」とも呼ばれます。
なお、要件定義や外部設計とは違い、お客様や外部システム開発担当との仕様調整を行うことはあまりありません。
機能分割
内部設計工程ではまず機能を分割します。
たとえば、ショッピングサイトで商品を注文する機能であれば以下のモジュールに分割することができます。
モジュール | 説明 |
---|---|
商品表示 | 検索条件に合致した商品情報を表示する。 |
カート | 選択された商品をカートに入れる。 |
注文 | 送り先住所や支払い方法などを入力して注文する。 |
分割したそれぞれのモジュールについて、インターフェイスや処理を設計していきます。
その後、開発言語がjavaなどオブジェクト指向言語の場合は「クラス図」や「シーケンス図」を作成していきます。
「モジュール」と「コンポーネント」の違い
「モジュール」も「コンポーネント」もソフトウェアの部品をあらわす名称です。
「モジュール」を複数組み合わせたモノが「コンポーネント」です。
枠組みとしては「コンポーネント>モジュール」となります。
「モジュール」はある手続き (関数やメソッド) とデータ構造をひとまとめにした部品です。
大抵の場合、モジュール単体でコンパイル可能ですが、動作はしません。
「コンポーネント」はある機能を持ったプログラムの部品です。
大抵の場合、コンポーネント単体では動作しません。
ただ、会社やプロジェクトによって、コンポーネントやモジュールといった言葉の定義はまちまちです。
ですので、大体こんなイメージ、という程度の認識にとどめておいたほうがよいでしょう。
物理データ設計
システムで扱うファイルやデータベースのレイアウトを設計します。
外部とのインターフェイスは外部設計で定義済みですが、ここではシステム内部で利用するファイルやデータベースの項目を定義します。
■次の記事
プログラミング
PR