轉載于:
xstsky的專欄
?
原文地址今天學習了IBM中國軟件開發中心SOA設計中心任志宏先生關于“同IBM合作,構建SOA應用——如何使用IBM SOA相關技術、產品和服務實現一個典型的業務場景”的講座內容,整理其框架如下:
SOA價值
1.???????? 建立集中的企業服務總線,屏蔽具體的服務實現,保持IT系統的柔性;
2.???????? 引入業務規則作為服務實現方式,保證系統靈活性的同時,提高工作效率;
3.???????? 流程自動化,提供實時的流程監控和管理。
服務建模及流程建模
SOMA——IBM用于服務建模和架構設計的方法學,根據此方法學,業務組件、一級業務流程和業務目標是服務建模的三個主要輸入
SOMA的執行:
(一)? 服務發現
步驟:
1.???????? 從一級流程逐步分解,找出各個層次的服務候選者;
2.???????? 分析關鍵業務指標,驗證已有服務候選者以及發現遺漏的服務候選者;
3.???????? 分析現有系統,發現遺漏的服務候選者,并為服務實現提供依據;
服務發現的三個步驟獲得服務候選者的組合以及服務暴露(???)的決定,利用輸入的業務組件將服務候選者分類,為服務規約和服務實現做準備。
(二)? 將新發現的服務發布到Service Registry,在企業范圍內實現統一的服務管理。
(三)? 利用Websphere Business Modeler進行流程建模,從業務流程、組織結構以及關鍵業務指標等方面,對業務流程進行全方位建模。
(四)? 利用Websphere Business Modeler進行模擬,在實現流程之間發現潛在業務瓶頸,并及時進行優化,降低項目實施的風險和成本
服務實現及架構????
?????? 要注意的幾點:
(一)? 從Service Registry中獲取可重用的服務的相關信息,直接應用在本項目中,避免重復開發,降低開發和維護的成本;
(二)? 基于服務規約和現有系統分析,確定服務實現的決策;
(三)? 架構設計:將已有服務、新建服務以及服務中介按照SOA參考構架進行架構設計;
(四)? 人工任務用統一的服務接口定義人工活動,提供重用人工服務的可能性
(五)? 流程服務提供靈活、方便的服務組裝模式,使得企業能夠最大可能地重用現有服務,并快速響應需求的變化
(六)? 業務規則將易變的業務邏輯從代碼中分離出來,便于快速響應業務需求的變化
(七)? 基于Websphere ESB的服務中介能夠拉近服務提供者和請求者的差距,并提供虛擬化服務
(八)? 商業化的適配器以及適配器框架采用標準化的方式解決不同應用之間的聯通性問題,采用保護企業投資的方式解決復雜的集成問題
以服務為中心的開發與集成
通過使用Websphere Integration Developer,從服務模型直接映射到SOA編程模型,實現模型與實現的完美統一。
將流程從Websphere Business Modeler導入到Websphere Integration Developer,自動實現流程服務以及相關的業務對象、接口定義,提高了開發效率,并保證了模型和實現的統一。
在Websphere Integration Developer中實現人工任務,統一的安全機制確保人工服務的權限的控制,客戶端設置支持工作人員通過Web頁面或者手持終端設備等方式參與自動化流程。
在Websphere Integration Developer中實現基于業務規則的服務,將易變的業務邏輯從代碼從代碼剝離成業務規則,從工作效率和質量兩方面使系統可以更加靈活的應對變化。
在Websphere Integration Developer中為服務創建中介,拉近服務提供者與請求者之間的差距,將兩者的具體實現解耦。
通過使用Websphere Integration Developer,在所依賴的服務并未實現的情況下,利用集成測試客戶端獨立測試服務組件,從而實現快速的迭代開發。
服務部署及管理
?????? Websphere Process Server為流程、人工任務、業務規則等服務以及服務中介提供穩定、高效的運行環境。
?????? 完成服務部署后,將新實現的服務狀態設置為可用,使得該服務可以在企業范圍內得到重用。
?????? 基于建模階段定義的業務指標模型和運行環境的業務事件通知,Websphere Business Monitor實時監控業務流程運行情況,并將流程運行情況以關鍵業務指標的形式反饋給Websphere Business Modeler,從而實現一個完整的業務流程優化周期。