1.5.1 Getting to know Activiti (结识Activiti)
The Activiti has a clear origin in the jBPM project of JBoss. The former lead developers of jBPM, Tom Baeyens and Joram Barrez, created a vibrant community around this process engine and they created a process virtual machine sub-project that enabled jBPM to be used for multiple process languages. Only recently jBPM started with the implementation of the BPMN 2.0 specification in addition to the jPDL supported process language.
Activiti明显源自JBoss的jBPM项目。jBPM前首席开发人员Tom Baeyens和Joram Barrez,创建了震动社区的流程引擎。它们也创建了流程虚拟机的子项目,使得就BPM可用来支持多个流程语言。只是在最近,除了支持jPDL流程语言之外,jBPM才开始启动对BPMN 2.0规范的实现。
At that point in time Alfresco was using jBPM in their document management system for the implementation of foremost workflow related functionality. But they were looking for a process engine with a more liberal open source license. Eventually Alfresco decided to create a liberal Apache licensed open source process engine themselves and contacted Tom and Joram. Activiti was born!
那时,Alfresco为了实现首要的工作流相关的功能。在他们的文档管理系统中使用就BPM,但是他们正在寻找更为自由的开源许可流程引擎。最终,Alfresco决定自己建立一个自由的Apache许可开源引擎。他们联系上Tom和Joram。这样,Activiti就诞生了!
The Activiti project started off at a very fast pace and succeeded to do a monthly release of the tool stack until the stable 5.0 release in December 2010. Like the jBPM engine, Activiti has a solid foundation with a process virtual machine. The process virtual machine ensures that Activiti will be future proof for new versions and other process languages. One of the main differences between jBPM and Activiti is that Activiti has been built with a focus on a BPMN 2.0 compliant process engine. So Activiti is a new project, but it’s built with a lot of years of experience from the jBPM project. That makes the foundation of Activiti rock solid and ready for production usage.
Activiti项目大踏步前进,并以每月一个发布的速度发布了工具栈,到2010年12月发布了稳定的5.0版本。和就BPM引擎一样,Activiti具有坚实的流程虚拟机基础。流程虚拟机是新版本和其它流程语言的未来的证明。就BPM和Activiti主要的区别之一是Activiti关注构建BPMN 2.0兼容的流程引擎。所以尽管是一个新的项目,但是构建在jBPM项目积累的多年经验。那样使得Activiti坚若磐石,为生产环境的使用蓄势待发。
Before we are moving to installing the Activiti tool stack, let’s first take a quick look at the components that are part of the suite in figure 1.9.
在我们切换到Activiti工具栈之前,让我们首先来快速浏览图 1.9里的组件。
Figure 1.9 An overview of the Activiti tool stack, with in the center the Activiti process engine and on the right and left side the accompanying modeling, design, monitoring and management tools.
图 1.9 Activiti工具栈的概述,中心是Activiti流程引擎,其左右时建模,设计,监视和管理工具
The center of the Activiti tool stack is of course the process engine we already discussed a bit. But a business process management solution is not ready for primetime with only a good process engine. The surrounding toolset is equally important.
Activiti工具栈的中心当然是流程引擎,我们已经讨论了这一点。但是只有一个良好的流程引擎并不是流程管理方案的黄金岁月。周遭的工具集也同样重要。
With the Activiti modeler, the business and information analyst are capable of modeling a BPMN 2.0 compliant business process in a web browser. This means that business processes can easily be shared; no client software is needed before you can start modeling. The Activiti designer is an Eclipse based tool, which enables a developer to enhance the modeled business process into a BPMN 2.0 process that can be executed on the Activiti process engine.
在Activiti建模器帮助下,业务和信息分析师有能力在浏览器里建立BPMN 2.0业务流程模型。这意味着业务流程能轻易共享。在开始建模之前,客户端软件Activiti设计器是基于Eclipse的工具,让开发人员将建模后的业务流程加强为BPMN 2.0流程。这些流程能够在Activiti引擎上执行。
In addition to the modeling and design tools, Activiti also provides a web based management tool with Activiti probe. In Activiti probe you can get an overview of the deployed processes and event dive into the database tables underneath the Activiti process engine. The Activiti explorer gives users the possibility to interact with the deployed business processes. You can for example get a list of tasks assigned to you by running processes. The explorer additionally provides functionality to claim and finish such a task with flexible task forms where the necessary information about the task assignment can be shown and edited.
除了建模和设计工具之外,Activiti也提供了Activiti Probe这样的基于Web的管理工具。在Activiti Probe,你能得到已部署流程的概况。以及Activiti流程引擎下面支撑的数据库表。Activiti为用户提供了和部署业务流程进行交互的可能性。例如,你能获得由运行流程分配给你的任务列表。Activiti Explorer采用灵活的任务表单,提供了领取任务和完成任务的功能。在任务表单里能够显示和编辑有关任务分配的必要信息。
In addition to the common functionality a business process management suite like Activiti must provide, there’s also Activiti cycle. We discussed the topic of bridging the gap between business and IT quite thoroughly in this chapter. To be able to work in a project team with both business as well as IT people, collaboration tools are vital. Activiti cycle provides such a collaboration tool and enables users to view a business process from a model, design as well as a XML perspective.
像Activiti的业务流程管理套件必须提供的公共功能之外,也提供了Activiti Cycle。本书完整地讨论缩短了业务和IT差距的话题。为了让业务人员和IT人员能项目团队协作,协同工具至关重要。Activiti Cycle提供了这样的协同工具让用户查看业务流程,同时能查看XML视图。
Now that we know a bit more about Activiti let’s get this business process management suite installed on your development machine.
现在我们知道了Activiti,那就让我们在开发机上安装业务流程管理套件吧。