用例图活动图练习(订餐系统) 您所在的位置:网站首页 火锅店的业务流程图 用例图活动图练习(订餐系统)

用例图活动图练习(订餐系统)

2023-07-26 22:12| 来源: 网络整理| 查看: 265

某企业为了方便员工用餐,为餐厅开发了一个订餐系统(COS: Cafeteria Ordering System),企业员工可通过企业内联网使用该系统。 企业的任何员工都可以查看菜单和今日特价。 系统的顾客是注册到系统的员工,可以订餐(如果未登录,需先登录)、注册工资支付、预约规律的订餐,在特殊情况下可以覆盖预订。 餐厅员工是特殊顾客,可以进行备餐、生成付费请求和请求送餐,其中对于注册工资支付的顾客生成付费请求并发送给工资系统。 菜单管理员是餐厅特定员工,可以管理菜单。 送餐员可以打印送餐说明,记录送餐信息(如送餐时间)以及记录收费(对于没有注册工资支付的顾客,由送餐员收取现金后记录)。 顾客订餐过程如下:

顾客请求查看菜单;系统显示菜单和今日特价;顾客选菜;系统显示订单和价格;顾客确认订单;系统显示可送餐时间;顾客指定送餐时间、地点和支付方式;系统确认接受订单,然后发送E-mail给顾客以确认订餐,同时发送相关订餐信息通知给餐厅员工。 系统采用面向对象方法开发,使用UML进行建模。系统的顶层用例图和一次订餐的活动图初稿分别如下图(a) 和(b) 所示。 图a 在这里插入图片描述 【问题1】 根据说明中的描述,给出图 (a) 中A1和A2所对应的参与者。 【问题2】 根据说明中的描述,给出图 (a)中缺少的四个用例及其所对应的参与者。 【问题3】 根据说明中的描述, 给出图 (b) 中(1)〜(4)处对应的活动名称或图形符号。 【问题4】 指出图(a)中员工和顾客之间是什么关系,并解释该关系的内涵。

答案: 【问题1】 A1:工资系统 A2:菜单管理员 【问题2】

用例名参与者查看当日特价员工注册工资支付顾客和工资系统生成付费请求餐厅员工和工资系统管理菜单菜单管理员

【问题3】 (1)在这里插入图片描述(2)登录 (3)在这里插入图片描述(4)在这里插入图片描述 【问题4】 泛化关系(一般/特殊关系、继承关系)。泛化关系描述了一个参与者可以完成另一个参与者同样的任务,并可以补充额外的角色功能。

解析: 【问题1】 识别参与者时,考查和系统交互的人员和外部系统。本题中,与系统交互的人员包括员工、注册到系统的员工(顾客)、餐厅员工、菜单管理员、送餐员以及工资系统。 由“菜单管理员是餐厅特定员工”以及图中A2和图中餐厅员工之间的“是一种”关系可知,A2为菜单管理员;图中还缺少描述中与工资系统的交互,由“……并发送给工资系统”可知,A1为工资系统。 【问题2】 考查用例及其和参与者之间的关系时,通过判断哪一个特定参与者发起或者触发了与系统的哪些交互,来识别用例并建立和参与者之间的关联。 本题中,由“任何员工都可以查看菜单和今日特价”可知,图中缺少用例查看今日特价,对应参与者是员工;由“系统的顾客是……,注册工资支付、……"可知,图中缺少用例注册工资支付,对应参与者是顾客和工资系统;由“餐厅员工是……,可以进行备餐、生成付费请求……发送给工资系统”可知,图中缺少用例“生成付费请求”,对应的参与者是餐厅员工和工资系统;由“菜单管理员是餐厅特定员工,可以管理菜单”可知,图中缺少用例管理菜单,对应的参与者是菜单管理员。 需要注意的是,在注册工资支付所对应的参与者中,虽然没有明确说明要和工资系统交互,但是由“对于注册工资支付的顾客生成付费请求并发送给工资系统”可知,工资支付是由工资系统控制,所以注册也需要和工资系统交互。 【问题3】 在顾客订餐过程的描述中,在“顾客选菜”之前,图中缺少符号和活动。由说明中顾客“可以订餐(如果未登录,需先登录)”可以判断,在系统“显示菜单和今日特价"之后"顾客选菜”之前,需要判断(判定符号)当前用户身份是否为顾客,如果不是,需先登录;由“……发送E-mail给顾客以确认订餐,同时发送相关订餐信息通知给餐厅员工”可知,发送E-mail和通知餐厅员工为并行活动,需要在前后有同步条(或纵向)。 【问题4】 参与者之间的关系表示子类型是一种父类型,即泛化关系。其中父类型通常是一个抽象泛化的参与者,可以完成子类型可完成的共同行为,每个具体的子类型继承它,可以完成父类型参与者同样的任务,并可以补充额外的角色功能。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有