- 1、本文档共115页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章 面向对象的需求分析 面向对象的需求分析方法的核心是利用面向对象的概念和方法为软件需求那建造模型。它包含面向对象风格的图形语言机制和用于指导需求分析的面向对象方法学。 什么是面向对象 Coad和Yourdon给出了一个定义:“面向对象=对象+类+继承+通信”。 如果一个软件系统是使用这样 4 个概念设计和实现的,则我们认为这个软件系统是面向对象的。 一个面向对象的程序的每一成份应是对象,计算是通过新的对象的建立和对象之间的通信来执行的。 对象(object) 对象是面向对象开发模式的基本成份。 每个对象可用它本身的一组属性和它可以执行的一组操作来定义。 属性一般只能通过执行对象的操作来改变。 操作又称为方法或服务,它描述了对象执行的功能,若通过消息传递,还可以为其它对象使用。 消息(Message) 消息是一个对象与另一个对象的通信单元,是要求某个对象执行类中定义的某个操作的规格说明。发送给一个对象的消息定义了一个方法名和一个参数表(可能是空的),并指定某一个对象。 一个对象接收的消息则调用消息中指定的方法,并将形式参数与参数表中相应的值结合起来。 类(class) 类是一组具有相同数据结构和相同操作的对象的集合。 类的定义包括一组数据属性和在数据上的一组合法操作。 类定义可以视为一个具有类似特性与共同行为的对象的模板,可用来产生对象。 在一个类中,每个对象都是类的实例 (Instance),它们都可使用类中提供的函数。 对象的状态则包含在它的实例变量,即实例的属性中。 类 ← 两个四边形对象 Quadrilateral类的每个对象有同样的一组实例变量和方法。 就这个意义来讲,类Quadrilateral给我们提供了一个模板,表示了所有四边形对象。 类常常可看做是一个抽象数据类型(ADT)的实现。但更合适的是把类看做是某种概念的模型。 类的实现常常使用其它类的实例,它们提供了该类所需要的服务。 这些实例应当受到保护不被其它对象存取,包括同一个类的其它实例。 在四边形的例子中,定义4个point类的实例作为Quadrilateral类的实例的4个顶点。这些point对象不能被其它对象存取。 继承 (Inheritance) 继承是使用已存在的定义做为基础建立新定义的技术。 新类的定义可以是既存类所声明的数据和新类所增加的声明的组合。新类复用既存的定义,而不要求修改既存类。 既存类可当做基类来引用,则新类相应地可当做派生类来引用。 使用继承设计一个新类,可以视为描述一个新的对象集,它是既存类所描述对象集的子集合。 这个新的子集合可以认为是既存类的一个特殊化。Quadrilateral类是Polygon类的特殊化。Quadrilateral是限制为四条边的多边形。我们还可以进一步地把类Quadrilateral特殊化为Rectangle 。 类Quadrilateral的界面可以等同于类Polygon的界面,而Rectangle类的界面又与Quadrilateral类的界面相同。 新类的界面还可以被看做是既存类界面的一个扩充界面。例如,从一个既存的车辆类派生的四轮驱动车类可能不仅是车辆类子集合定义的特殊化,而且还可能在新类的界面中引入新的能力。 类的继承层次 在类的继承层次中,Quadrilateral的实际参数可以替换Polygon的形式参数。 类Quadrilateral的界面与类Polygon的界面是相容的 Quadrilateral的界面可响应Polygon界面的所有消息。 5.1.2. 面向对象软件开发的分析模型 面向对象分析过程分为论域分析和应用分析。论域分析建立大致的系统实现环境,应用分析则根据特定应用的需求进行论域分析。 (1) OOA分析的基本原则和任务 为建立分析模型,要运用如下的5个基本原则:① 建立信息域模型;② 描述功能;③ 表达行为;④ 划分功能、数据、行为模型,揭示更多的细节;⑤ 用早期的模型描述问题的实质,用后期的模型给出实现的细节。 OOA需完成的任务是: ① 软件工程师和用户必须充分沟通,以了解基本的用户需求; ② 必须标识类(即定义其属性和操作); ③ 必须定义类的层次; ④ 应当表达对象与对象之间的关系(即对象的连接); ⑤ 必须模型化对象的行为; ⑥ 反复地做任务①―⑤,直到模型建成。 广泛使用的OOA方法有以下几种: Booch方法 :Booch方法包含“微开发过程”和“宏开发过程”。微开发过程定义了一组任务,并在宏开发过程的每一步骤中反复使用它们,以维持演进途径。Booch OOA宏开发过程的任务包括标识类和对象、标识类和对象的语义、定义类与对象间的关系,以及进行一系列求精从而实现分析模型。 ② Rumbaugh方法 :
文档评论(0)