王 震,蔣哲遠
(合肥工業大學 計算機與信息學院,合肥 230009) (*通信作者電子郵箱1432719183@qq.com)
基于SaaS的ERP云服務平臺UML profile建模與描述
王 震*,蔣哲遠
(合肥工業大學 計算機與信息學院,合肥 230009) (*通信作者電子郵箱1432719183@qq.com)
針對當前商業環境中傳統企業資源計劃(ERP)系統的低開放性、低拓展性和高成本等問題,提出了一種基于軟件即服務(SaaS)模式的ERP系統建模方法。首先,利用UML的拓展機制,對原語擴充,得到新的原語集UML profile;其次,建立等效元模型,通過對象約束語言(OCL)保證語義的無二義性;最后,通過應用圖、操作字典、物理圖和拓撲圖組成的模型框架對云ERP系統進行描述,實現云ERP系統的文檔化。該方法專注于模塊化設計,所有階段均采用統一的可視化元模型。根據建模需求,在企業架構(EA)平臺上采用所提方法成功建立了基于SaaS的云ERP模型,驗證了所提建模方法的有效性。理論分析及建模結果表明,該方法確保了模型間的互操作性和一致性,提高了ERP系統的可成長性。
云平臺;軟件即服務;企業資源計劃;元模型;UML profile
傳統的商業應用,比如計算機輔助設計(Computer Aided Design, CAD)、產品數據管理(Product Data Management, PDM)、計算機輔助制造(Computer Aided Manufacturing, CAM)、企業資源計劃(Enterprise Resource Planning, ERP)、制造執行系統(Manufacturing Execution System, MES)等,它們都依賴一個中央服務器和相關軟件程序。在當今動態的商業環境中,這些系統都缺乏充足的自主性和靈活性[1]。隨著網絡技術的進步和云計算的發展,一些企業應用,特別是企業資源計劃(Enterprise Resource Planning, ERP)系統,已經和云服務有了進一步的融合,并且通過互聯網提供信息和通信,已經成為了全球業務戰略的一部分[2]。隨著新型的對移動性和按需服務的需求,支持Web的ERP系統的開發變成一個急迫的研究和發展課題[3]。
通過云服務平臺訂閱Web服務對于ERP應用程序有兩個重要的優勢,通過托管應用程序模型,更易于集成和降低成本[4]。Wu等[5]提出一個框架來測量云計算環境中服務的可拓展性,還根據服務效率,提出了一個分配策略來提高復合Web服務的可拓展性。楊男等[6]提出了基于云計算平臺的服務型ERP系統框架(Enterprise Resource Planning based on Cloud Service Architecture, ERP-CSA),描述了在云計算中實現ERP的服務模式和原理。有個和本文用了相似方法的研究成果“MULTICLAPP(MULTICLoud APPlications)”,它是由Guillén等[7]為了模擬多重云應用程序,提出的一個基于統一建模語言(Unified Modeling Language, UML)的模型,但是他們的重點集中在對多重云供應商的模擬,而沒有更多地關注到ERP系統的設計者和開發者的要求。Alshayeb等[8]提出了一種通過UML建模的綜合架構,它通過類圖、順序圖和用例圖來對軟件系統建模,該建模框架可以適應不同領域,但在部署實施及邏輯組件的描述方面有所欠缺。現代企業信息系統是以分布式架構為基礎,本地網絡和互聯網混合的基于Web的應用程序。最近研究表明,通過軟件服務(Software-as-a-Service, SaaS)交付的ERP要優于傳統提供的ERP[9]。雖然在基于SaaS的應用程序中,ERP落后于其他應用,但是普遍認為ERP在云平臺上是充滿發展潛力的。ERP系統市場的四大參與者:企業管理解決方案(System Applications and Products, SAP)、Oracle、Sage和微軟都把他們自己提供的ERP定位在軟件服務模型中[10]。但是,描述一個服務比描述一件產品更加復雜,因為服務有著無形、集成和易逝性的特點[11]。
總之,最近幾年最大的趨勢之一就是云計算。它有著重塑信息技術(Information Technology, IT)服務消費方式的潛力。最近一些ERP銷售商已經把他們的部分產品移到云中,如SAP的設計。然而,為了使顧客可以看見越來越多的適合移到云上的服務,還有很多工作要做,因此,仍然需要更多的研究工作來闡明這兩者之間密切結合的知識。
本文著重解決基于云服務的ERP軟件工程建模問題。提出了ERPUML profile,根據新的語義,對UML元類進行了適應性的拓展。文中ERPUML profile構建在現有的UML建模平臺企業架構(Enterprise Architect, EA)上,因此不需要再構建一個完整的自定義環境。本文提出的模型架構是一個統一的建模標準,它提供了一個繪制UML元模型實體的方法。將相同的元模型貫穿模型所有的建模階段,可以確保模型各階段互操作行和一致性。系統的每一個配置階段都可能關聯到其他方面。根據這一特點,本文通過UML,針對不同階段用可視化圖進行系統建模。
當今,云計算并沒有一個標準的定義,下面是較為準確的一個:云計算是指作為服務交付的應用程序和硬件,以及提供這些服務的數據中心中的系統軟件[12]。云服務可以看作是一個基于云計算的集群解決方案,它涉及計算、數據存儲和通過互聯網可獲得的軟件服務。一般來講,云服務可以被分為3類[13]。
1)軟件服務(SaaS)。在網絡上進行應用程序服務交付。遠程、靈活、無縫的SaaS簡化了大量軟件應用的使用[14]。
2)平臺服務(Platform-as-a-Service, PaaS)。指一個軟件的開發工作框架和組件全部在網上交付。按需提供,并為使用模型支付費用。PaaS模型包里的一個計算平臺包括操作系統、編程語言執行環境、數據庫和Web服務器。一個PaaS客戶端能夠開發和運行它自己在軟件層的應用程序[14]。
3)基礎設施服務(Infrastructure-as-a-Service, IaaS)。一個計算資源、存儲和網絡結構的集成環境,并且可以通過網絡交付。按需提供,并為使用模型支付費用。
在這三類中,SaaS被認為是一個很有發展潛力的部分,使用SaaS的解決方案能給企業用戶帶來許多好處,同時在提高IT性能上也有著深遠的影響[15]。而流程定制也已逐漸成為產業鏈協同SaaS平臺發展的一種趨勢,它在滿足租戶的個性化需求和降低供應商成本上有著至關重要的作用[16]。一方面軟件提供者可以極大地簡化軟件的安裝和維護,集中控制版本;另一方面,在基礎設施里保證數據安全的同時,終端用戶可以隨時隨地訪問數據服務,可以很容易地與伙伴合作。圖1描繪了一個云ERP平臺,該平臺支持互操作性,即服務到服務的交互。云ERP旨在通過多個供應商為企業用戶提供靈活地租賃整個ERP的服務。該平臺有三個主要參與者,如下所示。
1)云服務提供商:使ERP提供商和企業用戶之間可以進行溝通交流。
2)ERP提供商。提供一個計算機可讀的基于可拓展標記語言(Extensive Markup Language,XML)的文件,對執行各種應用程序功能的Web服務進行描述。
3)企業用戶。他們選擇和租用Web服務來滿足他們的ERP需求。
圖1中具體流程如下。
步驟1 提交和評估。
1)ERP供應商提交Web服務到平臺上。
2)平臺核實Web服務的兼容性。如果不兼容,將它發回到ERP提供商那里。
3)專家開始評估每個Web服務。
步驟2 發布。
在這個平臺上發布Web服務,通知用戶。
步驟3 選擇。
1)用戶輸入需求和約束條件。
2)用戶選擇合成的方法。
步驟4 實現。
1)平臺合成Web服務,配置到用戶的虛擬云中。
2)平臺通知用戶。
步驟5 使用。
1)用戶通過虛擬云使用服務。
2)用戶評價過程,并反饋到平臺上。

圖1 云ERP平臺
根據云計算部署方式,云ERP可以分為3種類型:首先是基于外部第三方提供者提供的Web服務網絡,由外部/公共云資源動態提供一個自助服務,即將業務外包給外部供應商;其次是在一個沒有網絡寬帶限制或安全風險的企業中的內部/私人云ERP數據和進程管理;最后是包含了多個內部和外部云計算解決方案的混合云環境中的ERP[17]。
眾所周知,部署到企業內部的ERP解決方案更安全、更可靠,而在云 ERP解決方案中,企業會租用一套完整的方案,包括軟件和交付機制,同時也會更加依賴外部供應商,但成本會降低,因為用戶只需按需付費即可。前文中第一類模式僅僅適應于公共云,第二類模式只可以被應用于私有云。當今ERP系統提供公有云和私有云之間的轉換,使得SaaS模式在技術方面的優勢可以得到充分發揮,因此基于SaaS 的云ERP得到了更廣泛的應用[18]。
模型驅動架構(Model Driven Architecture, MDA)是模型驅動的開發框架,其目的是定義一種描述和創建系統的新途徑,使UML可以走得更遠。MDA將應用系統與實現技術平臺分離,以統一建模語言UML來表達與平臺無關的平臺獨立模型(Platform Independent Model, PIM),然后設計出適用于具體環境的特定平臺模型(Platform Specific Model, PSM),因為分隔且封裝了企業與技術兩方面的變化,所以降低了兩者之間的牽動。PIM是具有高抽象層次、獨立任何實現技術的模型,PIM可以被轉換為一個或多個PSM。PSM是為某種特定實現技術量身定作的,例如,Java中的商業應用組件——EJB(Enterprise Java Bean),PSM是用EJB結構表達的系統模型。PIM和PSM代表了對系統不同層次的抽象,從不同的視角來看待系統,將高層次的PIM轉換到PSM的能力提升了抽象的層次,能夠使開發人員更加清晰地了解系統的整個架構。
基于MDA的云計算軟件開發平臺,包括基于云計算環境的MDA開發工具、云計算支撐環境和云存儲構件庫等,其中軟件開發MDA工具是主要研究目標[19]。MDA提供了一個從技術平臺決策分離組織過程的概念性框架,其顯著特點是可以使用自動化工具、定義抽象模型及完成不同模型之間的轉換。
本章概述了基于MDA方法開發的云ERP模型。MDA基于4層元模型體系結構和幾個互補的由對象管理組織(Object Management Group, OMG)設定的標準:元對象機制(Meta Object Facility, MOF)、UML和UML profile。如圖2所示,從下向上,依次是元元模型層(M0)、元模型層(M1)、模型層(M2)和實體層(M3)。M3層模型是一個特定的應用程序,包括M2模型元素實例的人口。M2層是一個特定的應用程序在一個特定的建模系統為代表的模型。M2層的元素是定制的UML模型,屬于PSM,即特殊平臺模型。M1層屬于PIM(平臺獨立模型),包括UML和UML模型的建模語言,用于構建M2層模型。它定義了建模語言的語法和語義。UML profile機制允許對現有的UML元模型、元類進行拓展,以適應不同的領域環境。其中包括為不同領域定制UML元模型的能力。M0層模型是MOF,是指定建模系統的統一建模語言。MOF是一個抽象語言,被創建用來定義建模語言,如UML或公共倉庫元模型(Common Warehouse Meta-model, CWM)[20]。
profile的設計過程首先是定義一組適應于云ERP的構造型和圖標,然后在profile元素上附上約束條件,來增強其表現力,因為UML作為可視化建模語言,其語義不夠明確。
本章根據第2章描述的云ERP框架提出了ERPUML profile(如圖3)。該profile使用標準的方法,通過構造型來表示云ERP框架語義,因此支持UML工具對這些語義進行表達。一般來講, 一個UML profile可以通過定義UML拓展機制中的下列類型,來拓展UML建模語言。

圖2 4層模型驅動架構

圖3 ERPUML profile
1)構造型。構造型定義了一個現有的元類的拓展,通過拓展的元類,允許將領域特殊術語或符號添加到元類中,或者替換現有的元類。
2)約束。約束直接連接到UML元素,描述了UML元素必須遵守的語義限制。它可以在任何語言中表達,無論其是否可以機讀。
3)標記值。標記值進一步描述了構造型元素。每個標記值都有一個名字和類型,并與特定的構造型相關聯。
3.1 構造型
拓展機制是UML中的一大特點,profile包是UML拓展機制的一種實現。事實上,UML拓展機制是通過創建的構造型(如表1)構建特定領域的語言基礎,通過將UML核心類子類化來引進新的語言原語,新的子類表達了這些原語的新屬性[21]。通過標記對應的構造型,可以將模型元素對應到這些原語中。
本文主要模擬的是云ERP服務,將ERP應用和云平臺結合。而本節通過描述帶有云ERP特色的UML profile,使模型能夠很好地適應ERP對新概念的應用。其中構造型<
元模型如圖4所示。

圖4 元模型

表1 構造型
3.2 約束條件
對象約束語言(Object Constraint Language, OCL)作為圖形符號的補充,用來說明建模元素的細節。OCL是形式化的無二義的語言,不會改變模型中的內容,可以用來更好地定義對象的行為,并為任意類元指定約束,生成更精確的域模型。
本文用OCL建立以下約束。
1)添加到構造型Service中的約束。
一個服務要有一個精準的類別:context Service inv: self.ownedMember->select(m|m.oclIsTypeOf (Category))>size()=1。
一個服務要有一個精準的標識符:context Service inv: self.ownedMember->select(m|m.oclIsTypeOf(Identifier))->size()=1。
一個服務要有一個唯一的標識符:context Service inv:Service.allinstances->forAll(p1,p2|p1<>p2 implies p1.Identifier<>p2.Identifier)。
類Service只能與類Provider、類Service、類Cloud Environment和類Management相關聯:self.allOpposite-AssociationEnds->forAll(participant.oclIsTypeOf(Provider) or oclIsTypeOf(Management)or oclIsTypeOf(Cloud Environment)or oclIsTypeOf(Service))。
2)添加到構造型EnterpriseUser的約束。
每個用戶的ID必須唯一:context EnterpriseUser inv:EnterpriseUser.allinstances->forAll(p1,p2|p1<>p2 implies p1.Identifier<>p2.Identifier)。
類EnterpriseUser只能和類Provider、Service相關聯:self.allOpposite-AssociationEnds->forAll(participant.oclIsTypeOf(Service)or oclIsTypeOf(Provider))。
3)添加到構造型Provider的約束。
每個供應商的ID必須唯一:context provider inv:Provider.allinstances->forAll(p1,p2|p1<>p2 implies p1.Identifier<>p2.Identifier)。
每個供應商只能和類EnterpriseUser和類Service相關聯:
self.allOpposite-AssociationEnds->forAll(participant.oclIsTypeOf(Service)or oclIsTypeOf(EnterpriseUser))。
4)添加到構造型Image的約束。
類image只能和類CloudEnvironment相關聯:self.allOppositeAssociationEnds->forAll(participant.oclIsTypeOf(CloudEnvironment))。
5)添加到構造型CloudEnvironment的約束。
類Cloud Environment只能和類Service、類image、類Cloud Security相關聯:self.allOppositeAssociationEnds->forAll(participant.oclIsTypeOf(Service) or oclIsTypeOf(Image)) or oclIsTypeOf(Cloud Security))。
6)添加到構造型CloudSecurity的約束。
類CloudSecurity只能和類CloudEnvironment相關聯:self.allOppositeAssociationEnds->forAll(participant.oclIsTypeOf (CloudSecurity))。
7)添加到構造型Management的約束。
類Management只能和Service相關聯:self.allOppositeAssociationEnds->forAll(participant.oclIsTypeOf (Service))。
8)添加到構造型Non-FunctionalAttribute的約束。
類Non-FunctionalAttribute只能和Service關聯:self.allOppositeAssociationEnds->forAll(participant.oclIsTypeOf (Service))。
圖5是部分XML代碼。

圖5 部分XML代碼
本章參照文獻[23]中云平臺下的ERP系統,提出了一個使用ERPUML profile創建的云ERP模型的實例,并對其進行了詳細的講解,幫助讀者更好地理解ERPUML profile,進一步了解它的應用。
在IT行業中,產品的生命周期是非常短的,公司經常需要交付新的有市場價值的產品。在一些IT行業領域,原始設備制造商(Original Equipment Manufacturer, OEM)和原始設計制造商(Original Design Manufacturer, ODM)是其主要的業務,這些公司沒有被卷入客戶銷售和營銷活動中。信息系統的跨功能合作,是為了應對快速變化的顧客需求和非常短的產品生命周期,IT行業領域中,短生命周期產品行業領域中的信息系統的跨功能合作,比在較長生命周期產品行業領域中更加重要。第2章已經對云ERP框架進行了初步的描述,一個典型的ERP系統的應用程序包括系統財務、人力資源、生產和進銷模塊,因此,一些企業用戶想要選擇來自ERP云平臺的這4個功能模塊,來定制他們自己的ERP系統。
根據建模過程中的不同階段,本文圍繞ERPUML profile,用UML圖從不同角度來對各個階段進行描述,并將其總結為了4個部分,包括應用圖、拓撲圖、物理圖和操作字典。
4.1 應用圖
應用程序是相互交互的組件集,如應用服務器、數據庫服務器等。每一個組件都有著具體的功能,如數據庫服務器用于數據存儲。用戶行為也在應用視圖中描述,用戶通過激活客戶端組件進行操作,調用服務。而服務實現由組件激活時產生的簡單任務組成,即操作。一般從預先定義的操作集選取操作,該操作集又被稱為操作字典。
應用圖本質上是UML的用例圖和類圖。UML的用例圖描述了系統的具體功能,因此,它們適合用來描述服務。服務代表了由系統提供一系列連貫的功能單元,本文將服務模擬為用例,并且將由它們組成的模塊稱為包。通過用例間關系的定義,可以形象地模擬服務間的關系。在類圖中可以進一步對這種功能關系進行抽象化定義,方便開發者進行代碼編寫。本文用例圖如圖6所示。
ERP供應商發布了ERP服務組件,包括生產管理服務、財務管理服務、進銷管理服務、人力資源管理服務和數據庫服務5個服務組件;同時為各個功能組件,配置相應的云環境,每個云環境都有著唯一一個與之對應的映像文件(Image)。根據模型,創建了兩個與Windows系統相關的映像,來對云ERP系統進行建模,具體類圖如圖7所示。

圖6 用例圖
4.2 操作字典
圖8展示了部分的操作字典。所有的操作都被分解為最基本的操作(功能處理、磁盤管理、網絡),系統設計師可以向操作字典中添加新的操作。比如,在圖8中將操作“尋找匹配服務”添加進字典中,添加操作要經過3步:定義參數,定義與現有操作間的依賴關系,驗證執行。驗證執行是指進行相應約束檢查,如果使用操作中定義的參數可以使操作正確執行,則該操作可以加入操作字典。
4.3 拓撲圖
拓撲圖是被封裝起來的邏輯部件,描述系統的拓撲結構,其本質是UML中的組件圖。如圖9中所示,ERP系統的實現需要4個功能模塊,生產管理、財務管理、進銷管理和人力資源管理。云 ERP模式下,ERP系統的實現過程中主要有3個參與者:云平臺、ERP供應商和企業用戶。
整個服務過程中,對服務的操作可以分為4種:發布、查找、綁定和調用。ERP供應商接受來自服務請求者的服務請求,同時向云平臺發布服務,云平臺中會生成相應服務目錄。用戶在服務注冊中心查找服務,根據返回信息向服務提供者請求服務,最后通過綁定和調用獲取所需服務。
4.4 物理圖
物理圖本質上是UML中的部署圖。云ERP系統中,所有網絡連接都是基于TCP/IP的。如圖10中所示,定義了ERP系統物理視圖的結構,其結構層次必須與實際工作流程和組件圖相一致。

圖7 類圖

圖8 操作字典

圖9 組件圖

圖10 部署圖
在國內,羅軍舟等[24]對云計算的研究和發展現狀作了總結,并對其體系結構、關鍵支撐技術和特點作了描述。Zhang等[25]從一個服務體系的角度探討了紡織產業集群中的IT服務改革。他們認為IT使生產者服務可以確保紡織產業集群的結構升級。
在國外也有許多專家學者對用UML profile在不同領域的建模應用進行了許多的嘗試和探索,從Flake等[26]在論文中提及一個為生產系統建模的方法MFERT,并為該方法提出了適應性的UML profile;到后來的Bruni等[27]為了描述面向服務的應用程序,提出了關注抽象架構層的模式化設計和重配置方面的UML profile描述;以及Al-Ghofaili等[9],也提出了3種企業ERP系統實現方法,包括傳統ERP、SaaS平臺上的ERP和IaaS平臺上的ERP,并對它們作了詳細的分析比較。另外,Tarantilis等[4]提出一個基于Web的ERP系統開發,來解決業務問題,從一個簡單的辦公自動化過程到復雜的供應鏈規則都是業務流程的管理范圍。
建模是當前軟件開發的基礎,對于云計算中應用程序的開發,建模是非常重要的,但由于模型的不匹配、配置過程的不合理等原因,使得ERP供應商的許多高額投入往往達不到預期效果,因此,合理的模型可以使設計師在開發前對系統進行分析和測試。本文主要在該方面進行了詳細的設計與探討。在統一元模型的基礎上,通過建立應用圖、操作字典、物理圖和拓撲圖,在元模型的基礎上從不同方面描述模型,并通過約束實現精確化建模。
根據具體云ERP框架,本文首先提出了一種新的原語ERPUML profile。然后通過不同視圖,從不同角度對云ERP進行描述,通過用例圖、類圖、組件圖和部署圖等,生成精確的域模型,設計實現了新的建模框架,保證了模型的互操作性和一致性。為云ERP的開發,提供了一個簡潔有效的建模方法。最后在EA平臺中實現并證明了本文提出方法框架的有效性。云ERP是一個復雜的企業信息系統,由于時間和技術的局限,本文的工作還不夠完善,許多功能未能實現。如可以進一步地將物聯網技術融入ERP系統,為生產管理服務提供原料跟蹤和物料智能補齊等服務。
References)
[1] LI B, LI M. Research and design on the refinery ERP and EERP based on SOA and the component oriented technology [C]// Proceedings of the 2009 International Conference on Networking and Digital Society. Washington, DC: IEEE Computer Society, 2009: 85-88.
[2] GUPTA M, KOHLI A. Enterprise resource planning systems and its implications for operations function [J]. Technovation, 2006, 26(5/6): 687-696.
[3] WANG T L, SU C H, TSAI P Y, et al. Development of a GridERP architecture: integration of grid computing and enterprise resources planning application [C]// WiCOM’ 08: Proceedings of the 4th International Conference on Wireless Communications, Networking and Mobile Computing. Piscataway, NJ: IEEE, 2008: 1-4.
[4] TARANTILIS C D, KIRANOUDIS C T, THEODORAKOPOULOS N D. A Web-based ERP system for business services and supply chain management: application to real-world process scheduling[J]. European Journal of Operational Research, 2008, 187(3):1310-1326.
[5] WU J, LIANG Q, BERTINO E. Improving scalability of software cloud for composite Web services [C]// Proceedings of the 2009 IEEE International Conference on Cloud Computing. Washington, DC: IEEE Computer Society, 2009: 143-146.
[6] 楊男,李東波,童一飛.面向服務的云計算ERP體系結構研究[J].制造業自動化,2012,34(19):74-77.(YANG N, LI D B, TONG Y F. Architecture for service-oriented ERP based on cloud computing platform [J]. Manufacturing Automation, 2012, 34(19): 74-77.)
[7] GUILLEN J, MIRANDA J, MURILLO J M, et al. A UML profile for modeling multicloud applications [M]// Service-Oriented and Cloud Computing. Berlin: Springer, 2013: 180-187.
[8] ALSHAYEB M, KHASHAN N, MAHMOOD S. A framework for an integrated unified modeling language [J]. Frontiers of Information Technology & Electronic Engineering, 2016, 17(2): 143-159.
[9] AL-GHOFAILI A A, AL-MASHARI M A. ERP system adoption traditional ERP systems vs. cloud-based ERP systems [C]// Proceedings of the Fourth International Conference on Innovative Computing Technology. Piscataway, NJ: IEEE, 2014: 135-139.
[10] JOHANSSON B, RUIVO P. Exploring factors for adopting ERP as SaaS [J]. Procedia Technology, 2013, 9: 94-99.
[11] IYER B, HENDERSON J C. Preparing for the future: understanding the seven capabilities of cloud computing [J]. MIS Quarterly Executive, 2010, 9(2): 117-131.
[12] ARMBRUST M, FOX A, GRIFFITH R, et al. A view of cloud computing [J]. Communications of the ACM, 2010, 53(4): 50-58.
[13] WU W W, LAN L W, LEE Y T. Exploring decisive factors affecting an organization’s SaaS adoption: a case study [J]. International Journal of Information Management, 2011, 31(6): 556-563.
[14] WANG X V, XU X W. An interoperable solution for cloud manufacturing [J]. Robotics and Computer-Integrated Manufacturing, 2013, 29(4): 232-247.
[15] CATTEDDU D. Cloud computing: benefits, risks and recommendations for information security [J]. Communications in Computer and Information Science, 2010, 72(1): 17-17.
[16] 曹帥,王淑營,劉述雅.面向產業鏈協同SaaS平臺的業務流程定制技術[J].計算機應用,2013,33(5):1450-1455.(CAO S, WANG S Y, LIU S Y. Workflow customization technology for collaborative SaaS platform of industrial chains [J]. Journal of Computer Applications, 2013, 33(5): 1450-1455.)
[17] RIMAL B P,CHOI E, LUMB I. A taxonomy and survey of cloud computing systems [C]// Proceedings of the Fifth International Joint Conference on INC, IMS and IDC. Washington, DC: IEEE Computer Society, 2009: 44-51.
[18] 陸洪潮.SaaS模式的ERP系統的研究[D].武漢:武漢理工大學,2009:9-15.(LU H C. The ERP system research based on SaaS model [D]. Wuhan: Wuhan University of Technology, 2009: 9-15.)
[19] 解紹詞,葛君偉.云計算環境下PIM與PSM的轉化機制的研究[J].微電子學與計算機,2011,28(11):94-97.(XIE S C, GE J W. Research of PIM to transformation mechanism in cloud computing environment [J]. Microelectronics & Computer, 2011, 28(11): 94-97.)
[20] MA Y, ZHANG C. Quick convergence of genetic algorithm for QoS-driven Web service selection [J]. Computer Networks, 2008, 52(5): 1093-1104.
[21] LIMAM H, AKAICHI J. Unifying Web services communities modelling through a UML profile [C]// Proceedings of the 2015 International Conference on Wired/Wireless Internet Communication. Berlin: Springer, 2015: 357-366.
[22] 林闖,蘇文博,孟坤,等.云計算安全:架構、機制與模型評價[J].計算機學報,2013,36(9):1765-1784.(LIN C, SU W B, MENG K, et al. Cloud computing security: architecture, mechanism and modeling [J]. Chinese Journal of Computers, 2013, 36(9): 1765-1784.)
[23] 李賽娟.基于云計算平臺的ERP系統研究[J].財會月刊,2012(29):91-93.(LI S J. The ERP system research based on cloud computing platform [J]. Finance and Accounting Monthly, 2012(29): 91-93.)
[24] 羅軍舟,金嘉暉,宋愛波,等.云計算:體系架構與關鍵技術[J].通信學報,2011,32(7):3-21.(LUO J Z, JIN J H, SONG A B, et al. Cloud computing: architecture and key technologies [J]. Journal on Communications, 2011, 32(7): 3-21.)
[25] ZHANG K, DONG P, MA B, et al. Innovation of IT service in textile industrial clusters from the service system perspective [C]// Proceedings of the 2010 International Conference on Logistics Systems and Intelligent Management. Piscataway, NJ: IEEE, 2010: 1819-1822.
[26] FLAKE S, MUELLER W. A UML profile for real-time constraints with the OCL [C]// Proceedings of the 2002 International Conference on the Unified Modeling Language. Berlin: Springer, 2002: 179-195.
[27] BRUNI R, H?LZL M, KOCH N, et al. A service-oriented UML profile with formal support [C]// Proceedings of the 2009 International Joint Conference on Service-Oriented Computing. Berlin: Springer, 2009: 455-469.
This work is partially supported by the National Natural Science Foundation of China (61403116)
WANGZhen, born in 1992, M. S. candidate. His research interests include cloud computing, service combination.
JIANGZheyuan, born in 1966, Ph. D., associate professor. His research interests include service-oriented software engineering, cloud computing.
UMLprofileformodelingERPcloudserviceplatformbasedonSaaS
WANG Zhen*, JIANG Zheyuan
(CollegeofComputerandInformation,HefeiUniversityofTechnology,HefeiAnhui230009,China)
Since the traditional Enterprise Resource Planning (ERP) system has low openness, low expansibility and high cost in current business environment, an ERP system modeling method based on Software-as-a-Service (SaaS) model was proposed. Firstly, a new primitive set called Unified Modeling Language (UML) profile was gotten by extending the primitives of UML. Secondly, an equivalent meta model was established and semantic unambiguity was ensured by Object Constraint Language (OCL). Finally, the cloud ERP was described by the model framework which was composed of application diagram, operation dictionary, physical diagram and topological diagram to transform the cloud ERP system into documents. The proposed method focused on the modular design and all stages adopted a unified visual meta-model. According to the requirements of modeling, the ERP model based on SaaS was successfully established on the Enterprise Architect (EA) platform by the proposed method and the effectiveness was verified. The theoretical analysis and modeling results show that the proposed method can ensure the interoperability and consistency between models and improve the scalability of ERP system.
cloud platform; Software-as-a-Service (SaaS); Enterprise Resource Planning (ERP); meta-model; Unified Modeling Language (UML) profile
TP311.11
:A
2017- 01- 09;
:2017- 03- 02。
國家自然科學基金資助項目(61403116)。
王震(1992—),男,安徽宿州人,碩士研究生,主要研究方向:云計算、服務組合; 蔣哲遠(1966—),男,安徽巢湖人,副教授,博士,CCF會員,主要研究方向:面向服務軟件工程、云計算。
1001- 9081(2017)07- 2027- 07
10.11772/j.issn.1001- 9081.2017.07.2027