出版時(shí)間:2010-10 出版社:電子工業(yè)出版社 作者:胡奇 頁數(shù):342
Tag標(biāo)簽:無
前言
本書作者從2005年即開始在國(guó)內(nèi)最大的企業(yè)應(yīng)用軟件集團(tuán)之一負(fù)責(zé)工作流引擎內(nèi)核及其周邊系統(tǒng)的創(chuàng)造性研發(fā)工作,并因此獲得了2006年度北京市中關(guān)村科技園經(jīng)濟(jì)技術(shù)創(chuàng)新標(biāo)兵等榮譽(yù)?! ‰S著對(duì)工作流管理系統(tǒng)研究開發(fā)和實(shí)踐應(yīng)用的深入,不僅從自主研發(fā)的工作流管理系統(tǒng)中獲得了大量“深入骨髓”的第一手體驗(yàn),而且由于工作原因從多個(gè)國(guó)內(nèi)、國(guó)外的工作流產(chǎn)品中吸取、借鑒了眾多的第一線應(yīng)用實(shí)戰(zhàn)經(jīng)驗(yàn),這不僅涵蓋了多種商業(yè)工作流產(chǎn)品,也包括眾多開源工作流產(chǎn)品?! ∫?yàn)楣ぷ鞯臋C(jī)會(huì),作者曾作為RedHatJBoss產(chǎn)品應(yīng)用架構(gòu)師有幸深入地“解剖”了jBPM系列產(chǎn)品并且為國(guó)內(nèi)多個(gè)jBPM應(yīng)用項(xiàng)目提供咨詢、培訓(xùn)等服務(wù)。作者發(fā)現(xiàn)在許多優(yōu)秀的工作流產(chǎn)品中已經(jīng)實(shí)現(xiàn)了的設(shè)計(jì)、計(jì)劃實(shí)現(xiàn)的創(chuàng)意以及許多讓人忍不住“擊節(jié)叫好”的思想,都已經(jīng)被jBPM系列產(chǎn)品做到了!當(dāng)前,在RedHatJBoss項(xiàng)目組工程師、架構(gòu)師們的不懈努力下,jBPM已經(jīng)發(fā)布了第4個(gè)大版本,最新的jBPM4進(jìn)一步克服了jBPM3的固有缺陷(這在書中會(huì)多次提到),并且更加“變本加厲”地增強(qiáng)和優(yōu)化了jBPM——這個(gè)世界上首屈一指的開源工作流產(chǎn)品的功能。 因此,作者“忍不住”、也“不得不”將jBPM4這個(gè)優(yōu)秀工作流產(chǎn)品的應(yīng)用、開發(fā)技巧以及自己對(duì)工作流技術(shù)的經(jīng)驗(yàn)、體會(huì)編寫成書。從某種程度上來說,本書也是作者多年“工作流職業(yè)生涯”的一個(gè)里程碑和總結(jié)。
內(nèi)容概要
隨著在現(xiàn)代企業(yè)管理中對(duì)于信息化、流程化的深度挖掘,具有業(yè)務(wù)流程管理的技術(shù)和思想已經(jīng)成為致力于全面掌控企業(yè)級(jí)應(yīng)用系統(tǒng)人士“日常生活、居家旅行”的必備素質(zhì)。 本書分兩篇。第一篇介紹工作流管理技術(shù)的概念、起源和發(fā)展歷程,開源工作流選型,以及jBPM——這個(gè)迄今為止最成功的Java開源工作流項(xiàng)目的“前世今生”。此外,本篇還可以幫助讀者快速上手jBPM4、使用jBPM4開發(fā)企業(yè)流程應(yīng)用,包括安裝和配置jBPM4、使用jBPM圖形化流程設(shè)計(jì)器(GPD)設(shè)計(jì)流程、把流程部署到服務(wù)器上去、使用jBPM4 Service API控制流程、掌握jBPM流程定義語言、流程變量、流程腳本。第二篇主要涉及基于jBPM4這個(gè)強(qiáng)大的應(yīng)用程序框架打造屬于自己獨(dú)特業(yè)務(wù)的“企業(yè)流程管理平臺(tái)”,包括jBPM4擴(kuò)展研發(fā)先決條件、深入jPDL和jBPM Service API、升級(jí)jBPM3到j(luò)BPM4、流程虛擬機(jī)原理、jBPM4的設(shè)計(jì)思想、隨需而配jBPM4、異步工作執(zhí)行器、深入jBPM4電子郵件支持、系統(tǒng)日志、jBPM4與Spring框架集成、jBPM4與JBoss應(yīng)用服務(wù)器集成、中國(guó)特色工作流的jBPM實(shí)現(xiàn)。 本書結(jié)構(gòu)條理清晰,實(shí)踐例程與理論思想緊密結(jié)合,翔實(shí)易懂,由淺入深,具有很強(qiáng)的參考性和實(shí)用性。 本書適合所有掌握J(rèn)avaEE(Java企業(yè)級(jí)版本)開發(fā)技術(shù)的人員——無論您是技術(shù)開發(fā)者、項(xiàng)目實(shí)施者、系統(tǒng)架構(gòu)師,還是流程分析師、業(yè)務(wù)方案顧問,本書都適合您。
作者簡(jiǎn)介
畢業(yè)于清華大學(xué)計(jì)算機(jī)軟件專業(yè)。專注于開源、企業(yè)應(yīng)用、互聯(lián)網(wǎng)技術(shù)架構(gòu)研發(fā),以及開發(fā)團(tuán)隊(duì)管理和開發(fā)過程改進(jìn)工作。曾就職于北京用友軟件、美國(guó)TlBCO軟件公司中國(guó)研發(fā)中心等國(guó)內(nèi)外頂級(jí)信息技術(shù)企業(yè)。在工作流(Workflow)、業(yè)務(wù)流程管理(BPM)、企業(yè)應(yīng)用集成(EAI)領(lǐng)域有著5年的研發(fā)和應(yīng)用經(jīng)驗(yàn),并因此獲得北京市中關(guān)村科技園經(jīng)濟(jì)技術(shù)創(chuàng)新標(biāo)兵等榮譽(yù)。同時(shí)對(duì)于開源工作流系統(tǒng)、開源企業(yè)級(jí)報(bào)表等開源解決方案的應(yīng)用有著豐富的咨詢和培訓(xùn)經(jīng)驗(yàn)。
對(duì)iBPM等開源項(xiàng)目在實(shí)際生產(chǎn)系統(tǒng)中的應(yīng)用,以及如何適應(yīng)“具有中國(guó)特色”業(yè)務(wù)需求這樣的問題有著非常獨(dú)到的見解
書籍目錄
第一篇 jBPM工作流開發(fā)基礎(chǔ) 第1章 工作流基礎(chǔ) 1.1 工作流概念 1.1.1 工作流管理思想之于企業(yè)現(xiàn)代化管理 1.1.2 工作流技術(shù)在企業(yè)中的應(yīng)用 1.1.3 如何從一個(gè)開發(fā)者的角度看工作流技術(shù) 1.2 工作流管理系統(tǒng)的發(fā)展歷程 1.2.1 工作流管理系統(tǒng)參考模型 1.2.2 BPM 1.3 開源工作流選型 1.4 jBPM 1.4.1 jBPM前世今生 1.4.2 關(guān)于jBPM4您需要知道的 1.5 小結(jié) 第2章 安裝和配置jBPM4 2.1 jBPM4安裝先決條件 2.2 快速開始吧 2.3 安裝腳本詳解 2.3.1 關(guān)于配置文件 2.3.2 關(guān)于依賴庫 2.4 安裝到JBoss 2.5 安裝到Tomcat 2.6 基于Web的Signavio流程設(shè)計(jì)器 2.6.1 jBPM Web流程設(shè)計(jì)器簡(jiǎn)介 2.6.2 獨(dú)立安裝Signavio 2.6.3 配置Signavio 2.7 用戶自定義jBPM Web應(yīng)用程序 2.8 安裝jBPM數(shù)據(jù)庫 2.8.1 新數(shù)據(jù)庫安裝 2.8.2 升級(jí)舊的數(shù)據(jù)庫 2.9 安裝圖形化流程設(shè)計(jì)器(GPD) 2.9.1 獲取Eclipse 2.9.2 在Eclipse中安裝GPD插件 2.9.3 配置jBPM運(yùn)行環(huán)境 2.9.4 添加jPDL4 Schema校驗(yàn) 2.9.5 導(dǎo)入和使用范例 2.10 例程:jBPM HelloWorld 2.11 小結(jié) 第3章 使用jBPM圖形化流程設(shè)計(jì)器(GPD)設(shè)計(jì)流程 3.1 創(chuàng)建一個(gè)新流程 3.2 編輯流程定義源 3.3 例程:設(shè)計(jì)一個(gè)“復(fù)雜的”業(yè)務(wù)流程 3.4 小結(jié) 第4章 把流程部署到服務(wù)器上去 4.1 部署流程定義和資源文件 4.2 部署流程Java類的3個(gè)方法 4.3 例程:部署業(yè)務(wù)流程定義 4.4 小結(jié) 第5章 使用jBPM4 Service API控制流程 5.1 流程定義、流程實(shí)例和執(zhí)行的概念 5.2 流程引擎API 5.3 利用API部署流程 5.4 通過API刪除已部署的流程 5.5 使用API發(fā)起新的流程實(shí)例 5.5.1 發(fā)起流程實(shí)例的常規(guī)方法 5.5.2 指定業(yè)務(wù)鍵發(fā)起流程實(shí)例 5.5.3 指定變量發(fā)起流程實(shí)例 5.6 喚醒一個(gè)等待狀態(tài)的執(zhí)行 5.7 任務(wù)服務(wù)API 5.8 歷史服務(wù)API 5.9 管理服務(wù)API 5.10 查詢服務(wù)API 5.11 例程:利用jBPM Service API完成流程實(shí)例 5.12 小結(jié) 第6章 掌握jBPM流程定義語言 6.1 process(流程) 6.2 流轉(zhuǎn)控制活動(dòng) 6.2.1 start(開始活動(dòng)) 6.2.2 state(狀態(tài)活動(dòng)) 6.2.3 decision(判斷活動(dòng)) 6.2.4 fork-join(分支聚合活動(dòng)) 6.2.5 end(結(jié)束活動(dòng)) 6.2.6 task(人工任務(wù)活動(dòng)) 6.2.7 sub-process(子流程活動(dòng)) 6.2.8 自定義活動(dòng) 6.3 自動(dòng)活動(dòng) 6.3.1 java(Java程序活動(dòng)) 6.3.2 script(腳本活動(dòng)) 6.3.3 hql(Hibernate查詢語言活動(dòng)) 6.3.4 sql(結(jié)構(gòu)化查詢語言活動(dòng)) 6.3.5 mail(郵件活動(dòng)) 6.4 事件 6.4.1 事件監(jiān)聽 6.4.2 事件傳播 6.4.3 處理異常事件 6.5 異步執(zhí)行 6.5.1 異步活動(dòng) 6.5.2 異步分支聚合 6.6 用戶代碼 6.6.1 用戶代碼的定義 6.6.2 用戶代碼的類加載 6.7 小結(jié) 第7章 流程變量 7.1 變量作用域 7.2 變量類型 7.3 變量的自動(dòng)更新和序列化 7.4 例程:用變量去控制一個(gè)流程的運(yùn)行 7.5 小結(jié) 第8章 流程腳本 8.1 Java統(tǒng)一表達(dá)式語言 8.1.1 語法特點(diǎn) 8.1.2 值和方法表達(dá)式 8.1.3 隱式對(duì)象 8.1.4 運(yùn)算符和保留字 8.1.5 一些經(jīng)典EL表達(dá)式的例子 8.2 例程:用腳本去控制一個(gè)流程的運(yùn)行 8.3 小結(jié)第二篇 定制屬于自己的流程——深入jBPM4擴(kuò)展研發(fā) 第9章 jBPM4擴(kuò)展研發(fā)先決條件 9.1 深入應(yīng)用jBPM4所需要知道的 9.1.1 如果您的業(yè)務(wù)基于復(fù)雜的規(guī)則,在jBPM中加入Drools吧 9.1.2 抉擇,是否使用BPEL 9.2 Maven倉庫和Java依賴庫 9.3 小結(jié) 第10章 深入jPDL和jBPM Service API 10.1 timer(定時(shí)器)能為您做什么 10.1.1 持續(xù)時(shí)間表達(dá)式 10.1.2 工作日歷 10.1.3 定時(shí)轉(zhuǎn)移 10.1.4 定時(shí)事件 10.1.5 工作日歷定時(shí) 10.1.6 定時(shí)重復(fù) 10.2 使用group活動(dòng)編組流程 10.3 如何在活動(dòng)中調(diào)用EJB方法 10.4 使用jms活動(dòng) 10.4.1 模擬JMS服務(wù) 10.4.2 JMS文本消息 10.4.3 JMS Object消息 10.4.4 JMS Map消息 10.5 歷史會(huì)話監(jiān)聽鏈 10.6 自定義Web任務(wù)表單 10.6.1 基本思路 10.6.2 表單格式 10.7 流程實(shí)例的自動(dòng)遷移 10.7.1 簡(jiǎn)單的流程實(shí)例遷移 10.7.2 終止流程實(shí)例運(yùn)行的遷移 10.7.3 應(yīng)用活動(dòng)映射的遷移 10.7.4 自定義遷移處理器 10.8 小結(jié) 第11章 升級(jí)jBPM3到j(luò)BPM4 11.1 你所要知道的升級(jí)局限性 11.2 流程定義轉(zhuǎn)換工具 11.2.1 命令行執(zhí)行 11.2.2 Java編碼執(zhí)行 11.3 jBPM3到j(luò)BPM4的語義變更及翻譯 11.4 小結(jié) 第12章 流程虛擬機(jī)原理 12.1 PVM的架構(gòu) 12.2 PVM的實(shí)現(xiàn) 12.3 小結(jié) 第13章 jBPM4的設(shè)計(jì)思想 13.1 API設(shè)計(jì) 13.1.1 活動(dòng)API 13.1.2 事件監(jiān)聽API 13.2 執(zhí)行環(huán)境設(shè)計(jì) 13.3 命令設(shè)計(jì) 13.4 服務(wù)設(shè)計(jì) 13.5 歷史流程處理原理 13.6 數(shù)據(jù)持久化設(shè)計(jì) 13.6.1 jBPM4流程定義資源和實(shí)例運(yùn)行時(shí)數(shù)據(jù)表 13.6.2 jBPM4流程歷史數(shù)據(jù)表 13.6.3 jBPM4身份認(rèn)證數(shù)據(jù)表 13.6.4 jBPM4引擎屬性數(shù)據(jù)表 13.7 例程:擴(kuò)展jBPM4的API滿足客戶化的需求 13.8 小結(jié) 第14章 隨需而配jBPM4 14.1 配置文件設(shè)計(jì)概要 14.2 配置工作日歷 14.3 配置身份認(rèn)證組件(組織適配器) 14.4 小結(jié) 第15章 異步工作執(zhí)行器 15.1 設(shè)計(jì)原理 15.2 配置使用 15.3 小結(jié) 第16章 深入jBPM4電子郵件支持 16.1 電子郵件的產(chǎn)生 16.2 電子郵件服務(wù)器 16.3 電子郵件擴(kuò)展 16.4 小結(jié) 第17章 系統(tǒng)日志 17.1 配置日志 17.2 日志輸出級(jí)別 17.3 Java Logging API日志 17.4 利用持久化層日志進(jìn)行調(diào)試 17.5 小結(jié) 第18章 jBPM4與Spring框架集成 18.1 集成的目標(biāo) 18.2 為集成配置jBPM4 18.3 為集成配置Spring 18.4 使用 18.5 測(cè)試 18.6 小結(jié) 第19章 jBPM4與JBoss應(yīng)用服務(wù)器集成 19.1 流程定義打包部署 19.2 在JBoss企業(yè)級(jí)編程模型中使用jBPM4 19.3 小結(jié) 第20章 中國(guó)特色工作流的jBPM實(shí)現(xiàn) 20.1 退回 20.2 取回 20.3 會(huì)簽 20.4 委派 20.5 自由流 20.6 小結(jié)附錄A jBPM術(shù)語
章節(jié)摘錄
工作流引擎還提供眾多API供流程的“增值”系統(tǒng)使用,例如流程監(jiān)控系統(tǒng)可以使用工作流引擎提供的API去監(jiān)視流程的執(zhí)行過程、掛起和恢復(fù)流程實(shí)例的運(yùn)行;流程數(shù)據(jù)分析系統(tǒng)可以使用工作流引擎提供的API分析出工作完成的效率、業(yè)務(wù)流程的瓶頸等結(jié)果,以便重組流程、優(yōu)化業(yè)務(wù)。綜上所述,引入工作流技術(shù)對(duì)于技術(shù)開發(fā)來說,有如下好處:降低開發(fā)風(fēng)險(xiǎn)——通過使用諸如活動(dòng)、流轉(zhuǎn)、狀態(tài)、行為這樣的術(shù)語,使得業(yè)務(wù)分析師和開發(fā)人員使用同一種語言交談成為可能。優(yōu)秀的流程設(shè)計(jì)建模工具,甚至能使開發(fā)人員不必將用戶需求轉(zhuǎn)化成詳細(xì)設(shè)計(jì)文檔?! ×鞒虒?shí)現(xiàn)的集中統(tǒng)一——應(yīng)對(duì)業(yè)務(wù)流程經(jīng)常變化的情況,使用工作流技術(shù)的最大好處是使業(yè)務(wù)流程的實(shí)現(xiàn)代碼,不再散落在各式各樣的業(yè)務(wù)系統(tǒng)中。加速開發(fā)——開發(fā)者不用再關(guān)注流程的參與者、活動(dòng)節(jié)點(diǎn)的銜接、流轉(zhuǎn)控制……因?yàn)檫@些工作很多被工作流框架接管了。因而開發(fā)者開發(fā)起來更快、代碼出錯(cuò)更少、系統(tǒng)更加容易維護(hù)。提升對(duì)迭代開發(fā)的支持——如果系統(tǒng)中業(yè)務(wù)流程部分被硬編碼,就不容易更改,需求分析師就會(huì)花費(fèi)很大的精力在開發(fā)前的業(yè)務(wù)分析中,并且希望一次成功。但可悲的是,在任何軟件項(xiàng)目開發(fā)中,這都很少能實(shí)現(xiàn)?! ?/pre>媒體關(guān)注與評(píng)論
iBPM作為歷史最悠久、功能最強(qiáng)大的開源工作流引擎一直擁有著國(guó)內(nèi)外廣泛的使用群體。2005年我在美國(guó)時(shí)因?yàn)榈谝淮卧诖笮推髽I(yè)應(yīng)用中使用了jBPM與Seam技術(shù),還得到了jBPM團(tuán)隊(duì)所在的JBoss公司2006年度世界創(chuàng)新獎(jiǎng)。2007年回國(guó)與本書作者成為同事后,我們一起為國(guó)內(nèi)大量客戶進(jìn)行了有關(guān)工作流引擎的咨詢工作。那時(shí)候本書作者就開始不斷總結(jié)客戶所面對(duì)的問題與需求,并一直想把jBPM真正結(jié)合本土業(yè)務(wù)特色發(fā)揚(yáng)光大。如今本書終于問世,過去一直纏繞著眾多國(guó)內(nèi)程序員的一些如回退、會(huì)簽、自由流等“中國(guó)特色”的問題都通過jBPM4有了明快的解決之道。多年來jBPM工作組與本書作者共同的厚積薄發(fā)恰如其時(shí)地為國(guó)內(nèi)程序員在實(shí)際工作中快速應(yīng)用開源技術(shù)又提供了一個(gè)寶貴的武器?! R越編輯推薦
《jBPM4工作流應(yīng)用開發(fā)指南》封面上的動(dòng)物是一只豹。豹(學(xué)名:Panthera pardus)是屬于貓科豹屬下的一種動(dòng)物,在豹屬的四種大型貓科動(dòng)物(其余三種為獅、虎及美洲豹)中體積最小。肩高約0.9米,體長(zhǎng)約1米,體重50千克,僅尾長(zhǎng)就60厘米。豹的顏色鮮艷,有許多斑點(diǎn)和金黃色的毛皮,故又名金錢豹或花豹?! ”梢哉f是敏捷的獵手,身材矯健,動(dòng)作靈活,奔跑速度快。既會(huì)游泳,又會(huì)爬樹。性情機(jī)敏。嗅覺、聽覺、視覺都很好,智力超常,隱蔽性強(qiáng),這些是老虎和獅子所及不上的,它亦是少數(shù)可適應(yīng)不同環(huán)境的貓科動(dòng)物。長(zhǎng)長(zhǎng)的尾巴在奔跑時(shí)可以幫助豹保持平衡?! ∠Mㄟ^《jBPM4工作流應(yīng)用開發(fā)指南》的介紹,iBPM能像豹一樣快速、敏捷、靈活地幫助您構(gòu)建基于流程的企業(yè)應(yīng)用系統(tǒng)。圖書封面
圖書標(biāo)簽Tags
無評(píng)論、評(píng)分、閱讀與下載
- 還沒讀過(75)
- 勉強(qiáng)可看(546)
- 一般般(931)
- 內(nèi)容豐富(3862)
- 強(qiáng)力推薦(316)
jBPM4工作流應(yīng)用開發(fā)指南 PDF格式下載