- 1、本文档共52页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第5章 面向对象分析和设计 几个基本问题 1. 面向对象的软件开发过程可以划分为四个阶段: 面向对象的分析(OOA) 面向对象的设计(OOD) 面向对象的编码(OOP) 面向对象测试(OOT) 2. 面向对象分析的特点 面向对象的分析是一种从问题空间中通过提取类和对象来进行需求分析的方法,在分析阶段只考虑问题域和系统的责任,建立一个独立于实现的面向对象分析模型。 3. 面向对象设计的特点 面向对象设计则从问题空间转移到解空间,对所开发的系统进行逻辑过程和物理过程的描述以及系统的静态模型和动态模型的设计,在OOA模型的基础上形成面向对象设计模型。 本章所学内容 5.1 面向对象分析 5.2 面向对象设计 5.3 小型网络学习系统的分析和设计 5.1 面向对象分析 一、OOA概念 1. OOA的概念 OOA通过类、对象、属性和操作的表示来对问题域建模。 2. OOA的主要目的 是明确用户的需求,并用前面所述的统一建模语言UML来表示这一需求,形成面向对象的分析模型,即OOA模型。 3. OOA的两大主要任务 首先是明确用户的需求:包括对用户需求的全面理解和分析;明确所要开发的软件系统的职责;进行可行性研究,进度预算等工作,形成文件并规范地表述出来,交给用户确认。 然后进行分析并提取类和对象:基本的步骤是:标识类,定义属性和方法;刻画类的层次;表示对象以及对象与对象之间的关系;为对象的行为进行建模。 二、OOA的过程简述 1. 面向对象软件开发方法主要有CoadYourdon方法、OMT方法、Booch方法和OOSE方法。 2. 以上这些方法都有OOA过程,尽管他们内容和步骤有所不同,但是大多数方法具有的共同特征是:类和类层次的表示;建立对象—关系模型;建立对象—行为模型。 3. 大多数OOA方法都有如下一些相似的步骤: 需求分析。 定义类和对象。 标识对象的属性和操作。 标识类的结构和层次。 建立对象---关系模型。 建立对象---行为模型。 4. Goad和Yourdon的OOA方法建立OOA模型的步骤 Goad和Yourdon的OOA方法采用以下的步骤来建立一个五个层次的OOA模型: (1)类-对象层:定义类和属性,简单地讲,在这个层次将分析所开发的应用软件所对应的各个现实世界的实体,并从中抽象出类和对象。 (2)属性层:定义属性,为类-对象层中抽取出来的各个类和对象设计静态属性和它们的之间的关系。 (3)服务层:定义了对象和类的动态属性以及对象之间的消息通信。 (4)结构层:定义了对象和类之间的层次结构关系,常见的关系有包含关系、继承关系和关联关系。 (5)主题层:定义若干个主题,把有关的对象分别划归不同的主题,每个主题构成一个子系统。 三、需求分析 1. 需求分析是任何软件分析活动的第一步。在使用UML进行面向对象的开发过程中,用户的需求是通过用例(Use Case)来表达的。 2. 用例就是对系统功能的描述,一个用例描述了系统的部分功能。 3. 通过分析客户对于系统的需求,软件工程师可以创建用例。 4. 通常,用例仅仅是一段描述,用例图描述了执行者和系统交互的方式。 5. 创建用例的步骤 确定参与者 确定用例 用例描述 对非功能性需求进行描述 四、定义类和对象 1.通过需求分析阶段建立的需求模型让我们知道了系统的需求,下一步工作是确定问题领域中的类和对象,建立类对象模型。 2.建立类对象模型有两种方法 名词分析法 用例分析法 3. 名词分析法 名词分析法是一种比较直观的方法,它是从系统的需求描述或用例描述中筛选名词或名词短语,然后考察这些作为候选类对象的名词的特征,来确定哪些类对象应该包含在分析模型中。 (1) 确定类和对象 对系统需求分析的叙述进行语法分析,将所有名词变成潜在的对象,把形容词作为确定属性的线索,把动词作为服务(操作)的候选者。 再对潜在对象逐个进行审查,删除无用对象、精简合并一些对象,确定出所需要的且正确的对象。 在此基础上,通过进一步提取并抽象系统所需要的对象构成系统所需的类。 (2) 确定属性 属性是对象的性质,在需求陈述中通常用形容词来描述对象的某些特征。 确定属性时,可以不必过于细化,在分析阶段应该首先找出最重要的,最需要的属性,以后可以不断地再增加新的所需要的属性。 (3) 确定方法 方法是类对象具有的行为和提供的服务,在收到消息后对象必须进行的一些处理。对于每个对象来说,有些方法是隐含的,封装起来的,而有些则是公开显示的。针对每一个筛选出来的类,逐一对照需求描述,确定其方法。 4. 用例分析法 用例分析法以选定的用例为研究对象,以相对粗大的颗粒,用面向对象的概念和方法对问题进行
文档评论(0)