システムコンテキスト図( レベル0 DFD とも呼ばれます)は、データフロー図の最高レベルであり、モデル化するシステムのコンテキストと境界を確立するシステム全体を表す単一のプロセスのみが含まれます。これは、システムと外部エンティティ、つまりアクターとの間の情報の流れを識別します。
コンテキスト図は通常、要件ドキュメントに含まれています。すべての利害関係者が読む必要があるため、利害関係者がプロジェクトを理解できるように、わかりやすい言葉で書く必要があります。
次に、販売注文システムのコンテキスト図の例を示します。

システムコンテキスト図の目的
システムコンテキスト図の目標は、一連のシステム要件と制約を開発するときに考慮する必要のある外部要因とイベントに注意を向けることです。システムコンテキストマップは、調査の範囲を決定するためにプロジェクトの初期段階でよく使用されます。
システムコンテキスト図は、システムと相互作用する可能性のあるすべての外部エンティティを表します。ソフトウェアシステム全体が単一のプロセスのように見えます。このような図は、内部構造の詳細なしで、環境内のすべての外部エンティティとインタラクティブシステムに囲まれた中央のシステムを示しています。
トップダウン分解とは何ですか?
トップダウン設計では、システムの概要が設計され、サブシステムのレベルを指定しますが、詳細は示しません。次に、各サブシステムがより詳細に改良されます。たとえば、仕様全体を基本的な要素に分解するために、多くの異なるサブシステムレベルに分割されることもあります。
トップダウン設計の主な目的は、サブシステムを理解するためにシステムをより小さな部分に分解することです。これらの基本的な要素が特定されると、それらをコンピュータモジュールに簡単に組み込むことができます。モジュールが構築されると、それらを簡単に組み合わせて、これらの個々の要素からシステム全体を構築できます。
トップレベルのコンテキストレベルの図
コンテキスト図は概要を示し、システム全体を表す1つのプロセスのみを含むデータフロー図の最上位レベルです。それはより詳細を与える主要なプロセスに分割されるべきであり、各主要なプロセスはより詳細を与えるためにさらに分割されるかもしれません。
- すべての外部エンティティは、コンテキスト図と、それらとの間の主要なデータフローに表示されます。
- この図には、データストレージは含まれていません。
- システム全体を表すコンテキストレベルの図の単一のプロセスを展開して、システムの主要なプロセスを次のレベルの図(図0と呼ばれる)に含めることができます。

レベル1DFD
図0(整数)のプロセスをさらに展開して、処理アクティビティの詳細を表すことができます。以下の例は、プロセス爆発の次のレベル((図1))を示しています。
ご了承ください:
次のレベル1DFDには3つのプロセスしかありませんが、プロセスから外部エンティティへの入力と入力はかなり多く、図ではそれらの間にいくつかのクロスラインが生じる可能性があります。この問題を回避するために、DFD内の同じ外部エンティティの複数のビュー(マスタービューと補助ビュー)を使用できます。

レベル2DFD
少数の外部エンティティ間で大量のデータフローがリンクしているプロセスの場合、プロセスを別のレベルのDFDに絞り込む前に、まずその特定のプロセスと関連する外部エンティティをコンテキスト図と同様の別の図に抽出できます。このようにして、それらの間の一貫性をはるかに簡単に確保できます。

レベル間のDFDのモデルの一貫性
DFDから下位レベルのDFDへのトップダウン分解を実行する場合、入力と出力はDFDのレベル間で保存する必要があります。たとえば、レベルnとn +1は同じ入力と出力を持っている必要があります

例で詳細を見る
インスピレーションが必要ですか?以下に、開始に役立つデータフロー図の例をいくつか示します。
図 をクリックして表示するか、編集ボタンをクリックして編集を開始します。
(* Powered by Visual Paradigm Online)











