版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、提纲建立功能模型定义服务9.5 建立功能模型功能模型表明了系统中数据之间的依赖关系,以及有关的数据处理功能,它由一组数据流图组成。其中的处理功能可以用IPO图(或表)、伪码等多种方式进一步描述。通常在建立了对象模型和动态模型之后再建立功能模型。画出基本系统模型图画出功能级数据流图描述处理框功能9.5 .1 画出基本系统模型图基本系统模型由若干个数据源点/终点,及一个处理框组成。这个处理框代表了系统加工、变换数据的整体功能。基本系统模型指明了目标系统的边界。由数据源点输入的数据和输出到数据终点的数据,是系统与外部世界之间的交互事件的参数。9.5 .1 画出基本系统模型图自动提款机(ATM)系统9
2、.5 .2 画出功能级数据流图把基本系统模型中单一的处理框分解成若干个处理框,以描述系统加工、变换数据的基本功能,就得到功能级数据流图。自动提款机(ATM)系统9.5 .3 描述处理框功能把数据流图分解细化到一定程度之后,就应该描述图中各个处理框的功能。应该注意的是,要着重描述每个处理框所代表的功能,而不是实现功能的具体算法。描述既可以是说明性的,也可以是过程性的。说明性描述规定了输入值和输出值之间的关系,以及输出值应遵循的规律。过程性描述则通过算法说明“做什么”。一般说来,说明性描述优于过程性描述。9.5 .3 描述处理框功能自动提款机(ATM)系统基本更新账户(账号,事务类型,金额)-现金
3、额,账单数据,信息如果取款额超过账户当前余额,拒绝该事务且不付出现金如果取款额不超过账号当前余额,从余额中减去取款额后作为新的余额,付出储户需要的现金如果事务是存款,把存款额加到余额中得到新余额,不付出现金如果事务是查询,显示信息,不付出现金上述任何一种情况下,账单内容都是:ATM号,日期,时间,事务类型,事务金额(如果有的话),新余额提纲定义服务9.6 定义服务“对象”是由描述其属性的数据,及可以对这些数据施加的操作(即服务),封装在一起构成的独立单元。因此,为建立完整的对象模型,既要确定类中应该定义的属性,又要确定类中应该定义的服务为了更好的定义服务,需要了解动态模型和功能模型中明确地描述
4、每个类中应该提供哪些服务。事实上,在确定类中应有的服务时,既要考虑该类实体的常规行为,又要考虑在本系统中特殊需要的服务。(1)常规行为在分析阶段可以认为,类中定义的每个属性都是可以访问的,也就是说,假设在每个类中都定义了读、写该类每个属性的操作。但是,通常无需在类图中显式表示这些常规操作。(2)从事件中导出的操作状态图中发往对象的事件也就是该对象接收到的消息,因此该对象必须有由消息选择符指定的操作,这个操作修改对象状态(即属性值)并启动相应的服务。例如,在ATM系统中,发行分行的事件“请分行验卡”启动该对象的服务“验证卡号”。(3)与数据流图中处理框对应的操作数据流图中的每个处理框都与一个对象
5、(也可能是若干个对象)上的操作相对应。应该仔细对照状态图和数据流图,以便更正确地确定对象应该提供的服务。例如,在ATM系统中,从状态图上看出分行对象应该提供“验证卡号”服务,而在数据流图上与之对应的处理框是“验卡”,根据实际应该完成的功能看,该对象提供的这个服务应该是“验卡”。(4)与利用继承减少冗余操作应该尽量利用继承机制以减少所需定义的服务数目。只要不违背领域知识和常识,就尽量抽取出相似类的公共属性和操作,以建立这些类的新父类,并在类等级的不同层次中正确地定义各个服务。提纲练习:建立牙科诊所管理系统的对象模型和数据流图张大夫在小镇开了一家牙科诊所。他有一位牙科助手、一个牙科保健员和一个接待
6、员。张大夫需要一个软件系统来管理预约。当病人打来电话预约时,接待员将查阅预约登记表,如果病人申请的就诊时间与已定下的预约时间冲突,则接待员建议一个就诊时间以安排病人尽早诊治。如果病人同意建议的就诊时间,接待员就输入约定时间和病人的名字。系统将核实病人的名字并提供记录的病人数据(病历号等)。在每次治疗或清洗后,助手或保健员将标记相应的预约诊治已经完成,如果必要会安排病人下一次来。系统能够按病人姓名和日期进行查询,能够显示记录的病人数据和预约信息。接待员可以取消预约,可以打印前两天预约未就诊的病人清单。系统可以从病人记录中获知病人的电话号码。接待员还可以打印出关于所有病人的每天、每周的工作安排。张
7、大夫在小镇开了一家牙科诊所。他有一位牙科助手、一个牙科保健员和一个接待员。张大夫需要一个软件系统来管理预约。当病人打来电话预约时,接待员将查阅预约登记表,如果病人申请的就诊时间与已定下的预约时间冲突,则接待员建议一个就诊时间以安排病人尽早诊治。如果病人同意建议的就诊时间,接待员就输入约定时间和病人的名字。系统将核实病人的名字并提供记录的病人数据(病历号等)。在每次治疗或清洗后,助手或保健员将标记相应的预约诊治已经完成,如果必要会安排病人下一次来。系统能够按病人姓名和日期进行查询,能够显示记录的病人数据和预约信息。接待员可以取消预约,可以打印前两天预约未就诊的病人清单。系统可以从病人记录中获知病
8、人的电话号码。接待员还可以打印出关于所有病人的每天、每周的工作安排。预约登记表和病人的属性分析问题域中对象彼此之间的关系:每天工作安排和每周工作安排有很多共同点,可以从他们泛化出一个父类“工作安排”。牙科诊所诊治多名病人一位病人有一份病人记录一位病人可能预约多次也可能一次也没有预约牙科诊所在一段时间内将打印出多份病人清单牙科诊所开业来已经建立了多份预约登记表预约登记表中记录了多位病人的预约根据预约登记表在不同时间内可以制定出不同的工作安排2.数据流图从牙科诊所管理系统的需求陈述可以得知,当进行预约时病人提供姓名、希望的就诊日期等数据,系统查询预约登记表,以确定一个有效的就诊日期,此外,系统还将查询病人记录一获得病历号等病人数据。在每次预约就诊完成之后,应该更新预约登记表,以标记相应的预约诊治已经完成,必要时约定下次就诊日期。诊所职员可以按病人姓名和日期查询预约信息,也可以取消预约。此外,系统可以打印出每天和每周的工
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年德宏职业学院单招综合素质笔试备考试题带答案解析
- 2026年广西机电职业技术学院单招综合素质考试参考题库带答案解析
- 2026年常州纺织服装职业技术学院单招综合素质笔试备考题库带答案解析
- 2026年贵州经贸职业技术学院单招职业技能笔试备考题库带答案解析
- 2026年湖南民族职业学院高职单招职业适应性测试备考试题有答案解析
- 2026年渤海理工职业学院高职单招职业适应性考试备考试题带答案解析
- 2026年阿坝职业学院高职单招职业适应性测试参考题库有答案解析
- 2026年贵州食品工程职业学院单招职业技能考试参考题库带答案解析
- 2026年桂林师范高等专科学校高职单招职业适应性测试备考题库有答案解析
- 2026年广东工程职业技术学院高职单招职业适应性测试模拟试题有答案解析
- 行政部给公司员工培训
- 中考物理 题型06【电学实验题】押题必做15题
- 企业安全生产责任制评估与改进方案
- 昆仑神话叙事的百年学术史重构与跨学科研究
- (必刷)湖南专升本《基础护理学》考点精粹必做300题-含答案
- 隧道监测与数据采集技术方案
- 总经办办公室工作总结及计划
- 围堤水下抛石工程的施工技术方案与安全措施
- 2025-2030中国钢结构建筑在新能源设施建设中的应用前景报告
- 焊工安全培训考试题(附答案)
- 2025年直招军官面试题型及答案
评论
0/150
提交评论