データフロー図(DFD)は、構造化分析および設計手法です。これは、システム内の情報フローの従来の視覚的表現です。データフロー図(DFD)は、ソフトウェアの分析と設計に広く使用されています。きちんとした明確なDFDは、かなりの量のシステム要件をグラフィカルに表現できます。
データフロー図(DFD)は、論理モデルを示し、システム内のデータ変換を表します。データフローをモデル化するメカニズムが含まれており、データフローと関数の詳細を示すための分解をサポートしています。データフロー図では、操作シーケンスに関する情報を表示できません。したがって、これはプロセスまたは手順のモデリング方法ではありません。
DFDには、次の特性が含まれています。
- システム設計の分析と要件の段階をサポートします。
- 注釈付きの作図技法。
- ターゲットシステムのアクティビティ/プロセスのネットワークを説明する。
- 並列および非同期の動作を可能にします。
- プロセスの階層的分解による段階的詳細化。
データフロー図の重要な概念
DFDは、データフローを記述するためのシンボルシステムと、さまざまな詳細レベルでシステムを記述するための分解メカニズムを提供します。
プロセス
ここで、以下のチュートリアルに表示されるいくつかの図の表記法を簡単に紹介します。
外部エンティティ
外部エンティティは、人間、システム、またはサブシステムを表すことができます。これは、特定のデータが出入りする場所です。これは、ビジネスプロセスの観点から、私たちが調査するシステムの外部にあります。このため、人々は図の端に外部エンティティを描画していました。
プロセス
プロセスは、データの操作と変換が行われるビジネスアクティビティまたは機能です。プロセスは、プロセス内でデータがどのように処理されているかを表すために、より詳細なレベルに分解できます。
データストア
データストアは、プロセスによって必要とされる、および/または生成される永続データのストレージを表します。データストアの例を次に示します:メンバーシップフォーム、データベーステーブルなど。
データフロー
データフローは情報のフローを表し、その方向はフローコネクタの端に表示される矢印で表されます。
さまざまなDFD表記
いくつかの異なる表記法があります。
- ヨードンおよび/またはデマルコ、
- Gane&Sarson、
- SSADM(構造化システム分析および設計方法論)、および
- 統一モデリング言語には、データフローを表示する方法があります。
複数のコンテキストレベルでDFDを描画する方法は?
機能分解は、複雑なプロセスを取り、それをより小さく単純な部分に分解するプロセスです。それぞれをさらに細かく分類することができます。サブシステムの分解された部分の最低レベルに到達すると、開発者はそれらの関数のコーディングを開始する方法を考えることができます。最も単純な機能に取り組んでいるため、開発者は開発中のターゲットシステムで作業できる可能性があります。したがって、これらの機能の開発とテストははるかに簡単になります。
作成者:Visual Paradigm Enterprise、 Professional、 Standard、 Modeler
コンテキストレベルのDFDの作成
レベル0DFDとも呼ばれるコンテキストレベルDFDは、システム全体を単一のプロセスと見なし、システムと外部エンティティ間の相互作用を強調します。コンテキストDFDを描画してみましょう。
- DFDを作成するには、ツールバーから[ダイアグラム]> [新規]を選択します。
- 「新規ダイアグラム」ウィンドウで、「 データ・フロー・ダイアグラム」を選択し、 「次へ」をクリックします。
- ダイアグラム名としてコンテキストダイアグラムを入力し 、[OK]をクリックして確認します。
- ダイアグラムにコンテキストダイアグラムという名前を 付けます。
- メインプロセスを作成する必要があります。プロセス をダイアグラムツールバーからダイアグラムにドラッグ します。OnlineBookstoreという名前を付け ます。複数レベルのDFDを作成する方法を示す例として、オンライン書店を使用します。
- ご想像のとおり、顧客はシステムを通じて本を注文します。したがって、ダイアグラムに外部エンティティを追加し、 Customerという名前を付けます。プロセスの作成と同様に、外部エンティティをダイアグラムツールバーからダイアグラムにドラッグすることで外部エンティティを作成できます。
- データフローは、システムのさまざまな部分間のデータの移動を表すために使用されます。この場合、「注文」とは、顧客が作成してシステムに送信したデータです。したがって、 顧客 から オンライン書店へのデータフローを作成します。これを行うには、マウスポインタをCustomerの上に移動します。[リソースカタログ]ボタンをドラッグします。
- オンライン書店でマウスボタンを 離し、リソースカタログから[データフロー]を選択します。これにより、データフローコネクタが作成されます。
- orderという名前を付け ます。
- 書店はついに本をお客様にお届けします。リソースカタログを利用して、 オンライン書店 から 顧客へのデータフローを作成します。フロー オーダーブックに名前を付けます。
- コンテキスト図は以上です。システム全体を単一のプロセスと見なしているため、このDFDレベルで作成されるプロセス形状は1つだけです。次のセクションでは、 オンライン書店の プロセスを分解し、その詳細を描きます。
レベル1DFDの作成
このセクションでは、レベル1のDFDを描画して、オンライン書店の主な機能を示します。
- オンライン書店を右クリックし 、ポップアップメニューから[分解]を選択します。
2.選択したプロセスに接続されているデータストアおよび/または外部エンティティは、レベル1DFDで参照されます。したがって、それらを新しい図に追加するように求められたら、[はい]をクリックして確認します。新しいDFDは、最初はコンテキスト図と非常によく似ているはずであることに注意してください。メインプロセス(この新しいDFDが分解される)がなくなり、空白スペース(詳細)に置き換えられたことを除いて、すべての要素は変更されないままである必要があります。
3.ダイアグラムの背景を右クリックし、ポップアップメニューから[名前の変更…]を選択します。ダイアグラムに レベル1DFDという名前を付けます。
4.顧客の注文を受け取り、それをデータベースに保存するプロセスがあります。プロセスReceiveOrder とデータストア Ordersを作成しましょう 。間にデータフローを追加します。
5.注文が無効な場合は、顧客に連絡して顧客のニーズを明確にすることを含む別のプロセスが必要です。プロセス HandleInvalidOrderを作成します。図形間に適切なデータフローを追加します。ここでは、双方向のデータフローを使用してダイアログフローを表すことができます。
6.出荷を処理する別のプロセスがあります。出荷注文 プロセスを作成し ます。ここでも、形状間に適切なデータフローを追加します。
このチュートリアルは以上です。関心のある領域に応じて、システムをより詳細に表示するためにさらにレベルを作成できます。ご想像のとおり、 出荷注文 プロセスは、梱包、請求書の作成、配達の手配など、より小さな機能単位(プロセス)にまとめることができます。
ビジュアルパラダイムオンラインで自分で試してみてください
- オンラインデータフロー図ソフトウェアで編集可能な無料のデータフロー図の例とテンプレート:ビジュアルパラダイムオンライン。
- テンプレートを開始点として使用して、独自のデータフロー図を作成します。