欢迎来到天天文库
浏览记录
ID:56966185
大小:1.38 MB
页数:94页
时间:2020-07-22
《软件工程导论第七章 面向对象分析课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第7章面向对象分析退出在面向对象开发的各个阶段,开发的“部件”都是类,因此面向对象的各个阶段都是对类的信息进行细化。类是分析、设计和实现的基本单元。如图7.1是面向对象开发过程的应用生存期模型。图7.1面向对象开发过程的应用生存期模型OOAOOD图4.6面向对象开发过程的应用生存期模型虽然图中各阶段的顺序是线性的,但实际过程的交错和相互作用要复杂得多。其主要开发过程如下:论域分析(domainanalysis)应用分析(applicationanalysis)高层设计、下层设计类的设计-对象设计论域分析:论域分析是开发问题论域的模型。论域分析应当在应用分析之前进行,我
2、们在了解问题之前应当对问题敞开思想考虑,考察问题论域内的一个较宽的范围,分析覆盖的范围应比直接要解决的问题更多。应用分析:应用(或系统)分析细化在论域分析阶段所开发出来的信息,并且把注意力集中于当前要解决的问题。因为通过论域分析,分析人员具有了较宽的论域知识,因而能开发出更好的抽象。面向对象技术OOA:用面向对象方法分析问题域,建立基于对象、消息的业务模型,形成对客观世界和业务本身的正确认识。生成业务对象的动态、静态模型和抽象类。OOD:针对OOA给出的问题域模型,用面向对象方法设计出软件基础架构(概要设计)和完整的类结构(详细设计),以实现业务功能。生成对象类的动、
3、静态模型(解决域)。OOP:用面向对象的语言实现OOD提出的模型。面向对象技术面向对象软件开发过程一般分为三个阶段:首先是面向对象的分析(OOA),它的任务是了解问题域内该问题所涉及的对象和对象间的关系,建立问题模型。然后进行面向对象的设计(OOD),它的任务是调整、完善和充实由OOA建立的模型。最后是面向对象的程序设计(OOP),它的任务是用面向对象的语言实现OOD提出的模型。退出面向对象分析(通常缩写为OOA)的关键,是识别出问题域内的对象,并分析它们相互间的关系,最终建立起问题域的简洁、精确、可理解的正确模型。在用面向对象观点建立起的三种模型中,对象模型是最基本
4、、最重要、最核心的。7.1分析过程7.2需求陈述7.3建立对象模型7.4建立动态模型7.5建立功能模型7.6定义服务7.7面向对象分析实例7.8小结7.1分析过程7.1.1概述面向对象分析,就是抽取和整理用户需求并建立问题域精确模型的过程。OOA的分析过程获取用户基本需求标识类和对象定义类的结构和层次表示类(对象)间的关系为对象行为建模图7.2OOA分析过程面向对象分析面向对象分析的基本原则:①构造和分解相结合的原则。②抽象和具体结合的原则。③封装和继承的原则。面向对象分析面向对象分析基本过程:1、获取客户对系统的需求采用用例的方法来收集客户的需求。用例的基本思
5、想是由分析员先标识使用该系统的不同的行为者,根据这些行为者如何使用系统,或者根据他需要系统提供什么功能形成用例集合,每一个用例即是实现系统功能的独立子功能,所有行为者提出的所有用例构成系统的完整需求。2、确定类和对象(1)查找对象如物理实体、文件资料、事件、角色、组织单位和交互(即对象之间的关系)等。(2)筛选对象并确定关联(3)标识属性和定义操作标识属性和定义操作有助于深入了解对象。(4)识别类之间关系面向对象设计面向对象设计的基本原则:1、模块化对象中包含了对具体事物的状态特征和相应的操作实现的描述,是一个功能对立完整的模块。2、数据抽象和信息隐藏类本身是一个十分
6、重要的收据类型。类的封装性体现了信息隐藏。3、弱耦合耦合是指软件结构中的不同模块之间的依赖程度。①交互耦合指对象之间的连接是通过消息传递的方式实现的耦合。如果使被使用类进行修改时对使用类的影响尽可能小,就要使两者的耦合关系松散。如Point类和String类的关系。②继承耦合继承耦合在面向对象程学设计中是不可避免的。继承是面向对象的基本特性,是代码重用的基础。对于基类和派生类来说,因为共享的内容是相同的,都希望进行修改,所以对于继承耦合,应该是越紧密越好。如客车类货车类和汽车类的关系。面向对象设计4、强内聚内聚是衡量一个模块内各个元素的彼此结合的紧密程度。①服务内聚指
7、保证一个服务能够完成且只能完成一项功能,功能越独立,被重用的可能性就越大。如Point类中getx()/gety()与getxy()。②类内聚设计类的基本准则是,一个类应该只有一个用途,类中包含的属性和操作也是仅仅围绕该类的用途而设定的。类的用途越简单,越方便重复使用。③一般-特殊内聚抽象类时,要遵循一定的层次关系,在一般特性相同时,考虑它们之间的特殊性是否相同,从而决定它们之间的层次关系。5、重用性软件重用是提高软件开发成产率和目标系统质量的重要途径。重用有两方面的含义:①尽量使用已有的类;②如果需要创建新类,应该考虑将来的可重用性。OOD是在面向
此文档下载收益归作者所有