1.遺留系統(tǒng)的整合問題
每個(gè)企業(yè)內(nèi)部都有很多遺留系統(tǒng)(Legacy System),但這些遺留系統(tǒng)對(duì)于企業(yè)的運(yùn)營具有非常重要的影響,其中包含了大部分企業(yè)的關(guān)鍵業(yè)務(wù)流程。要重新開發(fā)這些關(guān)鍵系統(tǒng)需要付出很大的人力、財(cái)力成本,因此,充分利用這些關(guān)鍵業(yè)務(wù)系統(tǒng)是毫無疑問的。而企業(yè)內(nèi)部和企業(yè)之間的各種系統(tǒng)可能采取不同的技術(shù)和標(biāo)準(zhǔn)實(shí)施,這些異構(gòu)系統(tǒng)之間需要互相通信,除了技術(shù)上的通信,更重要的是業(yè)務(wù)流程之間的交互。
為了解決異構(gòu)系統(tǒng)之間的通信問題,提出了中間件(mid—d16ntrare)的概念。中間件是位于平臺(tái)(硬件和操作系統(tǒng))和應(yīng)用之間的通用服務(wù)。中間件主要關(guān)心的是數(shù)據(jù)層集成,這就意味著這些系統(tǒng)不提供任何能吸納更高層集成的功能。而企業(yè)之間的應(yīng)用集成應(yīng)該包括技術(shù)層面和流程定義層面,需要各個(gè)業(yè)務(wù)應(yīng)用能夠以相互可以理解的格式和上下文來交換語義層的信息。
2.建模方法的改進(jìn)
傳統(tǒng)的工作流模型將業(yè)務(wù)過程與企業(yè)資源綁定,業(yè)務(wù)模型與組織和資源模型結(jié)合過于緊密,不適應(yīng)企業(yè)的動(dòng)態(tài)變化和發(fā)展的要求;傳統(tǒng)的工作流管理系統(tǒng)一般限于企業(yè)內(nèi)部,對(duì)跨組織的工作流支持不夠。因而需要探討新的能夠靈活、方便、高效地實(shí)現(xiàn)企業(yè)業(yè)務(wù)的工作流技術(shù)手段。
面向服務(wù)體系架構(gòu)(Service-Oriented Architecture,SOA)的思想將企業(yè)應(yīng)用看成是由一些能夠跨越企業(yè)邊界、自我描述、實(shí)現(xiàn)某一特殊功能的服務(wù)集合所構(gòu)成。通過標(biāo)準(zhǔn)化的機(jī)理,能夠?qū)⑦@些服務(wù)注冊(cè)于公共數(shù)據(jù)庫之中,并被感興趣的請(qǐng)求者發(fā)現(xiàn);通過標(biāo)準(zhǔn)化的方法,服務(wù)者和請(qǐng)求者之間能夠進(jìn)行動(dòng)態(tài)綁定和直接交互,實(shí)現(xiàn)一定的企業(yè)功能邏輯。
SOA并不僅僅是一種技術(shù)架構(gòu),雖然服務(wù)需要由技術(shù)組件支持,但是業(yè)務(wù)流程本身比支持它的服務(wù)更重要。SOA的基本原則是:業(yè)務(wù)驅(qū)動(dòng)服務(wù)、服務(wù)驅(qū)動(dòng)技術(shù)。SOA關(guān)注業(yè)務(wù)流程和使用標(biāo)準(zhǔn)接口,為流程開發(fā)或組合應(yīng)用。以服務(wù)組件的方式實(shí)現(xiàn)流程中的任務(wù)或活動(dòng)。使用工作流技術(shù)可把簡(jiǎn)單服務(wù)聚集為更復(fù)雜的服務(wù),服務(wù)可鏈接在一起以執(zhí)行較高級(jí)別的業(yè)務(wù)功能;同時(shí)可以將SOA看作是一個(gè)良好的工作流環(huán)境,基于SOA的工作流技術(shù)可充分利用其松散耦合、位置透明、協(xié)議獨(dú)立等特點(diǎn),解決異構(gòu)性、互操作性等問題,高效地利用或重組企業(yè)現(xiàn)有的應(yīng)用資源,適應(yīng)業(yè)務(wù)和資源動(dòng)態(tài)變化的需求。
3.跨組織業(yè)務(wù)流程的SOA集成
基于SOA集成的優(yōu)點(diǎn)是,它能把各個(gè)應(yīng)用的功能抽象成服務(wù),通過請(qǐng)求/服務(wù)的方式來獲取跨應(yīng)用系統(tǒng)的功能調(diào)用和數(shù)據(jù)獲取。服務(wù)一般只實(shí)現(xiàn)了功能和數(shù)據(jù)的互相集成,而沒有對(duì)整個(gè)業(yè)務(wù)流程支持。但是,就像沒有樂譜和指揮的交響樂團(tuán)不能協(xié)同演奏出動(dòng)聽的音樂那樣,如果不引入業(yè)務(wù)流程管理(Business Process Management,BPM)的技術(shù)來管理企業(yè)內(nèi)部的不同應(yīng)用提供的服務(wù),就不能協(xié)調(diào)這些服務(wù),完成企業(yè)的應(yīng)用集成。
BPM是基于計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)、工作流技術(shù)、企業(yè)應(yīng)用集成和可擴(kuò)展標(biāo)記語言(eXtended Markup Language,XML)技術(shù)等,從業(yè)務(wù)過程的角度對(duì)企業(yè)進(jìn)行全方位的管理,并支持業(yè)務(wù)過程的持續(xù)改進(jìn),其核心思想是為企業(yè)內(nèi)及企業(yè)問的各種業(yè)務(wù)過程提供一個(gè)統(tǒng)一的建模、執(zhí)行和監(jiān)控的環(huán)境。與傳統(tǒng)的應(yīng)用系統(tǒng)不同,BPM以超越功能模塊的方式來保證業(yè)務(wù)跨部門、用戶和組織的邊界運(yùn)行。BPM建立在已經(jīng)從個(gè)人用戶和部門生產(chǎn)力所獲得的價(jià)值上,并把它們擴(kuò)展到一個(gè)組織范圍。
SOA將核心業(yè)務(wù)邏輯和流程控制邏輯分離開采。需要注意的是,這里的核心業(yè)務(wù)邏輯和流程控制邏輯都是由數(shù)據(jù)和動(dòng)能組成,只是組成的方式不同,并不能像數(shù)據(jù)和功能那樣簡(jiǎn)單分開。有時(shí),難以確定業(yè)務(wù)規(guī)則表示核心業(yè)務(wù)邏輯,還是流程邏輯。評(píng)判的標(biāo)準(zhǔn)通常取決于業(yè)務(wù)規(guī)則的復(fù)雜程度。如果是簡(jiǎn)單的業(yè)務(wù)規(guī)則,最好將其歸為流程控制邏輯的一部分,但如果規(guī)則非常復(fù)雜,則應(yīng)劃分為核心業(yè)務(wù)邏輯類型。相關(guān)的核心業(yè)務(wù)邏輯通常構(gòu)成單個(gè)服務(wù)。這些服務(wù)的粒度相對(duì)比較大,采用松耦合(或者相對(duì)獨(dú)立的)方式,不含復(fù)雜接口f但可能封裝非常復(fù)雜的邏輯片段)。特別是表示核心業(yè)務(wù)邏輯的服務(wù)控制自己的事務(wù),不參與由外部控制的、周期可能很長的事務(wù)。鑒于底層事務(wù)的短期性,與表示核心業(yè)務(wù)邏輯的服務(wù)的交互通常是OLTP形式。表示核心業(yè)務(wù)邏輯的服務(wù)可能參與BPM或以流程為中心的服務(wù)編排的復(fù)雜流程。
流程控制邏輯與核心業(yè)務(wù)邏輯不同,很多流程是動(dòng)態(tài)的,經(jīng)常變化,需要與流程參與者進(jìn)行復(fù)雜協(xié)調(diào)。管理流程控制邏輯的服務(wù)(如以流程為中心的服務(wù))一般不包含應(yīng)用程序狀態(tài),但它們包含與流程本身相關(guān)的狀態(tài)。流程狀態(tài)包含的信息有:流程參與者(人員和服務(wù))、參與者的輸入、在流程中的實(shí)際位置以及基本規(guī)則。以流程為中心的服務(wù)高度依賴于其他服務(wù),特別是那些表示核心業(yè)務(wù)邏輯的服務(wù)。它們將核心業(yè)務(wù)服務(wù)整合在一起,協(xié)調(diào)跨越多個(gè)人、多個(gè)重要業(yè)務(wù)實(shí)體、跨地域或者維持較長時(shí)間的復(fù)雜活動(dòng)。
將流程控制的邏輯與核心業(yè)務(wù)邏輯分開。是保持企業(yè)架構(gòu)敏捷性的關(guān)鍵一環(huán)對(duì)于企業(yè)而言,進(jìn)行跨組織流程管理的目標(biāo)是:(1)通過企業(yè)間的信息與流程連接,提高交互效率和柔性;(2)通過跨組織知識(shí)共享,利用豐富的知識(shí)和智力資源,促進(jìn)技術(shù)創(chuàng)新;(3)通過網(wǎng)絡(luò)化的電子市場(chǎng)降低原材料采購成本、交易成本。最終形成具有卓越的價(jià)值傳遞能力的價(jià)值鏈系統(tǒng),提高客戶的滿意度。
企業(yè)間的應(yīng)用集成包括三個(gè)層次:數(shù)據(jù)層集成、應(yīng)用層、業(yè)務(wù)流程層。在SOA體系架構(gòu)中,服務(wù)的粒度和層次取決于實(shí)際需要。服務(wù)可以僅僅是一個(gè)數(shù)據(jù)庫的讀取操作,也可以是一個(gè)業(yè)務(wù)流程的執(zhí)行,比如訂單處理流程。這也正是SOA的靈活和柔性的體現(xiàn)。通過將一個(gè)個(gè)流程封裝成服務(wù),流程之間的調(diào)用就體現(xiàn)為服務(wù)的調(diào)用,從而最大限度的提高已有系統(tǒng)的利用率。根據(jù)流程的復(fù)雜性和重要性,也可以將一個(gè)流程分解成多個(gè)服務(wù),這也是SOA的靈活性的體現(xiàn)。
企業(yè)通過將其業(yè)務(wù)流程按照一定的標(biāo)準(zhǔn)封裝成一個(gè)個(gè)的服務(wù),存儲(chǔ)在服務(wù)庫中,通過Internet對(duì)外公開。合作伙伴通過企業(yè)服務(wù)總線(EntERPrise Service Bus,ESB)調(diào)用已經(jīng)封裝好的服務(wù),而不需要考慮該流程是建立在何種平臺(tái)上,采用什么語言實(shí)現(xiàn),而只需要通過公開服務(wù)庫中提供的服務(wù)接口直接調(diào)用。這種架構(gòu)對(duì)于戰(zhàn)略合作伙伴之間的系統(tǒng)整合非常有效,即使企業(yè)之間采用的操作系統(tǒng)平臺(tái)、商業(yè)軟件完全不兼容。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:企業(yè)基于管理軟件SOA的業(yè)務(wù)流程分析
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/10839312060.html