设计用例图时,我们面临三个参与者的挑战:访问者、客户和管理员。每个人都有独特的角色,但我们必须准确捕捉他们的互动和关系。具体来说,客户端保留停车位,而管理员删除它们,我们需要在保持图表清晰度的同时清楚地区分这些功能。
我们如何有效地对这些不同的功能进行建模并确保简洁且易于理解的表示?
我尝试在用例图中对三个参与者之间的交互及其独特功能进行建模。我希望找到一种清晰简洁的方式来表示他们的关系和行为,特别是用于保留和删除停车位,同时保持图表的简单性。
该图失去了简洁性,因为它是由用户界面驱动的,而不是由参与者的目标驱动的。
客户首先寻找汽车位置,然后查看详细信息,然后预订位置,这一事实是用户界面或工作流程的建模。这不是用例图的目的,可以使用其他技术(例如活动图)更好地建模。用例不应该有任何顺序,并且
«extend»
不应该用来表示一个功能是从另一个功能调用的。
此外,只有当专门的用例可以随时取代更通用的用例时,才应该使用泛化。它不能用于将功能分解为更小的部分,就像您在这里所做的那样。
用例应关注参与者的关键目标以及这些目标之间的关系,独立于未来的实现。