工作流技术杂谈(2007)
“工作流” 已经成为了一个事实存在的概念和名词,可是到了2007年依然找不到没有能够明确的定义,在互连网上,我们随便在GOOGLE或百度上搜索,找到关于工作流的内容及定义可以说是百家争鸣,是标准、是引擎、是技术、解决方案、是思想、是架构。。。。到底是什么?
工作流到底是什么呢,对于从事做计算机软件设计的人而言,它是一项技术、是我们为我们的客户提供解决方案框架的一部分;对于从事企业信息化管理的人而言,它是一种思想,是我们降低用户的IT运维成本的一种方法;对于从事软件开发的人而言,它是一个架构,是我们如何利用成熟稳定的接口和组件低成本的开发出适应用户流程变化的应用程序。 总而言之,工作流通过技术的手段,融入管理思想、为管理提供“人、事、物、流程、时间、条件”等多维管理能力,帮助用户实现管理目标。
既然今天谈的是“工作流”技术,那文章的重点就是占在技术的角度来讨论工作流,我们可以从以下几个方面来探讨工作流。
1、 为什么要使用工作流技术
对于这个问题我们可以从软件企业的解决方案策略、用户运维的成本上及企业信息化规划等几个角度来考虑这个问题。
首先从解决方案提供者的角度来说,我们的CIO/CTO面临的一个很大的压力是在于我们为用户提供的解决方案滞后于我们的用户的商业策略,我们用户总是在变化中发展,商业策略面临着市场、竞争对手的压力而改变,而我们提供的解决方案却不能够快速适应这样的变化。工作流技术使这样的一种解决方案成为可能,同时工作流技术也为用户企业实现企业战略执行提供了实现的平台。
从IT运维的角度来说,目前很多IT公司面临了一种CTO(总体拥有成本)成本比例的变化趋势。因为大部分IT企业或IT部门的IT基础架构的现状,使我们用户运行维护的成本在逐步的升高,研发新能力的成本在逐步压缩,但我们的IT投资始终会变缓,特别是IT运行维护的成本在总体拥有成本中的比例。意味着IT企业和IT部门利益的空间将越来越小,其实我们身边的很多案例里就有很多IT企业被某些项目拖累致倒闭的现象。工作流技术可以脱离开发环境而设计业务流程的特性让企业IT运行维护成本大大的降低,从而提高了IT企业和IT部门的利益空间。
从企业信息规划的角度来说,可以回顾前些年的ERP、进销存、CRM等系统,大部分是管事的,系统主要是记录数据及其关联关系等,是静态为主的,但随着社会的发展与竞争格局的变化,企业的策略越来越需要能随需而动,生产管理活动也始终是“人”参与的活动,很多时候人需要激励、参与、满足、约束、被管理等等才能很好达到管理目标。因此新一代管理系统中协同性、灵活性、扩展性需求相当重要,工作流是提供协同性、灵活性、扩展性的最佳工具。
2、工作流用在哪里
毫五疑问,工作流技术是软件技术,用在软件设计领域,工作流分为业务型工作流和状态型工作流,业务型工作流大部分是要用在管理软件设计领域,为管理软件提供灵活性、扩展性、协同性等特质。帮助企业实现战略管理目标。
常用的工作流应用场景:
企业办公自动化系统
IT服务管理系统
客户服务管理系统
物流揽收调度系统
设备运维管理系统
质量考核监督系统
采购系统。。。。
3、如何使用工作流及哪些人使用
很多时候工作流是一个看不见摸不着的东西,存在于我们的业务管理系统软件中,至于如何使用、哪些人使用可以从几个方面说明。
工作流引擎是系统功能,是软件本身去使用的,
工作流架构是包含工作流引擎使用、接口调用、业务系统应用框架的,是开发人员使用的,开发人员在工作流架构上设计开发包含工作流技术的不同业务领域的软件系统。
工作流平台一般是包含流程设计工具的,由企业流程管理用户去使用,通过工作流平台提供的流程管理工具将企业的战略和制度转化为执行语言。
软件系统普通用户使用的则仅仅是包含企业战略执行语言的业务管理系统。
4、 工作流技术的选型
关于工作流技术的选型,对于从事IT工作的人员来说是一个需要非常慎重选择,在这里做些简单的阐述,工作流技术分为两种。一种是业务流程型的,比如我们的一些事件处理、服务流程、物流揽收调度、合同审批、设计审核等,需要工作流引擎根据各种表单的内容来人机交互来自动管理这个过程;另一种是状态机型的,根据一件事情的状态变化而自动进行处理,如工业控制,电路控制管理等。常用于一些工业自动化控制系统等。
我们经常听到有人说工作流引擎可以很快的就配置出一个业务系统出来,自定义表单,自定义流程,自定义报表等等,很快就给用户提供一个完整的业务系统,其实这样的想法是非常理想的,我们在开发我们的业务系统的时候我们会发现我们的业务系统不仅仅是功能的实现,它将面临着各个方面的需求,包括性能,并发处理能力、易用性、一致性及个性化等等,当工作流引擎只能满足60%的需求时,我们的团队将为另外的40%需求付出多少成本。因此在工作流的选型上很重要的一点就是它对于二次开发的支持,及接口的友好特性,同时它能支持我们在工作流基础上设计思路上的延续性。
因此工作流技术的选型不但要考虑工作流引擎本身功能的完整性和稳定性,工作流架构的扩展性、易用性及适应能力,还需要考虑工作流涉及开发人员、企业管理实施人员、企业用户的习惯和易用性等。纯粹的工作流的产品意义并不大,关键是否能很好的帮助企业实现管理目标。
5、 工作流技术的应用
E8.Net工作流平台融入了新一代管理软件关注的重点思想,所有功能模块应用将权限体系、工作流引擎体系、表示逻辑体系、管理控制逻辑体系、扩展及个性化接口体系充分结合,从架构的设计上优化企业个性化业务系统实施成本,并通过流程管理工具,为企业实施个性化的企业流程,通过记录、监督、跟踪、回访、分析企业日常事务,持续改善企业管理流程,E8.Net工作流平台开源的开发架构设计过程中充分分析了管理行为中人的特性,基于E8开发的企业流程应用系统提供了事中监督、事后回访、全程跟踪的体系架构,E8工作流引擎功能设计中也充分考虑了流程和环节模型特性、环节行为人群体特性和中国特色,流转过程中基于权限体系提供了人为因素中“主动/被动”异常的解决思路,解决快速实施企业业务流程需求的同时,又提供了人性“非理想”状态下的异常解决方案和防范控制解决方案。
E8.Net工作流平台下产品介绍:
ITIL管理思想执行工具:E8.HelpDesk
ITIL 企业流程管理系统:E8.BPM