osworkflow
Diego Adrian Naya Lazo 撰写的OSWorkflow讨论了基于Java的工作流引擎开源OSWorkflow 。 如官方网站上所述:本书涵盖了与OSWorkflow相关的所有方面。 不需要有关OSWorkflow的先验知识。 您将学到所有内容,从业务流程管理(BPM)技术的基础知识以及如何安装OSWorkflow到将工作流引擎与第三方组件(如Drools,Quartz和Pentaho)集成在一起。本书的出版商Packt Publishing还向InfoQ提供了本书第4章的摘录 , 该摘录的标题为“ 在应用程序中使用OSWorkflow” 。
InfoQ与Diego Naya Lazo谈到了本书涵盖的领域以及有关OSWorkflow的一般信息:
InfoQ:我为什么要在应用程序中使用工作流引擎?
Diego Naya Lazo:当今大多数业务应用程序都模仿现实生活中的业务流程。 此过程由活动和这些活动之间的过渡组成。
工作流引擎使开发人员可以对业务流程进行建模,并允许应用程序遵循流程定义的信息流。
InfoQ: OSWorkflow为实施中的应用程序提供哪些功能?
Diego Naya Lazo: OSWorkflow负责处理工作流状态,可能的过渡,条件检查,拆分和合并以及该过程的所有业务约束。
InfoQ:可以在应用程序内部(在工作流服务器和工作流层中)使用OSWorkflow的一些示例是什么?
Diego Naya Lazo:例如JIRA,流行的问题跟踪器使用OSWorkflow作为工作流层。 它将票证转换委托给OSWorkflow。
OSWorkflow作为独立服务器经常在企业环境中找到,在企业环境中CIO希望拥有一个业务流程信息的中央存储库。 此信息提供跨过程分析,适用于数据挖掘和数据仓库。
InfoQ: OSWorkflow如何与Spring,Seam和Struts等应用程序开发框架集成?
Diego Naya Lazo: OSWorkflow与Spring无缝集成,并通过使用事务和Hibernate持久性而受益匪浅。
Struts是OSWorkflow的常见伴侣,但没有内置的集成类,与Seam一样。
InfoQ: OSWorkflow与JBoss Drools或Codehaus Werkflow之类的工具相比如何?
Diego Naya Lazo: OSWorkflow通过业务规则框架(例如JBoss Rules)对业务流程建模进行了补充。 希望Mark Proctor在JBoss Rules 5中的工作将为下一代工作环境中的OSWorkflow用户提供平稳过渡,在该环境中流程,规则和事件是头等公民。 您真的想查看Mark正在进行的工作。
Werkflow是OSWorkflow的替代方法,但缺乏强大的用户基础。 此外,OSW在可伸缩性和性能功能方面得到了证明。
InfoQ:工作流和一系列业务规则之间有什么区别?
Diego Naya Lazo:从严格意义上讲,工作流和规则几乎相同。 工作流是您希望用户遵循一些业务逻辑的一系列步骤。 这种逻辑最好用规则来表示。
因此,工作流通常会在每个步骤中嵌入业务规则。 规则本身可以是嵌套的工作流程。
InfoQ: OSWorkflow如何实现应用程序的可测试性?
Diego Naya Lazo: OSworkflow在设计时就考虑了单元测试,因此测试业务流程相对容易。 它甚至允许临时存储,因此您无需数据库就可以进行测试。
InfoQ: OSWorkflow如何与Esper和Quartz等组件集成?
Diego Naya Lazo: Esper是事件处理引擎,在BPM域中具有用例。 主要是通过使工作流程步骤向引擎发出一些事件,以便它可以处理事件并对事件做出React。 一些工作流程步骤(例如贷款批准)是业务事件。 在上下文中给出的这些事件是与业务相关的信息。
事件处理引擎适用于这些信号的实时处理。 OSWorkflow可以从多个业务流程向引擎发出信号。 然后,引擎将这些事件关联起来,并检测模式并在给定特定业务状况的情况下发出警报,例如同一个人在两个不同国家的贷款。 这是使用CEP引擎进行欺诈检测的典型应用。
另一方面,Quartz使OSWorkflow在特定时间段内成为活动代理,例如每天启动一个新的工作流或触发某些步骤或每两个小时进行一次拆分。
InfoQ:使用Pentaho之类的报告工具可以对应用程序的当前状态进行什么样的可视化?
Diego Naya Lazo: Pentaho是一个出色的报告工具。 与任何数据库结合使用可产生令人难以置信的结果。 OSWorkflow具有简单的关系模型,通过使用Pentaho,您可以创建门户,称为BAM(业务活动监视)门户。 这为想要查看其流程正在发生什么的执行业务用户提供服务。 视觉表示在某些情况下最有效。
有时,简单的表表示形式是最有效的数据可视化。 Pentaho也可以帮助我们解决此案。
InfoQ:您认为OSWorkflow缺少哪些领域,解决这些领域的最佳方法是什么?
Diego Naya Lazo: OSWorkflow可以在文档方面进行改进。 我将非常忙于更新OSWorkflow教程和操作指南。 这就是我的盐,可以帮助这个激动人心的项目。
osworkflow