吳艷征 昂朝群
摘要:針對當前企業(yè)ERP系統(tǒng)中存在的靈活性差,開發(fā)時間長等問題,提出并構(gòu)建可重構(gòu)ERP系統(tǒng)的體系結(jié)構(gòu)。通過需求分析,明確企業(yè)ERP系統(tǒng)構(gòu)建中對于集成性、擴展性、維護性等方面的要求,基于可重用構(gòu)建的思想,建立了柔性ERP系統(tǒng)構(gòu)建體系架構(gòu),詳細討論了以面向可重構(gòu)ERP架構(gòu)的為目標的構(gòu)件開發(fā)模式,以及基于計算無關(guān)模型的重用模式。該體系架構(gòu)的研究,為建立柔性企業(yè)ERP系統(tǒng)提供了基礎(chǔ)和指導。
關(guān)鍵詞:企業(yè)資源規(guī)劃;系統(tǒng)架構(gòu)模型;計算無關(guān)模型
中圖分類號:TP311 文獻標識碼:A 文章編號:1009-3044(2014)10-2470-05
Abstract: Poor flexibility, long development time and other problems that exist in the current enterprise ERP system, we propose and build reconfigurable ERP system architecture. Through needs analysis, specifically the requirements of in the construction of integration, scalability, maintainability in enterprise ERP system, based on reusable building ideas, establish a flexible ERP system building architecture, discuss the component development model aim at ERP reconfigurable architecture, as well as reuse model of computational independent model. The research of this architecture, provide the foundation and guidance for the establishment of a flexible enterprise ERP system.
Key words: enterprise resource planning; system architecture model; calculation independent model
1 概述
對柔性化可定制軟件體系架構(gòu)方案的研究向來是軟件工程領(lǐng)域的熱點。ERP系統(tǒng)是制造型企業(yè)提高生產(chǎn)和管理效率,增強企業(yè)實力的重要基礎(chǔ),在信息化技術(shù)迅猛發(fā)展的現(xiàn)階段,越來越受到重視??芍貥?gòu)ERP系統(tǒng)能夠滿足企業(yè)、開發(fā)商等多方需求,對其關(guān)重構(gòu)架構(gòu)的研究具有重要的理論和現(xiàn)實意義。
可重構(gòu)ERP系統(tǒng)的核心在于其可重構(gòu)性,重構(gòu)的定義首先由美國的R.Dove提出,他認為重構(gòu)是以現(xiàn)有的資源為基礎(chǔ),在不改變或者較少改變當前資源的情況下,通過對資源的重組和利用,達到滿足不同應(yīng)用需求的目的[1]。文獻[2]認為重構(gòu)是指構(gòu)形的改變,而構(gòu)型的概念是指由多個具有一定屬性的構(gòu)件,以及它們之間關(guān)系的總和組成,某一構(gòu)形是一個暫穩(wěn)態(tài),而重構(gòu)則是將某一構(gòu)形轉(zhuǎn)換為另一構(gòu)形的過程,而對于可重構(gòu)ERP系統(tǒng)概念的界定,主要是指對系統(tǒng)構(gòu)形改變能力的衡量,當業(yè)務(wù)需求發(fā)生改變時,是否具有足夠的能力從當前的構(gòu)形改變?yōu)榱硪环N更符合企業(yè)需求的構(gòu)形,從而保證企業(yè)能夠應(yīng)對所發(fā)生的變化。不同的領(lǐng)域?qū)τ谥貥?gòu)性的概念定義也不同,ERP系統(tǒng)是面向先進制造型企業(yè)管理模式的一種信息化平臺,Y.Koren在上個世紀末期提出了可重構(gòu)制造系統(tǒng)的概念[3],可重構(gòu)ERP系統(tǒng)是在構(gòu)建初始階段,就通過一系列方法和手段,使系統(tǒng)在結(jié)構(gòu)、軟件、硬件等方面都具有可改變和重組的能力,從而可以根據(jù)實際的市場需求和業(yè)務(wù)流程調(diào)整需求,快速準確地對系統(tǒng)自身進行調(diào)整,保證其能夠繼續(xù)高效地管理企業(yè)資源??芍貥?gòu)制造系統(tǒng)中包括多個組成部分,而可重構(gòu)的信息系統(tǒng)是其基礎(chǔ)支撐,該類系統(tǒng)應(yīng)能夠在外部需求發(fā)生變化時具備相應(yīng)的調(diào)整和重構(gòu)能力。雖然國內(nèi)外學者對于可重構(gòu)的ERP系統(tǒng)研究較多,但到目前為止還沒有形成一個統(tǒng)一的權(quán)威定義,在學術(shù)界一般分為兩種觀點,一種被稱為狹義定義,即僅考慮ERP系統(tǒng)在開發(fā)構(gòu)建階段的可重構(gòu)能力,也就是系統(tǒng)所具備的可重構(gòu)屬性;另一種被稱為廣義的定義,即不僅考慮開發(fā)階段的可重構(gòu)性,還需要考慮在系統(tǒng)運行階段的可重構(gòu)能力[4]。
2 可重構(gòu)ERP系統(tǒng)模式分析
可重構(gòu)ERP系統(tǒng)構(gòu)建模式的提出是在傳統(tǒng)ERP系統(tǒng)基礎(chǔ)上提出的,首先傳統(tǒng)ERP系統(tǒng)的構(gòu)建模式存在著諸多弊端,然后通過一個實例分析得到ERP系統(tǒng)重構(gòu)的意義。
2.1 傳統(tǒng)ERP系統(tǒng)的構(gòu)建模式分析
ERP系統(tǒng)是為了解決制造型企業(yè)對于人力、物力、信息數(shù)據(jù)等諸多企業(yè)資源元素管理不力的問題而設(shè)計開發(fā)的[5]。傳統(tǒng)的ERP系統(tǒng)構(gòu)建模式主要包括通用版和定制版兩種方式。通用版的ERP系統(tǒng)針對于企業(yè)主要資源和業(yè)務(wù)流程的管理,基于信息化技術(shù)規(guī)范管理流程,從而達到優(yōu)化企業(yè)管理,提高經(jīng)濟效益的目的。然而每一個企業(yè)在長期的生產(chǎn)過程中通過逐步調(diào)整,一般都形成了一套較為完整和高效的管理體制,而通用版的ERP系統(tǒng)要求企業(yè)放棄原有管理流程,反過來要求其適應(yīng)軟件的管理規(guī)范,這一方式很有可能會阻礙企業(yè)競爭力的提高。定制版是根據(jù)每一個企業(yè)自身的業(yè)務(wù)及管理流程特定對ERP系統(tǒng)進行開發(fā),雖然可以較好的滿足企業(yè)的需求,但是成本較高,開發(fā)周期長,而且從長遠發(fā)展的角度看,也無法應(yīng)對企業(yè)業(yè)務(wù)需求的變化?;谏鲜鰞煞N方式,后期出現(xiàn)了混合版ERP系統(tǒng),主要采用二次開發(fā)、面向行業(yè)定制等方式實現(xiàn)ERP系統(tǒng)的構(gòu)建。二次開發(fā)雖然考慮到了企業(yè)應(yīng)用的個性化問題,但是具有一定的風險性,而面向行業(yè)定制的方法,由于同行業(yè)中不同企業(yè)的資源管理模式和方法不同,也同樣無法較好地滿足企業(yè)個性化的業(yè)務(wù)需求。上述各種方法共有的問題是對于企業(yè)業(yè)務(wù)需求的變化不具備靈活調(diào)整的能力。
基于上述分析,采用構(gòu)建計算無關(guān)模型,實現(xiàn)模型驅(qū)動的可重構(gòu)ERP系統(tǒng)具有重要的現(xiàn)實意義。計算無關(guān)模型驅(qū)動的企業(yè)ERP系統(tǒng)與所應(yīng)用的行業(yè)對象無關(guān),可以實現(xiàn)基于需求模型的變化而對軟件功能架構(gòu)進行調(diào)整的目的,在系統(tǒng)運行過程中通過配置實現(xiàn)具體流程的更新,具有開發(fā)時間短、開發(fā)成本低、用戶滿意度高、系統(tǒng)柔性好、可維護性強等突出優(yōu)點。
2.2 可重構(gòu)ERP系統(tǒng)需求分析
通過對大量企業(yè)當前ERP系統(tǒng)的分析,得到可重構(gòu)企業(yè)ERP系統(tǒng)的功能要求如下:
一是可配置能力。系統(tǒng)的可配置性包括兩個方面的要求,首先是在靜態(tài)時,ERP系統(tǒng)本身可以通過配置文件對系統(tǒng)的功能進行增減,以滿足不同類型企業(yè)用戶的需求;另一方面是在系統(tǒng)的運行階段,根據(jù)用戶制定的業(yè)務(wù)邏輯模型及流程的改變,自動對對應(yīng)的系統(tǒng)工作流程進行調(diào)整。
二是可集成功能。為了充分利用基于網(wǎng)絡(luò)的信息共享,簡化數(shù)據(jù)處理流程,可重構(gòu)的ERP系統(tǒng)應(yīng)能夠?qū)崿F(xiàn)對分布式ERP系統(tǒng)的集成,對不同企業(yè)中ERP系統(tǒng)的集成,對企業(yè)原有信息管理系統(tǒng)的集成等。
三是可擴展功能。企業(yè)的業(yè)務(wù)需求隨著外部環(huán)境,內(nèi)部經(jīng)營策略,實際應(yīng)用效果的變化而不斷變化的,因此,作為企業(yè)資源管理的優(yōu)化和決策系統(tǒng),可重構(gòu)的ERP系統(tǒng)必須能夠根據(jù)需求的變化而對其功能進行重構(gòu)。
四是可重用功能。定制型ERP系統(tǒng)的弊端在于開發(fā)周期長,成本大,而可重構(gòu)ERP系統(tǒng)通過對功能組件的復用實現(xiàn)節(jié)約開發(fā)時間,提高開發(fā)效率的目標。
2.3 企業(yè)重構(gòu)流程分析
制造型企業(yè)以需求模型更新為驅(qū)動的重構(gòu)主要包括業(yè)務(wù)模型的重構(gòu)和ERP軟件系統(tǒng)重構(gòu)兩個方面[6]。企業(yè)中的重構(gòu)對象主要由業(yè)務(wù)過程、業(yè)務(wù)模型、ERP系統(tǒng)組成。業(yè)務(wù)過程的重構(gòu)是在企業(yè)層面發(fā)生的,是企業(yè)根據(jù)實際的需求,對企業(yè)自身的各類資源和工作流程進行相應(yīng)的調(diào)整,從而優(yōu)化資源管理過程,提高效率;業(yè)務(wù)模型重構(gòu)對象是根據(jù)變化后業(yè)務(wù)過程模型,將其轉(zhuǎn)化為可由ERP系統(tǒng)識別的模型定義;ERP系統(tǒng)重構(gòu)對象是根據(jù)業(yè)務(wù)模型定義,基于實際的環(huán)境實現(xiàn)系統(tǒng)功能。
廣義的重構(gòu)定義包括開發(fā)階段的重構(gòu)和運行階段的重構(gòu)兩個組成部分[7]。開發(fā)階段的重構(gòu)主要是根據(jù)企業(yè)有可能的業(yè)務(wù)需求變化,在設(shè)計時考慮到系統(tǒng)的可配置性;運行階段的重要主要是根據(jù)企業(yè)管理模式、業(yè)務(wù)流程的變化,由ERP系統(tǒng)自動實現(xiàn)其工作流程的重構(gòu),主要考慮其柔性和構(gòu)件的可重用性。根據(jù)以上的分析,給出可重構(gòu)ERP系統(tǒng)的表達式:
A={B,C,D}
該式中的A表示可重構(gòu)的企業(yè)ERP系統(tǒng),B表示企業(yè)隨著需求而更新的模型,C表示根據(jù)企業(yè)需求變化而更新的業(yè)務(wù)模型,D表示ERP系統(tǒng)的重構(gòu)實施。
3 可重構(gòu)ERP系統(tǒng)的構(gòu)件分析
上一節(jié)分析了可重構(gòu)ERP系統(tǒng)架構(gòu)設(shè)計的目標和功能需求,而實現(xiàn)這些重構(gòu)目標的基礎(chǔ)是軟件構(gòu)件。
3.1 構(gòu)件應(yīng)用分析
不同的企業(yè)的業(yè)務(wù)需求和工作流程不同,但從抽象的角度分析,存在著大量相同的重復性操作,如報表生成、數(shù)據(jù)庫管理、采購流程等,可重構(gòu)ERP系統(tǒng)的目的是要將這些共同的操作規(guī)范進行提取,生成與上下文無關(guān)的軟件構(gòu)件,再由企業(yè)的業(yè)務(wù)需求模型驅(qū)動,對構(gòu)件資源進行重組和生成,從而使ERP系統(tǒng)具備動態(tài)可調(diào)整的能力。
傳統(tǒng)的軟件構(gòu)件一般是從功能的角度出發(fā),將復雜的功能分解為多個子功能構(gòu)件,粒度越小,可重用性越高。但這一方式?jīng)]有考慮到企業(yè)實際的業(yè)務(wù)流程需求,實際上,一般的企業(yè)業(yè)務(wù)流程是由多個環(huán)節(jié)和步驟所構(gòu)成,因此在對軟件構(gòu)件的劃分方面,也應(yīng)有針對性地定義不同粒度的構(gòu)件單位,以滿足不同重用重組的需求。本研究將從企業(yè)業(yè)務(wù)模型的角度出發(fā),將不同粒度的構(gòu)件及其組合劃分為以下幾種類型[8]:
一是原子構(gòu)件,該類構(gòu)件的粒度最小,但通用性最強,主要包括與業(yè)務(wù)相關(guān)的操作性構(gòu)件,如訂單的發(fā)送、接收、填寫等,以及與業(yè)務(wù)無關(guān)的通用型構(gòu)件,如打印服務(wù)、網(wǎng)絡(luò)傳輸服務(wù)構(gòu)件等。
二是復合型構(gòu)件,該類構(gòu)件的粒度大于原子構(gòu)件,由多個原子構(gòu)件組成,復合型構(gòu)件用于完成一個核心的業(yè)務(wù)流程,該流程由多個環(huán)節(jié)組成,每一個環(huán)節(jié)對應(yīng)著一個原子構(gòu)件,例如對于表格業(yè)務(wù)構(gòu)件,由單據(jù)的生成、填寫、發(fā)送等組成。復合型構(gòu)件可應(yīng)用于多個活動中。
三是組合型構(gòu)件,該類構(gòu)件也是由原子構(gòu)件組成,但其粒度大于復合型構(gòu)件,更重要的區(qū)別是該類構(gòu)件僅對外提供特定的功能,與企業(yè)的具體業(yè)務(wù)流程結(jié)合較為緊密,如訂單處理的一整套流程。
由上述分析,結(jié)合可重構(gòu)ERP系統(tǒng)的功能需求定義,構(gòu)建了一套以可重用軟件構(gòu)件為基礎(chǔ),以企業(yè)業(yè)務(wù)需求模型為驅(qū)動,以工作流引擎為調(diào)度方式的可重構(gòu)ERP系統(tǒng)架構(gòu),如圖1所示。
如圖1所示,首先利用業(yè)務(wù)建模工具根據(jù)企業(yè)業(yè)務(wù)需求的實際構(gòu)建業(yè)務(wù)模型,業(yè)務(wù)模型利用工作流配置文件實現(xiàn)對各種不同粒度軟件構(gòu)件的組裝與部署。構(gòu)件化的可重構(gòu)ERP系統(tǒng)包括各類軟件構(gòu)件,構(gòu)件運行平臺及支撐環(huán)境等,構(gòu)件受工作流引擎調(diào)度,通過組合的重構(gòu),基于構(gòu)件運行環(huán)境實現(xiàn)ERP系統(tǒng)的各類功能需求。當企業(yè)的業(yè)務(wù)需求發(fā)生改變時,利用建模工具更新需求模型,由此改變工作流配置文件,工作流引擎控制各種不同粒度構(gòu)件組裝和運行。在這一模式下,在ERP系統(tǒng)的設(shè)計開發(fā)階段,通過建立企業(yè)業(yè)務(wù)需求模型,明確所需要構(gòu)建的軟件構(gòu)件功能和粒度,而在系統(tǒng)運行階段,可根據(jù)業(yè)務(wù)模型的調(diào)整,實現(xiàn)對不同構(gòu)件的動態(tài)組裝和重用。
3.2 構(gòu)件化ERP系統(tǒng)構(gòu)建流程分析
基于以上提出的基于構(gòu)件化的可重構(gòu)ERP系統(tǒng)框架,建立了面向全生命周期的可重構(gòu)模式,分別在系統(tǒng)構(gòu)件的初始、開發(fā)、運行三個階段[9],實現(xiàn)了可重構(gòu)ERP系統(tǒng)的功能需求目標。本小節(jié)重點討論構(gòu)件化可重構(gòu)ERP系統(tǒng)的具體實施步驟。
3.2.1 不同粒度軟件構(gòu)件的開發(fā)
構(gòu)件是可重構(gòu)ERP系統(tǒng)構(gòu)建的基礎(chǔ),構(gòu)件具有不同的粒度,但都應(yīng)具有可重用性,其開發(fā)的步驟為:首先,根據(jù)企業(yè)業(yè)務(wù)需求所處的領(lǐng)域,依據(jù)以前的開發(fā)經(jīng)驗,確定該領(lǐng)域中存在著的可重用功能模塊;然后形成規(guī)范的功能模塊描述,存儲于領(lǐng)域模型庫,以滿足日后的維護需求;第三是根據(jù)該類功能模塊與具體業(yè)務(wù)邏輯結(jié)合的緊密程度,確定其構(gòu)件屬性;在特定平臺上設(shè)計構(gòu)件的功能;確定構(gòu)件使用的接口規(guī)約;利用編程語言實現(xiàn)構(gòu)件功能;將構(gòu)件存儲于構(gòu)件庫中。
3.2.2 ERP系統(tǒng)的開發(fā)步驟分析
在構(gòu)件庫為基礎(chǔ),根據(jù)業(yè)務(wù)需求模型設(shè)計開發(fā)ERP系統(tǒng)。首先根據(jù)企業(yè)實際情況分析業(yè)務(wù)需求;然后從業(yè)務(wù)模型庫中查詢和選取業(yè)務(wù)模型;根據(jù)生成的業(yè)務(wù)模型在構(gòu)件庫中檢索適合的構(gòu)件對象,如果現(xiàn)有的構(gòu)件對象都無法滿足需求,則需要重新設(shè)計并開發(fā)構(gòu)件;將所有適合的構(gòu)件統(tǒng)一進行裝配;基于實際的運行平臺完成編碼和部署工作;基于實際應(yīng)用對新的ERP系統(tǒng)進行測試,根據(jù)測試結(jié)果調(diào)整構(gòu)件及其組裝過程,直到滿足用戶需求。
3.2.3 ERP系統(tǒng)的重構(gòu)步驟分析
在ERP系統(tǒng)運行過程中,如果企業(yè)的業(yè)務(wù)需求發(fā)生了改變,由相關(guān)人員重新建立企業(yè)業(yè)務(wù)需求模型;對工作流配置文件進行更新;系統(tǒng)根據(jù)工作流的配置參數(shù)對構(gòu)件的組成和部署進行調(diào)整;如果由于缺少相應(yīng)的構(gòu)件而導致系統(tǒng)無法正常工作,則重新進入ERP系統(tǒng)的開發(fā)步驟。
3.2.4 可重用構(gòu)件庫的管理步驟
構(gòu)件庫的管理工作是保證ERP系統(tǒng)快速開發(fā)與部署的基礎(chǔ),根據(jù)所存儲構(gòu)件對象的不同可以分為可重用ERP構(gòu)件庫和領(lǐng)域模型構(gòu)件庫兩類。領(lǐng)域模型構(gòu)件庫中存儲著根據(jù)企業(yè)業(yè)務(wù)需求建立的模型,有利于加快對新企業(yè)業(yè)務(wù)模型的分析與構(gòu)建;可重用ERP構(gòu)件庫中存儲著各種不同粒度的軟件構(gòu)件,是具體ERP系統(tǒng)快速建立的基礎(chǔ)。
4 基于模型的ERP系統(tǒng)重構(gòu)模式
本文提出的模型驅(qū)動的,基于軟件構(gòu)件的可重構(gòu)ERP系統(tǒng)與傳統(tǒng)的MDA(Model Driven Architecture 模型驅(qū)動架構(gòu))[10]之間的關(guān)系,是對其細化和具體化。其改進主要表現(xiàn)在以下兩個方面。
一是對MDA所定義模型的改進。MDA中定義了計算無關(guān)模型和平臺無關(guān)模型,而本框架構(gòu)則將這些模型具體到對業(yè)務(wù)模型的建立,以及對可重用構(gòu)件的設(shè)計開發(fā)和選取等操作。CIM模型對應(yīng)于業(yè)務(wù)需求的建模操作,PIM對應(yīng)于面向業(yè)務(wù)模型構(gòu)建,PSM和Code對應(yīng)于具體的構(gòu)件開發(fā)和選取。
二是改進了不同模型之間的轉(zhuǎn)換功能。MDA中上層模型到下層模型的轉(zhuǎn)換是其研究的重點,而本框架中從業(yè)務(wù)需求,到業(yè)務(wù)模型,到構(gòu)件裝配模型的轉(zhuǎn)換,充分應(yīng)用于構(gòu)件識別技術(shù)、代碼生成技術(shù)等,從而將抽象的轉(zhuǎn)換過程具體化為從模型到具體代碼的轉(zhuǎn)換,可操作性更強。
4.1 全生命周期可重構(gòu)框架
基于模型的可重構(gòu)ERP系統(tǒng)在系統(tǒng)設(shè)計、開發(fā)、運行等各個階段都具有可重構(gòu)性,其構(gòu)建的過程具體分析如下:
一是在ERP系統(tǒng)的設(shè)計階段,由企業(yè)具體應(yīng)用領(lǐng)域的需求建立業(yè)務(wù)模型,這此模型將被存儲到模型庫中,供其他相關(guān)ERP系統(tǒng)構(gòu)建使用,同時,將具體的ERP構(gòu)件作為可重用資源存儲到構(gòu)件庫中,以備在系統(tǒng)具體實現(xiàn)時實現(xiàn)重用。
二是在系統(tǒng)開發(fā)階段,存儲在構(gòu)件庫中的可重用ERP構(gòu)件根據(jù)其實現(xiàn)的功能以及粒度,被配置為可具體的ERP系統(tǒng),在此過程中生成的新構(gòu)件以及生成的可重用代碼被存儲到控件庫,從而實現(xiàn)ERP系統(tǒng)的快速開發(fā)與部署。
三是在系統(tǒng)運行階段,一旦企業(yè)的內(nèi)部管理機制和生產(chǎn)流程發(fā)生改變,通過對工作流參數(shù)的更新,調(diào)整現(xiàn)有構(gòu)件裝配模式實現(xiàn)系統(tǒng)新功能,從而大幅降低系統(tǒng)二次開發(fā)的成本。
上述三個階段中,設(shè)計階段是其他兩個階段的基礎(chǔ),為其提供了可重用的資源,而開發(fā)與運行階段基于構(gòu)件的可重構(gòu)性,則具體實現(xiàn)了ERP系統(tǒng)的功能。
4.2 可重用ERP構(gòu)件的開發(fā)模式
可重用ERP構(gòu)件的開發(fā)主要是通過對企業(yè)所在領(lǐng)域業(yè)務(wù)需求的分析,從業(yè)務(wù)的角度出發(fā),對軟件構(gòu)件的功能和接口進行設(shè)計,并通過構(gòu)件庫的方式進行管理,從而實現(xiàn)構(gòu)件的復用。
在構(gòu)件的開發(fā)過程中,首先對照MDA中的CIM模式進行建模操作,具體分為兩個步驟,首先是對企業(yè)的業(yè)務(wù)需求進行分析,從不同的角度對實現(xiàn)視圖的描述,包括過程、組織、信息等,建立起立體的企業(yè)需求模型,然后以此為基礎(chǔ),將企業(yè)需求模型轉(zhuǎn)換為業(yè)務(wù)模型,業(yè)務(wù)模型針對的是具體的ERP系統(tǒng)功能,從而為平臺無關(guān)模型的構(gòu)建提供基礎(chǔ)。
第二步是建立面向業(yè)務(wù)的平臺無關(guān)模型,主要是以業(yè)務(wù)模型為基礎(chǔ),利用UML等軟件建模工具,根據(jù)業(yè)務(wù)模型的需求,描述能夠通過軟件構(gòu)件的組合所能夠?qū)崿F(xiàn)的系統(tǒng)功能。該步驟主要考慮構(gòu)件的粒度和功能,不涉及到具體實現(xiàn)。
第三步是建立平臺相關(guān)的構(gòu)件,以上一步驟中得到的平臺無關(guān)模型為基礎(chǔ),根據(jù)其對功能的要求,基于特定的應(yīng)用平臺,具體實現(xiàn)構(gòu)件功能。該步驟中需要使用軟件架構(gòu)模式、工作流技術(shù)、界面開發(fā)技術(shù)等。
第四步是實現(xiàn)具體的系統(tǒng)代碼編寫,根據(jù)所采用的構(gòu)件,結(jié)合系統(tǒng)功能的需求,利用編程語言實現(xiàn)代碼。在具體開發(fā)中,利用工作流配置文件對可重用軟件構(gòu)件進行調(diào)度和組合,從而實現(xiàn)系統(tǒng)功能。
4.3 計算無關(guān)模型驅(qū)動的構(gòu)件重用模式
可重用ERP構(gòu)件開發(fā)模式的分析為可重構(gòu)ERP系統(tǒng)的實現(xiàn)提供了基礎(chǔ),而基于計算無關(guān)模型的構(gòu)件重用模式是具體實現(xiàn)系統(tǒng)功能的方案。具體的重用可描述為:首先,由計算無關(guān)模型確定系統(tǒng)所需要的軟件功能構(gòu)件,然后根據(jù)所定義的映射關(guān)系,實現(xiàn)對構(gòu)件的調(diào)度和裝配。計算無關(guān)模型的構(gòu)建是根據(jù)企業(yè)具體的業(yè)務(wù)流程構(gòu)建,在實際運行過程中,一旦企業(yè)的業(yè)務(wù)模型發(fā)生改變,與之相對應(yīng)的下層工作流配置文件、數(shù)據(jù)表信息、用戶角色信息等都將根據(jù)映射關(guān)系進行改變,映射關(guān)系的改變將直接到可重用軟件的選取和運轉(zhuǎn)流程產(chǎn)生影響,從而滿足新的企業(yè)需求。
構(gòu)件的重用根據(jù)其功能的變化需求可分為四種方式,分別是直接重用,更改配置文件后重用,更新構(gòu)件功能后重用,無法重用。對于無法重用的構(gòu)件,需要重新設(shè)計實現(xiàn)相應(yīng)的構(gòu)件,以滿足系統(tǒng)的要求。
4.4 構(gòu)件重用模式實例分析
根據(jù)本文所研究的企業(yè)ERP系統(tǒng)重構(gòu)模型,系統(tǒng)開發(fā)的總體架構(gòu),如圖2所示:
系統(tǒng)共分為三個層次,用戶界面層實現(xiàn)接受用戶文字與圖形輸入的數(shù)據(jù),以及向用戶展現(xiàn)系統(tǒng)處理的結(jié)果等功能;工具層是系統(tǒng)的核心層,實現(xiàn)企業(yè)業(yè)務(wù)計算無關(guān)模型的構(gòu)件,模型間的轉(zhuǎn)換,以及可重用構(gòu)件模型的建立及選取等系統(tǒng)的主要功能;系統(tǒng)支撐層主要為系統(tǒng)的主功能提供運行環(huán)境,包括各類集成接口;數(shù)據(jù)層提供數(shù)據(jù)管理等基礎(chǔ)性服務(wù)。
從系統(tǒng)的功能組成結(jié)構(gòu)考慮,系統(tǒng)架構(gòu)如圖3所示:
系統(tǒng)主要包括三個主要功能模塊,分別是計算無關(guān)模型構(gòu)建子系統(tǒng)、計算無關(guān)模型向平臺無關(guān)模型的轉(zhuǎn)換子系統(tǒng)、可重用構(gòu)件選取子系統(tǒng)。計算無關(guān)模型構(gòu)建子系統(tǒng)以可視化的方式提供了計算無關(guān)模型的建模功能,并可以實現(xiàn)對模型的管理,該子系統(tǒng)以參考模型管理工具為基礎(chǔ)實現(xiàn)自身功能;計算無關(guān)模型向平臺無關(guān)模型轉(zhuǎn)換子系統(tǒng)以本體建構(gòu)工具為基礎(chǔ),實現(xiàn)對元本體映射規(guī)則的構(gòu)建、本體模型構(gòu)建等功能;構(gòu)件選取子系統(tǒng)的功能包括不同層次業(yè)務(wù)特征的定義與維護、平臺無關(guān)構(gòu)件模型的建立、基本本體的構(gòu)件匹配功能、對可重用軟件構(gòu)件的管理等。
5 總結(jié)
本文對業(yè)務(wù)模型驅(qū)動的ERP系統(tǒng)架構(gòu)進行了分析和設(shè)計,該架構(gòu)一是可以提高制造企業(yè)的信息化程度方面,可以有效地加快ERP系統(tǒng)重構(gòu)和部署的效率;二是對于具體的制造企業(yè),可靈活地根據(jù)業(yè)務(wù)需求的變化對ERP系統(tǒng)進行重構(gòu),從而在競爭中占據(jù)主動;三對于ERP系統(tǒng)的開發(fā)商而言,根據(jù)企業(yè)業(yè)務(wù)需求而可柔性重構(gòu)的ERP系統(tǒng)與用戶的需求更為貼合,具有良好的可擴展性和可維護性,也可大幅降低開發(fā)成本,提升企業(yè)形象。
參考文獻:
[1] R Dove. Reconfigurable Manufacturing Systems[J].Production,2009,107(2): 16-17.
[2] 王成恩.制造系統(tǒng)的可重構(gòu)性[J].計算機集成制造系統(tǒng)-CIMS,2011,6(4):1-5.
[3] Y Koren,U Heisel,F(xiàn) Jovane.Reconfigurable Manufacturing Systems[M].CIRP Annals,2012,48(2):527-540.
[4] Y L Tang,C D Li,X Y Hu.Reconfigurable ERP: Concept and Service-oriented System Architecture[J].In Proceedings of the Sixth Wuhan International Conference on E-business,2013:782-790.
[5] 李千目,許滿武,張宏.軟件體系結(jié)構(gòu)設(shè)計[M].北京:清華大學出版社,2008:229-230.
[6] Cassidy K,Gross K,Malekpour A.Advanced Pattern Recognition for Detection of Complex Software Aging in Online Transaction Processing Servers[C].Proc.DSN 2002.USA:Washington,2002.
[7] 胡順揚,翟有甜,周波.基于.NET平臺的軟件構(gòu)件開發(fā)方法研究[J].計算機技術(shù)與發(fā)展,2008,18(11):58-63.
[8] Castelli V,Harper R E,Heidelber P.Proactive Management of Software Aging[J].IBMJRD,2004,45(2):311-332.
[9] 胡順揚,翟有甜,周波.基于.NET平臺的軟件構(gòu)件開發(fā)方法研究[J].計算機技術(shù)與發(fā)展,2008,18(11):58-63.
[10] 張高峰,張志勇,張靜瑜.基于模型驅(qū)動架構(gòu)的艦載指控系統(tǒng)仿真研究[J].系統(tǒng)仿真學報,2011(S1):225-227.