假设我们有一个简单的在线商店。用户希望通过商店实现的目标是:
- 注册(创建帐户)
- 浏览项目
- 将商品添加到购物篮
- 结帐并付款
- 查看账户信息
- 修改账户信息等
但是,用户可以启动某些功能,但不是他们使用系统的主要目标:
- 登录
- 登出
- 选择“电子”部门
- 选择“车辆”部门
- 输入送货详情等
我认为登录和注销之类的东西不应该出现在 UML 用例图中。原因是用户不想仅仅为了登录而去在线商店;他们总是有另一个目标,即查看/编辑帐户信息或浏览和购买东西。
同样,两个选择“语句”是浏览项用例的一部分。我不会使用泛化,因为可能有很多部门。
最后,输入交付详细信息是“结帐”或“编辑帐户信息”用例的一部分。我通常会将其与“编辑帐户信息”用例混为一谈,否则您可能还会有“编辑名称”、“编辑电子邮件”等用例。
我主要担心的是,如果你有一个非常复杂的用例图,它就会违背拥有一个的目的,因为它不容易阅读。
所以,我的问题如下。我这背后的想法正确吗?最好只在用例图中建模“真实”目标或参与者可以启动的所有内容?