@[toc]
题目
某医院拟委托软件公司开发一套预约挂号管理系统,以便为患者提供更好的就医体验,为医院提供更加科学的预约管理。本系统的主要功能描述如下:
- (a)注册登录
- (b)信息浏览
- (c)账号管理
- (d)预约挂号
- (e)查询与取消预约
- (f)号源管理
- (g)报告查询
- (h)预约管理
- (i)报表管理
- (j)信用管理等
问题1
若采用面向对象方法对预约挂号管理系统进行分析,得到如图2-1所示的用例图。请将合适的参与者名称填入图2-1中的(1)和(2)处,使用题干给出的功能描述(a)~(j)
,完善用例(3)~(12)的名称,将正确答案填在答题纸上。
答案1
(1)系统管理员
(2)患者
(3)(a)注册登录
(4)(c)账号管理
(5)(f)号源管理
(6)(h)预约管理
(7)(i)报表管理
(8)(j)信用管理号(4)~(8)答案可以互换
(9)(b)信息浏览
(10)(d)预约挂号
(11)(e)查询与取消预约
(12)(g)报告查询(9)~(12)答案可以互换
问题2
预约人员(患者)登录系统后发起预约挂号请求,进入预约界面。进行预约挂号时使用数据库访问类获取医生的相关信息,在数据库中调用医生列表,并调取医生出诊时段表,将医生出诊时段反馈到预约界面,并显示给预约人员;预约人员选择医生及就诊时间后确认预约,系统反馈预约结果,并向用户显示是否预约成功。
采用面向对象方法对预约挂号过程进行分析,得到如图2-2所示的顺序图,使用题干中给出的描述,完善图2-2中对象(1),及消息(2)~(4)的名称,将正确答案填在答题纸上,请简要说明在描述对象之间的动态交互关系时,协作图与顺序图存在哪些区别。
答案2
(1)预约人员(患者)
(2)预约挂号请求
(3)显示医生可预约时段
(4)显示预约是否成功
顺序图强调的是消息的时间次序。
协作图强调的是发送和接收消息的对象之间的组织结构。
问题3
采用面向对象方法开发软件,通常需要建立对象模型、动态模型和功能模型,请分别介绍这3种模型,并详细说明它们之间的关联关系,针对上述模型,说明哪些模型可用于软件的需求分析?
答案3
1、对象模型描述系统中对象的静态结构、对象之间的关系、对象的属性、对象的操作。对象模型为动态模型和功能模型提供了基本的框架,对象模型用包含对象和类的对象图来表示。
2、动态模型描述与时间和操作顺序有关的系统特征-激发事件、事件序列、确定事件先后关系以及事件和状态的组织。动态模型表示瞬时的、行为上的、系统的“控制”特征。动态模型用状态图来表示。
3、功能模型描述与值的变换有关的系统特征-功能、映射、约束和函数依赖。功能模型用数据流图来表示。
3个模型之间具有下述关系。
(1)与功能模型的关系∶对象模型展示了功能模型中的动作者、数据存储和流的结构,动态模型展示了执行加工的顺序。
(2)与对象模型的关系∶功能模型展示了类上的操作和每个操作的变量;动态模型展示了每个对象的状态以及它接收事件和改变状态时所执行的操作。
(3)与动态模型的关系∶功能模型展示了动态模型中未定义的不可分解的动作和活动的定义,对象模型展示了是谁改变了状态和承受了操作。对象模型、动态模型和功能模型都用于需求分析。