

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、系統(erp)架構設計方案【精選文檔】ERP系統架構設計方案2009 年 5月版本控制版本注釋作者時間1。0ERP系統架構設計方案初稿麥仲博20090528一、前言二、架構設計2。1架構分析2.2架構定義2。3架構說明2.4軟件邏輯結構三、具體功能簡述3。1自定義工作流解決方案3。2多語言解決方案3.3消息發布/訂閱系統方案3.4報表&打印方案四、系統平臺支撐組件五、系統網絡結構六、開發管理層面一、前言 一個企業級的商業軟件能夠滿足用戶需要、正常運行、易于維護、易于擴展,必須擁有一個良好的軟件架構支撐。本文主要是分析和構建一個企業級商業軟件架構。 二、架構設計2。1架構分析企業級的商業軟件架構
2、在技術層面的要求主要體系在高性能、健壯性和低成本。l 高性能 對于企業級商業軟件來說,軟件架構需要盡可能地使軟件具有最高的性能,支持最大的并發性。l 健壯性 企業級的商業軟件要求軟件是可靠的和無缺陷的。現在的架構一般是,服務器模式的。軟件的可靠和健壯主要依賴與服務器。服務器的穩定通過良好的代碼和完備的測試能夠解決這個問題.l 低成本 企業級商業軟件還有一個很重要的要求:低成本。軟件架構要求簡單、易掌握,復雜度低,易于維護和擴展,易于測試. 2.2架構定義本架構以XML為整個系統的交互接口,包括系統架構內部和外部。整個系統分為界面展示層,流程控制層和數據存儲層。2。3架構說明系統架構圖Erp架構
3、中各核心服務之間滿足松散耦合特性,具有定義良好的接口,可通過拆分與組合,可以有針對性地構建滿足不同應用場景需求的Erp應用系統。2。3。1 適配器在集成環境中需要復用已有的應用系統和數據資源,通過適配器可以將已有應用系統和數據資源接入到ERP應用系統中。通過適配器可以實現已有資源與ERP系統中其它服務實現雙向通訊和互相調用.首先通過適配器可以實現對已有資源的服務化封裝,將已有資源封裝為一個服務提供者,可以為ERP應用系統中的服務消費者提供業務和數據服務,其次通過適配器,也可以使已有資源可以消費ERP應用系統中的其它服務.2。3.2 資源倉庫資源倉庫主要功能是提供服務描述信息的存儲、分類和查詢功
4、能.對于廣義的資源倉庫而言,除了提供服務類型的資源管理外,還需要提供對其它各種資源的管理能力,可管理對象包括:人員和權限信息、流程定義和描述、資源封裝服務、服務實現代碼、服務部署和打包內容、以及環境定義和描述信息.資源倉庫首先需要提供服務描述能力,需要能夠描述服務的各種屬性特征,包括:服務的接口描述、服務的業務特性、服務的質量特征(如:安全、可靠和事務等)以及服務運行的QoS屬性。2.3。3 連通服務連通服務是ERP基礎技術平臺中的一個重要核心服務,典型的連通服務就是企業服務總線(Enterprise Service Bus,ESB),它是服務之間互相通信和交互的骨干。連通服務的主要功能是通信
5、代理,如服務消費的雙向交互、代理之間的通信、代理之間的通信質量保障以及服務運行管理功能等。連通服務還需要保證傳輸效率和傳輸質量。連通服務一般應用于連接一個自治域內部的各個服務,在自治域內部服務都是相對可控的,所以連通服務更多應該考慮效率問題。2。3.4 流程服務流程服務是為業務流程的運行提供支撐的一組標準服務。業務流程是一組服務的集合,可以按照特定的順序并使用一組特定的規則進行調用。業務流程可以由不同粒度的服務組成,其本身可視為服務.流程服務是業務流程的運行環境,提供流程驅動,服務調用,事務管理等功能。流程服務需要支持機器自動處理的流程,也需要支持人工干預的任務操作,它支持的業務流程主要適用于
6、對運行處理時間要求不高的,多方合作操作的業務過程。2.3。5 交互服務交互服務實現人與服務之間的交互功能.交互服務就是需要提供一組完整的功能,以實現人與服務的便捷交互,既能支持多種交互渠道(如瀏覽器方式,富客戶端方式和移動接入方式等),也能支持多種交互能力(如單點登錄、個性化、支持各種資源的統一內容管理等)。2。3。6 協作服務協作服務用來解決自治域之間及自治域內部的交互通信。協作服務強調標準的采用,強調平等協作。具體實現技術時將更多的考慮采用WCF相關技術,以實現流程協同,服務交互,和各種質量屬性管理(如事務管理、可靠傳輸和安全管理等)。2.3。7 安全服務像ERP這樣強調松散耦合的分布式集
7、成系統,安全性顯得尤為重要.安全有時被稱為一種“事關全局的考慮,是全方位的問題,它跨越ERP參考架構模型的各個部分。安全服務向ERP參考架構模型中其他服務提供基本的安全服務功能,包括:身份驗證、訪問控制、數據加密、數據完整性和抗抵賴性,以及安全信任、身份聯邦、安全會話、安全策略等。2.3.8 信息服務信息服務特指為利用上述各種基本的核心服務提供信息管理和使用的服務.具體包括提供元數據管理功能,以一種統一的方式描述ERP系統中所需要使用的各種信息數據。它也提供對各種類型數據(包括結構化數據和非結構化數據),以及分布在不同地方的數據進行統一的訪問管理。信息服務其目標是使應用系統能夠統一、透明、高效
8、地訪問和操縱位于網絡環境中的各種分布、異構的數據資源,為實現全局數據訪問、加快應用開發、增強網絡應用和方便系統管理提供支持。2.3.9 運行管理工具運行管理工具提供界面友好的圖形化方式的監控和管理工具,提供對各種資源和服務對象的運行管理功能。監控管理工具需要管理核心服務,也需要管理應用服務??梢圆榭锤鱾€服務的運行狀態和歷史信息,也能對服務進行啟動、停止、暫停、恢復、版本升級等管理控制操作,同時需要提供分析和統計功能,可以根據服務運行信息實現對系統的調整和優化操作。2.4軟件邏輯結構軟件架構圖框架從層次結構上分主要分為:表示層、服務層、業務層、數據層表示層表示層由UI(User Interfac
9、e)和UI控制邏輯組成。c/s選用wpf+智能客戶端,b/s選用 mvcWPF的出現解決了三個問題:(1) 更快速的去開發更豐富的用戶體驗:使用WPF,可以在更加快速的時間內開發出來更加豐富的界面,滿足用戶的需求。WPF 借助 XAML 來利用標記而不是編程語言(如 C)來構造精美逼真的用戶界面 (UI), 只要稍微具備一些HTML基礎知識,就可以快速地掌握XAML中的大部分內容.(2) 消除用戶界面差異:wpf可以以IE為宿主的?;騍ilverlight(3) 軟件開發團隊的協作問題: 在軟件團隊中,我們比較熟悉Developer、DBA、Tester、IT Pro、Archi
10、tect等。Designer可能往往被我們忽視,但實際上,Designer的工作成果才是與客戶距離最近的.而且Designer與Developer如何配合工作,是很多團隊所頭疼的,而WPF正可以解決此問題。 智能客戶端的優勢 1)充分利用終端設備的優勢 2)能夠調用wcf 3)支持在線和離線兩種狀態 4)能夠如同Web應用程序一般簡單方便的部署 mvc內置AJAX支持.本身含的MVC(模型視圖控制器)和本系統MVVM(Model-View-ViewModel)就是雙胞胎,在demo里已經有很好的集成注:因xaml和html是標記語言,此層大部分可用代碼生成器生成。服務層采用微軟的WCF,Win
11、dows Communication Foundation (WCF)是Microsoft為構建面向服務的應用提供的分布式通信編程框架平臺,是.NET Framework 3.5的重要組成部分。使用該框架,開發人員可以構建跨平臺、安全、可靠和支持事務處理的企業級互聯應用解決方案。WCF從一開始就是工程化的,能夠簡化應用程序的開發與部署,降低開發成本。用于構建面向服務的應用程序,不管這些程序是獨立的桌面應用程序,還是Web應用程序和服務,還是高端的企業應用程序.邏輯、業務層 業務層封裝了實際業務邏輯,包含數據驗證,事物處理,權限處理等業務相關操作,是整個應用系統的核心。因此設計一個能夠真實反映實
12、際需要的業務層是非常必要的,我們將實際業務具體分為業務數據與業務操作兩部分。l 業務數據Domain Model則是根據實際業務按照現實方式用OO思想建模,這樣很適合業務復雜的系統。通常采用自定義數據實體(Custom Data Entity)方式表達。自定義數據實體,有著良好的性能,編譯時的類型檢查,數據表現方式非常直觀符合實際業務的操作方式等優點,但需要自己定義維護類,在分布式環境下需要自己編寫序列化方法。此階段負責數據交換(傳輸)的業務實體被稱之為DTO(Data Transfer Object).DTO要能夠支持:數據綁定、數據驗證、歷史記錄、級聯觸發、合并集合、序列化與反序列化,要實
13、現一個大的遞歸,從其中的任何一個對象開始,能夠找出整個傳遞的所有數據。(1)、數據的綁定支持.要實現IEditableObject接口,對于狀態的變化要實現INotifyPropertyChanged接口,這樣才能夠實現數據的觸發,這樣就要實現一個對象能夠找到其所有的集合,一個集合要能夠其所有的對象,這樣一樣,就必須實現從對象、集合、對象的遞歸,再深入一點,就實現了數據的級聯觸發,實現了雙向數據觸發、綁定。數據源的每個屬性變更,要能夠在界面上反映出來,綁定界面的改變,能夠記錄到后臺的數據源,并且要能夠支持回滾。對于容納這些數據的ObservableCollection集合也支持綁定處理。(2)
14、、數據驗證.實現IDataErrorInfo接口(3) 對于歷史記錄.當實現IEditableObject這個接口,則必然實現了歷史記錄。能夠找到集合的所有更改的記錄,包括刪除的記錄。對于單個對象而言是能夠得到歷史記錄和當前數據,對于集合而言,則能夠找出差異集,同時,集合也要具備集合回滾的功能。(4) 級聯觸發,則是在實現數據綁定的基礎上的,對于常見的主從結構,當從對象的一個屬性改變了,要能夠自動通知其所在的集合、集合再通知所在的對象數據改變了,如果是多層結構,則能夠自動的從最底層開始一路通知到頂層。(5)合并集合、集合的處理。集合的處理與數據綁定是直接相當的。數據源找出差異集之后,要對差異集
15、進行處理,處理完之后,要對原始集合進行更進一步的處理,要把兩個集合進行合并處理,主要是為了同步引用。(6)同時,另外要實現的就是Data與SDO之間的轉換以及其他格式的數據與SDO、Data數據之間的數據轉換,比如Binary/Xml/Text/Key/文件/等,最基本的是SDO與Data之間的轉換,這些轉換根據需要,有時候是單向的,有時候是雙向的,根據業務需求而定。(7)序列化與反序列化,主要是涉及到Binary和XML序列化。l 業務操作 業務操作負責對業務數據進行各種業務相關的處理,例如驗證,流向,整合,事物,權限等,但它不負責有關對數據源的操作。 采用整合業務數據與業務方式來操作,將業
16、務數據與相關的業務操作封裝在一起稱為業務實體,業務實體作為統一的業務層為表示層提供服務,同時也負責作為DTO在各個層次間傳輸,這樣完整的Domain Model設計方式,每個業務實體都可以做為一個單獨組件形式存在,對于組件化復用有著莫大的好處.數據層 數據層的宗旨就是為數據源提供一個可供外界訪問的接口,我們應該選用一種能夠提供數據源無關的抽象數據訪問接口并通過在其下掛接各種不同的DataProviador來訪問數據源的數據層組件,這樣做便于移植到不同的數據源上。從紛繁蕪雜的關系數據模型中抽象出概念模型。這樣開發人員可以只需著眼概念模型,而不必要去關心紛繁蕪雜的關系數據模型,從而提高開發效率。那
17、么如何能夠做到這一點?答案就是:Linq 和 ADO.NET Entity Frameworkl LINQ幾乎支持你所期望的所有數據源:數據對象、SQL Server數據庫、XML和數據集,當然也支持ADO.NET Entity(LINQ to Entities),LINQ有如下優勢:1、 無需復雜學習過程即可上手下面我給出一個簡單的C示例。 String QueryString = One, ”Two, ”Three, ”Four, Five ; 要想查找其中長度大于3的字符串,你可以使用以下查詢語句:var ThisQuery = from StringValue in QueryStri
18、ng where StringValue.Length 3select StringValue;2、 編寫更少代碼即可創建完整應用。3、 更快開發錯誤更少的應用程序。4、 無需求助奇怪的編程技巧就可合并數據源.5、 讓新開發者開發效率更高。l ADO。NET Entity Framework包括1。 實體數據模型(Entity Data Model),開發人員通過EDM抽象出非常合適的模型.2. 非常強大的client-view/mappping引擎,用于映射數據關系3。 Entity SQL語言和LINQ查詢對EDM schemas的全面支持4。 ojbect services layer供
19、您選擇以何種方式去處理查詢結果。比如(行,列或作為對象)。5. 提供一個開放的模型使ADO.NET Entity Framework可以處理其他的數據存儲.6. Entity Framework 實現了樂觀的并發模式(Optimistic Concurrency Model)7。 事務處理三、具體功能簡述3。1工作流解決方案工作流引擎:該部分為工作流模型的核心部分,用于生成、管理、角度和監控工作流的各個活動執行情況,并實現相應的人機交互.由于采用XPDL等語言定義的工作流文件記載了相應的業務邏輯,隱藏工作流引擎通過解析該文件來了解業務流轉的邏輯。然后依據某種運行模式按照解析出來的業務邏輯進行驅動,最終實現業務流程的流轉。 工作流定義接口:通過該接口可以進行工作流程的分析、建模、描述和歸檔等工作,并將設計完畢的業務流程生成工作流引擎能夠識別的語言. 工作流客戶接口:處理工作流運行過程中需要人為參與的操作. 工作流調用應用程序接口:工作流引擎調用外部應用程序的規范. 工作流引擎協作接口:不同工作流引擎之間的協作。 工作流管理監控接
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 統編版二年級語文下冊第五單元測試卷(B)(含答案)
- 江蘇省南京市江寧區2024-2025學年七年級下學期4月期中歷史試題 (含答案)
- XX公司度計量器具檢定校準服務合同
- 養肺護肺中醫秋季養生七法
- Brand KPIs for ready-made-food Chef Boyardee in the United States-外文版培訓課件(2025.2)
- 國際會計課件(修訂版)
- 三方運輸合作合同
- 版個人設備抵押借款合同書范本
- 企業分支機構經營場地租用協議
- 企業辦公家具購買合同模板
- 2024年電工(高級技師)考前必刷必練題庫500題(含真題、必會題)
- 生日宴會祝福快閃演示模板
- 2024年青海省中考英語試卷真題(含答案解析)
- 2020中等職業學校英語課程標準
- 高標準農田設計實施方案(技術標)
- 創傷失血性休克中國急診專家共識2023解讀課件
- 云計算白皮書(2024年)解讀
- 電力電子技術智慧樹知到期末考試答案章節答案2024年中國石油大學(華東)
- 2024年四川省樂山市中考地理·生物合卷試卷真題(含答案)
- 2024年內蒙古航開城市投資建設有限責任公司招聘筆試沖刺題(帶答案解析)
- 境內直接投資基本信息登記業務申請表(一)(版)
評論
0/150
提交評論