自從2008年做SharePoint第一個項目至今,不知不覺已經快7個年頭了;上次聽塗曙光老師的講座,有機會能跟他面對面地溝通(“我是看您的blog長大的”)。剛換了新工作,暫時比較閑,乘着這段時間對以前的咨詢及開發SharePoint項目寫寫Blog做一些總結; 就從聊聊BPM開始。
SharePoint作為最著名和流行的協作平台,BPM是其重要組成部分。企業內部一般都有很多業務流程,統一的BPM(Business Process Management)管理中心或平台是很有必要的;BPM的開發肯定會牽涉到Workflow 的開發,在SharePoint中開發workflow根據我的經驗一般會采用這幾種方式。
1. 無工作流引擎,純代碼開發:這種比較適合流程不是很復雜,客戶對界面有比較強的要求。
2. 使用SharePoint OOTB workflow:一般使用SharePoint designer 來開發,這種比較適合企業內部IT人員跟他們業務部門定制workflow, 用戶比較認同SharePoint的操作界面,業務流程也不是很復雜,當然也可以用InfoPath去設計界面,微軟現已停止對InfoPath的更新,將來應會發布相應的新產品。
3. 使用Workflow foundation/manager :這種情況要使用Visual studio來開發,適合專業的IT人員,流程比較復雜,用戶界面要求高。
4. 第三方的工作流引擎如K2,AgilePoint 和Nintex 等: 這種情況就比較適合大企業,很多的業務流程,流程審批層次很多的BPM管理中心或平台。
SharePoint OOTB workflow 設計:
Visual Studio 設計 workflow :
K2 workflow:
AgilePoint workflow:
Nintex workflow: