《面向对象分析 》PPT课件

上传人:san****019 文档编号:20678814 上传时间:2021-04-12 格式:PPT 页数:38 大小:1.52MB
返回 下载 相关 举报
《面向对象分析 》PPT课件_第1页
第1页 / 共38页
《面向对象分析 》PPT课件_第2页
第2页 / 共38页
《面向对象分析 》PPT课件_第3页
第3页 / 共38页
点击查看更多>>
资源描述
第 10章 面向对象分析 计算机与信息工程学院 梁 颖 面向对象分析 10.1 面向对象分析的基本过程 10.2 建立对象模型 10.3 建立动态模型 10.4 建立功能模型 10.5 定义服务 本章小结 10.6 面向对象分析 10.1 面向对象分析的基本过程 抽取和整理用户需求并建立问题域 精确模型的过程 实施过程: 需求 陈述 实际需求 分析模型 面向对象设计阶段 要点 面向对象分析 10.1 面向对象分析的基本过程 3个子模型 和 5个层次 对象模型 动态模型 功能模型 主题层 类与对象层 结构层 属性层 服务层 面向对象分析 10.1 面向对象分析的基本过程 寻找类与对象 识别结构 识别主题 定义属性 建立动态模型 建立功能模型 定义服务 面向对象建模方法 ( 1) Booch方法 识别类与对象 ; 识别类与对象的语义 ; 识别类与对 象之间的关系 ; 实现类与对象。 ( 2) Rumbaugh的 OMT方法 分析 (建立现实世界模型 ); 系统设计 (目标系统分解为 子系统 ); 对象设计 (对三类模型添加实现细节 ); 编程 实现。 ( 3) Jacobson方法 (涉及整个软件生命周期 ) 需求分析 (定义潜在角色、发现用例、详细描述用例 ); 设计 (发现设计对象、调整设计模型 ); 实现 ; 测试 ( 4) Coad/Yourdon方法 发现类及对象 ; 识别结构 ; 识别主题 ; 定义属性 ; 定义服务 面向对象分析 10.1 面向对象分析的基本过程 10.2 建立对象模型 10.3 建立动态模型 10.4 建立功能模型 10.5 定义服务 本章小结 10.6 面向对象分析 10.2 建立对象模型 需求陈述 见 P234例子 确定类与对象 确定关联 划分主题 确定属性 识别继承关系 反复修改 找出候选的类与对象; 筛选出正确的类与对象。 初步确定关联; 筛选; 进一步完善。 分析 + 选择 自底向上 (归纳思维 ); 自顶向下 (演绎思维 )。 定义;使用范围; 划分依据;原则 面向对象分析 随堂练习 (一 ):请建立下述的图书馆馆 藏出版物的对象模型。 一家图书馆藏有书籍、杂志、小册子、电影 录影带、音乐 CD、录音图书磁带和报纸等出 版物供读者借阅。这些出版物有出版物名、 出版者、获得日期、目录编号、书架位置、 借出状态和借出限制等属性,并有借出、收 回等服务。 面向对象分析 随堂练习 (一 ):请建立下述的图书馆馆 藏出版物的对象模型。 馆 藏 出 版 物 出 版 物 名 出 版 者 获 得 日 期 目 录 编 号 书 架 位 置 借 出 状 态 借 出 限 制 杂 志 日 期 小 册 子 作 者 录 影 带 电 影 名 C D 演 员 名 录 音 图 书 作 者 报 纸 日 期 书 作 者 面向对象分析 随堂练习 (二 ):用非正式分析法分析确 定下属杂货店问题中的对象。 一家杂货店想使其库存管理自动化。这家杂 货店拥有能够记录顾客购买的所有商品的名 称和数量的销售终端。顾客服务台也有类似 的终端,以处理顾客的退货。它在码头有另 一个终端处理供应商发货。肉食部和农产品 部有终端用于输入由于损耗导致的损失和折 扣。 面向对象分析 随堂练习 (二 -1):用非正式分析法分析确 定下属杂货店问题中的对象。 一家杂货店想使其库存管理自动化。这家杂货店 拥有能够记录顾客购买的所有商品的 名称 和 数量 的 销售终端 。顾客 服务台 也有类似的终端,以处 理顾客的退货。它在 码头 有另一个终端处理供应 商发货。 肉食部 和 农产品部 有终端用于输入由于 损耗 导致的损失和折扣。 问题域中的对象有 : 杂货店、库存、顾客、商 品、终端、退货、供应商、发货、肉食品、农 产品、损失、折扣 面向对象分析 随堂练习 (二 -2):确定所述杂货店问题中 对象类之间可能有的继承关系。 问题域中的对象 : 杂货店、库存、顾客、商品、终端、 退货、供应商、发货、肉食品、农产品、损失、折扣 交 易 名 称 数 量 金 额 日 期 损 失 折 扣 退 货 商 品 农 产 品 肉 食 品 面向对象分析 随堂练习 (二 -3):确定所述杂货店问题中的对 象模型。 交 易 名 称 数 量 金 额 日 期 损 失 折 扣 退 货 商 品 农 产 品 肉 食 品 顾 客 姓 名 地 址 参 与 1 + 供 应 商 发 货 终 端 库 存 货 物 杂 货 店 店 名 地 址 面向对象分析 10.1 面向对象分析的基本过程 10.2 建立对象模型 10.3 建立动态模型 10.4 建立功能模型 10.5 定义服务 本章小结 10.6 面向对象分析 10.3 建立动态模型 认识动态模型 表示瞬时的、行为化的系统的 “ 控制 ” 性质, 规定了对象模型中的对象的合法变化序列 反映在任何时刻对象及其关系的改变 涉及系统时序和改变状况用动态模型来描述 动态模型着重于系统的控制逻辑 它包括两个图:状态图和事件跟踪图 面向对象分析 10.3 建立动态模型 ( 1)编写典型交互行为的脚本; ( 2)从脚本中提取事件,确定触发每个 事件的动作对象及接受事件的目标对象; ( 3)排列事件发生的次序,确定对象可 能有的状态及状态间的转换关系,并用状 态图描绘它们; ( 4)检查各对象状态图的一致性,确保 事件之间的匹配。 脚本 事件跟踪图 状态图 面向对象分析 10.3.1 编写脚本 描述事件序列 Event=Activator+Receiver+Parameters 基本类型: ( 1)正常情况脚本; ( 2)特殊情况脚本(输入 输出取边界值时); ( 3)异常情况脚本 (应允许用户异常中止或取消 一个操作 )。 面向对象分析 10.3.1 编写脚本 定义: 脚本是系统在某一执行期间内出现的一系 列事件 目的: 不遗漏用户与系统的重要交互步骤,确保 交互过程的正确性和清晰性 过程: 分析用户对系统交互行为的要求的过程 对象: 事件序列。系统中的对象与用户交互信息 时就发生一个事件。 面向对象分析 面向对象分析 10.3.2 画事件跟踪图 ( 1)确定事件 (发送对象、事件、接收对象) 事件: 包括系统与用户交互的所有信号、输 入、输出、中断、动作等。 注意:正常事件、异常事件、出错条件 ( 2)画出事件跟踪图 扩充的脚本、简化的 UML顺序图 表示事件序列以及事件与对象的关系 面向对象分析 事件 一个事件发生在某一时刻 每个事件都是单独发生的 建立事件类,并给每个事件一个名字,以指明共 同结构和行为 事件从一个对象向另一个对象传送消息 有些事件类可能传送的是简单的信号“要发生某 件事”,而有些事件类则可能传送的是数据值, 由事件传送的数据值叫做属性。 如:列车出发(线路,班次,城市); 按下鼠标按钮(按钮,位置) 面向对象分析 事件跟踪图 事件跟踪图侧重于说明发生于系统执行过程 中的特定场景。 场景也叫做脚本,是完成系统某个功能的一 个事件序列。 场景通常起始于一个系统外部的输入事件, 结束于一个系统外部的输出事件,它可以包 含发生在这个期间的系统所有内部事件 面向对象分析 事件跟踪图(举例) 打电话者拿起电话受话器 电话忙音开始 打电话者拨数字 (8) 电话忙音结束 打电话者拨数字 (2) 打电话者拨数字 (3) 接电话者的电话开始振铃 铃声在打电话者的电话上传出 接电话者回答 接电话者的电话停止振铃 铃声在打电话者的电话中消失 通电话 拿 起 话 筒 电 话 忙 音 开 始 拨 号 ( 8 ) 电 话 忙 音 结 束 拨 号 ( 2 ) 拨 号 ( 3 ) 拨 号 ( 2 ) 拨 号 ( 3 ) 铃 声 停 止 振 铃 通 话 电 话 切 断 挂 断 电 话 电 话 振 铃 响 应 电 话 停 止 振 铃 通 话 挂 断 电 话 切 断 电 话 打 电 话 者 电 话 线 接 电 话 者 面向对象分析 面向对象分析 10.3.3 画状态图 状态图描绘事件与对象状态的关系,确定了由 事件序列引出的状态序列 符号表示: 初态:实心圆“ ”; 终态:同心圆“ ” 中间状态:圆角矩形“ ” 构成要素: 事件:事件跟踪图中指向某条竖线的箭头线 状态:两个事件之间的间隔就是一个状态 注意:覆盖所有脚本 面向对象分析 10.3.3 画状态图 状 态 A 活 动 状 态 B 状 态 A /操 作 事 件 B 条 件 起 始 状 态 终 止 状 态 动态模型由多个状态图组成 对于每一个具有重要动态行为的类都有一个状态图,从而 表明所有系统活动的模式 各状态图并发地执行,并可以独立地改变状态 各种类的状态图可以通过共享事件组合到一个动态模型中 面向对象分析 面向对象分析 10.3.4 审查动态模型 动态模型: 各个类的状态图通过共享事件合并起来构成 动态模型。 审查要素: 事件:应有发送对象和接收对象 状态:不能独立出现,重点审查没有前驱或 后继的状态。 注意:覆盖所有脚本 面向对象分析 10.3.6 设想用户界面 用户与系统交互: 应用逻辑 和 用户界面 。 系统内在的、本质的内容。动态模 型着重表示应用系统的控制逻辑 表现信息交互方式,可建立用户 界面的原型,供用户试用与评价 面向对象分析 10.1 面向对象分析的基本过程 10.2 建立对象模型 10.3 建立动态模型 10.4 建立功能模型 10.5 定义服务 本章小结 10.6 面向对象分析 10.4 功能模型 表示变化的系统的 “ 功能 ” 性质,它指 明了系统应该 “ 做什么 ” ,因此更直接地反 映了用户对目标系统的需求。 面向对象分析 10.4 功能模型 功能模型表明,通过计算从输入数据能得到什 么样的输出数据,不考虑参加计算的数据按什么 时序执行。 功能模型由多个数据流图组成,它们指明从外 部输入,通过操作如内部存储,直到外部输出, 这整个的数据流情况。 功能模型中所有的数据流图往往形成一个层次 结构。在这个层次结构中,一个数据流图中的过 程可以由下一层的数据流图中作进一步的说明。 分层的数据流图 面向对象分析 面向对象分析 10.4 功能模型 一般来讲,高层的过程相应于作用在聚合对象上 的操作,而低层的过程则代表作用于一个简单对 象上的操作。 数据流图中一般不提倡加带控制流。否则将与 动态模型重复。 对 象 A 数 据 存 储 区 过 程 1 控 制 流 过 程 2 对 象 B 面向对象分析 10.1 面向对象分析的基本过程 10.2 建立对象模型 10.3 建立动态模型 10.4 建立功能模型 10.5 定义服务 本章小结 10.6 面向对象分析 10.5 定义服务 常规行为 从事件导出的操作 与数据流图中处理框对应的操作 利用继承减少冗余操作 The End 面向对象分析
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!