你当前的位置:首页>>液压与气动>>技术论文资料  
                       面向对象的液压系统分析研究--1

    摘要:本文介绍了面向对象的分析方法,并给出了一种面向对象的分析模型的表达方法。以液压系统设计为工程应用背景,探讨了面向对象的分析方法在工程系统分析中的应用。按照类对象层、结构层、主题层、属性层和服务层五个层次分析了液压系统的类层次构成及其连接与通信。

关键词对象,面向对象的分析,液压系统。

一、面向对象的分析简介

    在大型软件开发项目中,无论是实时控制系统、数据库系统、人工智能系统,还是具体到自动代码生成,或扩展到一个工厂的计算机集成制造系统,都存在着一个共同的需求,就是在系统分析阶段建立系统的信息模型。在众多的系统分析方法中,面向对象的分析(OOA)方法更接近于人类的思维方式,正在被越来越多的系统分析人员使用。

    持面向对象观点的人认为,计算机程序的结构应该与所需解决的问题一致,而不是与某种分析方法保持一致。经验表明,对任何软件系统而言,其中最稳定的成份是相应问题论域(PROBLEM DOMAIN)的成份。而系统出问题通常也是由于问题论域的某些成份。因此,对问题论域进行充分分析及准确理解是保证系统稳定的重要基础。

那么对象到底是什么呢?通俗地讲,对象指的是客观世界中的实体, 它能“知道一些事情”(即存储数据),“做一些工作”(即封装服务),并“与其它对象协同“(通过交换消息),从而完成(模块化)系统的所有功能。为什么对对象感兴趣呢?答案是简单的棗即可复用性。尽管从计算机产生之初,我们就已经在复用代码,但面向对象技术允许复用的不仅仅是代码,还有其它许多的东西。通过面向对象技术,我们可以复用需求、分析、设计、测试计划、用户界面以及体系结构等。

面向对象分析方法是建立在对象及其属性、类属及其成员、整体及其部分这些基本概念的基础上。大英百科全书指出:

“人类在认识和理解现实世界的过程中普遍运用着三个构造法则:

  1. 区分对象及其属性。例如,区分一棵树和树的大小或空间位置关系。
  2. 区分整体对象及其组成部分。例如,区分一棵树和树枝。
  3. 不同对象类的形成及区分。例如,所有树的类和所有石头的类的形成和区分。”

 

OOA就是建立在以上三个常用法则的基础上。OOA模型描述了表示某个特定论域中的对象,以及各种各样的结构关系和通信关系。OOA模型有两个用途。首先,每个软件都建立在特定的现实世界中,OOA模型就是用来形式化该现实世界的“视图”。它建立起各种对象,分别表示软件系统主要的组织结构以及现实世界强加给软件系统的各种规则和约束条件。其次,给定一组对象,OOA模型规定了它们如何协同才能完成软件系统所指定的工作。这种协同在模型中是以表明对象之间通信方式的一组消息连接来表示的。

本文采用Ed Yourdon建议的分析方法,OOA模型被划分为五个层次。这种层次结构允许从不同的角度来看待OOA模型,而且,这种结构也便于有效地处理比较大的OOA模型。OOA模型的五个层次分别如下:

  • 对象-类层
  • 属性层
  • 服务层
  • 结构层
  • 主题层

其表示法如图1所示。
                   

1 OOA模型的结构

第一层,对象-类层表示待开发系统的基本构造块。对象都是现实世界中应用论域概念的抽象。这一层是整个模型的基础。图符的外层边界表示实例边界,实际上它表明对象是非空的。而图符的内层边界则表示类边界。有时可以定义一些不当作程序块来实现的对象,即只有类边界而没有实例边界。在某些情形下,定义这种对象是很有用的。我们将它们称为模板类或抽象类。模板类可以为结成较高级的聚合体提供一条方便的途径。

第二层,属性层,对象的属性和实例连接共同组成了OOA模型的属性层。我们把对象所存储的数据称为对象的属性。类的实例之间互相约束,它们必须遵从应用论域的某些限制条件或事务规则。例如,当定金取消后,相应的订户也应该被取消,这可能是一项事务规则。我们称这些约束为实例连接。

第三层,服务层,对象的服务和消息通信组成了OOA模型的服务层。我们把对象所做的工作称为服务或方法。系统的不同对象都分别执行一定的工作或功能,它们之间通过消息通信,即所谓的协同,如图中的箭头所示。对象的服务及对象实例之间的消息通信共同组成了OOA模型的服务层。

第四层,结构层,该层负责捕捉特定应用论域中的结构关系。泛化---特化结构获得类及成员组织,有助于刻画问题空间的类-成员层次,它通过搜集公共特性并把这种特性扩充到特例中来显示现实世界事件的通用性及专用性。整体—部分结构表达了人类的一种基本组织方式,即自然的整体和部分的结构关系,从而把一些部分的聚合构造成整体。例如,一辆汽车由发动机、传动装置和刹车装置组成。

第五层,主题层,相当于全局系统的子系统或子模型。由于OOA模型的结构庞大而复杂,因此众多的对象有时很难处理。于是,可以把对象归到各个主题层中,可以把有关的对象用一个边框框起来加以实现。例如,在一个控制系统中,众多的对象可分为“管理”和“控制”两个主题,则可以用图2表示。
              
                                 图2: 主题层示例

    以上简单介绍了面向对象的分析及在本文中的表示方法,下面将研究面向对象的分析在液压系统设计中的应用。

                                     第  1  [2]  [3]  页

版权所有  民众工作室.制作