软件工程 第10章面向对象分析 信息技术学院 高海波
软 件 工 程 第10章 面向对象分析 信息技术学院 高海波
软件工程 主要内容 口10.1面向对象分析的基本过程 日102需求陈述 口103建立对象模型 口104建立动态模型 口10.5建立功能模型 日106定义服务 日107小结
软 件 工 程 主要内容 10.1 面向对象分析的基本过程 10.2 需求陈述 10.3 建立对象模型 10.4 建立动态模型 10.5 建立功能模型 10.6 定义服务 10.7 小结
软件工程 传统分析与00A的不同 口传统系统分析方法:面向功能,把系统看成一组功 能 口OOA方法:把问题当作一组相互作用的实体,并 确定实体间关系
软 件 工 程 传统分析与OOA的不同 传统系统分析方法:面向功能,把系统看成一组功 能 OOA方法: 把问题当作一组相互作用的实体,并 确定实体间关系
软件工程 00A的任务 需求分析的任务是什么?(系统必须做什么) 口面向对象分析的任务相同。 口面向对象分析的关键是识别出问题域内的类与对象,分析 确定它们之间的关系,最终建立起问题域的对象模型、动 态模型和功能模型,它们是软件需求规格的重要组成成分
软 件 工 程 OOA的任务 需求分析的任务是什么?(系统必须做什么) 面向对象分析的任务相同。 面向对象分析的关键是识别出问题域内的类与对象,分析 确定它们之间的关系,最终建立起问题域的对象模型、动 态模型和功能模型,它们是软件需求规格的重要组成成分
软件工程 00A的任务 分析工作主要包括3项内容:理解、表达、验证 口首先,分析员通过与用户及领域专家的充分交流,力求充分理解用户 需求和该应用领域的关键性背景知识。 口接下来用某种无二义性的方式把这种理解表达成文档资料。 口理解过程通常不能一次就达到理想的效果。因此,还必须进一步验证 软件需求规格说明的正确性、完整性和有效性,如果发现了问题则进 行修正。 口需求分析过程是系统分析员与用户及领域专家反复交流和多次修正的 过程。也就是说,理解和验证的过程通常交替进行,反复迭代,而且 往往需要利用原形系统作为辅助工具
软 件 工 程 OOA的任务 分析工作主要包括3项内容:理解、表达、验证 首先,分析员通过与用户及领域专家的充分交流,力求充分理解用户 需求和该应用领域的关键性背景知识。 接下来用某种无二义性的方式把这种理解表达成文档资料。 理解过程通常不能一次就达到理想的效果。因此,还必须进一步验证 软件需求规格说明的正确性、完整性和有效性,如果发现了问题则进 行修正。 需求分析过程是系统分析员与用户及领域专家反复交流和多次修正的 过程。也就是说,理解和验证的过程通常交替进行,反复迭代,而且 往往需要利用原形系统作为辅助工具
软件工程 10.1面向对象分析的基本过程 101.1概述 面向对象分析就是抽取和整理用户需求并建立问题 域精确模型的过程。满足用户的需求,系统必须“做 什么”,而不是“怎么做”(系统如何实现)。 首先,系统分析员要对需求文档进行分析。 然后,模型表达。 最后,评审
软 件 工 程 10.1 面向对象分析的基本过程 10.1.1 概述 面向对象分析就是抽取和整理用户需求并建立问题 域精确模型的过程。满足用户的需求,系统必须“做 什么”,而不是“怎么做”(系统如何实现)。 首先,系统分析员要对需求文档进行分析。 然后,模型表达。 最后,评审
软件工程 10.123个子模型与5个层次 3个子模型 对所解决问题的描述角度进行划分: 静态结构(对象模型) 3个子模型1交互次序(动态模型) 数据变换(功能模型) 解决问题不同,三个子模型的重要程度也不同。对象 模型最基本、最重要、最核心
软 件 工 程 10.1.2 3个子模型与5个层次 3个子模型 对所解决问题的描述角度进行划分: 静态结构(对象模型) 3个子模型 交互次序(动态模型) 数据变换(功能模型) 解决问题不同,三个子模型的重要程度也不同。对象 模型最基本、最重要、最核心
软件工程 5个层次 复杂问题(大型系统)的对象模型通常由下述5个层次组成:主题层、类与 对象层、结构层、属性层和服务层。 这5个层次很像叠在一起的5张透明塑料片,它们一层比一层显现出对象模 型的更多细节。在概念上,这5个层次是整个模型的5张水平切片。 主题层 主题指读者理解大型 类与对象层 复杂模型的一种机制 (记忆的7+2原则) 结构层 属性层 服务层 复杂问题的对象模型的5个层次
软 件 工 程 5个层次 复杂问题(大型系统)的对象模型通常由下述5个层次组成: 主题层、类与 对象层、结构层、属性层和服务层。 这5个层次很像叠在一起的5张透明塑料片,它们一层比一层显现出对象模 型的更多细节。在概念上,这5个层次是整个模型的5张水平切片。 复杂问题的对象模型的5个层次 主题指读者理解大型、 复杂模型的一种机制 (记忆的7+2原则)
软件工程 10.13面向对象分析的过程 寻找类与对象 识别结构 识别主题 定义属性 建立动态模型 建立功能模型 定义服务
软 件 工 程 10.1.3 面向对象分析的过程 ➢ 寻找类与对象 ➢ 识别结构 ➢ 识别主题 ➢ 定义属性 ➢ 建立动态模型 ➢ 建立功能模型 ➢ 定义服务
软件工程 10.2需求陈述 10.2.1书写要点 √通常,需求陈述的内容包括:问题范围,功能需求,性能 需求,应用环境及假设条件等。 √书写需求陈述时,要尽力做到语法正确,而且应该慎重选 用名词、动词、形容词和同义词。 在这个过程中,很可能需要快速建立起原型系统,以便与 用户更有效地交流
软 件 工 程 10.2 需求陈述 10.2.1 书写要点 ✓通常,需求陈述的内容包括:问题范围,功能需求,性能 需求,应用环境及假设条件等。 ✓书写需求陈述时,要尽力做到语法正确,而且应该慎重选 用名词、动词、形容词和同义词。 ✓在这个过程中,很可能需要快速建立起原型系统,以便与 用户更有效地交流