用例图
概念
用例图(Use Case Diagram):也称用户模型图,是从软件需求分析到最终实现的第一步,它是从 客户的角度来描述系统的功能。
基本组件
参与者(Actor)
与系统打交道的人或其它系统即使用该系统的人或物,在UML中用人型表示。
用例(Use Case)
代表系统中的某项完整的功能,在UML中用椭圆来表示。
用例之间的关系(Relationship)
泛化(generalization):泛化关系是一种继承关系,子用例将继承基用例的所有行为,关系和通信关系,也就是说在任何使用基用例的地方都可以用子用例来代替。泛化关系在用例图中使用空心的箭头表示,箭头方向从子用例指向基用例。
- 扩展(extend): extend关系是对基用例的扩展,基用例是一个完整的用例,即使没有子用例的参与,也可以完成一个完整的功能。extend的基用例中将存在一个扩展点,只有当扩展点被激活时,子用例才会被执行。 extend关系在用例图中使用带箭头的虚线表示(在线上标注<>),箭头从子用例指向基用例。
- 包含(include): include为包含关系,当两个或多个用例中共用一组相同的动作,这时可以将这组相同的动作抽出来作为一个独立的子用例,供多个基用例所共享。因为子用例被抽出,基用例并非一个完整的用例,所以include关系中的基用例必须和子用例一起使用才够完整,子用例也必然被执行。include关系在用例图中使用带箭头的虚线表示(在线上标注<>),箭头从基用例指向子用例。
用例图练习
1.试画出学院班级管理系统的用例图
用例:登陆;找回密码;查看、修改、删除、录入班级基本信息。
参与者:管理员与系院领导。
2.试画出学生成绩管理的用例图
用例:登陆;找回密码;录入、修改、保存、查询、删除成绩。
参与者:教师和学生。
3. 试画出网上选课系统的用例图
用例:登陆;找回密码;查看课程信息;按课程编号查询;按课程名查询;选择课程;删除已选课程;维护课程信息。
参与者:系统管理员与学生。
4. 试画出账号管理的用例图
用例:创建新的账户;设置账户;设置账户基本信息;设置账户权限;删除账户;查询账户。
参与者:系统管理员。
5. 一台自动饮料售货机共有6中饮料,售货机上有6个按钮,分别对应6种饮料,顾客可以通过按钮来选择所要购买的饮料。每个按钮旁有一个指示灯,用来表示该售货机中是否还有这种饮料可售,售货机有一个硬币槽,用来收钱和找钱,假设一位顾客购买矿泉水,不用找零钱,请给出描述上述场景的用例图。