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

15 篇文章 1 订阅
11 篇文章 7 订阅

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

  1. 顾客请求查看菜单;
  2. 系统显示菜单和今日特价;
  3. 顾客选菜;
  4. 系统显示订单和价格;
  5. 顾客确认订单;
  6. 系统显示可送餐时间;
  7. 顾客指定送餐时间、地点和支付方式;
  8. 系统确认接受订单,然后发送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】
参与者之间的关系表示子类型是一种父类型,即泛化关系。其中父类型通常是一个抽象泛化的参与者,可以完成子类型可完成的共同行为,每个具体的子类型继承它,可以完成父类型参与者同样的任务,并可以补充额外的角色功能。

  • 31
    点赞
  • 261
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
基于uml的网上订餐系统的开发文档 第1章 绪 论 - 4 - 1.1 系统开发的背景和意义 - 4 - 1.2 国内外研究发展现状 - 4 - 1.2.1 面向对象技术的发展与现状 - 4 - 1.2.2 UML的建模语言 - 5 - 1.2.3 UML的应用领域 - 6 - 1.2.4 网上订餐的发展与现状 - 6 - 第2章 业务建模 - 7 - 2.1 RUP软件开发过程 - 7 - 2.2 业务术语表 - 8 - 2.3 主业务用例图 - 9 - 第3章 分析与设计 - 10 - 3.1 业务流程调查 - 10 - 3.1.1 订餐系统业务流程调查 - 10 - 3.1.2 岗位职责 - 11 - 3.2 业务用例分析 - 11 - 3.2.2 订餐系统活动图 - 15 - 3.3 顺序图 - 18 - 餐厅订餐系统的顺序图 - 19 - 3.3.1 CancelBooking - 19 - 3.3.2 DeleteMember - 20 - 3.3.3 DisplayBooking - 20 - 3.3.4DisplayMember - 21 - 3.3.5 ModifyBooking - 22 - 3.3.6 ModifyMember - 23 - 3.3.7 RecordArrival - 23 - 3.3.8 RecordBooking - 24 - 3.3.9 RecordLeft - 25 - 3.3.10 RecordWalkIn - 26 - 3.3.11 RegisterMember - 27 - 3.3.12 RemindBooking - 28 - 3.3.13 SearchBooking - 28 - 3.4 协作图 - 29 - 订餐系统协作图 - 29 - 3.4.1 CancelBooking - 30 - 3.4.2 DisplayMember - 30 - 3.4.3 ModifyBooking - 31 - 3.4.4 ModifyMember - 31 - 3.4.5 RecordArrival - 32 - 3.4.6 RecordBooking - 33 - 3.4.7 RecordLeft - 33 - 3.4.8 RecordWalkIn - 34 - 3.4.6 RegisterMember - 35 - 3.4.9 RemindBooking - 35 - 3.4.10 SearchBooking - 36 - 3.5 活动图 - 36 - 3.6 业务类图 - 37 - 3.6.1 餐厅订餐系统业务类图 - 37 - 3.6.2 餐厅订餐系统业务类描述 - 38 - 3.6.3 数据库详细设计 - 39 - 第4章 系统实现 - 39 - 4.1 系统构件图 - 39 - 4.5 部署图 - 39 - 4.5.1 网络结构图 - 39 - 4.5.2 系统部署图 - 39 - 4.6 界面设计 - 39 - 4.6.1 本系统用户界面程序设计遵循的原则 - 39 - 4.6.2 输入输出设计
外卖订餐系统的UML用例图是一种展示外卖订餐系统各个功能和角色之间交互关系的图表。 在这个系统中,常见的角色包括顾客、商家和外卖平台管理员。顾客是外卖订餐系统的主要用户,可以进行搜索餐厅、查看菜单、下单、支付和评价等操作。商家拥有自己的餐厅,可以发布菜单、接收订单、准备和配送。外卖平台管理员负责管理整个系统,包括审核商家入驻、处理投诉和维护系统功能等。 在UML用例图中,顾客可以执行的用例包括注册账号、登录账号、搜索餐厅、查看菜单、下单、支付和评价等。商家可以执行的用例包括注册账号、登录账号、发布菜单、接收订单、准备和配送等。外卖平台管理员可以执行的用例包括审核商家入驻、处理投诉和维护系统功能等。 用例之间的关系可以用关联、包含和扩展来表示。比如,顾客的用例可以关联到支付用例,表示顾客需要进行支付才能完成订单。商家的用例可以包含准备和配送用例,表示商家在接收订单后需要进行准备工作并将食物配送给顾客。此外,还可以通过扩展关系来表示一些可选的功能,比如顾客可以选择查看订单详情或优惠活动等。 总之,外卖订餐系统的UML用例图可以帮助我们清楚地理解系统的功能和角色之间的交互关系,为后续的系统设计和开发提供参考。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值