私は概念的なクラス図を描こうとしています。私のシステムでは、2人の役割を果たすことができる1人の人がいます。 1つは「教師」で、他は「学生」である。同じ人物は1つのインスタンスの教師であり、同じ人物は別のインスタンスの学生かもしれません。このような状況では、2つの別々のクラスとして表現するとよいでしょうか(私の概念図では)?概念クラス図
お知らせください。
おかげ
私は概念的なクラス図を描こうとしています。私のシステムでは、2人の役割を果たすことができる1人の人がいます。 1つは「教師」で、他は「学生」である。同じ人物は1つのインスタンスの教師であり、同じ人物は別のインスタンスの学生かもしれません。このような状況では、2つの別々のクラスとして表現するとよいでしょうか(私の概念図では)?概念クラス図
お知らせください。
おかげ
人はその人自身を教えていない限り、ユースケースの境界を越える関係を示すしようとする際に巻き込まれません。各シナリオのリンクを個別に検証します。すべての接続がすべてのシナリオで使用されるとはかぎりません。
人はロールを埋めます。
を試してみてくださいEducationRole
EducationRoleに関連付けられている人は、 '学生' のサブクラスを持っており、ここでは「教員
は図です。
彼らは状況に応じて果たす役割を変更することができます。自分自身を教える人を見せる必要がある場合は、Self-teacherを意味する「Autodiadact」という名前のEducationRoleのサブクラスを作成します。
投稿者はメソッドを使用して役割を変更することについて尋ねました。回答を記入したいと思います。
だから、方法で役割を変更する機能をコーディングすることはできますが、バックアップしてより大きな質問をしてください。なぜ役割を変えていますか?先生が学生になったり、生徒が先生になったりしている場合、表示されているモデルはPersonに同時に多くのEducationRoles(アスタリスクの意味)を持たせることができるので、本当に変更する必要はありません複数の可能な役割を持つ人をサポートします。
概念モデルでは、システムの有効な状態間の関係を示していますが、必ずしも変更がどのように実行されるのか(方法を使用して)は関係ありません。
ありがとうケリー。私は今これを試してみよう。 –
+1これは 'パーティーロール'のパターンで、かなり一般的な状況です。バリアントがあります。実行時にロールの数が固定されていない場合「Party-Role Pattern」のグーグルが助けになるだろう。 – sfinnie
ありがとうございました。私は今それのハングアップを得た。 –