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,那就讓我們在開發機上安裝業務流程管理套件吧。