1 綜述
企業(yè)資源計(jì)劃(ERP:EntERPrise Resource Planning)系統(tǒng)集信息技術(shù)與先進(jìn)的管理思想于一身,實(shí)現(xiàn)了對(duì)企業(yè)的采購(gòu),生產(chǎn)。銷售,分析,決策的全面管理,已經(jīng)成為當(dāng)前信息化企業(yè)管理的基礎(chǔ)。以ERP軟件系統(tǒng)為基礎(chǔ),企業(yè)能夠及時(shí)準(zhǔn)確的收集數(shù)據(jù),分析經(jīng)營(yíng)狀況、財(cái)務(wù)狀況,提高管理的效率。
隨著企業(yè)管理理念的變化,當(dāng)前ERP軟件系統(tǒng)不僅要實(shí)現(xiàn)對(duì)企業(yè)供應(yīng)鏈資源的全面管理,還要完成上下游企業(yè)協(xié)同工作的管理,為了實(shí)現(xiàn)這些功能,現(xiàn)在的ERP軟件系統(tǒng)的規(guī)模一般比較龐大,例如金蝶K3 Wise 12.0標(biāo)準(zhǔn)版有八萬(wàn)個(gè)以上的頁(yè)面組成。此外,ERP軟件系統(tǒng)還有大量的復(fù)雜的業(yè)務(wù)邏輯需要處理。
傳統(tǒng)的軟件開(kāi)發(fā)流程是先根據(jù)需求確定各個(gè)模塊的功能,然后分別對(duì)每個(gè)界面上的所有元素進(jìn)行設(shè)計(jì),最后對(duì)界面的邏輯功能進(jìn)行編碼實(shí)現(xiàn)。對(duì)每個(gè)界面,及界面上的每個(gè)元素都需要單獨(dú)進(jìn)行設(shè)計(jì)和編碼。界面上任何功能的調(diào)整,都需要對(duì)整個(gè)代碼進(jìn)行重新編譯和發(fā)布。系統(tǒng)的開(kāi)發(fā)效率很低,發(fā)布成本很高。
ERP軟件系統(tǒng)的大量頁(yè)面需求與頁(yè)面開(kāi)發(fā)的低效率產(chǎn)生了矛盾。傳統(tǒng)的開(kāi)發(fā)模式已經(jīng)不能滿足現(xiàn)代大型ERP軟件開(kāi)發(fā)的需求。為了解決這個(gè)問(wèn)題,金蝶公司將領(lǐng)域模型應(yīng)用到ERP軟件建模中,提出了ERP動(dòng)態(tài)領(lǐng)域模型的概念。
2 領(lǐng)域模研究現(xiàn)狀
領(lǐng)域模型是對(duì)領(lǐng)域內(nèi)的概念類或現(xiàn)實(shí)世界中對(duì)象的可視化表示。它專注于分析問(wèn)題領(lǐng)域本身,發(fā)掘重要的業(yè)務(wù)領(lǐng)域概念,并建立業(yè)務(wù)領(lǐng)域概念之間的關(guān)系。
在進(jìn)行領(lǐng)域建模時(shí),一般先根據(jù)業(yè)務(wù)分析得到一個(gè)名詞列表,然后對(duì)名詞列表進(jìn)一步抽象,確定業(yè)務(wù)對(duì)象實(shí)體及實(shí)體間的關(guān)系。業(yè)務(wù)對(duì)象實(shí)體要不僅反映目前的經(jīng)營(yíng)實(shí)體,還要給需求分析人員和系統(tǒng)功能提供了一定的擴(kuò)展視野。接著,從業(yè)務(wù)實(shí)體集合中抽象業(yè)務(wù)模型,建立問(wèn)題域的概念。最后。用使用UML提供的方法和圖例進(jìn)行領(lǐng)域模型設(shè)計(jì)、確定模型之間的關(guān)系。
中國(guó)科學(xué)院計(jì)算技術(shù)研究所的王宇等阿通過(guò)機(jī)器學(xué)習(xí)方法對(duì)信息抽取過(guò)程進(jìn)行領(lǐng)域建模,實(shí)現(xiàn)了互聯(lián)網(wǎng)信息挖掘的研究。
吉林大學(xué)的王曉燕等既使用領(lǐng)域模型捕獲系統(tǒng)業(yè)務(wù)的靜態(tài)需求,描述領(lǐng)域內(nèi)業(yè)務(wù)對(duì)象之間的靜態(tài)關(guān)系,建立一套軟件開(kāi)發(fā)框架。
華中科技大學(xué)的黃靖等通過(guò)擴(kuò)展FODA(Feature-Oriented Domain Analysis)方法,將實(shí)時(shí)特征作為實(shí)時(shí)應(yīng)用需求空間的一階實(shí)體來(lái)認(rèn)識(shí)和組織實(shí)時(shí)應(yīng)用系統(tǒng)領(lǐng)域模型。
可以發(fā)現(xiàn)這些研究是以靜態(tài)領(lǐng)域模型為基礎(chǔ),以名詞列表為最小分析對(duì)象,因此業(yè)務(wù)對(duì)象實(shí)體的粒度較大,模型的通用性不高。
3 ERP軟件建模的現(xiàn)狀
ERP系統(tǒng)作為一類重要的應(yīng)用軟件系統(tǒng),真有自己的特點(diǎn),主要有兩個(gè)方面:
①系統(tǒng)規(guī)模大,目前市場(chǎng)上常見(jiàn)的ERP系統(tǒng)一般都有幾百個(gè)頁(yè)面。
②頁(yè)面邏輯相似性強(qiáng)。經(jīng)過(guò)比較可以發(fā)現(xiàn),大部分ERP頁(yè)面具有類似的功能,以數(shù)據(jù)的錄入,修改,顯示為主。
結(jié)合ERP系統(tǒng)的這兩個(gè)方面的特點(diǎn),國(guó)內(nèi)外多個(gè)組織進(jìn)行了系統(tǒng)建模的研究,希望能夠提高ERP系統(tǒng)的開(kāi)發(fā)效率和軟件質(zhì)量。
合肥工業(yè)大學(xué)的吳冒等川提出了一種基于元模型的業(yè)務(wù)建模方法。對(duì)WFMC工作流過(guò)程定義元模型進(jìn)行改進(jìn).擴(kuò)展出了一個(gè)從組織、功能、信息、資源和過(guò)程五個(gè)個(gè)側(cè)面對(duì)ERP業(yè)務(wù)進(jìn)行描述的領(lǐng)域元模型。
哈爾濱理工大學(xué)的高長(zhǎng)元等結(jié)合集成化企業(yè)建模和DEM的思想,設(shè)計(jì)了面向制造業(yè)ERP的企業(yè)建模框架,并對(duì)其中的視圖維、生命周期維、通用層次維以及它們之間的關(guān)系進(jìn)行了詳細(xì)設(shè)計(jì)。
重慶工學(xué)院的王柯柯等網(wǎng)在分析UML建模特點(diǎn)的基礎(chǔ)上,提出了使用統(tǒng)一建模語(yǔ)言UML對(duì)ERP系統(tǒng)建模。
這些ERP建模方法在其特定的環(huán)境下,部分解決了ERP軟件建模的問(wèn)題。但這些建模方法還是基于粗粒度的實(shí)體進(jìn)行研究的,不能實(shí)現(xiàn)動(dòng)態(tài)的構(gòu)建和解析。
4 ERP動(dòng)態(tài)領(lǐng)域建模
ERP系統(tǒng)規(guī)模龐大,除了要設(shè)計(jì)大量的頁(yè)面外,還有復(fù)雜的工作流程,業(yè)務(wù)邏輯等需要處理。如果對(duì)每個(gè)功能模塊分別進(jìn)行設(shè)計(jì)、實(shí)現(xiàn),必然造成開(kāi)發(fā)效率低下,開(kāi)發(fā)成本高的問(wèn)題。
領(lǐng)域建模作為一種有效的應(yīng)用建模方法,可以方便的將應(yīng)用項(xiàng)目需求轉(zhuǎn)化為計(jì)算機(jī)軟件模型。但傳統(tǒng)的領(lǐng)域建模研究對(duì)象的粒度較大,不能靈活適應(yīng)動(dòng)態(tài)變化的需求。
金蝶公司在分析ERP系統(tǒng)特點(diǎn)的基礎(chǔ)上,進(jìn)一步細(xì)化領(lǐng)域模型的對(duì)象實(shí)體,提出了ERP動(dòng)態(tài)領(lǐng)域模型的概念,較好的解決了ERP軟件開(kāi)發(fā)中的一系列問(wèn)題。
4.1傳統(tǒng)的領(lǐng)域模型
構(gòu)建領(lǐng)域模型一般包括如下四個(gè)步驟:
①根據(jù)業(yè)務(wù)分析列出系統(tǒng)中的名詞列表。
②對(duì)名詞列表進(jìn)行抽象,得到對(duì)象實(shí)體。
③從業(yè)務(wù)實(shí)體集合中抽象業(yè)務(wù)模型,建立問(wèn)題域的概念。
④使用UML提供的方法和圖例進(jìn)行領(lǐng)域模型設(shè)計(jì)、確定模型之間的關(guān)系。
確定對(duì)象實(shí)體是整個(gè)領(lǐng)域建模的核心問(wèn)題,對(duì)象實(shí)體的抽象層次決定了最終的領(lǐng)域模型。
針對(duì)ERP系統(tǒng),使用傳統(tǒng)的領(lǐng)域建模理論有如下兩種選擇對(duì)象實(shí)體的方法。
①選取ERP應(yīng)用的對(duì)象作為對(duì)象實(shí)體,例如:原材料、供應(yīng)商、皮付款、中間件、產(chǎn)品、經(jīng)銷商、應(yīng)收款等,使用這種領(lǐng)域模型能夠很好的分析系統(tǒng)的各種需求。但是這種方法沒(méi)有抓住不同業(yè)務(wù)模塊(頁(yè)面,工作流等)的共有特性,軟件設(shè)計(jì)必然是以單個(gè)業(yè)務(wù)模塊為單位。
②先使用第一種領(lǐng)域建模得到單個(gè)業(yè)務(wù)模塊的概要設(shè)計(jì),然后以此為基礎(chǔ),根據(jù)不同模塊的特點(diǎn),將相似的模塊歸類,以相似的模塊作為領(lǐng)域模型的實(shí)體對(duì)象。
這種方法得到的領(lǐng)域模型的對(duì)象實(shí)體是模塊級(jí)的,界面設(shè)計(jì)是以頁(yè)面組為單位,相似的多個(gè)頁(yè)面可以共用一個(gè)模型作為母板,比第一種方法有較大的改進(jìn)。但是如果界面上的元素或操作發(fā)生變化,就必須重新設(shè)計(jì)界面模型,修改代碼。不能實(shí)現(xiàn)界面在部署環(huán)境的按需動(dòng)態(tài)構(gòu)建。
4.2動(dòng)態(tài)領(lǐng)域建?蚣
金蝶公司的技術(shù)人員在傳統(tǒng)的粗粒度的領(lǐng)域模型的基礎(chǔ)上,以模塊上的基本元素為研究對(duì)象,提出了ERP動(dòng)態(tài)領(lǐng)域模型的概念。
動(dòng)態(tài)領(lǐng)域建模由模型庫(kù),領(lǐng)域模型,領(lǐng)域模型動(dòng)態(tài)解釋引擎三個(gè)部分組成。如圖l所示。
圖1 動(dòng)態(tài)領(lǐng)域建?蚣
先根據(jù)多個(gè)ERP系統(tǒng)分別進(jìn)行抽象,得到多組基本對(duì)象實(shí)體。然后對(duì)這些對(duì)象實(shí)體再進(jìn)一步抽象,得到模型庫(kù)(包括通用的元模型庫(kù)和特定行業(yè)的定制的專用模型庫(kù))。接著使用這些模型元素構(gòu)建ERP系統(tǒng)的功能模塊,當(dāng)需要加載某個(gè)模塊時(shí),使用動(dòng)態(tài)解釋引擎將設(shè)計(jì)好的功能轉(zhuǎn)換為內(nèi)存中的映射。
模型庫(kù)被封裝成動(dòng)態(tài)鏈接庫(kù)的形式提供給開(kāi)發(fā)人員使用,動(dòng)態(tài)解釋引擎將設(shè)計(jì)好的功能轉(zhuǎn)換為內(nèi)存中的映射。開(kāi)發(fā)人員可以使用Silverlight,JSP等多種形式將內(nèi)存中的映射展示給用戶。系統(tǒng)具有很好的跨平臺(tái)性和兼容性。
4.3領(lǐng)域元模型
領(lǐng)域元模型是進(jìn)行動(dòng)態(tài)領(lǐng)域建模的基礎(chǔ)。金蝶公司結(jié)合80萬(wàn)家ERP客戶的最佳實(shí)踐,建立了一套完整的ERP領(lǐng)域元模型。
結(jié)合ERP系統(tǒng)的特點(diǎn),ERP動(dòng)態(tài)領(lǐng)域模型包括模型——元素——屬性三層體系結(jié)構(gòu)。
圖2 三層領(lǐng)域模型結(jié)構(gòu)圖
模型對(duì)應(yīng)于ERP系統(tǒng)中模塊的種類。例如頁(yè)面,工作流,電子報(bào)表,算法等。每一類有自己獨(dú)特的特點(diǎn),需要使用不同的方法進(jìn)行設(shè)計(jì)。
針對(duì)ERP系統(tǒng)中常見(jiàn)的功能模塊,建立了界面模型、工作流模型、算法模型等十多種ERP領(lǐng)域模型,如圖3所示。并根據(jù)部分特定行業(yè)的特殊要求,定制的一些專用元模型。
圖3 ERP動(dòng)態(tài)領(lǐng)域模型
ERP領(lǐng)域模型確定了模塊的大的分類.粒度較大,還需要進(jìn)一步細(xì)化。針對(duì)一個(gè)個(gè)具體的基本元素進(jìn)行研究。
例如一個(gè)典型的頁(yè)面的由菜單、文本輸入框、時(shí)間輸入框、列表、顯示信息等多個(gè)控件組成。每一種控件可以看作是一個(gè)基本元素,圖4是一個(gè)典型的頁(yè)面包含的元素示意圖。
圖4頁(yè)面元素示意圖
在一個(gè)頁(yè)而上相同種類的控件可能會(huì)有很多個(gè),它們顯示的內(nèi)容和格式都可能不同。例如,一個(gè)應(yīng)收單上有兩個(gè)文本輸入框,一個(gè)要輸入應(yīng)收金額,一個(gè)要輸入收款單位。應(yīng)收金額只能輸入數(shù)字,長(zhǎng)度20個(gè)像素。收款單位可以輸入中文和英文,長(zhǎng)度100個(gè)像素。
在金蝶ERP動(dòng)態(tài)領(lǐng)域模型中,元素的差異性使用元素的屬性來(lái)表示。每個(gè)元素都有多個(gè)可以動(dòng)態(tài)修改的屬性。例如文本框有類型、長(zhǎng)度、高度、綁定的數(shù)據(jù)庫(kù)字段等多種屬性。
除了頁(yè)面外,ERP系統(tǒng)中常見(jiàn)的多種功能模塊,也都使用類似的方法進(jìn)行分析,得到元模型。
例如工作流由多個(gè)動(dòng)作及連線組成?梢苑謩e抽象成元模型。動(dòng)作的具體操作、執(zhí)行者、條件等都作為該元模型的屬性。設(shè)計(jì)一個(gè)業(yè)務(wù)流程模式后,改變動(dòng)作的屬性值可以根據(jù)需要設(shè)計(jì)出不同的業(yè)務(wù)流程。
再例如。設(shè)計(jì)電子報(bào)表時(shí)。在不同的場(chǎng)景下需要不同的計(jì)算公式,傳統(tǒng)的方法是將具體的公式作為程序代碼的一部分,這就增加了修改和維護(hù)的難度。使用動(dòng)態(tài)領(lǐng)域建模的方法,將公式定義為一種元模型,具體的公式表達(dá)武作為該元素的屬性值?梢栽诓恍枰薷拇a的前提下,得到各種滿足需要的公式。
4.4基于動(dòng)態(tài)領(lǐng)域模型的業(yè)務(wù)模塊設(shè)計(jì)
經(jīng)過(guò)以上的步驟,元模型數(shù)據(jù)就確定了。所有的這些元模型數(shù)據(jù)的定義都是抽象的。與具體的業(yè)務(wù)邏輯無(wú)關(guān)的。
要使用領(lǐng)域元模型來(lái)設(shè)計(jì)具體的業(yè)務(wù)模塊,先要以領(lǐng)域元模型為基礎(chǔ)建立一個(gè)業(yè)務(wù)模塊設(shè)計(jì)平臺(tái)。這里不詳細(xì)介紹該平臺(tái)的建立過(guò)程。
業(yè)務(wù)模塊設(shè)計(jì)平臺(tái)建立后,可以使用該平臺(tái)來(lái)進(jìn)行具體的業(yè)務(wù)模塊的設(shè)計(jì)。
業(yè)務(wù)模塊的設(shè)計(jì)分為以下幾個(gè)步驟:
①確定模塊的需求。
②使用設(shè)計(jì)平臺(tái)提供的環(huán)境,使用領(lǐng)域元素進(jìn)行模塊設(shè)計(jì)。
③分別指定各領(lǐng)域元素的屬性,完成模塊的特定需求。
④將設(shè)計(jì)好的模塊保存為XML文件,以備調(diào)用。
作為一個(gè)典型的例子,使用動(dòng)態(tài)領(lǐng)域模型設(shè)計(jì)一個(gè)具體的頁(yè)面的步驟如下:
①確定該頁(yè)面要完成的功能(需求)。
②將選定的基本元素(文本輸入欄,列表,菜單,按鈕等)放置到頁(yè)面上。
③設(shè)定各元素的屬性。不同的頁(yè)面元素對(duì)應(yīng)不同的屬性值。屬性值可能是頁(yè)面元素的位置,長(zhǎng)度等外觀信息,也可能是校驗(yàn)規(guī)則,數(shù)據(jù)庫(kù)字段等邏輯信息,也可能是操作等控制信息。
④將頁(yè)面上的所有元素及它們的屬性保存到XML文件中。
4.5模塊設(shè)計(jì)的繼承和組合
前面提到了使用領(lǐng)域建模的基本元素進(jìn)行模塊設(shè)計(jì)的過(guò)程。該過(guò)程是從基本元素開(kāi)始的。
ERP系統(tǒng)中的模塊很多,而且很多模塊有一定的相似之處,如果能夠利用設(shè)計(jì)好的模塊來(lái)簡(jiǎn)化其他模塊的設(shè)計(jì)將大大提高系統(tǒng)的開(kāi)發(fā)效率。在動(dòng)態(tài)領(lǐng)域模型中,使用繼承和組合兩個(gè)方法來(lái)實(shí)現(xiàn)這個(gè)功能。
繼承就是先使用基本元素設(shè)計(jì)好一個(gè)模塊。然后以這個(gè)設(shè)計(jì)好的模塊為基礎(chǔ),增加,修改,刪除部分元素,或修改部分元素的屬性值來(lái)完成新的模塊的設(shè)計(jì)。
圖5 模塊繼承
被繼承的模塊的修改將引起子模塊的自動(dòng)修改。
使用繼承的方法設(shè)計(jì)模塊,將得到兩個(gè)XML文件。一個(gè)是被繼承的模塊的XML文件,一個(gè)是子模塊的差量XML文件。差量XML只保存子模塊相對(duì)干被繼承模塊修改的部分。
組合是先使用基本元素設(shè)計(jì)好一個(gè)模塊。然后將這個(gè)設(shè)計(jì)好的模塊作為新的模塊的一個(gè)組成部分來(lái)完成新的模塊的設(shè)計(jì)。
圖6 模塊組合
一個(gè)新的模塊可以包含多個(gè)設(shè)計(jì)好的模塊。并且可以修改所包含的模塊。例如新的模塊A包含設(shè)計(jì)好的模塊B和C。可以根據(jù)需要修改為包含模塊C和D。被包含的模塊的修改將引起最終模塊的自動(dòng)修改。
采用組合方法設(shè)計(jì)模塊時(shí),將得到多個(gè)XML文件,分別為被包含模塊的XML文件和最終模塊的XML文件。修改被包含模塊的XML文件將直接引起最終模塊功能的變化。
4.6領(lǐng)域模型動(dòng)態(tài)解釋引擎
經(jīng)過(guò)以上的步驟,ERP系統(tǒng)中的模塊(包括頁(yè)面。業(yè)務(wù)流程。報(bào)表等)以XML文件的形式保存了起來(lái),當(dāng)要加載模塊時(shí),需要將XML文件轉(zhuǎn)換為模塊在內(nèi)存中的映射,這部分工作由動(dòng)態(tài)解釋引擎負(fù)責(zé)。圖7是動(dòng)態(tài)解釋引擎的示意圖。
圖7動(dòng)態(tài)解釋引擎示意圖
動(dòng)態(tài)解釋引擎由展示層,服務(wù)層,內(nèi)核層組成。當(dāng)XML文檔輸入解釋引擎后,內(nèi)核層讀取元模型數(shù)據(jù)解析XML文檔,并將結(jié)果交給服務(wù)層。服務(wù)層將解析結(jié)果封裝成可以在網(wǎng)絡(luò)中傳輸?shù)腏SON數(shù)據(jù)包,并發(fā)送到展示層。展示層收到JSON數(shù)據(jù)包后。使用不同的方式晨示綺用戶。具體說(shuō)明如下:
內(nèi)核層:負(fù)責(zé)根據(jù)存儲(chǔ)的元模型數(shù)據(jù)動(dòng)態(tài)解析模塊XML文檔。模塊的種類不向,解析時(shí)使用的模型也不同。動(dòng)態(tài)頁(yè)面,報(bào)表等顯示類的模塊與業(yè)務(wù)流程等處理類模塊處理方式有較大的不同。服務(wù)層:將內(nèi)核層處理的結(jié)果組裝成模塊在內(nèi)存的映射。動(dòng)態(tài)頁(yè)面,報(bào)表等顯示類的模塊轉(zhuǎn)化為可以在網(wǎng)絡(luò)傳輸?shù)腏SON數(shù)據(jù)包。業(yè)務(wù)流程等模塊中的自動(dòng)動(dòng)作將直接執(zhí)行,需要與用戶交互的動(dòng)作將轉(zhuǎn)化為JSON數(shù)據(jù)包。
展示層:由一系列標(biāo)準(zhǔn)的UI控件組成,根據(jù)服務(wù)層返回的結(jié)果進(jìn)行窗體控件動(dòng)態(tài)創(chuàng)建并接受用戶數(shù)據(jù)輸入,完成系統(tǒng)與用戶的交互。不同的模塊給用戶展示的方式不同。
4.7模塊設(shè)計(jì)的擴(kuò)展
使用前面介紹的基于動(dòng)態(tài)領(lǐng)域建模的模塊設(shè)計(jì)方法可以完成大部分模塊的設(shè)計(jì)工作。但是可能還有一些模塊的特殊功能無(wú)法實(shí)現(xiàn),這部分功能使用插件的方法來(lái)實(shí)現(xiàn)。
例如在業(yè)務(wù)流程設(shè)計(jì)時(shí)。系統(tǒng)內(nèi)置了大量的動(dòng)作,但如果要執(zhí)行特殊的沒(méi)有內(nèi)置的功能,就需要定義新的動(dòng)作,必須使用插件來(lái)實(shí)現(xiàn)。
插件的設(shè)計(jì)也是基于動(dòng)態(tài)領(lǐng)域模型的。每一種元素在系統(tǒng)中有相應(yīng)的基類和一系列虛方法。插件就是在這些基類和虛方法及基礎(chǔ)上通過(guò)繼承的方法來(lái)擴(kuò)充基本元素的功能。
一個(gè)基本元素可以定義多個(gè)插件,實(shí)現(xiàn)多種擴(kuò)充,具體進(jìn)行模塊設(shè)計(jì)時(shí),通過(guò)將合適的插件在模塊上注冊(cè)的方法實(shí)現(xiàn)不同的擴(kuò)充。
將插件在系統(tǒng)中注冊(cè)后,在解析時(shí),將使用插件中定義的類和方法覆蓋系統(tǒng)中的基類和虛方法,從而在不改變平臺(tái)的基礎(chǔ)上擴(kuò)充功能。
5 實(shí)現(xiàn)
經(jīng)過(guò)大量金蝶人的共同努力,已經(jīng)成功的將動(dòng)態(tài)領(lǐng)域建模應(yīng)用到了ERP軟件建模中。
金蝶公司結(jié)合80萬(wàn)家ERP客戶的最佳實(shí)踐,抽象出10多種ERP領(lǐng)域模型、365種基本元素、7000多個(gè)元素屬性、上百個(gè)業(yè)務(wù)邏輯構(gòu)件,并以此為基礎(chǔ),設(shè)計(jì)一個(gè)BOS(Business Operating system)系統(tǒng)。作為模型設(shè)計(jì)器和模型動(dòng)態(tài)解釋引擎。BOS系統(tǒng)已經(jīng)在金蝶ERP系統(tǒng)開(kāi)發(fā)中得到了應(yīng)用。
使用動(dòng)態(tài)領(lǐng)域建模后,ERP系統(tǒng)開(kāi)發(fā)變成了在BOS平臺(tái)上界面的設(shè)計(jì),幾乎不需要修改任何代碼,而且可以很好地保持界面質(zhì)量的一致性。經(jīng)過(guò)簡(jiǎn)單的培訓(xùn),實(shí)施顧問(wèn)和最終用戶都可以配置出專業(yè)的ERP應(yīng)用,、
將動(dòng)態(tài)領(lǐng)域建模技術(shù)應(yīng)用到ERP應(yīng)用系統(tǒng)開(kāi)發(fā)后,開(kāi)發(fā)效率大幅上升,系統(tǒng)的可遷移性得到了顯著提高。采用這種技術(shù)前,90%的精力花費(fèi)在具體頁(yè)面的設(shè)計(jì)上,無(wú)法專注與ERP業(yè)務(wù)流程的設(shè)計(jì)。采用動(dòng)態(tài)領(lǐng)域建模技術(shù)啟,頁(yè)面開(kāi)發(fā)的時(shí)問(wèn)降低為10%。開(kāi)發(fā)人員90%的精力關(guān)注業(yè)務(wù)邏輯設(shè)計(jì)和系統(tǒng)建模。從而可以開(kāi)發(fā)出更加適合企業(yè)需求的產(chǎn)品。
另一方面,采用新的技術(shù)后,系統(tǒng)開(kāi)發(fā)的難度大幅下降,新員工經(jīng)過(guò)簡(jiǎn)單培訓(xùn)就可以開(kāi)始工作。同時(shí)。由于減少了代碼修改的數(shù)量,系統(tǒng)的質(zhì)量也得到了大幅提高。
6 結(jié)論
動(dòng)態(tài)領(lǐng)域建模是對(duì)模型驅(qū)動(dòng)架構(gòu)MDA似(Model Driven Architecture)一設(shè)計(jì)思想一種擴(kuò)展。金蝶公司在ERP動(dòng)態(tài)領(lǐng)域建模方面進(jìn)行了大量的探索和實(shí)踐,經(jīng)過(guò)3000家以上平臺(tái)客戶實(shí)踐,抽象出獨(dú)特的標(biāo)準(zhǔn)、行業(yè)、伙伴、客戶的多層次開(kāi)發(fā)模型。能夠支持成果組合應(yīng)用與平滑升級(jí),形成平臺(tái)批量交付能力。
動(dòng)態(tài)領(lǐng)域模型具有以下幾方面的優(yōu)勢(shì):
①可以大幅提高了ERP系統(tǒng)的設(shè)計(jì)和開(kāi)發(fā)效率,有效提升軟件產(chǎn)品的質(zhì)量。
②獨(dú)特的模型解釋系統(tǒng),設(shè)計(jì)出來(lái)的產(chǎn)品具有良好的動(dòng)態(tài)性。
③微內(nèi)核架構(gòu)設(shè)計(jì),模型可持續(xù)發(fā)展,是一個(gè)能夠自我學(xué)習(xí)和自動(dòng)進(jìn)行行業(yè)知識(shí)積累的智慧無(wú)模型系統(tǒng)。
④技術(shù)無(wú)關(guān)性,適應(yīng)IT技術(shù)發(fā)展變化。
基于動(dòng)態(tài)領(lǐng)域模型的設(shè)計(jì)方法可以推廣到其他類似的大型軟件系統(tǒng)中,具有較高的理論和應(yīng)用價(jià)值。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標(biāo)題:ERP動(dòng)態(tài)領(lǐng)域模型
本文網(wǎng)址:http://www.ezxoed.cn/html/consultation/1082066186.html