-1

私は現在、この分野ですぐに仕事をする予定なので、ソフトウェア開発の知識を更新/変更しています。私たちは大学で UML ダイアグラムとコーディングについて多くのことを学びましたが、実際のプロジェクトですべてをまとめたことはありません。そのため、Grails でテスト Web アプリの作成を開始し、要件分析とユースケースから始めて、それを現実に近づけたいと考えました。

私の Web アプリでは、ユーザーがレシピを共有したり、レシピを見つけたり、他のユーザーのレシピをレビューしたりできるようにする必要があります。すべてのレシピには、単なる文字列ではなくエンティティである多くの成分が含まれているため、カロリー、脂肪、タンパク質、および炭水化物を使用して、特定のレシピの栄養成分を自動的に計算できます。

食材は、消費者または栄養の専門家がデータベースに追加できます。消費者によって作成された場合、それは「見込みのある」成分にすぎません。つまり、「適切な」成分になるには管理者によって検証される必要があります。そうでない場合は、赤いテキストの色などでマークされます。

これは私の現在のユースケース図です:

http://ubuntuone.com/0zDw9kEbj1BwtXjnCtxdwC

ここでの私の質問は次のとおりです。

  • 拡張または含まれるユースケースに個別にアクセスできますか? スクリーンショットのようにすればAddProspectiveIngredient、ユースケースを通さずにCreateRecipe使えますか?含まれているユースケースについても同じ質問です。

編集:これはこの質問の複製ではないと思います。リンクされた質問 (1) では、拡張または包含ユース ケースと同じアクターを拡張および包含ユース ケースに使用する必要があるかどうかを尋ねます。ただし、この回答 (2) では、ユース ケース間の再利用について尋ねているだけです。

(1) では、アクターがすべてであり、拡張ユース ケースのプライマリ アクターは必然的に拡張ユース ケースのプライマリ アクターのサブクラスになることがわかったので、この回答に非常に満足しています。

(2) 拡張および含まれるユースケースの再利用性に対処しますが、必ずしもアクターに関連付けられるわけではありません。他のユースケースでそれらを再利用することです。したがって、2 つのユース ケースCreateRecipe(a) とAddIngredientToDatabase(b) があり、(b) が (a) を拡張する場合、(b) を使用して 3 つ目のユース ケースを拡張することはできますか? ここで、再利用が可能であり、再利用する必要があるという私の回答も受け取りました。

同じ日に同じ例を使用して作成したため、質問が似ているように見えるかもしれませんが、回答は両方ともアクターに言及しているため、重複しているように見えます。両方とも回答されており、両方の回答に満足しているのに、質問を「広すぎる」または「重複」として閉じるのはなぜですか? さまざまな回答で成功裏に回答された場合、範囲が広すぎたり、重複したりする可能性はありますか?

また、核心的な問題について教えていただければ、それらをオープンにしておくために、少し言い換えて喜んでお伝えします。トピックに関するより多くの回答とコメントは、私にとってまだ興味深いものです。

4

1 に答える 1

0

拡張または含まれるユースケースに個別にアクセスできますか?

むしろそうあるべきです。正しく正しいスタイルです。ユースケースは、1 つ以上のアクターとシステムの間で実行されるアクティビティです。ここでは、ユーザーに接続されていない一部の内部操作を表示しないようにする必要があります。ユーザーに見えないものはここに表示できません。USER ケース、覚えていますか?

したがって、ここには内部構造はありません。

グループ - サブシステムでいくつかのケースを収集できます。しかし、それは内部構造ではなく、IT システムではなく、ユーザーにとって明らかな活動の共通のテーマにすぎません。そのようなサブシステムは、後で少なくとも共通の UI スタイルを取得する必要があります。

ユーザーが使用できるロジックについては、他の図に示すことができます。このレベルには、ステート マシン、アクティビティ、タイミングなど、多くのダイアグラムが存在する可能性があります。ただし、ユースケース図にもプロセスを表示しようとしないでください。

ですから、クライアントにどれだけインタビューしたかわかりませんが、ユースケース図はほぼ正しいように見えます。AddProspectiveIngredient ユース ケースのみがそのユーザー以上を取得する必要があります。

于 2014-02-23T22:09:43.767 に答える