信息系统开发与管理第7章

上传人:wt****50 文档编号:49911222 上传时间:2018-08-04 格式:PPT 页数:35 大小:348KB
返回 下载 相关 举报
信息系统开发与管理第7章_第1页
第1页 / 共35页
信息系统开发与管理第7章_第2页
第2页 / 共35页
信息系统开发与管理第7章_第3页
第3页 / 共35页
信息系统开发与管理第7章_第4页
第4页 / 共35页
信息系统开发与管理第7章_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《信息系统开发与管理第7章》由会员分享,可在线阅读,更多相关《信息系统开发与管理第7章(35页珍藏版)》请在金锄头文库上搜索。

1、信息系统的开发与管理教程( 第二版)中国人民大学:左美云第七章一、面向对象方法对象 对象是一些属性及专用服务的封装体,它是问题空 间中一些东西的抽象。 由以上定义可知,对象就是我们在问题空间中要考 虑的那些人或事物。它具有一组属性和一组操作。 这些属性的值刻画了一个对象的状态,而这些操作 是对象的行为,通过它们改变对象的状态(即属性 值)。 数据和操作封装于对象的统一体中,而不是分开。 这样,对象就具有较强的独立性和自治性,具有很 好的模块性,为软件重用奠定了坚实的基础。 与对象相关的一个概念是对象类(Object Class) 。对象类简称类,是有相似属性和行为的多个对象 的集合。例如,对象

2、“客车”、“货车”、“拖车”等, 它们属一个共同的类“车辆”。封装和继承 封装即信息隐藏。对象是一个很好的封装体。它向 外提供的界面包括一组数据结构(属性)和一组操 作(服务),而把内部的实现细节(如函数体)隐 蔽起来。 继承指对象继承它所在类的结构、操作和约束,也 指一个类(子类)继承另一个类(父类)的结构、 操作和约束。继承体现了一种共享机制。 继承一个单一的父类时叫单继承,如果有两个以上 的父类则是多继承。前者继承关系是单一的,体系 结构表现为树;后者继承关系复杂,呈网状结构。 继承的作用在于信息组织和分类,简化对象及类的 创建工作量。利用继承性,只要在原有类的基础上 增加、删除或修改少

3、量数据和方法就可以得到子类 。消息 一条消息告诉一个对象做什么,它指出:发送者、接 收者、需要执行的服务、需要的参数。 例如,对象汽车具有“行驶”这项操作,为了让汽车以 时速50公里的时速行驶,需要向汽车对象传送“行驶” 和“时速50公里”的消息,来触发这个对象。 值得注意的是,“消息传递”与传统的“过程调用”的区 别。 发送消息只是触发对象。接受对象收到消息后,按消 息及消息调用自己的操作来改变状态或返回结果。因 此,同样的输入参数可能因对象的初始状态不同而得 到不同的终态,或输出不同的结果。而过程调用则只 要输入相同的参数,输出总是一样的。OO遵循的法则及其特性 三个构造法则: 区分对象及

4、其属性,例如,区分一棵树和树的大 小; 区分整体对象及其组成部分,例如,区分一棵树 和树枝; 不同对象类的形成及区分,例如,所有树的类和 所有车辆的类。 OO的优良特性 抽象性、封装性、继承性、多态性。多态性 多态性又叫多形性,指相同的操作(或函数 ,或过程)可作用于多种类型的对象并获得 不同的结果。 在面向对象方法中,可给不同类型的对象发 送相同的消息,不同的对象分别作出不同的 处理。 例如,给整数对象和复数对象定义不同的数 据结构和加法运算,但可以给它们发送相同 的消息“做加法运算”,整数对象接收此消息 后做整数加法,复数对象则做复数加法,产 生不同的结果。多态性增强了软件的灵活性 、重用

5、性、可理解性。二、面向对象分析面向对象分析的特点 面向对象的分析(OOA)要求把问题空间分 解成一些类或对象,找出这些对象的特点( 即属性和服务),以及对象间的关系(一般/ 特殊,整体/部分关系),并由此产生一个规 格说明。 OOA有助于改善:问题空间的理解,人与人 之间的通讯和需求的不断变化。 OOA由五个主要步骤构成:标识对象,标识 结构,定义主题,定义属性(及实例连接) ,定义服务(及消息连接)。标识对象 寻找对象:寻找对象应从问题空间、文字资 料和图片资料入手,寻找结构、其他系统、 设备、要记住的事件、人扮演的角色、地点 和组织单元等,以便发现可能的对象。 挑剔对象。对那些不必记住的事

6、物与服务, 单个属性或派生结果(如“年龄”是“出生日期 ”的派生结果),就要考虑它们可能并不是对 象。 命名对象。用单个名词或形容词加名词作对 象名,尽量选择反映主题的标准词汇作对象 名。车辆登记和发照(发驾驶执照)系统 车主购车后持相关证件到主管部门登记注册,缴纳 费用,获得牌照。注册后,登录车况信息和车主信 息。系统维护下列信息: 组织机构(名称,经理,地址,电话等); 职员(用户名,审查,开始日期,结束日期等); 车主(合法名,地址,电话等); 发照(号码,所有权证件,费用等); 注册(日期,品牌,费用等); 车辆(号码,年份,制造厂,厢体颜色,自重,载客量 ,燃料,价格等); 另外还有

7、: 对货车:现时自重 对摩托车:自重 对拖车:燃料,载客量 对旅游拖车:厢体号,长度。登记和发照系统中的对象标识结构 分类结构 分类结构有助于刻画出问题空间的类成员层次。 它通过搜集公共特性,并把这种特性扩充到特例 之中,显示现实世界事件的通用性及专用性。 继承的概念是分类结构的一个重要组成部分。 定义分类结构时,要分析通用类是否表达了专用 类的共性,专用类是否表示了个性。子类把不需 继承的服务和属性标记为“X”。 组装结构 组装结构刻画了一个整体及其组成部分。例如, 一辆汽车由发动机,传动装置和刹车装置组成。登记和发照系统中的结构标识主题 首先,对每个对象和每个结构增加一个相应主题, 如果主

8、题的个数超过7个左右,则进一步提炼主题 ,一旦对象和结构之间的连接得到标识,根据需要 ,把紧耦合的主题合在一起提供一个更好的模型概 观供读者理解。 然后,列出主题及主题层上各主题之间的消息连接 。 最后,对主题进行编号,在层次图上列出主题以指 导读者从一个主题到另一个主题。每一层都可以组 织成按主题划分的图。登记和发照系统中的主题标识属性 标识属性。 属性定位。 通用属性应放在结构的高层,特殊属性放在低层。 如果一个属性适用于大多数的特殊分类,可将其放在通 用的地方,然后在不需要的地方把它覆盖(即用“”等记 号指出不需要继承该属性)。 如果发现某个属性的值有时有意义,有时却不适用,则 应考虑分

9、类结构。 根据发现的属性,还可修订对象。 标识实例连接。 多重性:一对一(1:1)的,一对多(1:M),多对多( M :M)。 参与性:表示实例连接是强制的还是任意的?描述实例之间关系的符号登记和发照系统中的属性标识服务 服务可定义为:收到一条消息之后所执行的 处理。 服务定义了对象及类所需的行为。行为分为 : 有直接动因的行为; 进化史上的相似行为; 功能相似的行为。 标识服务(即对象的行为)的策略分别对应 于上述三类行为: 直接动因对应:状态事件响应(辅助策略) ; 进化史对应:对象生命历程(辅助策略); 功能对应:最基本的服务(基本策略)。标识服务的基本策略 Occur(实例的增加、修改

10、、删除和选择); Calculate(计算); Monitor(监控); 这三种基本服务提供了标识服务的基本策略,所有 的OOA模型都使用“Occur”服务; 当一个实例需要另一个实例中说明的处理结果时, 使用它的“Calculate”服务; 而有关实时处理的那一部分将使用“Monitor”服务 , “Monitor”服务执行对外界系统、设备或用户的 运行监控。对象生命历程的辅助策略 定义基本的对象生命历程序列:增加、修改、选择和删除; 检查每一步的演变:扩展每一步,反映出增加、修改、删除的演变; 增加基本序列:对象或分类结构响应其他事件吗? 增加服务:根据扩展的每一步增加服务,一般所增加的服

11、务是对象的基本服务的演变。状态事件响应的辅助策略 定义系统的主要状态; 对每一个状态,列出外部事件和所需的响应; 根据事件和响应增加服务(和消息连接); 辅助策略有助于发现可能遗漏的“Calculate”和“Monitor”服务。建立消息连接 首先在已经存在实例连接的对象和分类结构 之间增加消息连接。 然后检查对象和分类结构,包括封装在其中 的属性,寻找一个实例所需要的另一个实例 的服务,从中找到消息。 再次在发送者的服务说明中建立消息连接的 文档,在接收者的服务说明中建立相应的执 行服务的文档。 最后详细说明服务。登记和发照系统中的服务三、面向对象设计OOD的内容 问题空间部分的设计(PDC

12、) 人机交互部分的设计(HIC) 任务管理部分的设计(TMC) 数据管理部分的设计(DMC)问题空间部分的设计(PDC) PDC的设计策略包括三部分:运用OOA的结果;改 进OOA的结果;增补OOA的结果。 对OOA结果的增补原因和准则包括: 重用设计和编程的类:为了重用而引进现成的类。 把问题空间专用类组合在一起:附加一个根类把所有类 组织起来。 通过增添一般类而建立协议:引进一个附加类,作为有 相似服务及相应属性的一般类。 改进性能:为改进速度,可能合并一些高度耦合的类, 还可能在类及对象中扩充一些保存临时结果的属性或一 些低层控制块。 提供数据管理部分:增加属性和服务使对象能够被保存 。

13、 增加低层成分:增加类来反映一些低层的逻辑细节。 调节继承的支持级别:如果OOA的结果包括多继承,而 编程语言只支持单继承甚至无继承时,就要作相应调整 。多继承展平为单继承人机交互部分的设计(HIC) 对人分类。把人按技能层次、组织层次、不同身份进行分类 ,增加与系统交互的人的子集。 描术人及其任务脚本。对每一类人,描述其身份、目的、特 征、关键的成果因素(必须 / 想要,喜欢 / 不喜欢 / 有偏 见)熟练程度及任务剧本。 设计命令层。命令层可能以菜单屏面或菜单条或一系列图符 呈现给人们,要按使用频度及用户工作步骤排列服务名。宽 度一般为72。 设计详细的交互。考虑的准则有:一致性;操作步骤

14、少;不 要“哑播放”,Undo;趣味与吸引力。 继续做原型。做几个可候选的原型,让人们一个一个地试用 ,要达到“臻于完善”,由衷地满意。 设计HIC类。设计HIC类,从组织窗口和部件的人机交互设 计开始,窗口作基本类,部件作属性或部分类,特殊窗口作 特殊类。每个类包括窗口的菜单条、下拉菜单、弹出菜单的 定义,每个类还定义了用来创造菜单、加亮选择等所需的服 务。任务管理部分的设计(TMC) 识别事件驱动任务。事件驱动任务是指睡眠任务( 不占用CPU),当某个事件发生时,任务被此事件 触发,任务醒来作相应处理,然后又回到睡眠状态 。 识别时钟驱动任务。按特定的时间间隔去触发任务 进行处理,如某些设

15、备需要周期性的数据采集和控 制。 识别优先任务和关键任务。把它们分离开来进行细 致的设计和编码,保证时间约束或安全性。 识别协调者。增加一个任务来协调诸任务,这个任 务可以封装任务之间的协作。 审查每个任务,使任务数尽可能少。 定义每个任务:包括任务名、驱动方式、触发该任 务的事件、时间间隔、如何通讯等。OOD的评价 对每一种不同的方案有不同的设计,一个好的设计 就是经过权衡选择使整个生命周期内系统总开销最 少的那个设计。 OOD的评判标准包括:耦合、内聚、重用及其他。 OOD的其他评判标准包括结构的深度、设计的简单性和 清晰度、公认的优雅风格等。 耦合分交互耦合和继承耦合。 交互耦合指两个对象间传递消息以实现交互。这种耦合 越小越好,因为信息传输量越小,对象的独立性和模块 性就越强,当一个部分改动时,对另一部分的影响就越 小。如果几个对象的耦合度实在太大,可以考虑合并成 一个对象。 继承耦合表示子类与父类的联系程度,这种耦合度越大 越好,因为应尽可能利用现有的一般类。四、统一建模语言UMLUML介绍 UML是一种通用的可视化建模语言,适用于 各种开发方法、信息系统生命周期的各个阶 段、各种应用领域及各种开发工具。 基于UML的信息系统开发包含需求、分析、 设计、实现、部署和配置等步骤。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 社会民生

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号