面向对象构架

   本文旨在探讨面向对象的企业软件开发构架,主要是应用在企业信息管理系统。现在随着OOP(面向对象编程),OOD(面向对象设计)和OOA(面向对象分析)的发展,最终形成面向对象的软件开发方法OMT (Object Modeling Technique)。使用面向对象软件开发方法,设计师可以把庞大而复杂的软件系统分解成多个对象,每个对象各司其职,相互协作以完成目标。对象模型能清晰和简洁模拟客观现实,能帮助我们用一种更容易被我们所理解和接受的方式去描叙和解决现实问题。下面将提出一种面向对象的层状体系结构。

 

1.  对象环境

对象环境是装载对象的容器。包容了对象的整个生命周期。他分别由对象持久层,对象活动层,对象表示层组成。

1.1对象持久层

     对象持久层,是对企业数据的封装。企业的商务活动将产生大量数据。对象持久层,是系统的核心层;它将企业数据封装成各类的持久对象(Persistent object)。并提供对持久对象的增加,删除,修改,查询和事务功能。

     对象持久层由持久层环境,持久对象和持久对象管理组成。持久层环境为对象提供持久性、安全机制、事务处理等服务,一般是数据库管理系统(DBMS)和服务器负责实现。持久层管理为对象提供访问操作。一般向外层提供一组接口(Interface)。

  1.2对象活动层

     对象活动层,是对企业业务流程的封装。企业业务流程是企业以顾客需求和输入各种原料为起点到企业创造出对顾客有价值的产品或服务为终点的一系列活动,由一系列工作环节或工序所组成,相互之间有先后顺序,有一定的指向,时空上衔接。对象活动层,是实现这一系列业务流程的抽象描述;是把业务流程的一系列活动抽象为系统对象的活动。它可以表现为持久对象与别的持久对象或临时对象(transient object)相互协助、调用;其结果,可能产生新的持久对象,或者改变某对象状态等等。并且对象的活动随企业业务流程的改变而改变。

    对象活动层由一系列对象活动场景组成;一个对象活动场景是对业务流程一个活动的抽象描述,表现为对象之间的活动而完成一个活动目标。对象活动场景是由对象表示层或系统触发开始的,随对象间活动的进行到中止,活动场景也随之中止。

  1.3对象表示层

     对象表示层,是对对象活动层数据的输出和输入的封装。人是系统的使用者,将系统的对象表达为人可以理解的数据,或者将人输入的数据转变为系统的对象,都是不可少的一个相互转变过程。对象表示层包括对象的输出和输入。

     1.3.1 对象的输出

          由对象活动层产生的对象,可能要输出到各种设备上。现在最常用的设备是视频终端。在视频终端显示的格式有:文字、图表、多媒体等。对象表示层要负责将对象输出为这些格式。

     1.3.2 对象的输入

          不管输入的设备怎样智能,将输入数据转变为对象还是相当困难。现在一般的视频终端输入都使用图形用户接口(GUI)。对象表示层要负责将输入数据转变为对象,并提供给对象活动层

 

三层对象体系结构

 

2.  三层对象构架特点

(1)       纯对象系统:三层对象构架是基于面向对象的软件开发理论的,在系统中,一切都是对象。

(2)       纯软件层次分离:三层对象构架是不关注物理结构的,是架设在物理层之上。

(3)       具有强构架伸缩性:由于是纯软件层次构架,所以它可以适应大、中、小型的企业软件开发模式。

 

3.  N层体系结构比较

也许有很多人会问,N层体系结构与三层对象体系结构有什么相同和不同?

1)他们的目标是相同的。他们都是通过分离关注点来组织复杂系统,使变化的局部尽可能地减少对整体影响,降低了系统的脆弱性,延长系统的寿命。并且整个构架搭建完成,那么变化的局部还提升生产效率,因为改变可以更快实施。

2)三层对象体系结构是纯软件层次的构架,非物理上分离的层。N层体系结构是存在物理上分离的层的。

3)三层对象体系结构是以面向对象为基础的,整体构思是对象结构。N层体系结构是以物理结构和开发逻辑为分离点,整体构思不一定是对象结构的。对于分布式的三层对象体系结构是N层体系结构的对象化的一个补充。两者不是排斥的,前者是后者的扩充关系。

4)三层对象体系结构是一个伸缩性很强的构架,它不但可以是合适分布式大型系统构架,也可以是非分布式小型的系统构架;这是由搭建它的物理平台所决定的。而N层体系结构是现在最广为人知并广泛接受的分布式企业系统构架方案,它一定是分布式的。

 

 

4.  三层对象开发层次

(1)       实现对象持久层。现在随着B2B电子商务的飞速发展,企业与企业间的数据交换也越来越频繁,企业信息化的发展将越来越迫切需要企业数据交换标准。如果软件供应商和行业企业可以定义行业数据标准,提供标准接口;那样最大地维护了对象持久层的重用,也将使得企业不再依赖单一软件供应商软件产品。达到双方共赢。

(2)       进行二次开发,建立应用系统。由于对象持久层的实现,使开发变得简单,同时也降低了技术门槛,二次开发可以全身心地投入到业务逻辑开发之中,灵活地构建对象活动层和对象表示层。

(3)       企业进行维护和进行部门级开发。市场的变化,常导致企业实施业务流程再造。所以企业需要进行部门级开发。利用现有的对象持久层和对象表示层,可以快速开发对象活动层的新的活动场景,以满足需求。

 

5.  结束语

本文提出一种面向对象的层状体系,同时阐明了其结构,提出一些新的概念,并和现有的构架进行比较。使用J2ee技术可以很容易构架三层对象;EJBJDO等技术是个不错的开发对象持久层的选择,对于开发对象活动层和对象表达层,strutsTapestry等技术也很好。由于个人水平有限,其中难免有不当之处,希望大家批评。

6.  参考资料

[1]Object-Oriented Systems Analysis And Design    Ronald J.Norman

[2]UML对象设计与编程                          刘润东

[3]Applying MDA to Enterprise Computing          David S. Frankel

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值