面向对象的系统分析(二)-面向对象分析基本原理

来源:互联网 发布:标签打印程序源码 编辑:程序博客网 时间:2024/04/27 19:23

OOA建立在信息模型和面向对象程序设计语言的概念基础上。从信息模型中提取了属性、关系、结构以及对象作为问题空间中某些事物的实例表示方法等概念;从面向对象程序设计语言中提取了属性和方法的封装、属性和方法作为一个不可分割的整 体、以及分类结构和继承性等概念。OOA方法可表示为:

    OOA方法=对象+类+继承性+基于消息的通信

    OOA主要采用4条基本原理

    1.抽象原理

    在系统分析时,应忽略问题空间中与当前目标无关的哪些方面,以便更充分注意与当前目标中的实质问题。在使用抽象概念时,我们承认正在考虑的问题是复杂的,但不打算理解问题的全部,只是选择其中的一部分,而所包含的其他细节也暂不考虑。这是控制复杂性的一个重要方法。抽象原理包括过程抽象和数据抽象两种类型。

    过程抽象是需求分析人员广泛使用的一种抽象形式,对于设计人员和编程人员也同样,它常常具有“功能/子功能”抽象的特征。过程抽象是由结构化程序设计发展而来,它是对付复杂性的一个基本方法.尽管过程抽象不是OOA的基本抽象形式,但是它在说明和描述单个对象的有限范围内是有用的。

    数据抽象是OOA的核心部分,是组织和考察系统任务规格说明的基础。数据抽象把

    一组数据对象及作用其上的操作组成一个程序实体,使得外部只知道它做什么,而不知道它如何做,也不知道其数据对象是如何表示的。在应用数据抽象原理时,分析人员定义对象的属性以及处理这些属性的方法,并借助方法获得属性。

    2.信息隐蔽(封装)原理

    信息隐蔽是指在研究复杂大系统的总体结构时,每个单元都应封装或隐蔽为为一个设计模块,而每个模块的接口应设计得尽可能地少于其内部工作状态相关联。也就是要求保持较高得模块独立性,应实现模块内得高内聚与模块间的低耦合。

    在开发新的系统时,封装可以最大程度地减少重复劳动。如果分析人员能封装需求分析的各个部分,则需求的改变对整个系统的影响将会最小。

    3.继承原理

    继承是指能直接获得祖先的性质和特征,而不必重复定义它们。继承性允许我们一次定义不同对象的公共属性和服务,同时允许针对特殊情况特化和扩展那些属性和服务。例如,我们可以将“轿车”和“卡车”看作是“车辆”类的特化,这样,“轿车”和“卡车”就可继承“车辆”的公共属性。如牌照等。

    OOA采用继承性还可以清楚地表达自需求分析开始以来所有共性的活动。这样,可显著地简化需求分析的工作量,有利于简化文档说明的描述和管理。

    4.组织方法

    人类在认识和理解现实世界的过程中,普遍运用着种组织方法:

    1)特定对象及其属性的区别,例如,树是对象,而树的大小,树的空间位置关系等可看成是树的属性。

    2)整体对象及其组成部分的区别,例如,树与树枝的关系即是整体与部分的关系。

    3) 不同对象类的构成及其区别,例如所有树构成的“树”类与所有石头构成“石头”类的区分。

原创粉丝点击