- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第7章 面向对象软件开发方法 学习目标 面向对象的分析过程 面向对象的设计过程 面向对象系统的实现 第7章 面向对象的软件开发方法 教学内容 7.1 面向对象分析 7.2 面向对象设计 7.3 面向对象系统的实现 7.4 面向对象测试 本章小结 7.1 面向对象分析 面向对象分析的目的是对客观世界的系统建立对象模型、动态模型和功能模型。在建立模型之前必须进行调查研究,分析系统需求,在理解系统需求的基础上建立模型,还要对模型进行验证。复杂问题的建模工作,需要反复迭代构造模型。 7.1.1 面向对象分析过程 1.基本过程概述 2.三个模型和五个层次 面向对象建模得到的模型即静态结构(对象模型)、交互次序(动态模型)和数据变换(功能模型)。 复杂问题(大型系统)的对象模型通常由下述五个层次组成:主题层、类与对象层、结构层、属性层和服务层。 7.1 面向对象分析 综合上述,在概念上可以认为,面向对象分析大体上按照下列顺序进行:寻找类与对象,识别结构,识别主题,定义属性,建立动态模型,建立功能模型,定义服务。但分析不可能严格按预定顺序进行,大型、复杂系统的模型需要反复构造多遍才能建成。通常,先构造出模型的子集,然后逐渐扩充,直到完全、充分地理解了整个问题,才能最终把模型建立起来。 7.1 面向对象分析 7.1.2 建立对象模型 1.识别类与对象 1)寻找关联的类与对象 识别对象需要对对象的分类加以认识,一般对象有几种形式: (1)与系统相关的外部物理实体,如打印机、各种物理设备等。 (2)与目标系统交互的人员及各种角色。如用户、程序员等。 (3)系统运行中要记忆的事件,如故障错误日志的报告等。 (4)各种环境因素、问题等。 (5)客观存在的事物、概念。 7.1 面向对象分析 7.1.2 建立对象模型 2)筛选出正确的类和对象 (1)删除冗余的类和对象。 (2)删除无关类和对象。 (3)应把笼统和模糊的名词去掉。 (4)若某些对象其实是另一对象的属性,则可以把它归到属性中,从而省去这个对象,若不能看成属性,则把它独立为一个对象。 (5)有些对象还可以看成是某个对象的操作,应根据它是适合作为对象还是适合作为对象的操作,从而决定应不应该删除这个对象。 (6)去掉仅与系统实现有关的候选类和对象。在系统分析阶段不应过早地考虑系统实现。 7.1 面向对象分析 7.1.2 建立对象模型 2. 确定结构 1)一般-特殊结构 如图7-1所示 2)整体-部分结构 如图7-2所示 7.1 面向对象分析 7.1.2 建立对象模型 3)关联关系 类的关联关系反映对象之间相互依赖、相互作用的关系。 (1)阶 (2)链属性 7.1 面向对象分析 7.1.2 建立对象模型 (3)限定 限定用来对关联的含义做某种约束,利用限定词通常能有效地减少关联的阶数。 7.1 面向对象分析 7.1.2 建立对象模型 3. 确定主题 1)主题的选择 主题的选择应遵循以下两点: (1)为每个对象相应地增加一个主题。 (2)为每个结构也相应地增加一个主题。 2)划分精炼主题 (1)从问题域入手,使用整体-部分关系结构对问题域进行划分。 (2)利用高内聚、低耦合的原则,使主题间的依赖性和交互性达到最小。 (3)如果主题数超过7个,则应对主题进行精炼,抽象出更高层次的主题。 7.1 面向对象分析 7.1.2 建立对象模型 4. 定义属性 1)标识属性 识别属性需要考虑以下几个问题: (1)怎样描述一个对象的特征? (2)该对象具有哪方面的状态和信息? (3)该对象在目标系统中的作用如何?怎样完成这些功能? 确定属性要注意以下几个方面: (1)不能误把一个对象当作属性。 (2)删除多余的或没有意义的属性。 (3)仅有一种相关属性的对象可以表示为其他对象的属性。 (4)不能把对象的内部状态当成属性。 (5)为保持模型的简洁性,对象的导出属性可略去。 (6)不要误把关联类的属性当作一般对象的属性。 7.1 面向对象分析 7.1.2 建立对象模型 2)实例连接 实例连接表示了两个或多个实例间的联系。实例连接有 一对一(1:1)、一对多(1:n)和多对多(m:n)三种连接。 5. 定义服务 1)常规操作 2)从事件导出的操作 3)与处理或用例对应的操作 4)利用继承减少冗余操作 7.1 面向对象分析 7.1.3 建立动态模型 要建立动态模型,首先要编写具有交互作用的脚本。然后从脚本中提取事件,确定事件与
您可能关注的文档
- 软件工程电子教案景秀丽 第4章 软件总体设计.ppt
- 软件工程电子教案景秀丽 第5章 软件详细设计.ppt
- 软件工程电子教案景秀丽 第6章 面向对象技术.ppt
- 软件工程电子教案景秀丽 第7章 统一建模语言.ppt
- 软件工程电子教案景秀丽 第8章 程序编码.ppt
- 软件工程电子教案景秀丽 第9章 软件测试.ppt
- 软件工程电子教案景秀丽 第11章 软件重用技术.ppt
- 软件工程电子教案景秀丽 第12章 软件项目计划与管理.ppt
- 软件工程电子教案景秀丽 第13章 软件开发工具与环境.ppt
- 软件工程电子教案景秀丽 第14章 软件开发实战.ppt
- 软件工程——原理、方法与应用(第二版)肖孟强电子教案 08.ppt
- 软件工程——原理、方法与应用(第二版)肖孟强电子教案 09.ppt
- 软件工程——原理、方法与应用(第二版)肖孟强电子教案 10.ppt
- 软件工程——原理、方法与应用肖孟强 曲秀清电子教案 1第1章 教学课件 作者.ppt
- 软件工程——原理、方法与应用肖孟强 曲秀清电子教案 3第3章需求分析 教学课件 作者.ppt
- 软件工程——原理、方法与应用肖孟强 曲秀清电子教案 4第四章面向对象技术 教学课件 作者.ppt
- 软件工程——原理、方法与应用肖孟强 曲秀清电子教案 5第五章UML 教学课件 作者.ppt
- 软件工程——原理、方法与应用肖孟强 曲秀清电子教案 6第6章编码 教学课件 作者.ppt
- 软件工程——原理、方法与应用肖孟强 曲秀清电子教案 7第七章 教学课件 作者.ppt
- 软件工程——原理、方法与应用肖孟强 曲秀清电子教案 8第8章软件维护 教学课件 作者.ppt
文档评论(0)