1

PHPでコーディングされるCRUDアプリケーションを開発する必要があります。

私は 3 人の主要なアクター (ユーザー、管理者、および医師 -- これは架空の病院用です) を持っており、それぞれに異なるユース ケースが既に定義されています。

ユース ケースはクラス図をうまくモデル化するのに十分すぎると思いますが、プロジェクトのドキュメントに DataFlow 図も含めるよう特に求められています。

私は DataFlow ダイアグラムについて読んでいますが、通常は最初にレベル 0 の DataFlow ダイアグラムを持っているようで、これを Context Diagram と呼んでいます。

これは基本的に 3 つの異なるアクターを持つ 3 層アプリケーションであるため、コンテキスト図をどのようにモデル化すればよいですか?

コンテキスト図は、システムに何が入ってきて何が出てくるかを教えてくれるはずなので、次の図よりも興味深い/説明的なものは想像できません:

代替テキスト

これはこのようなものであるはずですか、それとも私は完全に要点を逃していますか? この php ページは Oracle データベースに接続しますが、コンテキスト図でシステム全体を考慮したい場合は、上の図でその事実を「隠す」必要があると思います。

ここからどこへ行けばいいですか?システムプロセスをより詳細なものに「ズーム」する必要があることはわかっています。次のステップは、DataFlow ダイアグラムで各ユーザー ケースを描写することでしょうか? すでにデータのリポジトリを含めますか? たとえば、ユーザー用、医師用、管理者用などです。

ありがとう

4

2 に答える 2

1

システムがやり取りするものは他にありませんか? 例:診断入力など?

そうでない場合、コンテキスト診断は基本的には問題ありませんが、各エンティティを 1 回表示して、両方向矢印を使用する可能性があります。データベースの理由には同意します-それはシステムの一部であり、システムの外部ではありません-CDに表示しないでください。

次のステップについても、正しい方向に進んでいます。各ユース ケースのフローを DFD としてモデル化してみてください。DFD は、処理負荷の高いアプリを説明するのに非常に役立ちます。それがあなたの問題に適しているかどうかを知るのは難しいです。

DFD は、クラス ダイアグラムを追い出し、検証するのにも役立ちます。実際、それは彼らの強みの 1 つです。DFD 上のデータストアは、クラス ダイアグラムの内容と関連付ける必要があります (必ずしも 1 つのデータストアが 1 つのクラスに対応しているわけではありません)。そのため、プロセスを進めながらデータストアを含めてください。アクターだけでなく、それ以上のものを追い出すことがわかります。

h番目。

于 2010-10-16T21:42:46.193 に答える
0

いくつかのコメント:

あなたのDFDは、ユーザー、管理者、および医師がそれを使用することを除いて、私にはあまり教えてくれませんが、システムから何を取得するかについてはわかりません(「出力データ」を除く)。IOW コンテキスト ダイアグラムでは、システムが何をしているのか、まったくわかりませ

確かに、システムが大規模な場合、データフローを短い言葉で説明するのは難しい場合がありますが、ほとんど何でも「データ」よりも優れています。

システムが 3 層アーキテクチャであることは、DFD には関係ありません。これは実装の詳細です。DFD は分析ツールです。これがどのように達成されるかではなく、システムに何をしてもらいたいかを説明します。

発信フローに注目すると特に便利だと思います。ユーザー、管理者、および医師はシステムに入力を提供しますが、これはおそらく彼らがやりたいことではありません。それは、望ましい出力を得るために彼らがしなければならないことです。

于 2013-05-03T04:39:18.860 に答える