<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    網路冷眼@BlogJava

    熙熙攘攘一閑人 以冷靜的眼光觀察技術
    posts - 88, comments - 193, trackbacks - 0, articles - 28
      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

    關于Activiti的常見問題(翻譯)

    Posted on 2010-12-11 20:40 網路冷眼@BlogJava 閱讀(3786) 評論(0)  編輯  收藏 所屬分類: BPM

    Frequently Asked Questions about Activiti

    關于Activiti的常見問題

    Q:  What is BPM?(BPM是什么?)
    Q:  Why are the Business Intelligence (BI) reports so valuable for the business?(為何商業智能(BI)報告對于業務來說如此珍貴?)
    Q:  What does Activiti do for me as a Java developer?(Activiti能為Java 開發者做些什么?)
    Q:  What is The Process Virtual Machine?(流程虛擬機是什么?)
    Q:  What is BPMN 2.0?(何為BPMN 2.0?)
    Q:  Is BPMN 2.0 readable enough for developers?(BPMN 2.0對開發人員來說,可讀性夠嗎?)
    Q:  Why is the first version called 5.0?(為何第一個版本叫 5.0?)
    Q:  Why Apache license?(為何第一個版本叫 5.0?)
    Q:  How can I become a contributor to Activiti?(如何才能成為Activiti的貢獻者?)
    Q:  Which databases does Activiti support?(Activiti支持哪些數據庫?)
    Q:  What is the difference between process concurrency and Java concurrency? (什么是流程并發和Java并發的差別?)
    Q:  Which transaction demarcation technologies can Activiti integrate with? (Activiti能集成哪些事務界定技術?)
    Q:  Where can I find the sources? (在哪里找到源代碼?)
    Q:  Which companies are behind Activiti? (Activiti有哪些幕后的公司?)

    What is BPM?

    BPM是什么?

    BPM stands for Business Process Management.  There are 2 different aspects of BPM: BPM as management discipline and BPM as software engineering.  The BPM vendors have long time tried to make abstraction of those 2 distinct aspects.  That path lead to more confusion then anything else.

    BPM代表業務流程管理。BPM有兩個不同方面:作為管理學科的BPM和作為軟件工程的BPM。BPM供應商長時間來嘗試對這兩個明顯的方面進行抽象。這條道路導致更多的混亂。

    BPM as a management discipline is the responsibility of every strategic executive manager.  It's to ensure that the organization performs well in their core business processes.  This involves understanding what values the organization delivers and how those are achieved.  This means analyzing, documenting and improving the way that people and systems work together.  As part of that work, it's useful to work with models and diagrams.   BPMN diagrams express the execution flow of the steps to accomplish a certain goal.   Important to note that these models are used for people to people communication.  They can be underspecified, which means that they can contain valuable high level information without including unnecessary details.  Such underspecified process models are also known as abstract business processes.

    作為管理學科的BPM是每個策略執行經理的責任。它確保組織在他們核心的業務流程執行更好。這包括組織提供什么樣的價值和那些價值是如何實現的理解。這意味著分析,文檔化和改善人們和系統的合作。作為那個工作的一部分,采用模型和圖表工作是大有裨益的。BPMN流程圖表達了完成某一目標所需步驟的執行流程。它們不能被指定,它意味著它們能包含寶貴的高級信息而不用包括不必要的細節。如此欠指定的流程模型也就是所謂的抽象業務流程。

    BPM as software engineering means that executable business processes will be executed by a BPM System (BPMS).  Executable business processes are based on a diagram that represents the different steps in an execution flow.  The diagram can actually look exactly the same as the abstract business process.  But executable business processes are different in some very fundamental ways.  First of all they need more technical details.  That part is generally accepted.

    作為軟件工程的BPM意味著,可執行的業務流程將被一個BPM系統(BPMS)執行。可執行的業務流程基于在一個執行流程里面表示不同步驟的圖表。這個圖表實際上看起來和抽象業務流程一樣。但是可執行的業務流程在一些非常基礎的方法有所不同。首先它們需要更多的技術細節。那部分通常被接收。

    But what is less understood is that executable processes only take the perspective of a single system, the BPMS.  The BPMS can act as a coordinator, so steps in the process could be for example user tasks.  Then the user task becomes a wait state for the BPMS.  And when the external task is completed, then the BPMS acting as a coordinator should be informed about the completion.   In that context, a BPMS often acts as a state machine.   So it's clear that the BPMS, even as a coordinator, can not handle steps between 2 external parties.  For example, warehouse clerk handing over an order to a packager that wraps the order package.  Imagine none of that is automated, then there is no way of the BPMS to be informed about those steps.  So they can't be modeled distinctly in the executable business process.

    但是很少被理解的是可執行流程只采用了單個系統,BPMS的透視圖。BPMS可能扮演一個協調者的角色,所以例如流程里面的步驟可能是用戶任務。那么用戶任務成為BPMS的等待狀態。當外部任務完成時,作為協調者的BPMS應當接收到有關完成的通知。在那個上下文環境下,BPMS經常扮演一個狀態機。所以,甚至作為一個協調者的BPMS,也不能處理兩個外部當事人之間的步驟。想象一些那些沒有被自動化,那么就沒有方法讓BPMS得到有關那些步驟的通知。所以不能明顯地以可執行業務流程方式對它們建模。

    Another less known difference between abstract and executable business processes is that executable processes are part of the software development lifecycle.  That implies they are under the control of the technical developers and that executable processes need unit testing just like any other piece of software.  

    另外一個鮮有人知的抽象和可執行業務流程之間的差別是可執行流程是軟件開發生命周期的一部分。那暗示它們在技術開發者控制之下并且可執行流程需要正如其它軟件片段那樣的單元測試。

    Traditional BPM vendors try to abstract those differences with automagical round tripping between abstract process models and executable process models.   But in general, that approach fails in practice.  At Activiti, we've developed an innovative vision to deal with these differences.  The Process Cycle Layer will be a cornerstone in this strategy.

    傳統的BPM供應商嘗試抽象那些在抽象流程模型和可執行流程模型之間的迂回的差別。但是,通常來講,那個方法在實踐上是失敗的。在Activiti,我們已經開發一個創新視圖來處理這些差別。流程周期層將是這個策略的基石。

    Back to Top

    Why are the Business Intelligence (BI) reports so valuable for the business?

    為何商業智能(BI)報告對于業務來說如此珍貴?

    Once you have your business processes deployed, Activiti automatically captures everything that happens in the Activiti history DB.  For example, how long does each process instance or activity instance take, who submitted which data and when, in which continent does this sale occur, which order is this process for, which contract was this insurance claim for, and so on.  If you don't turn it off explicitely, all that information stored in the history information.  From that history information, various kinds of reports can be generated.  Those reports show analytics on that data.  Like for example: The average time for each activity in the process,  the amount of sales per region, the percentage of rejected orders, and so on.

    一旦部署業務流程,Activiti自動捕獲在Activiti歷史數據庫中發生的任何事情。例如,流程實例或者活動實例花費多長時間,誰提交數據,合適提交,這個銷售發生在哪個洲,這個流程處理那個訂單,這個保險索賠哪個合同等等。如果你沒有顯示關掉,所有信息保存在歷史信息。來自那些歷史信息,能夠產生不同種類的報告。這些報告顯示那些數據的分析。例如像:流程里面每個活動的平均時間,每個地區的銷售量,拒絕訂單的百分比,等等。

    Because the graphical diagram of the executable business processes has been driven by the business people, it means that the automatically generated analytics also have meaning on a business level.  That is a crucial win for BPM Systems.

    因為可執行業務流程的圖形化圖表是被業務人員驅動的,這意味著自動化產生的分析也在業務水平上具有意義。那是BPM的關鍵勝利。

    Another use case for the history information are audit logs.  Also those come for free when developing your solution based on a business process.  Who filled out what and when gives highly traceable decisions.  The task comments even can give the full context of why certain decisions were taken at the time.

    歷史信息的另外用例是審計日志。當開發基于業務流程上的解決方案時,那也是免費的。誰填充什么和何時給定高級可跟蹤決策。任務注釋甚至能夠給定在那時為什么采取某一決策的全部上下文。

    Back to Top

    What does Activiti do for me as a Java developer?

    Activiti能為Java 開發者做些什么?

    First, you as a developer get business intelligence and audit logs features for free.  And with building your solution on business processes, Activiti will help developers to structure their software better.  Think about user tasks, external systems and timers that need to be managed.  And then try to think how you like your transaction boundaries    of your application.  That puzzle can be a challenge in enterprise applications.  Building that kind of features becomes a lot easier when structuring an application around a business process.  Managing wait states, timers and asynchronous continuations becomes peanuts.   A business process can express that structure a lot more compact then working with the fundamental instruments that the Java platform offers like JDBC and JMS.  And Activiti makes sure that you can easily link in Java or scripting for jobs that are better done in other languages.

    首先,作為開發者,可以免費獲得商業智能(BI)和審計日志。在業務流程之上的構建解決方案的幫助下,Activiti將幫助開發者讓他們的軟件結構更好。考慮關于用戶任務,需要管理外部系統和定時器。然后嘗試考慮應用程序的事務邊界如何。在企業應用程序里,那個難題是一個挑戰。當圍繞業務流程對應用程序進行結構化分解,構建那種特性的軟件成為相當容易的事。管理等待狀態,定時器和異步持續成為小事一樁。業務流程能夠表達結構更緊湊,用Java平臺提供的像JDBC和JMS指令的基礎儀器來工作。并且Activiti確保你能夠輕松地以Java連接或者為作業編寫腳本,這些語言比其它語言做得更好。

    Back to Top

    What is The Process Virtual Machine?

    流程虛擬機是什么?

    The Process Virtual Machine (PVM) is an architecture design pattern for process engines.  The structure of the process definition is separated from the implementation of the different activity types.  And the runtime data structure for process executions is based on a pointer to an activity in the process graph.  Activity types and hence whole process languages become pluggable on that single core engine.

    流程虛擬機(PVM)是一個針對流程引擎的架構模式。流程定義的結果從不同的活動類型實現中分離開來。并且流程執行的運行時數據結構基于一個流程圖數據結構的活動節點上的指針。活動類型因此整個流程語言在單個核心引擎上成為可插拔的。

    In the forseeable future, Activiti will only target BPMN 2.0 as a general purpose process language.   But we anticipate that Activiti will be leveraged to build a lot of limited and dedicated process languages for specific use cases.  For example pageflow that models the navigation between pages in a webapp, or a simple language to script Spring integration services, or orchestrate some Spring batch jobs, and so on.

    在可以預見的未來,Activiti只有一個目標:將BPMN 2.0作為通用的流程語言。但是我們希望Activiti將作為杠桿為特定用例構建許多有限的和專有的流程語言。例如,為webapp頁面之間導航建模的頁面流程,或者針對Spring集成服務進行腳本的簡單語言,或者編排一些Spring批處理的作業,等等。

    Back to Top

    What is BPMN 2.0?

    何為BPMN 2.0?

    The BPM market has longtime been fragmented because there was no concerns us amongst BPM vendors. Several standards and specifications tried to fill that gap in the past, but none gathered enough traction in the industry to become an accepted standard for doing BPM. But luckily, times are changing, and over the past years BPM vendors have sat together to create a standard that unifies the BPM landscape. That standard is called 'BPMN', which stands for 'Business Process Model and Notation', and is developed and maintained by the Object Management Group (OMG) since 2004.

    因為沒有BPM供應商關注我們,所以BPM市場已經長期被割裂。幾個標準和規格試圖填補過去的差距,但沒有足夠的產業聚集在做牽引,以成為一個公認的標準業務流程管理。但幸運的是,時代在變,而且在過去幾年里BPM廠商已經坐在一起,建立一個標準,統一的BPM景觀。那個標準叫做“BPMN”,它代表“業務流程模型和符號”,自從2004年以來,由對象管理組(OMG)開發和維護。

    The first version of the BPMN specification (versions 1.x, first version released in 2004) focussed on graphical notation only, and became quickly popular within the business analyst audience. This means that the BPMN 1.x specification defines how concepts such as a human task, an executable script, automated decisions, etc. are visualized in a vendor-neutral standardized way. The second version (2.0), extends that focus to include execution semantics and a common exchange format. This means that BPMN 2.0 process definition models are not only exchangeable between graphical editors, but those models can also be executed as-is on any BPMN 2.0 compliant engine such as Activiti.

    BPMN規范的第一個版本(版本1.x,第一個版本在2004年發布)只關注圖形符號,并在業務流程觀眾之間迅速流行。這意味著BPMN 1.x規范定義諸如人力任務,可執行腳本,自動化決策等等是如何的概念,并以一個供應商中立的標準的方式開可視化。第二個版本(2.0),擴展了該重點包括執行語義和共同交換格式。這意味著BPMN 2.0流程定義模型不僅在圖像編輯器之間是可交換的,而且那些模型也能夠在任何BPMN 2.0兼容的引擎里面得到執行,比如Activiti。

    It's easy to understand that the future of BPM is BPMN 2.0. And we at Activiti are very happy to bring you that future, today.

    BPM的未來是2.0是易于理解的。并且今天,作為Activiti團隊的我們將榮幸地將你帶到未來。

    Back to Top

    Is BPMN 2.0 readable enough for developers?

    BPMN 2.0對開發人員來說,可讀性夠嗎?

    The Process Virtual Machine allows the Activiti Engine to support multiple process languages natively. Which language that the developers will choose is hard to predict at this time. In fact, developers will use different process languages depending on their needs. We'll go through great efforts to make BPMN 2.0 as developer friendly as possible. For example with the principle of BPMN shortcuts. We'll also include Java event listeners and Spring support into BPMN 2.0 so that your Spring beans can be accessed from any expressions.

    流程虛擬機允許Activiti引擎內置支持多個流程語言。開發人員將選擇哪種語言這是還很難預測。事實上,開發人員將依賴它們不同的需求使用不同的流程語言。我們將通過巨大的努力讓BPMN 2.0 對開發人員盡可能友好。例如,采用BPMN捷徑( BPMN shortcuts)的原則。我們也將包括Java事件監聽器和包括把Spring支持集成到BPMN 2.0,以便從任何表達式訪問Spring bean。

    Back to Top

    Activiti or jBPM, which should I use in my next project?

    在我的下一個項目中使用哪個:是Activiti還是jBPM?

    Activiti builds further on the huge experience that we build up from founding jBPM till the Process Virtual Machine design in jBPM 4.  In Activiti we now have united very skilled and talented people and companies to build the next generation BPM technology.  BPMN 2.0 will be the future of BPM and we have the know-how to bring these features in a developer friendly manner.  Activiti's dedicated focus on BPMN 2.0 enables us to deliver a future proof BPM and workflow solution.

    Activiti進一步建立龐大的建設經驗,這個經驗自從在jBPM 4里的流程虛擬機設計時就開始構建。在Activiti我們現在已經具備非常熟練和團結的人才和公司來建立下一代BPM技術。 BPMN的2.0將BPM的未來,我們有知識,使開發人員友好的方式處理這些功能。 Activiti對BPMN的2.0專一的關注使我們能夠提供面向未來的BPM和工作流程解決方案。

    Given that we spend a lot of effort building jBPM 4 and that we were very proud of the results, we regret that a jBPM 4 is discontinued as indicated by JBoss

    鑒于在構建jBPM 4時,我們做出了極大的努力并且我們以這個結果為榮,我們很遺憾JBoss指示終止就jBPM 4。

    https://community.jboss.org/blogs/mark.little/2010/04/23/the-future-of-workflow-in-jboss
    "It is fair to say that there was expectation that jBPM 4 would appear in a version of the SOA Platform as a replacement for jBPM 3. With the changes to the jBPM project team and the next steps in unifying our efforts in this area across projects, it is not going to happen."

    “公平地說,有期望jBPM 4 將作為就BPM3 的替代,出現在SOA平臺的一個版本。隨著向jBPM項目團隊的變化和統一我們在這方面的努力在項目間的下一步驟,它是不會發生的。”

    Activiti will not suffer from a single company vulnerability.  We're extremely happy that Alfresco gave us the opportunity to develop Activiti with an intend to make it an Apache project.  Core at the Apache foundation's value is the continuity of projects and guaranteeing that it stays true the community.  So one of the requirements is that multiple companies have to be actively involved in the community of a project.   From the start, SpringSource is joining this initiative so we are well on our way to ensure Activiti will have a long life that is not under the full control of a single person or company.

    Activiti不會遭遇到單個公司的漏洞。我們非常高興的是,Alfresco公司使我們有機會開發Activiti并打算使其成為Apache項目。在Apache基金會的價值的核心是項目的連續性,保證它真正停留社區。所以其中的一個需求是公司介入到項目的社區中來。從一開始,SpringSource以我們的方式加入這一倡議,使我們有充分的保證Activiti將有長時間不會在在單個人士或公司的完全控制之下。

    Back to Top

    Why is the first version called 5.0?

    為何第一個版本叫 5.0?

    That's to indicate that we're not building experimental stuff here.  We continue to build on our experience that we gained developing the jBPM versions 1 to 4.  We use that knowledge as a base line and work with the community to build the next generation BPM solution.

    那就是指明我們不是在生產實驗性的玩具。我們是在我們在開發jBPM 版本1 到4 時積累的經驗之上繼續構建。我們使用那些知識作為基線,并和社區一道打造下一代的BPM解決方案。

    Back to Top

    Why Apache license?

    為何采用Apache 許可方式?

    Activiti is licensed under the Apache License 2.0 to encourage widespread usage and adoption of the Activiti BPM engine and BPMN 2.0. By choosing such a liberal licence, we want to emphasize our goal of commoditizing BPM technology.

    Activiti采用Apache License 2.0方式授權許可,以鼓勵廣泛的使用和采用Activiti BPM引擎和BPMN 2.0。通過選擇如此自由的許可,我們希望強調BPM技術的商品化目標。

    Back to Top

    How can I become a contributor to Activiti?

    我如何才能成為Activiti的貢獻者?

    See wiki page How to become a contributor?.

    參見wiki頁面如何成為一個貢獻者?

    Back to Top

    Which databases does Activiti support?

    Activiti支持哪些數據庫?

    In this first alpha release, we only support H2. Before the 5.0.GA release we will include support for at least:

    在首個alpha版本,我們只支持H2。在5.0版本發布之前,我們將至少支持:

    · H2

    · Oracle

    · MySQL

    · PostgreSQL

    Subsequent database compatibility will be driven by demand.

    后續的數據庫兼容性將由需求驅動。

    Back to Top

    What is the difference between process concurrency and Java concurrency?

    什么是流程并發和Java并發的差別?

    The Activiti Engine uses the database for synchronization. A process is executed in transactional steps. Each step is calculated with a single thread. Which is logical since calculations that need to happen between two wait states is typically minimal and hence typically it is not an optimisation to calculate different paths in concurrent threads. Access to a DB connection has to be synchronized anyway.

    Activiti為了同步使用數據庫。流程在事務步驟里面執行。每步采用單個線程來計算。這是符合邏輯的,因為在連個等待狀態之間需要發生的計算典型地市最小。并且由此典型地,在并發線程里面計算不同的路徑不是最優的。對數據庫連接的訪問無論如何都必須同步。

    By default, Activiti Engine uses the thread of the client to perform it's work. That is the easiest to embed it into other software. In the future we envision configurations that allow for asynchronous execution of the service methods. The current architecture would allow that very easily.

    缺省地,Activiti引擎使用客戶線程來完成它的工作。那時最容易將它嵌入到其它軟件當中。在未來,我們設想允許服務方法的異步執行的配置。當前的架構非常容易地將允許這樣的方式。

    Processes include activities that need to wait for an external trigger. Activiti Engine will never block a thread in those situations. That is when the execution state is persisted and then the transaction commits. If you look at the database and you imagine that all calculations to execute the process happen instantly, then it's often easier to envision the logic of Activiti Engine.

    流程包括需要等待一個外部觸發器的活動。Activiti引擎將從不阻礙它們環境下的線程。那就是當執行狀態持久化時,那么事務才提交。如果你查看數據庫,你想象得到執行流程的計算立即發生,那么設想Activiti引擎的邏輯是通常是比較容易的方式。

    The behavior of Activiti Engine to calculate possibly multiple steps in a process until a wait state is reached is the default behavior. Asynchronous continuations will be introduced to allow for a more fine grained demarcation of transactions for those situations where it is needed.

    Activiti引擎的計算行為在多個步驟可能是一個等待狀態到達流程的多個步驟,它是一個缺省行為。為了它們所需的狀態的地方,將引入異步持續允許更細粒度的事務界定。

    Back to Top

    Which transaction demarcation technologies can Activiti integrate with?

    Activiti能集成哪些事務界定技術?

    Activiti integrates with:

    Activiti能集成:

    · Standalone JDBC

    · Spring (alpha 2)

    · JTA (alpha 3)

    Back to Top

    Where can I find the sources?

    在哪里尋找源代碼?

    See the Community

    參見

    Back to Top

    Which companies are behind Activiti?

    Activiti有哪些幕后的公司?

    See the Team page See the Team page

    參見團隊頁面

    Back to Top

    主站蜘蛛池模板: h视频在线免费观看| 亚洲AV无码一区二区三区电影| 国产精品免费观看视频| 四虎永久免费影院| 亚洲av色香蕉一区二区三区蜜桃| 人禽杂交18禁网站免费| 国产成人亚洲合集青青草原精品| 69影院毛片免费观看视频在线| 亚洲精品动漫在线| 国产在线a免费观看| 亚洲人成电影网站免费| 国产伦精品一区二区三区免费迷| 特级毛片A级毛片100免费播放| 亚洲色婷婷综合开心网| 大地资源在线资源免费观看 | 好紧我太爽了视频免费国产 | 亚洲AV之男人的天堂| 国产精品成人69XXX免费视频| 亚洲精品高清国产一线久久| 免费国产黄网站在线观看可以下载| 亚洲精品国产免费| 午夜小视频免费观看| 一区二区三区在线免费| 亚洲AV中文无码字幕色三| www视频在线观看免费| 亚洲国产欧美日韩精品一区二区三区| 国产免费私拍一区二区三区| 精品一区二区三区高清免费观看| 亚洲AV无码精品色午夜果冻不卡| 男女超爽刺激视频免费播放| 国产天堂亚洲精品| 久久夜色精品国产嚕嚕亚洲av| 青青草免费在线视频| 一级毛片免费在线| 亚洲黄网在线观看| 免费A级毛片在线播放不收费| a级毛片毛片免费观看永久| 亚洲国产精品综合久久20| 亚洲精品色婷婷在线影院| 精品女同一区二区三区免费站| 日韩一级片免费观看|