概述
我们所居住的世界正以前所未有的速度在改变,而改变程度之复杂,需要全球的企业充分运用现代科技,才能跟上时代。许多企业在面临激烈竞争、利润缩水、成本节节高升的情况时,提出工作流程自动化与企业再造工程的需求,希望由内部做起,缩短流程作业时间,快速反应市场与客户需求,有效监控工作进度,加强内部信息沟通传递效率,分析流程作业成本与死角,减少不必要的岗位设置,从而有效的降低管理成本,提升企业决策反应能力。将人工操作流程顺利信息化与自动化,已成为许多企业未来兴衰的关键。
随着信息技术的发展,电子商务、网上办公在商业和企业中取得了广泛的应用。但是在很多项目的实施过程中,用户的需求经常是不明确的,软件开发商为了满足用户不断调整的需求,不得不对应用系统底层的编码进行不断的修改,这样就造成了项目实施周期的愈拉愈长,极大影响了项目的实施进度。
TongWorkflow作为一个中间件产品,致力于企业的业务流程自动化解决方案,为企业的业务流程自动化以及企业流程再造提供坚实的基础平台,成为业界领先的企业业务流程自动化的基础平台产品以及企业流程再造的核心产品。有力的简化应用开发的步骤,降低应用开发的难度,提高应用开发的效率及灵活性,节约应用开发的成本,从而极大的提高应用开发的生产力。为企业工作流自动化和企业流程再造提供了一个基础平台,构建在TongWorkflow之上的企业应用系统,将满足上述要求,为您的企业带来新的活力。
TongWorkflow基于目前最流行和被广泛采用的J2EE平台(采用EJB组件技术、JMS消息传递机制)、 遵循国际工作流管理联盟(WfMC)制定的工作流标准, 并对其进行了适当扩展。
体系结构
(图11)TongWorkflow的展开图:
上图中设计工具、控制台、任务列表具有图形化、交互式的用户界面,方便用户使用操作。核心各模块为独立的EJB组件,通过EJB应用服务器相互调用,具有良好的稳定性、扩展性、安全性、分布式事务管理及灵活地业务流程变动功能。通过应用服务器及J2EE提供的各种组件,可方便地集成企业现有系统、中间件和电子商务应用。
产品组成
TongWorkflow的产品组成图:
(图12)
设计工具:
用图形化、拖拉方式描述工作流流程,并用可视化方式编辑流程属性、流程参与者、数据结构和嵌入组件。
工作流引擎:
解析流程模板、流程嵌入组件并执行,同时记录日志。
管理平台:
监控工作流流程的执行过程,并可对工作流流程及流程中的各活动进行干预、控制。
工作列表:
列出当前登录用户的工作任务,由用户执行完成本人的工作任务。
工作流API:
工作流API是指客户调用编程接口,该接口是WfMC规定的各接口的Java实现。
功能介绍
·图形化流程定制
·方便集成用户的组织人员系统
·具有良好的稳定性和可伸缩性
·系统运行过程中可对全系统的工作流进行实时监控,支持对流程实例的日志记录、查询、挂起、恢复、终止、重起、人员替换等功能。
·支持所有目前主流的应用服务器(TongWEB、weblogic、websphere等)和关系型数据库(oracle、db2、sqlserver、sybase、informix)。
·可以方便的集成其它应用软件(如电子邮件、短信平台等)
·实现开放式的编程接口
详细介绍
工作流引擎
工作流引擎架构分层式体系架构,共分为三层:Foundation层、Service层和API层。
·客户端通过编程接口访问工作流引擎,以实现工作流流程实例的创建、启动、控制、查询等。
·工作流引擎通过组织机构映射关系,可将客户系统现有的组织结构和用户数据集成到工作流系统。
·工作流引擎可调用的组件包括 Java Bean、 Remote EJB、 Local EJB、 Jsp、 BSH Script等多种类型。
控制平台
控制平台功能介绍:
·监控运行实例统计
·监控运行实例状态、数据、日志
·过程模板列表、查询
·创建过程实例
·过程实例列表、查询、详情
·过程实例操作(启动、挂起、恢复、终止、重起…)
·活动列表、查询、详情
·活动操作(强制重起、强制停止、执行人员再安排…)
·日志查询
流程相关人员角色及相应权限设定
TongWorkFlow相关人员角色共分为:
·模板责任人: 负责流程需求采集及设计维护流程模板
·实例创建者:具有创建流程实例的权限
·实例管理者:监控、管理流程实例的运行
·任务执行者:执行流程手工类型活动
TongWorkflow在定义具体流程的各类型角色时均可通过三种类型(个人、 角色、 组织)的组合来最终确定, 而且每种类型包括选择定义好的参与人员与通过过程实例数据值来动态指定。
工作流数据
工作流数据是指和业务及流程相关联的数据,用于初始业务组件输入参数和确定活动分支转移条件,TongWorkflow工作流数据分为流程实例数据(Process Instance Data)和活动实例数据(Activity Instance Data):
·通过设计工具可定义流程实例数据(Data Fields), 流程实例数据包括活动、活动集、子流程的输入、输出数据,并通过数据结构(Data Structure)方式进行描述。
·创建流程实例时,输入活动实例数据,在流程实例运行过程中,TongWorkflow给每一个流程实例分配一个实例池,保存流程实例数据。
·在引擎创建活动时,首先, 从流程实例数据池中取出需要的数据,按照模板中定义的流程实例数据与活动实例数据的映射关系,将取出的数据映射为活动数据,并将活动数据存储以供执行和错误恢复时使用。
·执行业务组件时,引擎从活动实例池中取出活动实例数据传递给业务组件,业务组件执行完毕后,将输出的数据写入流程实例池中,修改原有的数据。
事务处理
TongWorkflow基于应用服务器的事务机制,根据具体情况结合使用CMT和BMT方式, 当活动调用服务器端组件时,如果组件抛出AppException异常,工作流将自动回滚整个活动执行的事务,并将该活动和所属流程实例状态设定为InError;对于调用客户端组件活动的事务,由开发人员自己划定事务边界。
异常处理
在TongWorkflow中,异常分为系统级异常和应用级异常,应用级异常为可修复异常,由开发人员控制,当服务器端抛出应用级别异常时(AppException), 系统自动设定调用活动实例和所属流程实例为InError状态,异常原因排除后,可以通过控制平台或API编程调用实现重复执行;当系统级别异常出现时(如数据被破坏),异常为不可修复异常,系统自动设定状态为Abort, 只能删除该实例,不能再重复执行。
网友评论