
我试图在类图的帮助下制作一个用例图,但问题是,我在这里困惑的是,我应该采取什么作为参与者,接下来会发生什么,我应该采取哪些属性,以及在哪里使用<<extend>>?帮帮忙吧。提前谢谢你。
发布于 2016-04-16 11:08:20
正如Thomas所指出的,从类设计到用例没有算法的方法。事实上,对于给定的类图,根本不允许存在用例(例如,如果类只代表业务对象之间的关系,而没有参与者)。
但是,通过从人的角度分析特定的图表,您可以很好地推断出一个类图:
1)确定候选参与者
参与者指定用户或与主题交互的任何其他系统所扮演的角色。图中的候选对象是:visitor、admin和registered user
显然,类Movie、Book tickets、Make payment并不代表用户的角色。
2)识别候选用例
用例定义了系统和参与者之间的交互,以实现某种目标。所以让我们集思广益,找出所有看起来像互动的东西:
Book tickets (Registered user类和方法),Make payment (类和Registered user方法)View movie (关系和方法Registered user)、update movie (关系)、Add movie record (管理方法)、Update movie record (管理方法)、delete movie record (管理方法)、Confirm registration of visitor (从关系推断)、'Get (method of a user),cancel(and method of注册的Update movie record用户),更新座位((method of图书票)、confirm transaction (方法)、refund money of cancelled ticket (方法)create and maintain admin、create a visitor、register and maintain a registered user account,还有什么吗?3)整理用例
在所识别的所有潜在用例和交互中,并不是所有的都应该获得用例状态。然后,您必须找到哪些是用例,哪些只是同一个用例的一部分的交互。例如:
update movie catalog由update movie、Add movie record、Update movie record、delete movie record组成。Get registered和Confirm registration of visitor显然是同一个用例的一部分,因为目标是相同的:注册用户。4)审查参与者
在确定了有意义的用例之后,您可能需要检查候选参与者:
Update Seats的方法很明显,我们谈论的是一个真正的剧院。那么,谁会从用户那里得到付款,发放罚单,偿还与系统有关的费用呢?如果只是网上预订系统,我们就没事了。如果cahs台操作员也使用这个系统,那么我们应该增加这个演员。5)绘制用例图
现在有了所有的元素,您就可以制作用例图了。但是你仍然需要决定你想要表达的细节级别。以下是一项建议:

发布于 2016-04-15 13:19:44
不能从类设计中创建用例。只有相反的方法。形式遵循功能,反之亦然。
发布于 2016-04-15 17:28:36
您的类图表明您还不熟悉类建模。类Book Ticket和Make Payment听起来像用例,而不是正确的类。类是处理这些数据的数据和功能的容器,而用例是参与者在系统帮助下执行的一项工作。
对于这个平台来说,给予你所需的帮助可能太广泛了。研究UML建模的介绍性文本,以了解哪种类型的模型可以表示什么。不要觉得有义务使用语言所提供的所有元素。有很多用例模型不需要包含和扩展关系。
https://stackoverflow.com/questions/36647668
复制相似问题