王静 李岩 孙壮桥 魏一博
摘 要: 传统电子政务系统存在流程固化的缺点,通过运用J2EE框架及工作流引擎可按需调整业务功能,提高了重用性和可自定义性,减小了二次开发的难度与瓶颈,更加符合当今电子政务的实际需要。应用系统的开发人员通过可视化的方式分析和设计业务流程,可将各个应用模块连接在一起。在组织结构和业务流程发生变化的时候,能够在很少修改甚至不修改原来应用程序的情况下,通过适当调整或重新定义工作流程适应变化情况。
关键词: 电子政务 J2EE 工作流
自2014年国务院办公厅发布了《关于促进电子政务协调发展的指导意见》(国办发〔2014〕66号)以来,电子政务已经深入我国经济社会发展的各个领域,成为各级政府平稳运转和高效履职不可或缺的手段。本文以河北省教育厅电子政务系统项目为研究背景,阐述基于J2EE框架及工作流引擎的电子政务系统的设计。
一、传统电子政务系统存在的问题
当今电子政务系统中,存在各种各样的工作流程。比如:网站内容的发布;对各项办事的管理从立项、审核、审批的许可证管理流程;从群众的举报,到对部门进行稽查、对违法违纪的行为进行处理、备案的举报处理流程;日常的请假申请、用车申请和收发公文等办公流程。传统系统设计方式将业务流程以编码的方式固化在应用系统中,在业务流程和组织结构发生改变的情况下,需要对系统进行重大修改,甚至重新设计。实际上,业务流程的改变是导致许多应用系统失败的最主要原因。基于J2EE及工作流引擎开发电子政务系统可有效解决以上问题。
二、基于J2EE及工作流技术开发模式的优势
J2EEWeb应用程序开源框架分为四层:表示层、业务逻辑层、数据持久层和域模块层,可以帮助开发人员在短期内搭建结构清晰、复用性好、维护方便的Web应用程序。
工作流管理系统(Workflow Management System,WFMS)通过软件定义、创建工作流并管理其执行。利用工作流管理系统简化企业级软件开发甚至维护。优点如下:
1.降低开发风险,通过使用状态和动作这样的术语,业务分析师和开发人员使用同一种语言交谈。这样开发人员就不必将用户需求转化成软件设计了。
2.实现集中统一,业务流程经常变化,使用工作流系统的最大好处是:业务流程的实现代码,不再是散落在各种各样的系统中。
3.加快应用开发,你的软件不用再关注流程的参与者,开发起来更快,代码更容易维护。
三、J2EE开发框架设计
本系统表现层采用Struts框架,业务逻辑层采用Spring框架,数据持久层采用Hibernate提供具体的数据库数据处理操作,三者有机整合,构成轻量级J2EE应用框架。在该架构下系统分成四层。
1.表示层:由Struts实现,以Struts-config.xml为核心,负责管理用户的请求,并做出响应。Struts提供通用的控制组件AcfionServlet承担MVC中的Controller的角色,代理调用业务逻辑(Action)其他上层处理。AcfionForm封装与用户界面的数据元素
2.逻辑层:包括流程逻辑层和业务逻辑层,该层依赖于Spring框架实现,主要负责处理应用程序的业务逻辑和业务验证、管理事务、保留和其他层交互的接口、管理业务层对象之间的依赖等功能。可将JBPM工作流框架作为业务逻辑层组件使用。JBPM可方便地应用于J2EE框架中。
3.持久层:采用基于0/RMapping机制的Hibemate框架。对数据对象的包装屏蔽了具体的数据库和具体的数据表、字段,做到了构建一个通用的数据处理模型在不同项目中无缝接入使用。
四、工作流框架设计
本项目采用JBPM框架,JBPM是一个Java库。因此,它可以用在任何java环境,如web应用程序,Swing应用程序,EJB,Web Service,等等,此框架采用了非常简单的组织模型,并且能够非常容易地让使用者替换使用自己的组织模型。设计步骤如下:
1.创建任务。
创建工作流图:创建工作流图及开始、结束节点。
创建处理节点:描述处理节点,包括节点名称,节点描述,节点执行者。
创建任务节点:描述任务节点,包括节点名称,节点描述,节点执行者。
创建泳道:定义必须由同一个参与者完成的任务集。
定义节点上下文:定义任务节点能够访问的业务逻辑。
接口及模型类,这些接口和模型类以JSF Managed Bean的形式访问。节点上下文提供在节点处所能够访问的内容及这些内容的作用范围。
分派任务节点:定义任务节点处理的泳道、角色、用户。
分派处理节点:指定工作流图中处理节点对应的业务处理由哪个Bean完成。
2.定义组织结构:定义完成工作流程的组织的结构。执行该任务角色:组织结构定义人员。JBPM提供了一个默认的组织模型,其对应的类为identify包和子包。进行需求分析后,制订模型具体替换方案,User类替换为电子政务系统用户;Group类替换为机关处室及各事业单位;Membership类替换为用户角色。
3.JBPM流程模型与定义对象建立审批流程图,把此电子政务系统作为框架使用二次图形化开发各审批流程,各审批流程支持随时增加、减少、删除、更改。
五、结语
本文以河北省教育厅电子政务建设为背景,分析了河北省教育厅电子政务的现状与不足,设计了利用SHH框架基于工作流技术的河北省教育厅电子政务系统,降低了开发成本与风险壁垒。本系统的应用改变了不规范的工作方式,有利于各业务流程标准化,提高了事务办理效率。
本论文为河北省高等学校科学技术研究指导项目《基于J2EE的电子政务系统研究与应用》的研究成果。