面向对象的系统分析ppt培训课件

上传人:aa****6 文档编号:54185526 上传时间:2018-09-09 格式:PPT 页数:74 大小:197KB
返回 下载 相关 举报
面向对象的系统分析ppt培训课件_第1页
第1页 / 共74页
面向对象的系统分析ppt培训课件_第2页
第2页 / 共74页
面向对象的系统分析ppt培训课件_第3页
第3页 / 共74页
面向对象的系统分析ppt培训课件_第4页
第4页 / 共74页
面向对象的系统分析ppt培训课件_第5页
第5页 / 共74页
点击查看更多>>
资源描述

《面向对象的系统分析ppt培训课件》由会员分享,可在线阅读,更多相关《面向对象的系统分析ppt培训课件(74页珍藏版)》请在金锄头文库上搜索。

1、第10章 面向对象的系统分析,OOA任务:以面向对象的观点和方法描述系 统或产品,以使它符合面向对象软件工程的 特点。 系统分析的原则: 信息域建模; 描述模块的功能; 表示模块行为;, 划分模块, 取得更多的细节; 早期模型表示本质,后期模型提供细节。 OOA的过程: 和用户交互 标识类(定义属性和操作) 规定类层次 确定对象之间关系 为对象行为建模,10.1 领域分析 10.2 OOA分析的属过程和部件 10.3 OOA过程 10.4 对象行为模型,10.1 领域分析,目的:为了既满足现行系统开发的需求, 又能满足将来同类系统的开发。 OOA分析级别: 事务级(企业级): 为整个企业建立模

2、型, 定义特定事务领域的对象模型; 领域级:为一个特定应用领域建立模 型,定义该应用领域的对象模型。 应用级:为一个应用的特定用户需求 建立模型。,10.1.1 再使用和领域分析,1)面向对象技术是由再使用库支持的; 2)再使用库将使快速开发低成本、高可靠 性的产品; 3)建立再使用库须进行领域分析。,10.1.2 领域分析过程,1)领域分析的任务 标识出应用领域中的公共需求; 面向对象的领域分析:公共对象,类 等再使用部件。 2)领域分析的过程 对于要分析的领域抽取:OO项:规范、设计、支持类非OO项:计划、标准, 归类这些项成为范畴, 定义范畴特征, 分 类方式和项的命名约定(即确定组织方

3、式); 收集有代表性的应用(提取实际的或概念 上的对象); 分析每个应用步骤(含有已有范畴的项) 标识可再使用对象(侯选) 指明可再使用原因 对侯选再使用对象进行整修 估计在本领域中该对象应用的百分比, 命名该对象,用CM进行管理 估计再使用对象集合的应用百分比 为这些对象开发分析模型3)领域分析的利益使用非常高百分比的再使用部件,构 造本领域的软件,低成本,高质量和快速 进入市场。,10.2 OOA分析的属过程和部件,10.2.1 一般分析过程 10.2.2 属部件(用于OOA),10.2.1 一般分析过程,* 获取客户需求* 标识使用案例* 建立需求模型(CRC)* 选择类和对象* 标识对

4、象属性和操作* 组织类的层次* 建立对象关系模型* 建立对象行为模型* 审查分析模型,10.2.2 属部件(用于OOA),静态部件: 表明了对象的特征 动态部件: 控制、定时和事件处理 1) 类的静态视图: 表示系统中存在的对象 2) 属性静态视图: 表示对象的属性 3) 关系的静态视图: 确定对象之间关系, 相互操作和消息格式设计。 4) 行为动态视图: 规定操作的时间序列,5) 通讯的动态视图: 发送消息的时间序列 6) 控制和定时的动态视图: 描述引起状态变化事件的本质与定时。 这些部件构成了分析模型。,10.3 OOA过程,10.3.1 使用案例 10.3.2 类责任协作者模型 10.

5、3.3 定义结构和层次 10.3.4 定义系统和子系统 10.3.5 对象联系模型,10.3.1 使用案例,描述目标系统的一种使用情况。 1)角色 2)使用案例作用 3)使用案例图示 4)使用案例描述(事件流方法),1)角色,和系统通讯并外部于系统的任何事物(人、设备)。特点: 一个角色代表一类外部实体 仅起一个作用 主要角色:直接并经常和系统相互作用。 次要角色:支持系统,使主要角色起作用。,2)使用案例作用,描述了角色与系统的相互作用方式。 角色执行的主要任务 角色输入系统的数据 角色得自系统的信息例:房屋安全系统角色:房主、传感器、控制板房主使用案例: (相互作用方式),* 设置和修改口

6、令* 查询安全部位状态* 查询传感器状态* 按紧急按钮* 激活与停止系统,3)使用案例图示, 图例:角色:通讯:使用或扩展 表示关系: 通讯关系:角色与案例之间 使用关系:案例与案例之间,把公用 功能孤立出来,形成被使用案例(再使用), 扩展关系:案例与案例间,表明了特 殊性和深入内容。 例:,查询传感器,查询安全状态,房主,图10.2 房主使用案例,验证口令,图10.3 使用关系的框图,客 户,取 款,展 扩,使用,提前取款,验证口令,图10.4 使用扩展关系的框图,4)使用案例描述(事件流方法), 格式:使用案例名称 简要说明: 前提条件:执行案例的前提条件 主要事件流:案例正常流程 其它

7、事件流:案例非正常流程 错误事件流:出错事件 事后条件:事件后的结果 例:P222,使用案例名称: 激活系统 简要说明: 房主使用控制面板激活系统 前提条件: 系统准备号, 准备好指示灯亮. 主要事件流A0: (1) 房主使用数字键输入4位数字口令, 该口令和系统内存储的口令比较, 若正确, 控制面板等待下一个命令; 否则执行事件流A1.(2)房主选择stay或away命令激活系统. Stay激活房间周边传感器; away激活所有的传感器.(3)若激活成功, 红色指示灯亮; 否则执行事件流E1.(4)结束使用案例.,其他事件流A1: (1)控制面板响铃一次.(2)系统复位.(3)执行事件流A0

8、. 错误事件流E1: (1)控制面板显示系统出错.(2)结束使用案例.,10.3.2 类责任协作者模型,类责任协作者模型:用于描述用户的需求,标出对象和类。 构成:CRC卡片,顶部: 类名,中左部: 责任,中右部: 协作者。 1)类 2)责任 3)协作者,1)类, 确定:使用选择特征 持有信息 有需要的服务 多个属性 具有公共属性(对所有对象) 公共操作(对所有对象实例) 产生需要信息, 类型:如设备(外部实体),相互作用类(学生成绩) 特征:如有形的、原子的、并发的 CRC卡片:,图10.5 CRC卡片,2)责任:,指类的属性及其操作。 分配责任的指导原则: 系统的智能应均匀分布:内聚改善,

9、修改容易。 责任表太长,表示不均匀,分裂成新类 责任抽象级别应相同. 例Control-panel责任:读入口令和显示字符, 每个责任尽量具有一般性,位于类层次顶层,便于应用多态性 信息与其相关责任驻在同一类中封装性 单一对象的信息与行为局部于单一类中,不应跨多个类 适当情况下,类间共享责任:通过继承一个公共超类,3)协作者,类能和其它对象协作完成其责任。 定义:一个对象向另一对象发消息,则发生了协作。接收消息的对象称为协作者。 Control-panel对象的责任:确定传感器状态,为取得传感器信息,必须有传感器协作。,10.3.3 定义结构和层次,1)概化和特化关系进一步讨论 2)整体部分关

10、系的进一步讨论,1)概化和特化关系进一步讨论, 需要该模型原因 紧密地联系于面向对象程序设计中的继承; 将类似的类联系起来,简化问题域的描述; 该模型有效地描述了问题域中特定对象关系; 方便了通讯与理解问题域, 概化和特化的情况 多层次特化;,多层概化/特化例子图, 多路继承,人员,教师学生,学生,教师,图10.7 多路继承, 建立模型方式 自顶向下特化:由超类特化成子类增加子类的属性和操作转载某些属性或操作 自底向上概化:将公共属性与操作置 于超类之中 超类的例化问题 超类为无对象类:当子类中所有子类 的并集等于超类集合, 超类为有对象类:当子类中所有子类 的并集是超类集合的子集例:对于人员

11、的模型,如果需要工人等 对象,则需从人员类中例化。 模型读方式从下向上读为是一个或是一种例:教师是一种人员,2)整体部分关系的进一步讨论, 需要该模型的原因 准确描述客观(问题域)世界中某些对象之间关系 对复杂问题抽象的强有力工具一个复杂的系统由许多复杂对象组成,而复杂对象是由简单对象组成。 通讯问题域工具, 整体部分关系的种类 部件与零件:例控制面板与键盘、屏幕等。,1,1,1,1,1,2,图10.8 控制面板的组成, 容器与包含物:办公室与桌子、书架等,1n,1,1,图10.9 整体部分关系的约束,1,1,1,2,1, 群体与成员: 职业学会与其成员、IFAC 与其成员 关系约束与表达方式

12、 用三角形表示整体部分关系,尖指向整 体侧; 整体侧数字表示零件、成员个数;部分数字表示整体个数; 约束值:单个数或数对0 n,1n。, 复杂对象的行为 表明了高级行为 由低级部分的行为构成 例:控制面板应有行为接收命令,由键盘实现显示状态,由显示屏实现 程序框架,class class_Apublicclass_A( );class_A( );private:class_B *the_class_B5;class_C *the_class_C4; ,class class_B class class_C public: public:class_B( ); class_B( ); class

13、_C( ); class_C( ); ,10.3.4 定义系统和子系统,1)子系统 2)子系统内含 3)子系统的图示 4)复杂系统的主题表示,1)子系统,一些类相互作用,完成一组紧密相关的责任。2)子系统内含 子系统的责任: 完成的功能 子系统的契约: 接口规定 子系统的协作者: 与其它子系统关系,3)子系统的图示, 对于复杂结构的抽象表示(见图10.12) 表示方式:矩形, 其内注明结构名字4)复杂系统的主题表示,1. 控制面板,4. 传感器,3. 传感器 事件,5. 声音警报,2. 系统,图10.13 OOA模型中的主题参考图,控制面板,显示区,键 盘,指示灯,报文显示,图显示,功能键,数

14、字键,LCD显示,1. 控制面板,主题参考,图10.12 主题参数,10.3.5 对象联系模型,对象联系: 表示对象间的关系 一个对象知道另一种对象 一个对象知道多少个另一种对象 一个对象的存在必须有多少对应的对象存在 与E_R图的区别 E_R图仅表示数量的对应 对象联系除表示数量的对应外加相互作用,1)相互作用类型的对象联系(单向作用),代码框架 class 系统public:系统( );系统( );private:控制面板 * 控制面板地址 ,class 控制面板public:控制面板( );控制面板( ); ,2)事务类型的相互联系(双向联系),实现上:一个对象中应有指向另一对象的指针 参与者事务模板例如:学生注册约束基数的意义:一个学生可注册0次或多次,而一个注册只能由一个学生进行 事务地方模板表示事务发生的地方, 例: 缴费与缴费地方 参与者地方模板例如:学生与学院,出纳窗口,缴注册费,0-n 1,图10.15 参与者事务模板,图10.16 地方事务模板,图10.18 参与者-地方模板,

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

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

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