企业工作流快速开发平台的研究 | ||||||||||||||||
企业工作流快速开发平台的研究 摘 要: 工作流技术是现代政务和企业管理中常用的技术。随着企业规模扩大和信息化建设的深入,对各类的工作流应用的需求越来越多,为企业创造的价值也日益明显。如何快速搭建工作流应用、后期如何维护已成为制约企业信息化迈向更高层次的重要瓶颈。本文针对这一问题,从企业工作流开发自身特点出发,分析和探讨了企业工作流快速开发平台的可行性和实践方案。 . 关键词:工作流 BPM 快速开发 配置式开发 基于组件开发 中图分类号:TP311 文献标识码:A 文章编号:1003-9082(2015)12-0059-01 一、架构设计 1.工作流系统架构 流程中心负责集中管理企业各个工作流应用系统的任务处理和数据推送,流程中心以接口或者服务的方式,提供其他系统进行调用,处理流程任务和数据。即应用系统与流程中心的通信是应用系统发起请求,流程中心启动被请求的服务处理相关数据,然后将输出结果返回给应用系统。 在流程中心,提供了2类针对不同用户类型的服务分类: 对于应用系统的管理和维护人员,需要提供其对流程信息的查询和管理功能,以满足开发和运维阶段的需要。这一方面,由于需求相对固定,提供了通用的管理页面,若有特殊需求,也预留了相关接口可供二次开发。 对于开发人员而言,根据一般业务系统需要,封装了待办、经办、办结等相关服务,应用开发人员可以在应用系统中调用,在业务逻辑层组装自己的程序和逻辑类,实现应用系统中的功能。 将流程相关功能封装为通用接口,不仅节约了工作流应用开发的时间,也有利于提高各个应用的规范化程度。在后期维护时,面向接口编程的优势也是显而易见的,只要约定的接口规范保持不变,工作流程序的升级不会对相关系统带来影响。 2.单一应用的部署架构 为了解决企业工作流应用系统建设过程中的定制化开发模式,业务与流程高度耦合,在架构设计中应遵循如下原则: 将流程独立为通用的系统,包括程序的分离和数据库的分离流程与业务系统之间采用接口进行通信,接口是预先定义好的,并且遵循一定的规范。 3.多应用部署架构 大型企业中,面临的是多应用、分布式部署的实际需要。当企业范围内有多个工作流应用同时部署时,特别是跨地域部署时,建议采用SOA(Service-Oriented Architecture 面向服务的体系结构)架构来实现应用的分布式部署。 4.工作流规范 BPMN是由标准组织BPMI发布的基于标记语言的工作流建模规范,其用图形化的方式描述业务流程的模型,在业务人员和流程开发人员之间搭建了沟通桥梁。2011年,BPMN2.0推出,其主要目标是提供一些被所有业务用户容易理解的符号,从创建流程轮廓的业务分析到这些流程的实现,直到最终用户的管理监控。因此BPMN2.0的出现,弥补了从业务流程设计到流程开发的间隙。 5.Spring MVC Spring是构建企业级应用的轻量级框架,它的分层架构可以让开发者灵活的选用自己的组件,它所具有的面向切面(AOP)和控制反转(IOC)的特性,也让程序更加具备高内聚、低耦合的倾向。 在本项目中正是需要Spring的这些特性,所以采用Spring作为后端程序的框架。Spring的分层架构、AOP等特性天然的支持本项目的组件开发模式,组件间的依赖关系通过Spring注册,不需要在程序中显式地申明。这样组件升级或者更换组件时,不需要对程序进行改动,维护起来更方便。同时,分层架构也更加有利于业务和流程的分离,各自在不同的层级完成自身工作,由Spring在控制层组织对它们的调用。 二、开发模式 1.可配置式开发模式 效率和质量是软件开发中的2个关键要素。页面配置式的开发模式可以让应用开发更加快速、可靠。平台提供了可视化的流程设计器,开发人员可在页面上通过拖拽绘制流程图,实现了所见即所得的编程,并且更加利于与业务人员的沟通。 2.基于组件的开发模式 具体的应用开发过程中,由于业务的复杂性和变化性,以及用户对于操作页面、表单的要求不一,很难以固定的页面提供给用户。故开发平台在服务层封装了流程任务处理和数据查询的各类组件,以接口的方式提供给应用开发人员。应用开发人员只需在搭建应用时,调用相应接口,即可获取所需的工作流服务或数据。而在前端,开发人员可自由选用技术和页面风格,来搭建满足用户喜好的页面,并加载工作流提供的数据模型。 三、结语 通过对工作流和BPMN的研究,结合企业工作流应用的实际,设计和搭建了一套企业级工作流应用开发平台。该平台遵循BPMN2.0标准,通过BPMN简化了业务流程的抽象过程,通过可视化的流程设计方式,不仅方便了设计人员与业务人员的沟通,节约了时间和成本,更让双方能有的放矢,减少了分歧和理解偏差,降低了风险和返工率。 平台实现了可配置式的工作流应用开发模式,从流程的设计、发布,到挂接业务表单、指定处理人,均可在页面上通过配置完成。这样可以使流程的开发和后期维护都变为流水化作业,更加有利于企业级的多应用并行开发和维护管理。 对本企业常用的功能,如待办、经办、办结事项的处理与历史数据的查询等,封装成通用组件,供应用开发直接调用,可以极大的提高应用开发的效率和规范性,也有利于后期的维护升级。 经过多个企业工作流应用的建设,不仅促进了工作流开发平台的迭代优化,也证明了此开发模式的可行性。系统的重复开发、维护困难和信息孤岛一直以来都是企业信息化面临的难题,建设一个企业级的、标准化的开发平台不失为一种可行的解决方法。
|