0 引言
目前,國內(nèi)外在實(shí)施企業(yè)資源計(jì)劃(EntERPrise Resource Planning,ERP)系統(tǒng)中面臨著實(shí)施費(fèi)用高、周期長、成功率低等問題,原因不全在實(shí)施企業(yè)一方,也在ERP系統(tǒng)的構(gòu)造方,因此應(yīng)在這方面加以研究。
現(xiàn)有ERP系統(tǒng)的設(shè)計(jì),實(shí)際上采用的是一種基于功能分解的系統(tǒng)構(gòu)造方式,將經(jīng)過實(shí)踐檢驗(yàn)的“最佳業(yè)務(wù)”解決方案固化在ERP軟件模塊中。但現(xiàn)有的絕大多數(shù)ERP軟件剛性太強(qiáng),不能滿足業(yè)務(wù)過程持續(xù)改進(jìn)的需要。為此,一些國內(nèi)外ERP廠商和研究人員從多個(gè)方面進(jìn)行了積極的探索。如國際著名的ERP軟件廠商BaaN提出了動(dòng)態(tài)企業(yè)建模(Dynamic Enterprise Modelling,DEM)方法,其基本思想就是通過提供一套層次化的、可相互關(guān)聯(lián)(通過一定的規(guī)則)的企業(yè)建模工具,在現(xiàn)有的企業(yè)參考模型(如業(yè)務(wù)功能模型、業(yè)務(wù)過程模型、業(yè)務(wù)機(jī)構(gòu)模型等)的基礎(chǔ)上進(jìn)行定制和細(xì)化,并映射到功能廣泛的BaaN ERP應(yīng)用模塊上,由此獲得可執(zhí)行可定制的ERP系統(tǒng)。利用DEM,可大大減少ERP系統(tǒng)構(gòu)建的復(fù)雜性,并能在一定程度上增加ERP系統(tǒng)的柔性。但是,該方法只能允許對(duì)已有業(yè)務(wù)過程進(jìn)行微調(diào),仍然不能滿足企業(yè)業(yè)務(wù)過程持續(xù)改進(jìn)的需要。
國內(nèi)的某些ERP軟件廠商(如金蝶和用友)推出了自主版權(quán)的ERP應(yīng)用平臺(tái)。該平臺(tái)在應(yīng)用軟件層與應(yīng)用服務(wù)器平臺(tái)層之間提供了一個(gè)業(yè)務(wù)基礎(chǔ)軟件平臺(tái)層,并采用模型驅(qū)動(dòng)體系結(jié)構(gòu)(Mode Driven Architecture,MDA)的設(shè)計(jì)思想,提升了ERP系統(tǒng)構(gòu)建的抽象層次,實(shí)現(xiàn)了ERP系統(tǒng)的快速構(gòu)建。另外,由于采用了組件技術(shù),在很大程度上提升了系統(tǒng)的可演化性,使ERP系統(tǒng)能夠伴隨企業(yè)的成長而不斷演化。一種基于版本批量定制的ERP產(chǎn)品及實(shí)施服務(wù)的新構(gòu)想。ERP系統(tǒng)實(shí)質(zhì)上是一個(gè)嵌入式的工作流系統(tǒng),業(yè)務(wù)過程中蘊(yùn)涵的各業(yè)務(wù)活動(dòng)及業(yè)務(wù)規(guī)則固化在ERP應(yīng)用模塊中,可以通過分離流程邏輯與功能實(shí)現(xiàn),極大地增強(qiáng)ERP系統(tǒng)的柔性。SAP R/3的業(yè)務(wù)藍(lán)圖只是對(duì)現(xiàn)有的ERP產(chǎn)品中固化的業(yè)務(wù)過程的文檔進(jìn)行說明。IBM在舊金山項(xiàng)目中開發(fā)了一個(gè)用于輔助開發(fā)人員快速創(chuàng)建企業(yè)應(yīng)用的層次化的框架體系結(jié)構(gòu)。從現(xiàn)有的文獻(xiàn)來看,雖然對(duì)基于組件的開發(fā)(Component Based Development,CBD)方法學(xué)及業(yè)務(wù)過程建模方法的研究較多,但從業(yè)務(wù)過程的角度探討如何獲取業(yè)務(wù)組件,進(jìn)而驅(qū)動(dòng)基于組件裝配方式的ERP系統(tǒng)構(gòu)造方面的研究卻不多見。
隨著現(xiàn)代企業(yè)對(duì)業(yè)務(wù)過程管理的重視,以及客戶要求對(duì)訂單執(zhí)行等業(yè)務(wù)過程的了解日益增強(qiáng),ERP系統(tǒng)的設(shè)計(jì)視角也應(yīng)該轉(zhuǎn)移到以業(yè)務(wù)過程為中心,探索并實(shí)施業(yè)務(wù)過程驅(qū)動(dòng)的系統(tǒng)設(shè)計(jì)方法。采用業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)設(shè)計(jì),使軟件結(jié)構(gòu)反映業(yè)務(wù)過程,有利于增強(qiáng)ERP系統(tǒng)的業(yè)務(wù)柔性。結(jié)合對(duì)象組件技術(shù),對(duì)支持業(yè)務(wù)過程的相關(guān)業(yè)務(wù)類組件化,可進(jìn)一步提高ERP系統(tǒng)的柔性及可演化性。這將在很大程度上克服現(xiàn)有ERP系統(tǒng)普遍存在的剛性太強(qiáng)的缺陷。
1 業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)組件化內(nèi)涵
業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)組件化的內(nèi)涵是:打破傳統(tǒng)的基于功能分解的系統(tǒng)構(gòu)造方法,以共性的企業(yè)業(yè)務(wù)過程為中心和出發(fā)點(diǎn),對(duì)企業(yè)經(jīng)營的業(yè)務(wù)過程進(jìn)行抽象,通過層次化分解組成業(yè)務(wù)的各個(gè)子任務(wù),直到能夠充分地描述各個(gè)子任務(wù)。在業(yè)務(wù)過程分解的每一層次,根據(jù)組成業(yè)務(wù)過程的每個(gè)任務(wù),分析并補(bǔ)充支持任務(wù)實(shí)現(xiàn)的各個(gè)業(yè)務(wù)對(duì)象類,并在后續(xù)的各個(gè)層次逐步細(xì)化設(shè)計(jì),直到可根據(jù)現(xiàn)有的組件模型方便地組件化該層次的對(duì)象類。在分解業(yè)務(wù)過程的基礎(chǔ)上,對(duì)組成模型的業(yè)務(wù)對(duì)象按照某種組件模型進(jìn)行組件化。在組件組裝平臺(tái)工具的支持下,參照業(yè)務(wù)過程分解階段獲取的業(yè)務(wù)過程模型,以組件組裝的方式創(chuàng)建可運(yùn)行的ERP系統(tǒng)。
業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)組件化的最大特點(diǎn)是以業(yè)務(wù)過程為重點(diǎn),并以此驅(qū)動(dòng)ERP系統(tǒng)的需求獲取、系統(tǒng)設(shè)計(jì)與構(gòu)造。業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)組件化包括三個(gè)方面:①業(yè)務(wù)過程驅(qū)動(dòng)的業(yè)務(wù)過程建模;②獲取基于某種主流組件模型的業(yè)務(wù)組件;③基于業(yè)務(wù)過程模型構(gòu)建組件化的ERP系統(tǒng)。
2 業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)業(yè)務(wù)過程建模
2.1 基本概念
定義1 業(yè)務(wù)功能:指從企業(yè)整體角度對(duì)所從事的經(jīng)營活動(dòng)的功能描述,闡述企業(yè)必須做什么(what)。同一類型的企業(yè)業(yè)務(wù)功能相似,且具有穩(wěn)定性。如制造企業(yè)的業(yè)務(wù)功能包括采購、銷售、制造、人力資源管理、財(cái)務(wù)管理等。
定義2 業(yè)務(wù)過程:指企業(yè)為了實(shí)現(xiàn)特定業(yè)務(wù)功能,需要組織一系列串行或并行的任務(wù),每一項(xiàng)任務(wù)實(shí)現(xiàn)一項(xiàng)子功能,并為每個(gè)任務(wù)分配必須的資源。資源可以是時(shí)間、場(chǎng)所、部門、人員、資金等。業(yè)務(wù)過程闡述如何做(how)。如為了完成采購業(yè)務(wù)功能,可以把采購分解為采購需求獲取、選擇供應(yīng)商、制定并發(fā)出采購訂單、采購過程控制、采購貨物接收、發(fā)票處理等任務(wù)。
定義3 業(yè)務(wù)事件:指驅(qū)動(dòng)任務(wù)執(zhí)行的激勵(lì)。業(yè)務(wù)事件分為外部事件和內(nèi)部事件兩種,內(nèi)部事件指由被建模的信息系統(tǒng)在執(zhí)行過程中產(chǎn)生的事件;外部事件指系統(tǒng)外部產(chǎn)生的事件。例如,“采購貨物到達(dá)”是外部事件,而“貨物接收處理已完成”是內(nèi)部事件。業(yè)務(wù)事件驅(qū)動(dòng)業(yè)務(wù)任務(wù)的執(zhí)行,任務(wù)執(zhí)行過程中會(huì)產(chǎn)生新的業(yè)務(wù)事件。因此,業(yè)務(wù)過程的執(zhí)行表現(xiàn)為事件和任務(wù)相交錯(cuò)的串行或并行的序列。
2.2 業(yè)務(wù)過程驅(qū)動(dòng)的業(yè)務(wù)過程建模
業(yè)務(wù)過程驅(qū)動(dòng)的業(yè)務(wù)過程建模,解決的是在業(yè)務(wù)層面上的建模問題,所建立的業(yè)務(wù)過程模型與具體平臺(tái)技術(shù)實(shí)現(xiàn)無關(guān)。業(yè)務(wù)過程驅(qū)動(dòng)的業(yè)務(wù)過程建模提供了一種獲取ERP系統(tǒng)各類業(yè)務(wù)組件的自然的方法,業(yè)務(wù)過程模型是以業(yè)務(wù)過程視角構(gòu)建組件化ERP系統(tǒng)的前提和基礎(chǔ)。
2.2.1 業(yè)務(wù)過程驅(qū)動(dòng)的業(yè)務(wù)過程建模層次與內(nèi)容
企業(yè)的經(jīng)營戰(zhàn)略與經(jīng)營目標(biāo)最終由一系列具體的業(yè)務(wù)過程來體現(xiàn)。業(yè)務(wù)過程建模是實(shí)現(xiàn)有效地對(duì)業(yè)務(wù)過程管理與過程優(yōu)化的前提和基礎(chǔ)。業(yè)務(wù)過程驅(qū)動(dòng)的業(yè)務(wù)過程建模包括三個(gè)層次,即業(yè)務(wù)功能層、業(yè)務(wù)過程層和業(yè)務(wù)任務(wù)層。
(1)業(yè)務(wù)功能層 從企業(yè)戰(zhàn)略的層次,對(duì)企業(yè)應(yīng)該做什么(what)的概括。企業(yè)必須在綜合考慮企業(yè)的經(jīng)營類型、特點(diǎn)、外部環(huán)境、發(fā)展戰(zhàn)略的基礎(chǔ)上,識(shí)別業(yè)務(wù)范圍、功能,并確定其重要程度。
(2)業(yè)務(wù)過程層 從業(yè)務(wù)過程的層次,解決企業(yè)怎樣做(how)的問題。業(yè)務(wù)功能最終由一系列的任務(wù)實(shí)現(xiàn),任務(wù)執(zhí)行產(chǎn)生事件,事件觸發(fā)任務(wù)的執(zhí)行。任務(wù)與相關(guān)的業(yè)務(wù)對(duì)象關(guān)聯(lián),任務(wù)的執(zhí)行涉及資源的分配。因此,業(yè)務(wù)過程建模包括對(duì)任務(wù)、與任務(wù)相關(guān)的業(yè)務(wù)對(duì)象、業(yè)務(wù)事件、以及與任務(wù)相關(guān)資源的建模。
(3)業(yè)務(wù)任務(wù)層 從組成業(yè)務(wù)過程的具體任務(wù)的層次,解決針對(duì)具體任務(wù)的執(zhí)行內(nèi)容(do)的問題。
2.2.2 業(yè)務(wù)過程驅(qū)動(dòng)的業(yè)務(wù)過程模型
常見的業(yè)務(wù)過程建模方法有Petri-Net,F(xiàn)lowChart,EPC,UML等。對(duì)業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)組件化而言,理想的建模方法應(yīng)該既能闡述業(yè)務(wù)過程本身,又能支持與特定業(yè)務(wù)過程中各個(gè)任務(wù)相關(guān)聯(lián)的業(yè)務(wù)對(duì)象及資源分配,而且也要有利于向業(yè)務(wù)對(duì)象類的組件化平滑過渡?梢,現(xiàn)有的Petri-Net,F(xiàn)low Chart,EPC建模方法不能滿足業(yè)務(wù)驅(qū)動(dòng)的ERP系統(tǒng)組件化建模的需要。UML作為一種可擴(kuò)充的建模語言,可用于系統(tǒng)的靜態(tài)、動(dòng)態(tài)建模。UML和EPC在業(yè)務(wù)過程建模方面各自的優(yōu)勢(shì)與不足,以現(xiàn)有的EPC建模方法為基礎(chǔ),引入了面向?qū)ο蠼V械念、?duì)象、繼承、封裝、消息等概念,以解決業(yè)務(wù)過程的建模問題。在現(xiàn)有研究工作的基礎(chǔ)上,本文提出與業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)組件化相適應(yīng)的建模方法元模型,如圖1所示。
圖1 業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)組件化建模方法元模型
該模型所表達(dá)的語義簡(jiǎn)要解釋如下:
業(yè)務(wù)功能由執(zhí)行具體的業(yè)務(wù)過程來實(shí)現(xiàn),一項(xiàng)業(yè)務(wù)功能可與多個(gè)業(yè)務(wù)過程相關(guān)聯(lián),一個(gè)業(yè)務(wù)過程也可參與并支持多項(xiàng)業(yè)務(wù)功能。業(yè)務(wù)對(duì)象對(duì)業(yè)務(wù)功能的實(shí)現(xiàn)提供支持。業(yè)務(wù)過程可以分解為多個(gè)業(yè)務(wù)任務(wù),業(yè)務(wù)過程由外部業(yè)務(wù)事件觸發(fā)。一個(gè)業(yè)務(wù)任務(wù)可以是復(fù)合任務(wù),也可以是原子任務(wù)。原子任務(wù)是可以直接執(zhí)行,不需再分的業(yè)務(wù)活動(dòng);復(fù)合任務(wù)是可進(jìn)一步分解的業(yè)務(wù)任務(wù),它通過提升任務(wù)的粒度簡(jiǎn)化對(duì)任務(wù)的管理。業(yè)務(wù)任務(wù)在執(zhí)行過程中會(huì)產(chǎn)生多個(gè)業(yè)務(wù)事件,業(yè)務(wù)事件會(huì)觸發(fā)新的業(yè)務(wù)任務(wù)的執(zhí)行。業(yè)務(wù)事件觸發(fā)業(yè)務(wù)任務(wù)的執(zhí)行是通過觸發(fā)規(guī)則決定的,觸發(fā)規(guī)則決定了新業(yè)務(wù)任務(wù)的執(zhí)行應(yīng)滿足的條件及執(zhí)行方式(如并行執(zhí)行、執(zhí)行多條任務(wù)分支中的一支等)。業(yè)務(wù)任務(wù)由執(zhí)行代理來執(zhí)行,執(zhí)行代理可以是執(zhí)行具體任務(wù)的組織、人員角色或計(jì)算機(jī)應(yīng)用程序等。業(yè)務(wù)任務(wù)的完成,是由相關(guān)的業(yè)務(wù)對(duì)象的功能(操作)實(shí)現(xiàn)的。業(yè)務(wù)對(duì)象類方法必須支持對(duì)業(yè)務(wù)事件的響應(yīng),從而要受業(yè)務(wù)事件影響。業(yè)務(wù)事件及業(yè)務(wù)任務(wù)會(huì)影響相關(guān)業(yè)務(wù)對(duì)象的狀態(tài)?梢苑庋b為業(yè)務(wù)組件的對(duì)象可以是業(yè)務(wù)任務(wù)、業(yè)務(wù)對(duì)象甚至是業(yè)務(wù)過程。根據(jù)組件實(shí)體類型(表達(dá)內(nèi)容)的不同,業(yè)務(wù)組件可簡(jiǎn)單分為原子組件和復(fù)合組件。原子組件是不需進(jìn)一步細(xì)化的組件,是復(fù)用的基本單位;復(fù)合組件是由成員組件構(gòu)成的大粒度的可復(fù)用組件類型,其成員組件可以是原子組件,也可以是復(fù)合組件。業(yè)務(wù)組件的獲得是建立在對(duì)業(yè)務(wù)過程、業(yè)務(wù)任務(wù)、業(yè)務(wù)對(duì)象的識(shí)別、概括與提煉的基礎(chǔ)上,并對(duì)業(yè)務(wù)組件進(jìn)行充分描述。建模階段獲得的業(yè)務(wù)組件與具體實(shí)現(xiàn)平臺(tái)技術(shù)無關(guān)。
2.2.3 業(yè)務(wù)過程驅(qū)動(dòng)的業(yè)務(wù)過程建模步驟
業(yè)務(wù)過程驅(qū)動(dòng)的、與ERP系統(tǒng)組件化相適應(yīng)的業(yè)務(wù)過程建模是一個(gè)自頂向下的、分層次的、迭代的、漸進(jìn)的過程。這里分為業(yè)務(wù)功能規(guī)劃、業(yè)務(wù)過程流程分析和業(yè)務(wù)任務(wù)分析三個(gè)階段。
(1)業(yè)務(wù)功能規(guī)劃 業(yè)務(wù)功能規(guī)劃階段解決ERP系統(tǒng)所支持的高層功能定位。傳統(tǒng)的ERP系統(tǒng)主要從企業(yè)內(nèi)部供應(yīng)鏈的角度,對(duì)企業(yè)的采購、生產(chǎn)、銷售:人力資源等各個(gè)方面進(jìn)行集成管理。目前,越來越多的企業(yè)更加重視以持續(xù)提高顧客滿意度為目標(biāo),通過整合企業(yè)內(nèi)外部的各種資源,開展基于時(shí)間的競(jìng)爭(zhēng)。因此,在業(yè)務(wù)功能規(guī)劃階段,應(yīng)充分吸收先進(jìn)的管理理念、管理方法,合理界定、配置ERP系統(tǒng)所覆蓋的業(yè)務(wù)功能范圍,構(gòu)建ERP系統(tǒng)功能框架,闡明各功能之間的主要聯(lián)系,標(biāo)識(shí)出與各主要業(yè)務(wù)功能領(lǐng)域相關(guān)的領(lǐng)域?qū)ο,并?duì)業(yè)務(wù)功能規(guī)劃的結(jié)果進(jìn)行歸檔。
(2)業(yè)務(wù)過程分析 針對(duì)業(yè)務(wù)功能規(guī)劃階段獲得的每一項(xiàng)業(yè)務(wù)功能,從業(yè)務(wù)過程的角度對(duì)業(yè)務(wù)功能進(jìn)行分析。分析步驟如下:
步驟1 給出業(yè)務(wù)過程中所涉及的業(yè)務(wù)任務(wù)列表。
步驟2 對(duì)每一項(xiàng)業(yè)務(wù)任務(wù),識(shí)別觸發(fā)該任務(wù)執(zhí)行的業(yè)務(wù)事件,執(zhí)行該任務(wù)需滿足的前提條件,以及在該任務(wù)執(zhí)行過程中所產(chǎn)生的業(yè)務(wù)事件。
步驟3 利用所得到的業(yè)務(wù)任務(wù)、業(yè)務(wù)事件、任務(wù)執(zhí)行約束條件,繪制初步的業(yè)務(wù)過程流程模型。
步驟4 對(duì)業(yè)務(wù)過程進(jìn)行優(yōu)化,包括流程重組、業(yè)務(wù)柔性能力優(yōu)化。流程的重組,即通過對(duì)現(xiàn)有業(yè)務(wù)過程進(jìn)行分析、抽象,調(diào)整執(zhí)行路徑,去除不增值的業(yè)務(wù)活動(dòng)及環(huán)節(jié),以提高業(yè)務(wù)過程執(zhí)行效率;業(yè)務(wù)柔性能力優(yōu)化,即通過研究不同企業(yè)的業(yè)務(wù)過程特點(diǎn),進(jìn)行業(yè)務(wù)過程、業(yè)務(wù)任務(wù)的可變性設(shè)計(jì)及變體設(shè)計(jì),增強(qiáng)ERP系統(tǒng)的行業(yè)定制能力。
步驟5 若某一業(yè)務(wù)任務(wù)需要進(jìn)一步細(xì)化,則通過把該業(yè)務(wù)任務(wù)進(jìn)一步分解為一系列的子任務(wù),并按步驟2~4進(jìn)行細(xì)化,直到認(rèn)為業(yè)務(wù)任務(wù)不需再進(jìn)一步細(xì)分為止。
步驟6 對(duì)分析結(jié)果進(jìn)行歸檔。
(3)業(yè)務(wù)任務(wù)分析 業(yè)務(wù)任務(wù)分析是獲得業(yè)務(wù)對(duì)象類的重要手段,是構(gòu)造靈活的基于組件的ERP系統(tǒng)的基礎(chǔ)性工作。該階段在業(yè)務(wù)過程分析的基礎(chǔ)上,對(duì)組成業(yè)務(wù)過程的各個(gè)業(yè)務(wù)任務(wù)進(jìn)行深入分析。對(duì)每一業(yè)務(wù)任務(wù),識(shí)別相關(guān)聯(lián)的業(yè)務(wù)對(duì)象類,確定業(yè)務(wù)任務(wù)執(zhí)行代理的類型、角色,識(shí)別業(yè)務(wù)對(duì)象類的方法,標(biāo)志業(yè)務(wù)對(duì)象類需要持久化的相關(guān)信息及要求。如果必要,對(duì)業(yè)務(wù)對(duì)象的狀態(tài)進(jìn)行建模。最后,對(duì)業(yè)務(wù)任務(wù)分析的結(jié)果進(jìn)行歸檔。
由于管理理念、管理方式、管理范圍是動(dòng)態(tài)變化的,基于業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)組件化建模方法所獲得的業(yè)務(wù)模型也需要不斷演化。基于業(yè)務(wù)過程的視角,便于分析和定位各類變化對(duì)現(xiàn)有業(yè)務(wù)支持能力造成的影響,而迭代的、漸進(jìn)的分析方法支持對(duì)ERP系統(tǒng)模型的逐步完善。
3 ERP系統(tǒng)業(yè)務(wù)組件的分類與獲取
軟件組件是可獨(dú)立開發(fā)、獨(dú)立部署并通過特定的外部接口進(jìn)行組裝的軟件單元。組件的接口定義了所有對(duì)外交互的信息,包括其對(duì)外提供的功能和要求的外部功能,從而顯式地表達(dá)了組件對(duì)環(huán)境的依賴。
基于組件組裝方式構(gòu)造的ERP系統(tǒng),極大地提高了系統(tǒng)本身的靈活性,支持ERP系統(tǒng)的快速定制,并允許以組件修改或替換的方式實(shí)現(xiàn)ERP系統(tǒng)的演化。ERP系統(tǒng)的組件化策略應(yīng)在考慮主流分布式計(jì)算構(gòu)架及現(xiàn)有組件模型共性的基礎(chǔ)上,側(cè)重于對(duì)領(lǐng)域知識(shí)與業(yè)務(wù)規(guī)則的封裝。在業(yè)務(wù)過程建模階段獲得的模型可以作為組件化工作的起點(diǎn)。
3.1 業(yè)務(wù)組件的分類與描述
3.1.1 業(yè)務(wù)組件的分類
按照業(yè)務(wù)組件的粒度從小到大來劃分,業(yè)務(wù)組件可分為業(yè)務(wù)對(duì)象類組件、業(yè)務(wù)任務(wù)類組件和業(yè)務(wù)過程類組件。
業(yè)務(wù)過程類組件的粒度最大,它對(duì)企業(yè)的核心業(yè)務(wù)過程提供支持,反映了企業(yè)信息系統(tǒng)以業(yè)務(wù)過程為核心的設(shè)計(jì)理念。業(yè)務(wù)過程對(duì)象類是構(gòu)造業(yè)務(wù)過程框架的依據(jù),在邏輯上通常由多個(gè)相互協(xié)作的業(yè)務(wù)任務(wù)類組件構(gòu)成。業(yè)務(wù)過程組件通常都是復(fù)合組件,可盡量運(yùn)用設(shè)計(jì)模式來改善業(yè)務(wù)過程組件的設(shè)計(jì)。
業(yè)務(wù)任務(wù)類組件提供對(duì)業(yè)務(wù)任務(wù)的封裝。根據(jù)任務(wù)的復(fù)雜程度,這類組件可以是原子組件,也可能是復(fù)合組件,視業(yè)務(wù)任務(wù)的類型,參與完成業(yè)務(wù)任務(wù)的業(yè)務(wù)對(duì)象類型的數(shù)量及性質(zhì)而定。
業(yè)務(wù)對(duì)象類組件提供對(duì)基礎(chǔ)業(yè)務(wù)對(duì)象的封裝。業(yè)務(wù)對(duì)象類組件與業(yè)務(wù)對(duì)象類之間既可能是一對(duì)一關(guān)系,也可以是一對(duì)多的關(guān)系。若干聯(lián)系緊密的業(yè)務(wù)對(duì)象類可封裝在一個(gè)業(yè)務(wù)對(duì)象類組件中。為了滿足不同行業(yè)的業(yè)務(wù)特色,業(yè)務(wù)對(duì)象類組件的接口也可有不同實(shí)現(xiàn)(如對(duì)于BOM對(duì)象類組件,由于存在行業(yè)類型差別,其接口支持不同的實(shí)現(xiàn)以支持流程型BOM和離散型BOM)。根據(jù)業(yè)務(wù)對(duì)象類組件的通用性,還可進(jìn)一步劃分為業(yè)務(wù)基本對(duì)象類組件與業(yè)務(wù)支撐對(duì)象類組件。業(yè)務(wù)基本對(duì)象類組件封裝了業(yè)務(wù)領(lǐng)域中支撐業(yè)務(wù)任務(wù)實(shí)現(xiàn)的基本概念實(shí)體對(duì)象,并提供了與外界交互的功能接口。業(yè)務(wù)支撐對(duì)象類組件通常是一族工具類組件。各類業(yè)務(wù)組件的例子如圖2所示。
圖2 業(yè)務(wù)對(duì)象類的三個(gè)層次
3.1.2 業(yè)務(wù)組件的描述
為了便于以組件組裝的方式創(chuàng)建組件化的ERP系統(tǒng),需要規(guī)范描述業(yè)務(wù)組件,以滿足ERP系統(tǒng)組件化對(duì)基于接口信息裝配的需求。與組件化信息系統(tǒng)相適應(yīng)的組件模型描述如下:
業(yè)務(wù)組件:=<組件規(guī)約,組件實(shí)現(xiàn)>
組件規(guī)約:=<組件接口,組件結(jié)構(gòu)>
組件接口:=<對(duì)外提供的功能集合,對(duì)外請(qǐng)求的功能集合,接收的外部事件集合入口,對(duì)外發(fā)送的事件集合入口>
組件結(jié)構(gòu):=<原子組件結(jié)構(gòu)>|<復(fù)合組件結(jié)構(gòu)>
原子組件結(jié)構(gòu):=<組件實(shí)現(xiàn)的引用>
復(fù)合組件結(jié)構(gòu):=<引用的組件類型集合,實(shí)例聲明,實(shí)例連接,映射>
組件模型描述表明:接口是外部環(huán)境與組件交互的唯一途徑,這里的組件接口不僅包括對(duì)外提供(provided)的功能集合,也包括對(duì)外請(qǐng)求(required)的功能集合,同時(shí)兼顧了組件對(duì)事件的需求描述,從而可以滿足事件的發(fā)布及訂閱處理。復(fù)合組件結(jié)構(gòu)表明原子組件能夠組裝成大粒度的復(fù)合組件,滿足組件框架(component-based framework)、組件子系統(tǒng)直至組件軟件。
3.2 業(yè)務(wù)組件的獲取策略
可購買合適的商業(yè)業(yè)務(wù)組件,如COTS(commercial off-the-shelf)組件,或基于主流的組件模型,在現(xiàn)有開發(fā)平臺(tái)的支持下創(chuàng)建目標(biāo)業(yè)務(wù)組件。主流的分布式計(jì)算組件標(biāo)準(zhǔn)有Microsoft的COM+,SUN的EJB,0MG的CCM等。COM+是在COM基礎(chǔ)上發(fā)展起來的,主要用于Windows平臺(tái),是面向?qū)ο蟮慕M件模型標(biāo)準(zhǔn),在融合了COM及MTS編程模型的同時(shí),又增加了一些新特性。EJB是一個(gè)基于Java RMI(remote method invocation)的服務(wù)器端組件模型標(biāo)準(zhǔn),與COM+相比,EJB支持更豐富的組件型,但EJB具有編程語言依賴性,只能運(yùn)行在Java虛擬機(jī)之上。CCM(CORBA component model)是0MG在CORBA規(guī)范第三版中開發(fā)的一個(gè)組件模型標(biāo)準(zhǔn),它吸取了COM+及EJB模型的優(yōu)點(diǎn),具有編程語言無關(guān)性,提供了豐富的服務(wù)器端組件框架,并支持到EJB的映射,但是CCM較COM+及EJB出現(xiàn)的時(shí)間都晚,其發(fā)展成熟尚需時(shí)日。
在創(chuàng)建業(yè)務(wù)組件時(shí),可結(jié)合軟件企業(yè)自身的市場(chǎng)定位、技術(shù)條件、平臺(tái)策略等,選擇合適的分布式對(duì)象組件標(biāo)準(zhǔn),對(duì)各類業(yè)務(wù)對(duì)象進(jìn)行封裝、歸檔,建立可復(fù)用資產(chǎn)庫,為基于組件裝配方式的ERP系統(tǒng)快速開發(fā)奠定基礎(chǔ)。
4 組件化ERP系統(tǒng)構(gòu)建的體系結(jié)構(gòu)框架
ERP系統(tǒng)本質(zhì)上是把企業(yè)業(yè)務(wù)過程固化在軟件中,從而實(shí)現(xiàn)對(duì)企業(yè)業(yè)務(wù)運(yùn)作的支持。隨著企業(yè)持續(xù)地調(diào)整、重構(gòu)、優(yōu)化,相應(yīng)地要求提高ERP系統(tǒng)的業(yè)務(wù)柔性及系統(tǒng)重構(gòu)能力。筆者認(rèn)為,可以從三個(gè)方面改善ERP系統(tǒng)的構(gòu)造:①基于業(yè)務(wù)過程的建模,降低ERP系統(tǒng)基本構(gòu)造塊的粒度,對(duì)基本構(gòu)造塊進(jìn)行組件化,通過組裝的方式構(gòu)造ERP系統(tǒng),通過增刪或替換組件的方式實(shí)現(xiàn)ERP系統(tǒng)的演化;②提高ERP系統(tǒng)構(gòu)造的抽象層次,從業(yè)務(wù)模型的角度實(shí)施行業(yè)化解決方案,采用業(yè)務(wù)平臺(tái)技術(shù),實(shí)現(xiàn)業(yè)務(wù)系統(tǒng)構(gòu)造與特定技術(shù)平臺(tái)的分離,實(shí)施模型驅(qū)動(dòng)的ERP系統(tǒng)構(gòu)造;③系統(tǒng)化地采用軟件復(fù)用技術(shù)及軟件產(chǎn)品線技術(shù),建立企業(yè)參考模型及行業(yè)參考模型,建立組件庫,按行業(yè)解決方案實(shí)施基于版本管理的ERP系統(tǒng)支持及演化管理。本文給出組件化ERP系統(tǒng)構(gòu)建的體系結(jié)構(gòu)框架,如圖3所示。該體系結(jié)構(gòu)框架由四部分構(gòu)成:
圖3 組件化ERP系統(tǒng)構(gòu)建體系結(jié)構(gòu)框架
(1)技術(shù)支持平臺(tái)層技術(shù)支持平臺(tái)層包括應(yīng)用服務(wù)器及以下層次的各類技術(shù)平臺(tái),包括操作系統(tǒng)平臺(tái)層、主流的中間件及應(yīng)用開發(fā)平臺(tái)、分布式數(shù)據(jù)庫、各類應(yīng)用協(xié)議和應(yīng)用服務(wù)器等。技術(shù)支持平臺(tái)層的各組成部分中,應(yīng)用服務(wù)器的層次最高,它通過各種應(yīng)用協(xié)議,支持對(duì)各種分布式數(shù)據(jù)庫的透明訪問,同時(shí)負(fù)責(zé)實(shí)現(xiàn)各類公共服務(wù)。
(2)業(yè)務(wù)架構(gòu)平臺(tái)層業(yè)務(wù)架構(gòu)平臺(tái)層位于技術(shù)支持平臺(tái)層與ERP批量定制層之間,實(shí)現(xiàn)了軟件系統(tǒng)的業(yè)務(wù)過程支持與軟件實(shí)現(xiàn)技術(shù)的分離。從而實(shí)現(xiàn)了基于業(yè)務(wù)和管理的層面來構(gòu)架和集成ERP系統(tǒng)的目的。業(yè)務(wù)基礎(chǔ)平臺(tái)提供了統(tǒng)一的組織機(jī)構(gòu)、分工權(quán)限、資源要素、業(yè)務(wù)過程、信息處理、功能運(yùn)行、業(yè)務(wù)調(diào)度等基礎(chǔ)環(huán)境,對(duì)業(yè)務(wù)和管理的各項(xiàng)需求提供全方位的支持,以滿足企業(yè)快速變化的、個(gè)性化的用戶需求。業(yè)務(wù)架構(gòu)平臺(tái)層實(shí)現(xiàn)了ERP系統(tǒng)在業(yè)務(wù)層面的真正集成,并在持續(xù)完善的業(yè)務(wù)過程中保持高效的業(yè)務(wù)協(xié)作。通過進(jìn)一步與資產(chǎn)庫及相關(guān)工具集的結(jié)合,對(duì)實(shí)現(xiàn)基于版本批量定制的ERP系統(tǒng)構(gòu)造提供平臺(tái)支持。
(3)資產(chǎn)庫及資產(chǎn)庫工具集資產(chǎn)庫包括組件庫及企業(yè)參考模型庫。企業(yè)參考模型庫包括企業(yè)通用參考模型和特定行業(yè)參考模型,這些參考模型是以業(yè)務(wù)過程模型為中心組織的,并在充分考慮業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)組件化需要的基礎(chǔ)上建立的。組件庫是在對(duì)業(yè)務(wù)過程進(jìn)行建模的基礎(chǔ)上,對(duì)獲得的組件化對(duì)象(如業(yè)務(wù)對(duì)象、業(yè)務(wù)任務(wù)、業(yè)務(wù)過程等)按照某種組件模型,在考慮復(fù)用而進(jìn)行變型設(shè)計(jì)的基礎(chǔ)上建立的。對(duì)組件及模型庫的元數(shù)據(jù)、組件及模型的相關(guān)文檔也進(jìn)行存儲(chǔ)和分類索引,并通過資產(chǎn)工具集訪問及維護(hù)。資產(chǎn)庫工具集包括建模工具、仿真工具、配置工具和維護(hù)工具等,這些工具負(fù)責(zé)完成對(duì)資產(chǎn)庫的日常維護(hù)、組件演化、訪問控制、特定行業(yè)業(yè)務(wù)解決方案的配置及優(yōu)化、過程驅(qū)動(dòng)的特定企業(yè)業(yè)務(wù)模型適配及仿真等。
(4)ERP批量定制層該層次由特定行業(yè)企業(yè)信息系統(tǒng)解決方案構(gòu)成,是在資產(chǎn)庫及業(yè)務(wù)構(gòu)架平臺(tái)的支持下,針對(duì)具體行業(yè)的批量定制型ERP系統(tǒng)的具體實(shí)現(xiàn)。
5 結(jié)束語
企業(yè)經(jīng)營目標(biāo)的實(shí)現(xiàn)最終是由各項(xiàng)業(yè)務(wù)過程體現(xiàn)的,不同類型企業(yè)間的業(yè)務(wù)過程既有共性又有差異。從業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)建模出發(fā),面向不同行業(yè),實(shí)現(xiàn)可批量定制的組件化ERP系統(tǒng),增強(qiáng)ERP系統(tǒng)的可演化性及ERP系統(tǒng)與企業(yè)的適配性。本文從業(yè)務(wù)過程的視角出發(fā),提出了業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)組件化的研究框架,為解決目前ERP系統(tǒng)的整體式構(gòu)架所帶來的問題提供了一種新思路。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:業(yè)務(wù)過程驅(qū)動(dòng)的ERP系統(tǒng)組件化研究
本文網(wǎng)址:http://www.ezxoed.cn/html/support/1112182944.html