我有一个问题重新设计用例图,我很困惑何时使用扩展和包含。我已经完成了文档,教程和示例的语气。但我很困惑。
我有一个场景,它表示"您可以预订健身课程或私人教练课程"。
所以我到目前为止的模型都有一个名为" make booking"和usecase"预订"延伸到另外两个名为" Book fitness class"和#34;预订PT会议"。
这与两个独立的用例相比有效吗?#34;书类"和#34;预订PT会议"。
我确定后一种方法是正确的。但是,我不太确定我的fomer方法是否正确。谁能帮我理解?
由于
答案 0 :(得分:0)
Book classes
和book PT session
都可以扩展基本booking
用例。它们是此用例的variations
。 (请注意扩展的方向!)
当然,您可以通过包括将抽象功能划分为更具体的功能并显示几个抽象用例使用的功能来展示这些案例的共同特征。
这两种方式都是允许的,但是第二种方式是展示模型的构造,第一种方式是展示模型的哲学。如果可以,您应该将第二个变体推迟到更详细的建模阶段。但有时你只需要根据具体要求使用某些模型,并且从一开始就必须使用。
至于延伸,它对第一阶段和最后阶段都有好处,只有一点点不同。在最后阶段,它可以假设使用从另一个派生的类。
您也可以使用两个独立的用例,但因此您只是忽略了它们真正依赖的事实。很难不在图表中显示您已经知道的事实。在一项小任务中,你可能会忘记这一事实,但在一个真实的模型中,它肯定会被遗忘和误解。