版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
系統(tǒng)架構(gòu)方案系統(tǒng)架構(gòu)方案/系統(tǒng)架構(gòu)方案ERP系統(tǒng)架構(gòu)設(shè)計方案2009年5月版本控制版本說明作者時間ERP系統(tǒng)架構(gòu)設(shè)計方案稿本麥仲博2009-05-28一、序言二、架構(gòu)設(shè)計架構(gòu)分析架構(gòu)定義架構(gòu)說明軟件邏輯構(gòu)造三、詳細功能簡述自定義工作流解決方案多語言解決方案信息宣告/定閱系統(tǒng)方案報表&打印方案四、系統(tǒng)平臺&支撐組件五、系統(tǒng)網(wǎng)絡(luò)構(gòu)造六、開發(fā)管理層面一、序言一個公司級的商業(yè)軟件能夠知足用戶需要、正常運轉(zhuǎn)、易于保護、易于擴展,必然擁有一個優(yōu)秀的軟件架構(gòu)支撐。本文主假如分析和建立一個公司級商業(yè)軟件架構(gòu)。二、架構(gòu)設(shè)計架構(gòu)分析公司級的商業(yè)軟件架構(gòu)在技術(shù)層面的要求主要系統(tǒng)在高性能、強健性和低成本。高性能關(guān)于公司級商業(yè)軟件來說,軟件架構(gòu)需要盡可能地使軟件擁有最高的性能,支持最大的并發(fā)性。強健性公司級的商業(yè)軟件要求軟件是靠譜的和無缺點的。此刻的架構(gòu)一般是,服務(wù)器模式的。軟件的靠譜和強健主要依靠與服務(wù)器。服務(wù)器的堅固經(jīng)過優(yōu)秀的代碼和齊備的測試能夠解決這個問題。低成本公司級商業(yè)軟件還有一個很重要的要求:低成本。軟件架構(gòu)要求簡單、易掌握,復(fù)雜度低,易于保護和擴展,易于測試。架構(gòu)定義本架構(gòu)以XML為整個系統(tǒng)的交互接口,包含系統(tǒng)架構(gòu)內(nèi)部和外面。整個系統(tǒng)分為界面展現(xiàn)層,流程控制層和數(shù)據(jù)儲蓄層。架構(gòu)說明系統(tǒng)架構(gòu)圖Web客戶端(b/s)智能客戶端(c/s)Mobile配置&規(guī)則功能服務(wù)交互服務(wù)信息服務(wù)安全協(xié)作服務(wù)報表流程服務(wù)服務(wù)連通服務(wù)運轉(zhuǎn)管理工具資源庫房適配器協(xié)助工具公司控制系統(tǒng)Erp架構(gòu)中各核心服務(wù)之間知足廢弛耦合特點,擁有定義優(yōu)秀的接口,可經(jīng)過拆分與組合,能夠有針對性地建立知足不同樣應(yīng)用途景需求的Erp應(yīng)用系統(tǒng)。適配器在集成環(huán)境中需要復(fù)用已有的應(yīng)用系統(tǒng)和數(shù)據(jù)資源,經(jīng)過適配器能夠?qū)⒁延袘?yīng)用系統(tǒng)和數(shù)據(jù)資源接入到ERP應(yīng)用系統(tǒng)中。經(jīng)過適配器能夠?qū)崿F(xiàn)已有資源與ERP系統(tǒng)中其余服求實現(xiàn)雙向通信和相互調(diào)用。第一通過適配器能夠?qū)崿F(xiàn)對已有資源的服務(wù)化封裝,將已有資源封裝為一個服務(wù)供給者,能夠為ERP應(yīng)用系統(tǒng)中的服務(wù)開銷者供給業(yè)務(wù)和數(shù)據(jù)服務(wù),其次經(jīng)過適配器,也能夠使已有資源能夠開銷ERP應(yīng)用系統(tǒng)中的其余服務(wù)。資源庫房資源庫房主要功能是供給服務(wù)描繪信息的儲蓄、分類和查問功能。關(guān)于廣義的資源庫房而言,除了供給服務(wù)種類的資源管理外,還需要供給對其余各樣資源的管理能力,可管理對象包含:人員和權(quán)限信息、流程定義和描繪、資源封裝服務(wù)、服求實現(xiàn)代碼、服務(wù)部署和打包內(nèi)容、以及環(huán)境定義和描繪信息。資源庫房第一需要供給服務(wù)描繪能力,需要能夠描繪服務(wù)的各樣屬性特點,包含:服務(wù)的接口描繪、服務(wù)的業(yè)務(wù)特點、服務(wù)的質(zhì)量特點(如:安全、靠譜和事務(wù)等)以及服務(wù)運轉(zhuǎn)的QoS屬性。連通服務(wù)連通服務(wù)是ERP基礎(chǔ)技術(shù)平臺中的一個重要核心服務(wù),典型的連通服務(wù)就是公司服務(wù)總線(EnterpriseServiceBus,ESB),它是服務(wù)之間相互通信和交互的骨干。連通服務(wù)的主要功能是通信代理,如服務(wù)開銷的雙向交互、代理之間的通信、代理之間的通信質(zhì)量保障以及服務(wù)運轉(zhuǎn)管理功能等。連通服務(wù)還需要保證傳輸效率和傳輸質(zhì)量。連通服務(wù)一般應(yīng)用于連結(jié)一個自治域內(nèi)部的各個服務(wù),在自治域內(nèi)部服務(wù)都是相對可控的,所以連通服務(wù)更多應(yīng)當考慮效率問題。流程服務(wù)流程服務(wù)是為業(yè)務(wù)流程的運轉(zhuǎn)供給支撐的一組標準服務(wù)。業(yè)務(wù)流程是一組服務(wù)的會合,能夠依據(jù)特定的次序并使用一組特定的規(guī)則進行調(diào)用。業(yè)務(wù)流程能夠由不同樣粒度的服務(wù)構(gòu)成,其自己可視為服務(wù)。流程服務(wù)是業(yè)務(wù)流程的運轉(zhuǎn)環(huán)境,供給流程驅(qū)動,服務(wù)調(diào)用,事務(wù)管理等功能。流程服務(wù)需要支持機器自動辦理的流程,也需要支持人工干涉的任務(wù)操作,它支持的業(yè)務(wù)流程主要合用于對運轉(zhuǎn)辦理時間要求不高的,多方合作操作的業(yè)務(wù)過程。交互服務(wù)交互服求實現(xiàn)人與服務(wù)之間的交互功能。交互服務(wù)就是需要供給一組圓滿的功能,以實現(xiàn)人與服務(wù)的便利交互,既能支持多種交互渠道(如閱讀器方式,富客戶端方式和挪動接入方式等),也能支持多種交互能力(如單點登錄、個性化、支持各樣資源的一致內(nèi)容管理等)。協(xié)作服務(wù)協(xié)作服務(wù)用來解決自治域之間及自治域內(nèi)部的交互通信。協(xié)作服務(wù)重申標準的采納,強調(diào)同樣協(xié)作。詳細實現(xiàn)技術(shù)時將更多的考慮采納WCF有關(guān)技術(shù),以實現(xiàn)流程共同,服務(wù)交互,和各樣質(zhì)量屬性管理(如事務(wù)管理、靠譜傳輸和安全管理等)。安全服務(wù)像ERP這樣重申廢弛耦合的散布式集成系統(tǒng),安全性顯得特別重要。安全有時被稱為一種“事關(guān)全局的考慮”,是全方向的問題,它超越ERP參照架構(gòu)模型的各個部分。安全服務(wù)向ERP參照架構(gòu)模型中其余服務(wù)供給基本的安全服務(wù)功能,包含:身份考證、接見控制、數(shù)據(jù)加密、數(shù)據(jù)圓滿性和抗狡辯性,以及安全相信、身份聯(lián)邦、安全會話、安全策略等。信息服務(wù)信息服務(wù)特指為利用上述各樣基本的核心服務(wù)供給信息管理和使用的服務(wù)。詳細包含提供元數(shù)據(jù)管理功能,以一種一致的方式描繪ERP系統(tǒng)中所需要使用的各樣信息數(shù)據(jù)。它也供給對各樣種類數(shù)據(jù)(包含構(gòu)造化數(shù)據(jù)和非構(gòu)造化數(shù)據(jù)),以及散布在不同樣地方的數(shù)據(jù)進行一致的接見管理。信息服務(wù)其目標是使應(yīng)用系統(tǒng)能夠一致、透明、高效地接見和控制位于網(wǎng)絡(luò)環(huán)境中的各種散布、異構(gòu)的數(shù)據(jù)資源,為實現(xiàn)全局數(shù)據(jù)接見、加速應(yīng)用開發(fā)、加強網(wǎng)絡(luò)應(yīng)用和方便系統(tǒng)管理供給支持。運轉(zhuǎn)管理工具運轉(zhuǎn)管理工具供給界面友善的圖形化方式的監(jiān)控和管理工具,供給對各樣資源和服務(wù)對象的運轉(zhuǎn)管理功能。監(jiān)控管理工具需要管理核心服務(wù),也需要管理應(yīng)用服務(wù)。能夠查察各個服務(wù)的運轉(zhuǎn)狀態(tài)和歷史信息,也能對服務(wù)進行啟動、停止、暫停、恢復(fù)、版本升級等管理控制操作,同時需要供給分析和統(tǒng)計功能,能夠依據(jù)服務(wù)運轉(zhuǎn)信息實現(xiàn)對系統(tǒng)的調(diào)整和優(yōu)化操作。軟件邏輯構(gòu)造軟件架構(gòu)圖View(WPF)View(Silverlight)View(WebForm)(表示層)(表示層)(表示層)Binding控制器(數(shù)據(jù)通道)ViewModel(表示模式)Model(數(shù)據(jù)邏輯、業(yè)務(wù))數(shù)據(jù)接見接口
View(WinForm)(表示層)IViewModel(數(shù)據(jù)源接口)WCF(服務(wù)層)平面文本數(shù)據(jù)數(shù)據(jù)庫XMLRSS框架從層次構(gòu)造上分主要分為:表示層、服務(wù)層、業(yè)務(wù)層、數(shù)據(jù)層◆表示層表示層由UI(UserInterface)和UI控制邏輯構(gòu)成。c/s采納wpf+智能客戶端,b/s采納mvcWPF的出現(xiàn)解決了三個問題:更迅速的去開發(fā)更豐富的用戶體驗:使用WPF,能夠在更為迅速的時間內(nèi)開發(fā)出來更為豐富的界面,知足用戶的需求。WPF借助XAML來利用標志而不是編程語言(如C#)來構(gòu)造優(yōu)良傳神的用戶界面(UI),只需略微具備一些HTML基礎(chǔ)知識,就能夠迅速地掌握XAML中的大多數(shù)內(nèi)容。除去用戶界面差別:wpf能夠以IE為宿主的?;騍ilverlight(3)軟件開發(fā)團隊的協(xié)作問題:在軟件團隊中,我們比較熟習(xí)Developer、DBA、Tester、ITPro、Architect等。Designer可能常常被我們忽略,但實質(zhì)上,Designer的工作成就才是與客戶距離近來的。并且Designer與Developer怎樣配合工作,是好多團隊所頭疼的而WPF正能夠解決此問題。
,智能客戶端的優(yōu)勢充分利用終端設(shè)施的優(yōu)勢能夠調(diào)用wcf支持在線和離線兩種狀態(tài)能夠憂如Web應(yīng)用程序一般簡單方便的部署mvc內(nèi)置AJAX支持。自己含的MVC(模型-視圖-控制器)和本系統(tǒng)MVVM(Model-View-ViewModel)就是雙胞胎,在demo里已經(jīng)有很好的集成注:因xaml和html是標志語言,此層大多數(shù)可用代碼生成器生成。◆服務(wù)層采納微軟的WCF,WindowsCommunicationFoundation(WCF)是Microsoft為建立面向服務(wù)的應(yīng)用供給的散布式通信編程框架平臺,是.NETFramework的重要構(gòu)成部分。使用該框架,開發(fā)人員能夠建立跨平臺、安全、靠譜和支持事務(wù)辦理的公司級互聯(lián)應(yīng)用解決方案。WCF從一開始就是工程化的,能夠簡化應(yīng)用程序的開發(fā)與部署,降低開發(fā)成本。用于建立面向服務(wù)的應(yīng)用程序,不論這些程序是獨立的桌面應(yīng)用程序,仍是Web應(yīng)用程序和服務(wù),仍是高端的公司應(yīng)用程序。◆邏輯、業(yè)務(wù)層業(yè)務(wù)層封裝了實質(zhì)業(yè)務(wù)邏輯,包含數(shù)據(jù)考證,事物辦理,權(quán)限辦理等業(yè)務(wù)有關(guān)操作,是整個應(yīng)用系統(tǒng)的核心。所以設(shè)計一個能夠真切反應(yīng)實質(zhì)需要的業(yè)務(wù)層是特別必需的,我們將實質(zhì)業(yè)務(wù)詳細分為業(yè)務(wù)數(shù)據(jù)與業(yè)務(wù)操作兩部分。業(yè)務(wù)數(shù)據(jù)DomainModel
則是依據(jù)實質(zhì)業(yè)務(wù)依據(jù)現(xiàn)實方式用
OO思想建模,這樣很適合業(yè)務(wù)復(fù)雜的系統(tǒng)。平常采納自定義數(shù)據(jù)實體(CustomDataEntity)方式表達。自定義數(shù)據(jù)實體,有著優(yōu)秀的性能,編譯時的種類檢查,數(shù)據(jù)表現(xiàn)方式特別直觀符合實質(zhì)業(yè)務(wù)的操作方式等長處,但需要自己定義保護類,在散布式環(huán)境下需要自己編寫序列化方法。此階段負責(zé)數(shù)據(jù)互換(傳輸)的業(yè)求實體被稱之為DTO(DataTransferObject)。DTO要能夠支持:數(shù)據(jù)綁定、數(shù)據(jù)考證、歷史記錄、級聯(lián)觸發(fā)、歸并會合、序列化與反序列化,要實現(xiàn)一個大的遞歸,
今后中的任何一個對象開始,
能夠找出整個傳達的全部數(shù)據(jù)。(1)、數(shù)據(jù)的綁定支持。要實現(xiàn)
IEditableObject
接口,關(guān)于狀態(tài)的變化要實現(xiàn)INotifyPropertyChanged接口,這樣才能夠?qū)崿F(xiàn)數(shù)據(jù)的觸發(fā),這樣就要實現(xiàn)一個對象能夠找到其全部的會合,一個會合要能夠其全部的對象,這樣同樣,就必然實現(xiàn)從對象、會合、對象的遞歸,再深入一點,就實現(xiàn)了數(shù)據(jù)的級聯(lián)觸發(fā),實現(xiàn)了雙向數(shù)據(jù)觸發(fā)、綁定。數(shù)據(jù)源的每個屬性改正,要能夠在界面上反應(yīng)出來,綁定界面的改變,能夠記錄到后臺的數(shù)據(jù)源,要能夠支持回滾。關(guān)于容納這些數(shù)據(jù)的ObservableCollection會合也支持綁定辦理。
并且、數(shù)據(jù)考證。實現(xiàn)IDataErrorInfo接口(3)關(guān)于歷史記錄。當實現(xiàn)IEditableObject這個接口,則必然實現(xiàn)了歷史記錄。能夠找到會合的全部改正的記錄,包含刪除的記錄。關(guān)于單個對象而言是能夠獲得歷史記錄和目前數(shù)據(jù),關(guān)于會合而言,則能夠找出差別集,同時,會合也要具備會合回滾的功能。級聯(lián)觸發(fā),則是在實現(xiàn)數(shù)據(jù)綁定的基礎(chǔ)上的,關(guān)于常有的主從構(gòu)造,當從對象的一個屬性改變了,要能夠自動通知其所在的會合、會合再通知所在的對象數(shù)據(jù)改變了,假如是多層構(gòu)造,則能夠自動的從最基層開始一路通知到頂層。歸并會合、會合的辦理。會合的辦理與數(shù)據(jù)綁定是直接相當?shù)?。?shù)據(jù)源找出差別集今后,要對差別集進行辦理,辦理完今后,要對原始會合進行更進一步的辦理,要把兩個會合進行歸并辦理,主假如為了同步引用。(6)同時,其余要實現(xiàn)的就是Data與SDO之間的變換以及其余格式的數(shù)據(jù)與數(shù)據(jù)之間的數(shù)據(jù)變換,比方Binary/Xml/Text/Key/文件/等,最基本的是SDO與
SDO、DataData之間的變換,這些變換依據(jù)需要,有時是單向的,有時是雙向的,依據(jù)業(yè)務(wù)需求而定。(7)序列化與反序列化,主假如波及到Binary和XML序列化。業(yè)務(wù)操作業(yè)務(wù)操作負責(zé)對業(yè)務(wù)數(shù)據(jù)進行各樣業(yè)務(wù)有關(guān)的辦理,比方考證,流向,整合,事物,權(quán)限等,但它不負責(zé)有關(guān)對數(shù)據(jù)源的操作。采納整合業(yè)務(wù)數(shù)據(jù)與業(yè)務(wù)方式來操作,將業(yè)務(wù)數(shù)據(jù)與有關(guān)的業(yè)務(wù)操作封裝在一同稱為業(yè)求實體,業(yè)求實體作為一致的業(yè)務(wù)層為表示層供給服務(wù),同時也負責(zé)作為DTO在各個層次間傳輸,這樣圓滿的DomainModel設(shè)計方式,每個業(yè)求實體都能夠做為一個獨自組件形式存在,關(guān)于組件化復(fù)用有著莫大的利處?!魯?shù)據(jù)層數(shù)據(jù)層的主旨就是為數(shù)據(jù)源供給一個可供外界接見的接口,我們應(yīng)當采納一種能夠供給數(shù)據(jù)源沒關(guān)的抽象數(shù)據(jù)接見接口并經(jīng)過在其下掛接各樣不同樣的DataProviador來接見數(shù)據(jù)源的數(shù)據(jù)層組件,這樣做便于移植到不同樣的數(shù)據(jù)源上。從紛紛蕪雜的關(guān)系數(shù)據(jù)模型中抽象出見解模型。這樣開發(fā)人員能夠只需著眼見解模型,而不用要去關(guān)懷紛紛蕪雜的關(guān)系數(shù)據(jù)模型,進而提升開發(fā)效率。那么怎樣能夠做到這一點?答案就是:Linq和EntityFrameworkLINQ幾乎支持你所希望的全部數(shù)據(jù)源:
數(shù)據(jù)對象、SQLServer
數(shù)據(jù)庫、XML和數(shù)據(jù)集,自然也支持Entity(LINQtoEntities),LINQ有以下優(yōu)勢:1、無需復(fù)雜學(xué)習(xí)過程即可上手下邊我給出一個簡單的C#示例。String[]QueryString={"One","Two","Three","Four","Five"};要想查找此中長度大于3的字符串,你能夠使用以下查問語句:varThisQuery=fromStringValueinQueryStringwhere>3selectStringValue;2、編寫更少代碼即可創(chuàng)立圓滿應(yīng)用。3、更快開發(fā)錯誤更少的應(yīng)用程序。4、無需求援奇異的編程技巧即可歸并數(shù)據(jù)源。5、讓新開發(fā)者開發(fā)效率更高。EntityFramework包含實體數(shù)據(jù)模型(EntityDataModel),開發(fā)人員經(jīng)過EDM抽象出特別適合的模型。2.特別興盛的client-view/mappping引擎,用于照耀數(shù)據(jù)關(guān)系EntitySQL語言和LINQ查問對EDMschemas的全面支持ojbectserviceslayer供您選擇以何種方式去辦理查問結(jié)果。比方(行,列或作為對象)。5.供給一個開放的模型使EntityFramework能夠辦理其余的數(shù)據(jù)儲蓄。6.EntityFramework實現(xiàn)了樂觀的并發(fā)模式(OptimisticConcurrencyModel)7.事務(wù)辦理三、詳細功能簡述工作流解決方案工作流引擎:該部分為工作流模型的核心部分,用于生成、管理、角度和監(jiān)控工作流的各個活動履行狀況,并實現(xiàn)相應(yīng)的人機交互。因為采納XPDL等語言定義的工作流文件記錄了相應(yīng)的業(yè)務(wù)邏輯,隱蔽工作流引擎經(jīng)過分析該文件來認識業(yè)務(wù)流轉(zhuǎn)的邏輯。此后依據(jù)某種運轉(zhuǎn)模式依據(jù)分析出來的業(yè)務(wù)邏輯進行驅(qū)動,最后實現(xiàn)業(yè)務(wù)流程的流轉(zhuǎn)。工作流定義接口:經(jīng)過該接口能夠進行工作流程的分析、建模、描繪和歸檔等工作,并將設(shè)計完成的業(yè)務(wù)流程生成工作流引擎能夠識其余語言。工作流客戶接口:辦理工作流運轉(zhuǎn)過程中需要人為參加的操作。工作流調(diào)用應(yīng)用程序接口:工作流引擎調(diào)用外面應(yīng)用程序的規(guī)范。工作流引擎協(xié)作接口:不同樣工作流引擎之間的協(xié)作。工作流管理
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 家庭作業(yè)舞蹈課程設(shè)計
- 自動打印機課程設(shè)計草圖
- 高中歷史課程設(shè)計步驟圖
- 豆乳飲料課程設(shè)計
- 陶瓷課程設(shè)計意義
- 餐飲人力訓(xùn)練課程設(shè)計
- 運動員飲食課程設(shè)計
- 魚排加工廠課程設(shè)計
- 鍋爐液位測量課程設(shè)計
- 紡紗課程設(shè)計目的
- 2024年黑河嫩江市招聘社區(qū)工作者考試真題
- 第22單元(二次函數(shù))-單元測試卷(2)-2024-2025學(xué)年數(shù)學(xué)人教版九年級上冊(含答案解析)
- 藍色3D風(fēng)工作總結(jié)匯報模板
- 安全常識課件
- 河北省石家莊市2023-2024學(xué)年高一上學(xué)期期末聯(lián)考化學(xué)試題(含答案)
- 小王子-英文原版
- 2024年江蘇省導(dǎo)游服務(wù)技能大賽理論考試題庫(含答案)
- 2024年中考英語閱讀理解表格型解題技巧講解(含練習(xí)題及答案)
- 新版中國食物成分表
- 浙江省溫州市溫州中學(xué)2025屆數(shù)學(xué)高二上期末綜合測試試題含解析
- 保安公司市場拓展方案-保安拓展工作方案
評論
0/150
提交評論