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