APP下载

论混合软件架构在政府办公自动化(OA)系统设计中的应用

2015-01-16范玉福

科技视界 2015年16期
关键词:办公自动化浏览器办公

范玉福

(绿春县电子政务网络管理中心,云南 绿春662599)

1 项目概况

2011年4月,我作为绿春县电子政务网络管理中心的一名技术人员,组织软件公司和网络公司开发我县的办公自动化系统。该系统包括发文管理、收文管理、个人事务、人员信息、系统设置、工作跟踪、流程督办等功能。通过该系统可以使我县一百多个单位在OA上进行无纸化办公。我县的办公自动化系统数据库采用Oracle 10g;主要核心业务逻辑由C/C++语言实现;Web服务器采用Weblogic,涉及核心业务逻辑的部分功能经由WTC调用Tuxedo服务实现,其它功能通过JDBC直接访问数据库。在该项目的开发中,我担任整个项目的设计和项目管理工作。在整个项目的开发中,我们采用了三层C/S架构和B/S架构的混合架构作为整体设计。以下我就以我县办公自动化系统设计为例,与大家探讨一下混合软件架构在政府办公自动化设计中的应用。

2 软件架构风格概述

软件架构风格是描述某一特定应用领域中系统组织方式的惯用模式。在软件架构风格中比较常用的一种风格是分布式架构风格,它包括C/S(客户机/服务器)架构、三层C/S(客户机/服务器)架构、B/S(浏览器/服务器)架构。

C/S架构有二个主要组成部分:数据库服务器、客户应用程序。其中服务器负责有效地管理系统的资源,例如,数据库管理系统,其任务集中于:负责管理对数据库数据的读写;数据的备份与恢复。客户应用程序的主要任务为:提供用户与数据库交互的界面;向数据库服务器提交用户请求并接收来自数据库服务器的信息;利用客户应用程序对存在于客户端的数据执行应用逻辑要求。C/S架构逐渐暴露了以下缺点:

(1)开发成本较高。C/S架构对客户端软硬件配置要求较高,尤其是软件的不断升级,对硬件要求不断提高,增加了整个系统的成本,且客户端变得越来越庞大。

(2)客户端软件设计复杂。采用C/S架构进行软件开发,大部分工作量放在客户端程序设计上,客户端显得十分庞大。

(3)软件移植困难。采用不同开发平台开发的软件一般互不兼容,不能或难以移植到其它平台上使用。

(4)软件维护和升级困难。C/S架构的系统,如果客户端应用软件改动或升级,就得更改和升级每一台电脑上的客户端应用软件。工作量相当大。

因为C/S架构的缺点,提出了三层C/S架构。在三层C/S架构中,增加了一个应用服务器,系统的应用逻辑驻留在应用服务器中,而只有表示层存在于客户机上。由于客户机只完成用户和系统的对话功能,所以这种结构被称为“瘦客户端”。三层C/S架构将应用功能分成表示层、功能层和数据层三个部分。表示层完成用户和系统的对话功能,功能层完成处理业务逻辑的功能,数据层通常是数据库管理系统,负责管理对数据库数据的读写。

浏览器/服务器(B/S)风格的具体结构为浏览器/Web服务器/数据库服务器。三层C/S的解决方案相比,客户端用WWW浏览器,应用服务器是Web服务器。在B/S架构中,除了数据库服务器外,应用程序以网页的方式存储在Web服务器中,用户运行某个应用程序时只需在客户端浏览器中输入相应的网址,然后就会调用Web服务器中的应用程序和数据库完成相应的数据处理工作,最后将结果通过游览器显示给用户。基于B/S架构的软件,系统的安装、修改和维护全部都是在服务器端完成的,用户只需要一个浏览器就可运行整个系统。由于客户端计算机不需要安装任何软件,所以称之为“零客户端”。

虽然B/S架构有如此多的优势,但与C/S架构相比,也有许多的不足之处,例如:

(1)采用B/S架构的应用系统,在数据查询等响应速度上,要远远低于C/S架构。

(2)B/S架构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理的应用。

3 政府办公自动化系统软件架构的选择

从上面我们可以看到,三层C/S架构并不是一无是处,而B/S架构也不是完美无霞。因为三层C/S架构根深蒂固,技术的成熟性,以前的很多系统都是构建在三层C/S架构之上的。所以,B/S架构要想在软件设计中占主导地位,道路还漫长。我个人认为,三层C/S架构和B/S架构还将长期共存,很多时候我都是结合两种架构来进行软件设计的。三层C/S架构和B/S架构的混合架构主要有两个模型。第一个是“内外有别”模型。在该模型中内部用户通过局域网访问应用服务器,再由应用服务器访问数据库服务器,软件架构采用三层C/S架构;外部用户通过internet网访问Web服务器,再由Web服务器访问数据库服务器,软件架构采用B/S架构。“内外有别”模型的优点是外部用户无需安装客户端软件。内部用户的交互性较强,数据查询和修改的速度快。第二个是“查改有别”模型。在该模型中不管用户以何种方式连接到系统(如局域网或internet网),凡是进行修改或维护都使用三层C/S架构,凡是进行查询都使用B/S架构。“查改有别”模型的优点是修改或维护的响应速度快,数据查询时方便。

图1 绿春县办公自动化系统整体架构

在我县的办公自动化系统总体设计时,我们充分考虑到该系统的分布式管理的需求,选用了三层C/S架构和B/S架构的混合架构中的“内外有别模型”。基于单位内部办公用户数据查询和修改的速度要求高,交互性要求高等需求,我们在单位内部办公用户的软件设计中采用了三层C/S架构。基于单位外出移动办公用户无需安装客户端软件从而方便使用等需求,我们在单位外出移动办公用户的软件设计中采用了B/S架构。因为单位外出移动办公用户是通过internet网登录OA的,internet网具有开放性,数据传输的安全性很差。对于这一方面我们采用了SSL VPN。使数据通过internet网中的SSL VPN隧道传输,保证了数据传输的安全性。整个办公自动化系统的架构如图1所示。

从图1中可以看到,单位外出移动办公用户由internet通过SSL VPN登录Web服务器,再通过Web服务器访问数据库服务器。单位外出移动办公用户只需要一台能上internet网的电脑就可以方便地使用办公自动化系统,而无需安装客户端软件。单位内部办公用户由合并入各单位internet网的专网登录应用服务器,再通过应用服务器访问数据库服务器。这样达到了快速登录、查询和修改的需求。

在我县的办公自动化系统设计总体中,我们采用了三层C/S架构和B/S架构的混合架构,不仅节省了开发和维护成本,提高了开发的效率,而且使系统具有良好的易扩展性。至今该系统运行状态良好,未出现过重大故障!

[1]杨春晖,孙伟,等.系统架构设计师教程[M].北京:清华大学出版社,2009,6.

[2]张友生.系统分析师教程[M].北京:清华大学出版社,2010,2.

[3]张友生,李雄,等.软件体系结构原理、方法与实践[M].北京:清华大学出版社,2009,8.

[4]余雪丽.软件体系结构及实例分析[M].北京:科学出版社,2004,8.

[5]黄居源.地级市电子政务网站运行情况分析[D].济南:山东大学,2008,4.

猜你喜欢

办公自动化浏览器办公
Sharecuse共享办公空间
X-workingspace办公空间
反浏览器指纹追踪
浅谈办公自动化系统的设计与应用
办公自动化中的计算机应用
U-CUBE共享办公空间
办公自动化系统软件教学探索
办公室自动化、办公自动化与OA
环球浏览器
广场办公