日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

面向SOA企業(yè)業(yè)務(wù)過程建模的利器 — IT技術(shù)

 digman2005 2008-02-29

—、PowerDesigner12.0

Sybase 公司PowerDesigner上海研發(fā)中心

1.簡介:

激烈的市場競爭要求企業(yè)不斷改善其業(yè)務(wù)過程,努力提高其業(yè)務(wù)流程的靈活性、敏捷性和對(duì)市場變化的響應(yīng)速度。業(yè)務(wù)流程管理(BPM)可以減少企業(yè)的低效之處,幫助企業(yè)主動(dòng)跟上市場的變化步伐。BPM企圖在無秩序的業(yè)務(wù)與技術(shù)的“十字路口”尋找它們之間的聯(lián)系,為了避免這些流程被“寫死”到應(yīng)用程序的代碼結(jié)構(gòu)中的,導(dǎo)致以后無法更改,面向服務(wù)的體系架構(gòu)(Service-oriented architecture,SOA)已經(jīng)成為構(gòu)建企業(yè)級(jí)分布式應(yīng)用程序的首選藍(lán)圖,并成為 BPM 的一個(gè)重要基礎(chǔ)?;凇胺?wù)”的設(shè)計(jì)可以靈活更改流程,而且流程服務(wù)能夠快速組合,從而編排成更大的端到端流程。

BPM將圖形流程建模功能與應(yīng)用開發(fā)相結(jié)合起來,使業(yè)務(wù)分析人員可以通過解析和描述業(yè)務(wù)功能下面的流程,使工作流合理化,并最終優(yōu)化它們,而IT 技術(shù)人員必須讓現(xiàn)有的應(yīng)用集成軟件如EAI等協(xié)調(diào)行動(dòng),使開發(fā)基于流程的應(yīng)用所需的應(yīng)用功能可以實(shí)現(xiàn)跨企業(yè)集成。當(dāng)這個(gè)業(yè)務(wù)設(shè)計(jì)階段完成時(shí),模型送到開發(fā)人員的手中,開發(fā)人員將業(yè)務(wù)流程映射到考慮EAI細(xì)節(jié)的一個(gè)開發(fā)環(huán)境中。這種從業(yè)務(wù)人員到開發(fā)人員的移交過程非常關(guān)鍵。大多數(shù)廠商提供兩種建模器:一種供業(yè)務(wù)分析員使用,另一種供實(shí)際描述應(yīng)用如何開發(fā)和集成的細(xì)節(jié)的IT人員使用,存在的一些問題:

1)業(yè)務(wù)分析人員建立受業(yè)務(wù)規(guī)則制約的模型,而IT必須創(chuàng)建和維持受現(xiàn)有軟件的能力制約的模型。因此,必須建立業(yè)務(wù)過程分析模型與業(yè)務(wù)過程開發(fā)模型的同步關(guān)系

2)服務(wù)通過面向?qū)ο竽P蛠砑右悦枋?。面向服?wù)的業(yè)務(wù)流程建模中活動(dòng)主要由服務(wù)來完成,必須建立業(yè)務(wù)過程模型與面向服務(wù)的對(duì)象模型之間的交互關(guān)系,方便建模過程中的服務(wù)(消息,接口等)選擇。

3)業(yè)務(wù)過程與服務(wù)在企業(yè)動(dòng)態(tài)環(huán)境下(如公司并購等),兩者都會(huì)發(fā)生相應(yīng)的變化,必須提供影響度分析(Impact Analysis), 在各自變更前分析所需要做的修改。

因此,必須提供集成化的建模工具,目前各主要的建模工具廠商如Sybse PowerDesigner, IBM Rational Rose, Computer Associates的ERWin等都在發(fā)展與加強(qiáng)各自建模工具的融合與集成。PowerDesigner經(jīng)過近20年的發(fā)展,已經(jīng)在原有的數(shù)據(jù)建模的基礎(chǔ)上,形成一套完整的集成化企業(yè)級(jí)建模解決方案,融合了幾種標(biāo)準(zhǔn)建模技術(shù):傳統(tǒng)數(shù)據(jù)庫建模、使用 UML 的應(yīng)用程序建模和業(yè)務(wù)流程建模,對(duì)面向SOA的業(yè)務(wù)過程建模提供了從分析到設(shè)計(jì)的全面支持。本文將首先介紹PowerDesigner12.0對(duì)業(yè)務(wù)過程建模提供的基本能力,并通過一個(gè)典型實(shí)例展示其強(qiáng)大地全面建模功能。

2.PowerDesigner12.0對(duì)面向SOA業(yè)務(wù)過程建模地支持

PowerDesigner12.0將業(yè)務(wù)過程建模過程分成分析到開發(fā)兩個(gè)階段,并且在這兩個(gè)階段對(duì)不同的標(biāo)準(zhǔn)如BPMN1.0, ebXML, BPEL4WS等提供了不同的業(yè)務(wù)建模視圖(見表1)。不同階段的業(yè)務(wù)過程模型之間,如業(yè)務(wù)過程分析模型與BPEL4WS的業(yè)務(wù)過程執(zhí)行模型,可以通過“Generate Business Process Model…”進(jìn)行相互生成。(特別需要指出的:當(dāng)目標(biāo)模型已經(jīng)存在,PowerDesigner內(nèi)置的元模型比較與合并機(jī)制進(jìn)行自動(dòng)或交互模型更新)。

表1: 業(yè)務(wù)過程建模類型

PowerDesigner基于UML的面向?qū)ο蠼?OOM),通過類圖(Class),組件圖(Component)及部署圖(Deployment),可以將Web服務(wù)定義為包含Web服務(wù)實(shí)現(xiàn)的組件(Component),如圖1。除了支持將現(xiàn)有的類,轉(zhuǎn)換為相應(yīng)的WebService組件,還可以通過WSDL以及UDDI的反向工程,導(dǎo)入相應(yīng)的Web服務(wù)定義。PowerDesigner支持Java主要Web服務(wù)框架(AXIS, JAXM, JAX-RPC, Web Services for J2EE)以及.Net。

在定義業(yè)務(wù)過程建模過程中,可以通過Service Provider Import/Export將BPM中定義的Web服務(wù)導(dǎo)出到OOM,以此基礎(chǔ)上進(jìn)行Web服務(wù)的實(shí)現(xiàn)設(shè)計(jì),或者將現(xiàn)有的OOM中的Web服務(wù)定義導(dǎo)入BPM,定義相應(yīng)的活動(dòng)調(diào)用方式。兩者具體的映射關(guān)系:

表2: 業(yè)務(wù)過程建模與面向?qū)ο竽P陀成潢P(guān)系

3. 應(yīng)用實(shí)例

3.1業(yè)務(wù)過程需求分析

PowerDesigner的提供了一個(gè)以過程模型為核心的,包括功能模型、信息模型、組織模型和資源模型的企業(yè)建模工具。圖2是典型的客戶訂單處理流程,其創(chuàng)建步驟一般為:

1)首先創(chuàng)建一個(gè)業(yè)務(wù)過程模型。選擇過程語言為“Analysis”,且為“Business Process Diagram”類型的圖。我們將這個(gè)業(yè)務(wù)過程模型命名為“OrderFulfillment BPM(Analysis)”。打開業(yè)務(wù)過程模型的可視化編輯環(huán)境開始新流程的建立。通過拖放工具欄(Palette),來完成建模內(nèi)容的選擇。

2)添加相應(yīng)的開始節(jié)點(diǎn),如Customer submits order,任務(wù)(Process),如“Record order request”, “Check credit card details”, “Check item availabity in stock”等,以及結(jié)束節(jié)點(diǎn),如:“Item unavailable”, “Order complete”等。

3)使用“Flow/Resource Flow”,“Decision”,“Synchronization”來建立任務(wù)之間的邏輯關(guān)系,即業(yè)務(wù)邏輯。如“Credit card details”決策節(jié)點(diǎn)驗(yàn)證不通過,則到達(dá)“Unauthorized amount”狀態(tài)。

4)“Resource”表示了業(yè)務(wù)過程中所設(shè)計(jì)的資源,可以是數(shù)據(jù)庫,文件甚至是企業(yè)的Legacy系統(tǒng)如ERP, CRM等。比如Stock,Bank等。當(dāng)然“Flow/Resource Flow”也可以定義任務(wù)所需的資源。

5)通過“Organization unit swimlane”來表示,各個(gè)任務(wù)所涉及的組織或角色等。如 “Accounting Dpt”,“Sales Dpt”等。

圖2. 業(yè)務(wù)過程分析模型

3.2 BPEL4WS的業(yè)務(wù)過程定義

在進(jìn)行業(yè)務(wù)流程需求分析以后,可以通過“Tools”菜單中的“Generate Business Process Model…”,選擇業(yè)務(wù)流程的執(zhí)行語言如BPEL4WS,PowerDesigner可以根據(jù)業(yè)務(wù)需求分析,生成相應(yīng)的業(yè)務(wù)流程執(zhí)行語言對(duì)應(yīng)的業(yè)務(wù)過程定義。如圖3是在自動(dòng)生成的基礎(chǔ)上,并進(jìn)一步進(jìn)行開發(fā)后的的業(yè)務(wù)流程(限于篇幅展示部分BPM)。

圖3 BPEL4WS 業(yè)務(wù)過程模型

具體的創(chuàng)建步驟一般為:

1)通過Service Provider Wizard(如圖4)建立活動(dòng)的服務(wù)提供者,如“Check Credit Card details”活動(dòng)所需調(diào)用的“BankAccountManagement”的Web服務(wù)。包括Service基本信息,如Target namespace, Prefix等,Service的接口定義,以及服務(wù)相關(guān)的XML Schema定義等。同時(shí)可以通過BPEL4WS預(yù)覽服務(wù)的定義。

圖4. Service Provider定義Wizard

2)通過Message Format Wizard定義業(yè)務(wù)過程相關(guān)的消息。PowerDesigner中Message Format就是WSDL中的Message,定義了活動(dòng)之間的信息交換,由Message Part組成(對(duì)應(yīng)與WSDL的Message中的Part)。如消息“checkCreditCardSoapIn”和“checkCreditCardSoapOut”等。

3)通過Variable Wizard定義變量。通常是流程正確執(zhí)行所需的局部數(shù)據(jù),如流程分支的決策變量“CreditCardVar”等。

4)定義活動(dòng)的服務(wù)調(diào)用方式,圖5給出活動(dòng)“Check credit card details”的服務(wù)定義Wizard。在PowerDesigner支持表3 列出的Web服務(wù)交互方式。

圖5 活動(dòng)的服務(wù)定義Wizard

表3. 活動(dòng)的Web服務(wù)交互方式

5)其他:除了上述的典型步驟,PowerDesigner提供了BPEL4WS的全面支持,包括流程的控制分支(Split/Join),數(shù)據(jù)轉(zhuǎn)換(Data Transformation),Correlation Key,partnerLink等。圖6給出了BPEL4WS業(yè)務(wù)過程模型中以過程模型為中心,信息(服務(wù))模型,資源(消息)模型,以及組織模型的主要內(nèi)容及其關(guān)系。

圖6. BPEL4WS業(yè)務(wù)過程模型中的子模型及其關(guān)系

3.3 Web服務(wù)的對(duì)象模型

在業(yè)務(wù)過程建模過程中,可以通過“Tools”菜單中的“Service Provider Import…”或“Service Provider Export…”將OOM中的Service 定義導(dǎo)入到BPM中,或者將BPM中的Service Provider導(dǎo)入到OOM中。圖7和8是由圖6所示BPM自動(dòng)導(dǎo)出到某個(gè)具體OOM中的類圖,以及組件圖。PowerDesigner支持UML1.3的所有模型從PowerDesigner11.0開始就全面支持UML2.0。開發(fā)人員可以在OOM中進(jìn)行進(jìn)一步的開發(fā),如修改Service的Operation參數(shù),添加Operation等。OOM修改后,在BPM中可以重新導(dǎo)入更新模型中Service定義信息。

特別需要指出的,在具體的建模過程中,通常不是上述所演示的這樣一種瀑布式的開發(fā)方式,而是采用迭代式的開發(fā)方式,即業(yè)務(wù)過程分析,設(shè)計(jì)以及服務(wù)的對(duì)象模型都在增量變化,通過PowerDesigner的元模型比較與合并機(jī)制,可以分析各模型的變化,同步各個(gè)建模的信息。而且也不限于從哪個(gè)模型開始,特別地可能某些企業(yè)應(yīng)用UML模型已經(jīng)存在,可以利用PowerDesigner將其轉(zhuǎn)化為Web 服務(wù),并最終導(dǎo)入與相應(yīng)地業(yè)務(wù)流程集成。

4.總結(jié)

PowerDesigner12.0提供了企業(yè)所需要更集成的建模套件,即集成化企業(yè)級(jí)過程建模工具,將傳統(tǒng)的業(yè)務(wù)分析員使用地BPM圖形流程建模工具,與IT開發(fā)人員的UML建模工具緊密相結(jié)合起來,使業(yè)務(wù)分析人員與IT 技術(shù)人員可以通過解析和描述業(yè)務(wù)功能下面的流程,并與讓現(xiàn)有的應(yīng)用集成環(huán)境如SOA等協(xié)調(diào)行動(dòng)。大大提高了企業(yè)業(yè)務(wù)流程的分析,設(shè)計(jì)與開發(fā)能力,更能夠適應(yīng)業(yè)務(wù)需求的變化,以提高投資回報(bào)率。本文所演示的面向SOA業(yè)務(wù)過程建模能力只是PowerDesigner強(qiáng)大特性的冰山一角。詳細(xì)信息可以閱讀PowerDesigner12.0的BPM的用戶手冊(cè)及其主頁。

參考文獻(xiàn):

1.PowerDesigner 12.0 BPM 用戶手冊(cè)。

2. 什么是業(yè)務(wù)建模http://www./resource/article/43/43803_Business_Process_Modeling.html

3. 一個(gè)現(xiàn)實(shí)中業(yè)務(wù)過程模型

http://dev2dev./techdoc/200410114.html

4. IBMSOA架構(gòu)

http://www-900.ibm.com/cn/software/solution/soa/modeling.shtml

 


[

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多