电子政务系统协同式开发平台研究

岳建伟,刘生权,钟耳顺,姚敏,方利,张建平

(1. 中国科学院地理资源所,北京 100101;2. 中国科学院研究生院,北京 100039)

论文来源:计算机工程

摘要:当前应用于电子政务系统开发的辅助开发工具之间彼此独立,造成系统开发的不连续性和重复劳动,容易产生错误。为解决该问题,提出了电子政务协同式开发平台设计,将流程建模工具、业务逻辑建模工具、业务表单定制工具和系统运行平台等有机地结合在一个平台,使这些工具协同合作…

关键词: 电子政务系统;协同式开发平台;模型驱动构架

1 概述

面向对象技术、构件开发技术、B/S 体系结构、J2EE和.NET 技术架构等各种先进的软件开发技术和软件辅助开发工具对于提高电子政务系统的开发速度和质量具有很大的帮助[1]。但是,由于这些工具之间的独立性,使得电子政务系统的开发过程中各个环节之间是不连续的,下一阶段不能充分利用前一阶段的工作成果,不仅造成不必要的重复劳动,而且容易出错。例如在数据库设计完毕后,目前的业务建模工具只能自动生成数据库结构和数据库设计文档,而在后续系统编码过程中,对于数据库与表单元素的联系却没有任何帮助;此外,电子政务中业务办理流程中不同活动对表单的处理拥有不同权限,因此工作流系统与表单有着紧密的联系。但是目前工作流和表单的设计开发是相互独立的,软件开发人员必须在表单编码时处理这些问题。由于不同的表单内容虽然不同,但是表单权限控制方式却是一致的,这必然造成重复劳动,也不可避免地造成错误的产生。再者,表单与数据库之间的数据交流的方式也基本相同,差别只是数据库字段名称和表单元素名称的不同,这种情况造成代码编写人员看似在编写不同的表单,但是却在进行无数次重复相同的 工作。

如何充分利用前一阶段的劳动成果,使编程工具尽可能多地生成有规律性的业务代码,减少程序员的重复劳动,本文对此进行了研究,开发出了一套电子政务系统协同式开发平台,取得了一定的效果。

2 协同式开发平台设计

协同式开发平台的基本设计原理是将系统不同开发阶段工具集成在一起,使其成为一个完整统一的整体,各开发阶段的开发工具相互协同工作,共同辅助程序开发人员完成系统的开发。如图 1 所示,协同式开发平台由 4 部分组成:业务流程建模工具,业务逻辑建模工具,业务表单定制工具和系统基础运行平台等。这 4 个系统开发工具相互配合辅助系统开发人员完成系统的开发,其中流程建模工具辅助完成业务流程的定义;对象建模工具辅助完成业务对象的建模工作;表单定制工具将业务表单与工作流中的活动、活动中对于该表单的处理权限以及业务模型中的属性字段相关联,并自动生成对数据的操作代码;系统基础运行平台将开发人员根据需求搭建的系统原形以图形、文字和模拟实际办公的方式展现给用户。用户可以直观地了解开发人员对需求的理解是否正确,系统功能是否完全覆盖自己的要求等。用户根据观察的情况将意见反馈给系统开发人员,开发人员可以立即根据用户的要求进行修改并重新展示给用户。这种模式使得用户和开发人员的交流更加方便快捷,并且系统自动生成的文档和代码保证了需求设计文档与实际编码的一致性、代码的规范性与健壮性。

2.1 业务逻辑建模工具

业务逻辑建模工具主要功能为图示化显示设计对象的属性以及对象之间的关系、自动生成业务数据库建库脚本、自动生成系统详细设计文档、实现数据库关系模型到业务对象模型的逆向工程、业务对象模型到数据库关系模型的正向工程和将有关业务逻辑对象的相关信息存入业务逻辑数据库中等。这些信息为表单定制工具将业务对象与表单元素结合创造了必要条件,是协同式开发平台工作的基础。

在业务逻辑建模工具中主要应用了模型驱动构架(Model Driven Architecture)的思想。MDA 的核心在于在设计阶段系统就已经完全描述,所以,在创建系统的时候,几乎就没有错误解释的可能,模型也就可以直接生成代码。业务逻辑建模工具从平台无关模型(Platform Independent Model)开始,然后由系统自动生成平台相关(Platform Specialize Mode)的代码。通过业务逻辑建模工具可以搭建数据库及应用程序的基础框架。其关键技术主要包括:对象代码自动生成,关系数据库自动生成,对象关系映射(Object Relation Mapping)模型自动构建。这些自动生成功能使用户可以从繁重的编码工作中解放出来,从而更专注于业务设计。

2.2 业务流程建模工具

一般的业务流程建模工具主要是用于系统设计阶段。由于在设计完成后用户才能看到系统原型,因此在系统设计完成后用户和系统开发人员才能与用户进行更进一步的交流,才能够知道设计人员的理解与用户的意图是否一致。这种状况必然造成交流的困难和延长系统的开发周期。

协同式开发平台与一般流程建模工具主要区别在于可以直接利用该工具记录用户对于业务流程的需求,并立即建立业务办理的流程模型,进而向用户展示系统的原型。该工具主要功能为用户定义维护、角色定义维护、组织机构定义维护、系统模块定义维护和自动生成用户需求与系统设计文档等。它最终的成果是系统业务处理流程对应的工作流模型,用户需求文档和系统设计文档。协同式开发平台具有以下优点:可视化的流程建模,直观,减小了和用户之间的交流误差;业务流程模型与业务工作流一体化,业务的流程模型的建立和编辑与对应的工作流数据库一致;业务流程模型与业务需求调查分析文档的高度一致;业务流程建模工具可以根据业务流程模型自动生成图文并茂的需求分析文档,减少了编写需求分析文档的工作量,也使得文档与系统高度一致。

2.3 业务表单定制工具

业务表单定制工具在协同式开发平台中起到协同综合的作用。它充分利用了前面两个工具生成的工作流模型和业务模型等信息,将表单与业务和工作流相关联,充分表现了协同开发系统的思想。

目前,在电子政务系统的开发过程中,表单设计工作主要是表单界面的设计和将表单元素与业务模型建立联系,从而使数据能够在表单和数据库之间准确顺利交互。不同表单其界面也不相同,所以对于表单界面的设计工作无法由系统

更多内容请查看pdf