OOA/OOD基本概念

面向对象是基于一种哲学思想,它认为:客观实体和实体之间的联系构成了现实世界的所有问题,而每一个实体都可以抽象为对象。这种思想尽可能地按照人类认识 世界的方法和思维方式来分析和解决问题,使人们分析、设计一个系统的方法尽可能接近认识一个系统的方法。面向对象的基本观点可以概括如。(1)客观世界由对象组成,任何客观实体都是对象,复杂对象可以由简单对象组成。(2)具有相同数据和操作的对象可归纳成类,对象只是类的一个实例。(3)类可以派生出子类,子类除了继承父类的全部特性外还可以有自己的特性。(4)对象之间的联系通过消息传递来维系。由于类的封装性,它具有某些对外界不可见的数据,这些数据只能通过消息请求调用可见方法来访问。简单的来说,面向对象=对象+类+继承+消息。

面向对象分析(OOA) 是指利用面向对象的概念和方法为软件需求建造模型,以使用户需求逐步精确化、一致化、完全化的分析过程。分析的过程也是提取需求的过程,主要包括理解、表 达和验证。由于现实世界中的问题通常较为复杂,分析过程中的交流又具有随意性和非形式化等特点,软件需求规格说明的正确性、完整性和有效性就需要进一步验 证,以便及时加以修正。面向对象分析中建造的模型主要有对象模型、动态模型和功能模型。其关键是识别出问题域中的对象,在分析它们之间相互关系之后建立起 问题域的简洁、精确和可理解的模型。对象模型通常由五个层次组成:类与对象层、属性层、服务层、结构层和主题层,此五个层次对应着在面向对象分析过程中建 立对象模型的五项主要活动:发现对象、定义类、定义属性、定义服务、设别结构。面向对象的分析过程如图1所示。

图1 面向对象分析过程模型

分析是提取和整理用户需求,并建立问题域精确模型的过程。面向对象设计(OOD)则是把分析阶段得到的需求转变成符合成本和质量要求的、抽象的系统实现方案的过程。从面向对象分析(OOA)到面向对象设计(OOD) 是一个逐渐扩充模型的过程,也可以说面向对象设计是用面向对象观点建立求解域模型的过程。面向对象分析主要是模拟问题域和系统任务,而面向对象设计是面向 对象分析的扩充,主要增加各种组成部分。面向对象设计的模型又五层组成,在设计期间主要扩充四个组成部分:人机交互部分、问题域、任务管理和数据管理。人 机交互部分包括有效的人机交互所必须的实际显示和输入。问题域部分放置面向对象分析结果并管理面向对象分析的某些类和对象、结构、属性和方法。任务管理部 分包括任务定义、通信和协调、硬件分配及外部系统。数据管理部分包括对永久性数据的访问和管理。面向对象设计模型如图2所示。

为了方便、高效地进行面向对象分析和设计,UML(Unified Modeling Language)被创造出来。UML是一种功能强大的、面向对象分析的可视化系统分析的建模语言,它采用一整套成熟的建模技术,广泛地适用于各个应用领域。运用UML进行面向对象分析设计,通常都要经过下述三个步骤。(1)识别系统的用例和角色。首先要对项目进行需求调研,分析项目的业务流程图和数据流程图,以及项目中涉及的各级操作人员,识别出系统中的所有用例和角色;接着分析系统中各角色和用例见的联系,使用UML建模工具画出系统的用例图;最后,勾画系统的概念层次模型,借助UML建模工具描述概念层的类和活动图。(2)进行系统分析并抽象出类。系统分析的任务是找出系统的所有要求并加以描述,同时建立特定领域模型。从实际需求抽象出类,并描述各个类之间的关系。(3) 设计系统,并设计系统中的类及其行为。设计阶段由结构设计和详细设计组成。结构设计是高层设计,其任务是定义包(子系统)、包间的依赖关系和主要的通信机 制。包有利于描述系统的逻辑组成以及各个部分之间的依赖关系。详细设计主要用来细化包的内容,清晰描述所有的类,同时使用UML的动态模型描述在特定环境下这些类的实例的行为。

OOA/OOD基本概念

时间: 2024-10-06 01:53:33

OOA/OOD基本概念的相关文章

OOA/OOD/OOP

Object-Oriented Analysis:面向对象分析方法 是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题.OOA与结构化分析有较大的区别.OOA所强调的是在系统调查资料的基础上,针对OO方法所需要的素材进行的归类分析和整理,而不是对管理业务现状和方法的分析. OOA(面向对象的分析)模型由5个层次(主题层.对象类层.结构层.属性层和服务层)和5个活动(标识对象类.标识结构.定义主题.定义属性和定义服 务)组成.在这种方法中定义了两种对象类之间的结构,一种称

OOA - OOD - OOP 简介

OOA - OOD - OOP 简介 一. OOA OOA : (Object-Oriented Analysis, 面向对象分析方法) . 是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题.OOA与结构化分析有较大的区别.OOA所强调的是在系统调查资料的基础上,针对OO方法所需要的素材进行的归类分析和整理,而不是对管理业务现状和方法的分析. OOA(面向对象的分析)模型由5个层次(主题层.对象类层.结构层.属性层和服务层)和5个活动(标识对象类.标识结构.定义主题.

OOA/OOD

基本知识点: 1.软件工程的基本思想:就是用工程学的方法进行软件的开发与维护,并对软件生产过程进行工程化的管理. 2.软件生命周期:需求分析.设计.编码.测试.维护. 3.软件工程的主要内容:工程方法.技术细则.文档规范.技术支持.管理制度.人员组织以及质量保证体系. 4.实行软件工程的主要意义:提高软件产品的质量.提高软件生产率. 5.软件开发方法:功能分析法.数据流法(结构化方法).快速原型法.信息模型法.面向对象方法. 6.软件过程模型:瀑布模型.螺旋模型.增量模型.喷泉模型.原型模型.

OOA/OOD阶段步骤及主要产品

一. 需求阶段 1.      需求阶段使用use-case图描述需求 顶层use-case:粗粒度地描述系统,给出系统的概况 细分use-case:将顶层use-case细化 Use_case图的方法是:从参与者开始寻找用例,用use-case diagram来表示参与者与用例之间的关系. Use-case描述的方法是:就是use-case规约,用详尽的文字来描述用例的执行流程(包括主业务流程及所有分支流程及异常流程). Active diagram:可选,类似业务流程图,业务比较复杂时,用流

OOA/OOD/OOP(转)

OOA Object-Oriented Analysis:面向对象分析方法 是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题.OOA与结构化分析有较大的区别.OOA所强调的是在系统调查资料的基础上,针对OO方法所需要的素材进行的归类分析和整理,而不是对管理业务现状和方法的分析. OOA(面向对象的分析)模型由5个层次(主题层.对象类层.结构层.属性层和服务层)和5个活动(标识对象类.标识结构.定义主题.定义属性和定义服务)组成.在这种方法中定义了两种对象类之间的结构,

区分OOA/OOD/OOP!!!!!

OOA Object-Oriented Analysis:面向对象分析方法 是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题.OOA与结构化分析有较大的区别.OOA所强调的是在系统调查资料的基础上,针对OO方法所需要的素材进行的归类分析和整理,而不是对管理业务现状和方法的分析. OOA(面向对象的分析)模型由5个层次(主题层.对象类层.结构层.属性层和服务层)和5个活动(标识对象类.标识结构.定义主题.定义属性和定义服务)组成.在这种方法中定义了两种对象类之间的结构,

步入高级程序猿殿堂之二OOA、OOD、OOP

前言  大多数时候,我们只接触过OOP,对于java核心基础,OOP思想在步入java的那一刻起就已经印刻在 脑子中,但是什么是OOA?什么是OOD?这些概念上,看不见摸不着,平时又没有去关注,乍一看什么玩意 怎么没听说过.但是这些概念上的东西确实应该去了解.所谓思想控制人的行为. OOA:  Object-Oriented Analysis:面向对象分析方法 是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题.OOA与结构化分析有较大的区别.OOA所强调的是在系统调查

OOA&D

面向对象分析 研究问题域和用户需求,运用面向对象的观点发现问题域中与系统责任有关的对象,以及对象的特征和相互关系.目标是建立一个直接映射问题域,符合用户需求的OOA模型. 面向对象设计 在OOA模型基础上,针对选定的实现平台进行系统设计,按照实现的要求进行具体的设计,目标是产生一个能够在选定的软硬件平台上实现的OOD模型. 面向对象分析与设计的关系 OOA模型:抽象层次较高,忽略了与实现有关的因素. OOD模型:抽象层次较低,包含了与实现平台有关的细节. MDA即模型驱动的体系结构,MD是指用模

基于UML的OOA/00D

现在大家都说框架.架构,就不得不先提分析与设计,谈到了DDD,又不得不谈OOA/OOD. 一套框架,首先是一套方法论,离开理论支持的框架很难长久的发展下去,框架是长期积累的结晶.能够从需求沟通.流程方案.系统设计.快速开发.细调等各个环节,能够无缝的衔接起来,最好能够用同一种声音说话. BPM,我不知道在国内的项目里面,有多少个公司是真正的在用,当前都用到了什么程度,在作需求的时候是如何处理的. 我在流程引擎选型的时候花了很多的时间,由于没有什么资源,最后是选择了BPMN,因为自己长期以来的分析