软件工程教学课件ch10.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章 面向对象分析 10.1 面向对象分析的基本过程 10.2 需求陈述 10.3 建立对象模型 10.4 建立动态模型 10.5 建立功能模型 10.6 定义服务 10.7 小结 分析的过程是:提取系统需求的过程。 主要包括3项内容,这就是理解、表达和验证。 首先,系统分析员与用户及领域专家充分交流,力求完全理解用户需求; 用某种无二义性的方式把这种理解表达成文档资料,得出软件需求规格说明; 验证软件需求规格说明的正确性、完整性和有效性。 理解和验证的过程通常交替进行,反复迭代,有时需要利用原型系统作为辅助工具。 10.1 面向对象分析的基本过程 10.1.1 概述 分析的过程是:提取系统需求的过程。 面向对象分析:就是抽取和整理用户需求并建立问题域精确模型的过程。 面向对象分析(OOA)的关键:是识别出问题域内的类与对象,并分析它们相互间的关系,最终建立起问题域的简洁、精确、可理解的正确模型。 主要由对象模型、动态模型和功能模型组成。 对象模型是最基本、最重要、最核心的。 10.1.2 3个子模型与5个层次 3个子模型解决问题的侧重点不同: 静态结构(对象模型):解决任何一个问题,都需要从客观世界实体及实体间的相互关系,抽象出极有价值的对象模型; 交互次序(动态模型):当问题涉及对象之间交互作用和时序时(例:用户界面及过程控制等),动态模型是重要的; 数据变换(功能模型):解决运算量很大的问题(例:高级语言编译、科学与工程计算等),则涉及重要的功能模型。 动态模型和功能模型中都包含了对象模型中的操作(即服务或方法)。 复杂问题(大型系统)的对象模型通常由下述5个层次组成: 主题层、类与对象层、结构层、属性层和服务层。 一层比一层显现出对象模型的更多细节。 主题:通过划分主题把一个大型、复杂的对象模型分解成几个不同的概念范畴。 面向对象分析增加的主题层,从一个相当高的层次描述总体模型,并对读者的注意力加以指导。 一个主题有一个名称和一个标识它的编号。 在描绘对象模型的图中,把属于同一个主题的那些类——对象框在一个框中,并在框的四角标上这个主题的编号。 上述5个层次对应着在面向对象分析过程中建立对象模型的5项主要活动: 找出类与对象,识别结构,识别主题,定义属性,定义服务。 面向对象分析大体上按照下列顺序进行: 寻找类与对象, 识别结构, 识别主题, 定义属性, 建立动态模型, 建立功能模型, 定义服务。 10.1 面向对象分析的基本过程(续) 在完整地定义每个类中的服务之前,先建立起动态模型和功能模型,对于正确、合理地确定每个类应该提供哪些服务有帮助。 分析不可能严格地按照预定顺序进行,也无须彻底完成一项工作以后再开始另外一项工作。 大型、复杂系统的模型需要反复构造多遍才能建成。通常,先构造出模型的子集,然后再逐渐扩充,直到完全、充分地理解了整个问题,才能最终把模型建立起来。 10.2 需求陈述 内容包括:问题范围,功能需求,性能需求,应用环境及假设条件等。 应该阐明“做什么”而不是“怎样做”。 应该描述用户的需求而不是提出解决问题的方法。 应该指出哪些是系统必要的性质,哪些是任选的性质。 书写需求陈述时,做到语法正确,慎重选用名词、动词、形容词和同义词。 10.3 建立对象模型 确定类与对象 确定关联 划分主题 确定属性 识别继承关系 反复修改 10.3.1 确定类与对象 1. 找出候选的类与对象 可能是物理实体,也可能是抽象概念。 (1) 可感知的物理实体,例如,飞机、汽车、书、房屋等等。 (2) 人或组织的角色,例如,医生、教师、雇主、雇员、计算机系、财务处等等。 (3) 应该记忆的事件,例如,飞行、演出、访问、交通事故等等。 (4) 两个或多个对象的相互作用,通常具有交易或接触的性质,例如,购买、纳税、结婚等等。 (5) 需要说明的概念,例如,政策、保险政策、版权法等等。 10.3.1 确定类与对象 1. 找出候选的类与对象(续) 另一种更简单的分析方法(非正式分析): 以用自然语言书写的需求陈述为依据, 把陈述中的名词作为类与对象的候选者, 用形容词作为确定属性的线索, 把动词作为服务(操作)的候选者。 用这种方法确定的候选者是非常不准确的,其中包含大量不正确的或不必要的事物,还必须经过更进一步的严格筛选。但确是正式的面向对象分析的一个好的开端。 10.3.1 确定类与对象 1. 找出候选的类与对象(续) 下面以ATM系统为例,说明非正式分析过程。 从给出的需求陈述中找出下列名词,作为类与对象的初步的候选者: 某银行拟开发一个自动取款机系统,它是一个由自动取款机、中央

文档评论(0)

***** + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8135026137000003

1亿VIP精品文档

相关文档