面向对象的分析与设计方法
被考次数: 82次
被考频率: 高频率
答错率:    41%
知识难度:
考试要求: 掌握     
知识路径:  > 面向对象基础知识  > 面向对象基础知识  > 面向对象基础知识  > 面向对象分析与设计


本知识点历年真题试卷分布
>> 试题列表    
 

 
       Peter Coad和Edward Yourdon的OOA和OOD法
          OOA
          OOA模型由下列5个层次和5个活动组成。
          (1)5个层次:主题层、对象类层、结构层、属性层、服务层。
          (2)5个活动:标志对象类、标志结构、定义主题、定义属性、定义服务。
          在这种方法中定义了两种对象类之间的结构,一种称为分类结构,另一种称为组装结构。
          OOD
          OOA中的5个层次和5个活动继续贯穿在OOD过程中。OOD模型由4个部分和4个活动组成。
          4个活动是设计问题域部件、设计人机交互部件、设计任务管理部件、设计数据管理部件。
       Booch的OOD法
       Booch认为软件开发是一个螺旋上升的过程,在螺旋上升的每个周期中有以下步骤。
       (1)标识类和对象。
       (2)确定它们的含义。
       (3)标志它们之间的关系。
       (4)说明每一个类的界面和实现。
       除了类图、对象图、模块图、进程图外,Booch的OOD中还使用了两种动态描述图,一种是刻画特定类实例的状态转换图,另一种是描述对象间事件变化的时序图。
       OMT法
       对象建模技术(OMT)定义了3种模型,即对象模型、动态模型和功能模型。OMT方法有4个步骤,即分析、系统设计、对象设计和实现。
          对象模型、动态模型和功能模型
          1)对象模型
          OMT的对象模型中除了对象、类、继承外,还有一些其他的概念。
          .链和关联。链表示实例对象间的物理或概念上的连接。关联描述具有公共结构和公共语义的一组链。
          .泛化。泛化是一个类与它的一个或多个细化类之间的关系,即一般与特殊的关系。被细化的类称为父类,每个细化的类称为子类,子类可以继承父类的特性。
          .聚集。聚集是一种整体与部分的关系,在这种关系中表示整体的对象与表示部分的对象关联。
          .模块。模块是组和类、关联和泛化的一种逻辑结构,模块给出了某个主题的视图。
          2)动态模型
          动态模型描述与时间和操作顺序有关的系统特征,包括激发事件、事件序列、确定事件先后关系以及事件和状态的组织。
          3)功能模型
          功能模型描述与值的变换有关的系统特征,包括功能、映射、约束和函数依赖。
          对象模型、动态模型和功能模型之间具有下述关系。
          (1)与功能模型的关系。对象模型展示了功能模型中的动作者、数据存储和流的结构,动态模型展示了执行加工的顺序。
          (2)与对象模型的关系。功能模型展示了类上的操作和每个操作的变量,因此它也表示了类之间的"供应者一客户"关系;动态模型展示了每个对象的状态以及它接收事件和改变状态时所执行的操作。
          (3)与动态模型的关系。功能模型展示了动态模型中未定义的不可分解的动作和活动的定义,对象模型展示了是谁改变了状态和承受了操作。
          OMT的步骤
          下面介绍OMT的步骤。
          (1)分析。目的是建立可理解的现实世界模型。
          (2)系统设计。确定整个系统的体系结构,形成求解问题和建立解答的高层次策略。
          (3)对象设计。建立基于分析模型的设计模型,并考虑实现的细节,设计人员根据系统设计期间建立的策略把实现细节加入到设计模型中。
          (4)实现。将对象设计阶段开发的对象类及其关系转换成特定的程序设计语言、数据库或硬件。
       UML概述
       统一建模语言(UML)是面向对象软件的标准化建模语言。UML由3个要素构成,即UML的基本构造块、支配这些构造块如何放置在一起的规则和运用于整个语言的一些公共机制。UML的词汇表包含3种构造块,即事物、关系和图。事物是对模型中最具代表性的成分的抽象,关系把事物结合在一起,图聚集了相关的事物。
          事物
          事物包括结构事物、行为事物、分组事物和注释事物。
          (1)结构事物(Structural Thing)。结构事物是UML模型中的名词。它们通常是模型的静态部分,描述概念或物理元素。结构事物包括类(Class)、接口(Interface)、协作(Collaboration)、用例(Use Case)、主动类(Active Class)、构件(Component)和节点(Node)。
          (2)行为事物(Behavior Thing)。行为事物是UML模型的动态部分。它们是模型中的动词,描述了跨越时间和空间的行为。共有两类主要的行为事物,即交互(Interaction)和状态机(State Machine)。
          (3)分组事物(Grouping Thing)。分组事物是UML模型的组成部分。它们是一些由模型分解成的"盒子"。在所有的分组事物中,最主要的分组事物是包(Package)。
          (4)注释事物(Annotational Thing)。注释事物是UML模型的解释部分。这些注释事物用来描述、说明和标注模型的任何元素。注解(Note)是一种主要的注释事物。注解是一个依附于一个元素或者一组元素之上,并对它进行约束或解释的简单符号。
          关系
          UML中有4种关系,即依赖、关联、泛化和实现。
          (1)依赖(Dependency)。依赖是两个事物间的语义关系,其中一个事物(独立事物)发生变化会影响另一个事物(依赖事物)的语义。
          (2)关联(Association)。关联是一种结构关系,它描述了一组链,链是对象之间的连接。聚集(Aggregation)是一种特殊类型的关联,它描述了整体和部分间的结构关系。
          (3)泛化(Generalization)。泛化是一种特殊一般关系,特殊元素(子元素)的对象可替代一般元素(父元素)的对象。用这种方法子元素共享了父元素的结构和行为。
          (4)实现(Realization)。实现是类元之间的语义关系,其中一个类元指定了由另一个类元保证执行的契约。在两种地方要遇到实现关系:一种是在接口和实现它们的类或构件之间;另一种是在用例和实现它们的协作之间。
          UML中的图
          UML提供的图包括类图、对象图、用例图、交互图、状态图、活动图、构件图和部署图。
          (1)类图(Class Diagram)展现了一组对象、接口、协作及其关系。类图给出系统的静态设计视图。包含主动类的类图给出了系统的静态进程视图。
          (2)对象图(Object Diagram)展现了一组对象及其关系。对象图描述了在类图中所建立的事物的实例的静态快照。对象图一般包括对象和链。
          (3)用例图(Use Case Diagram)展现了一组用例、参与者(Actor)及其关系。
          (4)序列图、通信图、交互概览图和时序图均被称为交互图,它们用于对系统的动态方面进行建模。
          (5)状态图(State Diagram)展现了一个状态机,它由状态、转换、事件和活动组成。状态图关注系统的动态视图,它对于接口、类和协作的行为建模尤为重要,强调对象行为的事件顺序。
          (6)活动图(Activity Diagram)是一种特殊的状态图,它展现了在系统内从一个活动到另一个活动的流程。活动图专注于系统的动态视图,它对于系统的功能建模特别重要,并强调对象间的控制流程。
          (7)构件图(Component Diagram)展现了一组构件之间的组织和依赖。构件图专注于系统的静态实现视图。它与类图相关,通常把构件映射为一个或多个类、接口或协作。
          (8)部署图(Deployment Diagram)展现了运行处理节点以及其中构件的配置。部署图给出了体系结构的静态实施视图。它与构件图相关,通常一个节点包含一个或多个构件。
 

更多复习资料
请登录电脑版软考在线 www.rkpass.cn

京B2-20210865 | 京ICP备2020040059号-5
京公网安备 11010502032051号 | 营业执照
 Copyright ©2000-2025 All Rights Reserved
软考在线版权所有