出題と解説/ET教育フォーラム (末石 吾朗,根岸 永建,坂井 直美)

<今号の問題から>
ソフトウエアの設計で用いる図とその説明のうち,正しいものはどれか
  1. フローチャートは,データの源泉と吸収,プロセス,データ・ストア,データ・フローを表す4種類の記号を使って,システムにおけるデータの流れを示す
  2. E-R図は,データ構造を,管理対象となる実体と実体同士の関連によって表す
  3. DFDは,複数の条件があり,条件の組み合わせで処理が異なる場合に,条件と処理を表形式で対比させ,条件判定の論理を表現する
  4. 決定表は,システムにおいて,ある状態が何らかの要因により別の状態に変わる様子を2次元の表形式で表す

 ウオーターフォール・モデルなどの開発モデルでは,ソフトウエアに対する要求を分析し,機能を具体化していくことでソフトウエア全体の概要を定義します。この要件定義・分析の工程に続く設計やプログラミングの工程は,ソフトウエアの機能を中心に考えて作業を進めることがほとんどです。機能をサブシステムに分け,それらを細かいモジュールへと階層的に分割してから,各モジュールをプログラミングします。このように,トップダウンで機能を詳細化して全体的な構造を組み立てる方法を「構造化手法」と呼びます。今回は,構造化手法によるソフトウエア開発で利用する図について解説します。

データの流れ方に着目

 ソフトウエアの設計でよく利用する図には,「DFD(データ・フロー・ダイヤグラム)」「E-R図」「状態遷移図」などがあります。

 DFDは,データの流れ方に基づいてソフトウエアの機能を表現する図です。データの発生元あるいは終着点を矩形,データを処理する機能単位(プロセス)を円,ファイルなど(データ・ストア)を2本の並行線で表し,プロセス間あるいはデータ・ストアからプロセスへ,といったデータの流れ(データ・フロー)を矢印線で結びます。DFDはそれぞれの機能とデータとの関係を静的に表すものであり,プロセスの制御方法や状態変化などは表せません。

『日経エレクトロニクス』2009年4月6日号より一部掲載