

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、軟件體系結(jié)構設計案例,體系結(jié)構設計案例,科學數(shù)據(jù)共享網(wǎng)空中交通管制,科學數(shù)據(jù)共享網(wǎng)體系結(jié)構設計,科學數(shù)據(jù)共享網(wǎng),,科學數(shù)據(jù)共享網(wǎng)的系統(tǒng)需求,“中國地球系統(tǒng)科學數(shù)據(jù)共享網(wǎng)”是國家科學數(shù)據(jù)共享工程的重要組成部分,同時也是科技部推動“國家科學數(shù)據(jù)共享工程”2002年試點的三個科學數(shù)據(jù)共享網(wǎng)之一。該系統(tǒng)針對基于各圈層(大氣圈、水圈、 生物圈)相互作用的地球系統(tǒng)科學的整體研究,利用互聯(lián)網(wǎng),整合、集成各科研院所、高等院校和國際數(shù)據(jù)組織以及科學家
2、個人手中的相關專業(yè)數(shù)據(jù)資源,瞄準地球系統(tǒng)科學的前沿研究,開展數(shù)據(jù)組織、加工與服務,構建物理上分布、邏輯上統(tǒng)一的地球系統(tǒng)科學數(shù)據(jù)管理與共享服務網(wǎng)。這一工作對于增強我國基礎科學研究和前沿科學創(chuàng)新能力具有重要的意義。,數(shù)據(jù)方面的特殊需求和特點,能夠快捷地收集數(shù)據(jù)科學數(shù)據(jù)分散在科研院所和科學家手中,要設計開發(fā)一套收集數(shù)據(jù)的機制,使其能夠快速地整合到系統(tǒng)中,提供數(shù)據(jù)共享服務。數(shù)據(jù)收集的途徑應主要通過網(wǎng)絡媒介,而且不能影響系統(tǒng)所提供的網(wǎng)絡服務的
3、正常運行。有效存儲和管理海量數(shù)據(jù),并快速定位數(shù)據(jù)該系統(tǒng)能夠提供目錄服務,合理地管理數(shù)據(jù)。提供用戶查閱、下載、使用數(shù)據(jù)的服務。當用戶在系統(tǒng)中查找數(shù)據(jù)時,希望能夠快速定位數(shù)據(jù),提供服務,平均響應時間最長不超過20秒。,數(shù)據(jù)方面的特殊需求和特點,保護數(shù)據(jù)版權,保證數(shù)據(jù)的安全性科學數(shù)據(jù)是科學工作者辛勤勞動的果實,同書籍一樣也存在版權的問題。所以在數(shù)據(jù)的使用上,需要版權保護。此外,由于一些數(shù)據(jù)有其時效性和保密性,所以在提供服務時需要對
4、數(shù)據(jù)訪問進行相應的安全控制。,系統(tǒng)需求,架構師一般通過兩種途徑來獲得系統(tǒng)的需求:用戶直接主動地提供的需求(一般都是功能性需求和領域知識)希望“科學數(shù)據(jù)共享網(wǎng)”能通過Internet為用戶提供數(shù)據(jù)服務,包含:數(shù)據(jù)目錄服務、數(shù)據(jù)資源導航、數(shù)據(jù)下載功能、對數(shù)據(jù)進行穩(wěn)妥地安全管理。構架師設計“對話問題”,通過對用戶提問,進一步與他們溝通,從而得到明確的需求。構架師以用軟件系統(tǒng)各方面的質(zhì)量屬性為索引,系統(tǒng)地啟發(fā)用戶談出他們實際需要、但沒有
5、表達出來或是表達不完全的內(nèi)容。,非功能性需求,,科學數(shù)據(jù)共享網(wǎng)的體系結(jié)構?,科學數(shù)據(jù)共享網(wǎng)的體系結(jié)構,原型的體系結(jié)構及其分析根據(jù)需求,數(shù)據(jù)將以Internet為傳輸途徑完成共享。在目前以Internet為前提的系統(tǒng)中,應用最廣泛的是B/S(Browser /Server)結(jié)構。這樣的結(jié)構已經(jīng)相當成熟,并具有很大的靈活性。科學數(shù)據(jù)共享網(wǎng)也是基于這樣初衷而設計的。,系統(tǒng)的原型設計,系統(tǒng)的原型設計,對于科學數(shù)據(jù)的存儲、管理、共享等諸多計算
6、都是由“中心”服務器承擔。在中心服務器中,又劃分了數(shù)據(jù)收集、數(shù)據(jù)訪問、平臺數(shù)據(jù)管理和平臺管理四個模塊。數(shù)據(jù)收集負責收集用戶通過Internet上載或是其它途徑(光盤、磁盤)提交上來的科學數(shù)據(jù)。數(shù)據(jù)訪問負責向用戶提供訪問科學數(shù)據(jù)的服務---查詢和下載平臺數(shù)據(jù)管理承擔了與數(shù)據(jù)庫交互,管理和存儲數(shù)據(jù)的工作。它提供的接口負責將收集的科學數(shù)據(jù)先暫存在平臺數(shù)據(jù)庫中;然后供工作人員對數(shù)據(jù)進行有效性檢查和加工,并將合法數(shù)據(jù)轉(zhuǎn)移到發(fā)布數(shù)據(jù)庫中;最后
7、管理發(fā)布數(shù)據(jù)庫中數(shù)據(jù)的接口提供數(shù)據(jù)的訪問服務。平臺管理承擔了管理用戶信息、管理用戶和數(shù)據(jù)的安全信息,以及生成平臺運行日志的任務。,,是否合適?,對原型系統(tǒng)的分析,所有的數(shù)據(jù)都由“中心”服務器負責存儲,并向用戶提供服務。這樣的結(jié)果是所有的用戶請求都由中心服務器來響應。即使內(nèi)部的四個模塊部署到不同的服務器上,“平臺數(shù)據(jù)管理”和兩個數(shù)據(jù)庫所承擔的運算量也是可觀的。考慮到未來的科學數(shù)據(jù)將會越來越龐大,大量的數(shù)據(jù)都存儲到服務器中,對服務器來
8、講必然是巨大的負擔。而且,數(shù)據(jù)管理和維護的成本也隨著數(shù)據(jù)量的增加而加大。“中心”服務器承載了眾多服務,因而其運算量會很繁重;因此為了達到性能方面的要求,對“中心”服務器的要求就會比較高,比如:增加內(nèi)存容量,CPU數(shù)量。這也增加了系統(tǒng)的投入成本。有時,僅僅通過提高服務器的性能是不能夠達到性能方面要求的。,對原型系統(tǒng)的分析,請求都由“中心”服務器做出響應,一旦它出現(xiàn)了故障,無法提供服務,則存儲在系統(tǒng)中的科學數(shù)據(jù)就無法向外界提供共享服務。
9、補救辦法:增加備份服務器,組成集群當系統(tǒng)升級時,也會對所提供的服務造成影響??蛻粢蟊M量達到7×24小時服務,平均修復時間不超過2小時。實現(xiàn)客戶要求相當難度,成本也高。數(shù)據(jù)都存儲在一個系統(tǒng)內(nèi),采取了通過Internet上載或是其它途徑(光盤、磁盤等方式)提交科學數(shù)據(jù)的方式。考慮到地學領域的數(shù)據(jù)通常是較大的地圖,網(wǎng)絡提交數(shù)據(jù)的方式會影響到“中心”服務器的數(shù)據(jù)吞吐量,降低了系統(tǒng)性能。,重新設計的面向服務的體系結(jié)構,體系結(jié)構說
10、明,面向服務的體系結(jié)構門戶(主數(shù)據(jù)中心),安全中心和分數(shù)據(jù)中心通過由Web Service構建的數(shù)據(jù)共享服務、全局服務、 安全服務相互連接,組成了科學數(shù)據(jù)共享網(wǎng)的體系結(jié)構。新的體系結(jié)構劃分了主數(shù)據(jù)中心、分數(shù)據(jù)中心和安全中心;三類中心分別有各自基于B/S結(jié)構的管理系統(tǒng),相對獨立。遵循面向服務的體系結(jié)構思想,為了實現(xiàn)數(shù)據(jù)的共享服務,各個中心將服務內(nèi)容封裝成Web Service,作為其他中心訪問本中心數(shù)據(jù)的入口,并通過Internet
11、傳輸數(shù)據(jù)。SOAP 提供一種簡單的、可擴展并且功能豐富的 XML 消息處理框架,用于定義高級別的應用程序協(xié)議,從而在分布式異構環(huán)境中提供更高的互操作性。,體系結(jié)構說明,在該系統(tǒng)中,科學數(shù)據(jù)存儲在各個數(shù)據(jù)中心上;各分數(shù)據(jù)中心通過數(shù)據(jù)服務的Web service組件向主數(shù)據(jù)中心公布其元數(shù)據(jù)信息,作為實現(xiàn)數(shù)據(jù)共享的基礎(元數(shù)據(jù)是描述數(shù)據(jù)的數(shù)據(jù))。通過在主數(shù)據(jù)中心上查找元數(shù)據(jù)信息,可以快速地獲取科學數(shù)據(jù)的消息信息,定位數(shù)據(jù)訪問入口-----
12、某個分數(shù)據(jù)中心的數(shù)據(jù)共享服務,然后實現(xiàn)數(shù)據(jù)的訪問。,體系結(jié)構說明,主數(shù)據(jù)中心作為整個系統(tǒng)共享服務的一個入口,它提供了查詢主數(shù)據(jù)中心上元數(shù)據(jù)信息的服務;負責向分數(shù)據(jù)中心轉(zhuǎn)發(fā)用戶訪問科學數(shù)據(jù)的請求。分數(shù)據(jù)中心也可以作為共享服務的入口。每個分數(shù)據(jù)中心都具有各自的管理信息系統(tǒng),收集和管理某個研究領域內(nèi)的科學數(shù)據(jù),用戶可以直接登錄某個分數(shù)據(jù)中心上訪問數(shù)據(jù)。加入了安全中心。用戶的基本信息,如密碼、住址、所屬單位等,都由安全中心保存和維護。安全中
13、心為所有數(shù)據(jù)中心提供了用戶的身份驗證、維護的安全服務。但是用戶訪問數(shù)據(jù)的權限則由各個數(shù)據(jù)中心獨立地設置和管理。,各中心的信息存儲結(jié)構,數(shù)據(jù)中心的分層體系結(jié)構,數(shù)據(jù)中心的分層體系結(jié)構,分層體系結(jié)構:某一層功能和實現(xiàn)的變化只是上下層有關(低耦合,可擴展、組件復用)安全管理:訪問權限日志管理:多種操作的記錄數(shù)據(jù)訪問層:審查、發(fā)布數(shù)據(jù)的操作應用服務層:多個共享服務組件共享服務接口:訪問接口、入口,重用部分應用服務組件主數(shù)據(jù)中心:
14、 全局服務分服務中心:數(shù)據(jù)收割(為主數(shù)據(jù)中心收集元信息)注意連接件設計 p133,安全中心的體系結(jié)構,體系結(jié)構分析,面向服務的體系結(jié)構是一種松耦合、協(xié)議和實現(xiàn)獨立的體系結(jié)構;松耦合與隨需應變是SOA的兩大特點。采用這種體系結(jié)構,可以重用已有系統(tǒng)作為分數(shù)據(jù)中心;允許異構數(shù)據(jù)的存在和訪問;并且能夠給系統(tǒng)帶來良好的可維護性和可擴展性。新的系統(tǒng)中,最主要的一點變化就是:科學數(shù)據(jù)將不再統(tǒng)一由“中心”服務器存儲和管理,改為由數(shù)據(jù)所有者(科研
15、工作者或是科研院所)負責存儲和管理。,數(shù)據(jù)共享網(wǎng)可維護性解決策略,在科學數(shù)據(jù)共享網(wǎng)系統(tǒng)中,在不同的層次設計中分別采用了“間接化、封裝、分離”。首先,整個系統(tǒng)的分布式體系結(jié)構設計,采用了SOA的體系結(jié)構設計,這種設計是將數(shù)據(jù)共享服務封裝為Web Service,由特定的Web Service提供數(shù)據(jù)共享服務。 Web Service的引入,將共享數(shù)據(jù)內(nèi)容和共享服務實現(xiàn)細節(jié)分離。當實現(xiàn)細節(jié)發(fā)生變化或是增加新的服務時,對原有系統(tǒng)的運行影響很
16、小。在數(shù)據(jù)中心和安全中心的系統(tǒng)設計上,采用了分層的設計。這是一種間接化的體系結(jié)構設計策略,上層的共享服務需要通過數(shù)據(jù)訪問層提供的接口訪問數(shù)據(jù);當?shù)讓訑?shù)據(jù)存儲結(jié)構變化后,對上層的共享服務的影響較小。數(shù)據(jù)中心和安全中心的web應用系統(tǒng)采用的是MVC模式,將模型、控制、視圖有機地分離。,空中交通管制http://etutorials.org/Programming/Software+architecture+in+practice
17、,+second+edition/Part+Two+Creating+an+Architecture/Chapter+6.+Air+Traffic+Control+A+Case+Study+in+Designing+for+High+Availability/,系統(tǒng)概況,系統(tǒng)概況,飛機從順利起飛到安全到達目的地,受到空中交通管制系統(tǒng)各個不同部分的管理。地面控制部分負責協(xié)調(diào)和管理飛機在機場地面上的運動;塔臺控制部分控制飛機在該機場的終
18、端控制區(qū)中的飛行;最后,該系統(tǒng)還有多個中途中心,將整個美國領空劃分為22個責任區(qū)。,初始區(qū)段組(Initial Sector Suite System,ISSS),ISSS是針對22個中途中心的軟硬件升級系統(tǒng),需求與質(zhì)量分析,空中交通管制系統(tǒng)若運行不好,可能會造成生命財產(chǎn)損失極高的可用性必須保證系統(tǒng)不能正常工作的時間非常短(一年內(nèi)停機時間不能超過5分鐘)高性能系統(tǒng)必須保證在不丟失任何數(shù)據(jù)的情況下對大量數(shù)據(jù)進行處理;通信網(wǎng)絡
19、必須能夠處理這種負載,軟件必須能夠快速、帶有預測性的進行計算。,ISSS的功能,獲取存儲在主計算機系統(tǒng)的現(xiàn)有空中交通管制系統(tǒng)中的雷達目標數(shù)據(jù)轉(zhuǎn)換雷達數(shù)據(jù)以供顯示,并將其廣播給所有控制臺。每個控制臺選擇自己需要顯示的報告數(shù)據(jù),每個控制臺都能夠顯示任何方位的數(shù)據(jù)處理沖突警告,或其它由主計算機發(fā)送來的數(shù)據(jù)提供與主計算機的接口,以便于輸入和查詢飛行計劃提供諸如網(wǎng)絡管理等多方面的監(jiān)控信息,允許場站管理員實時地重新配置所安裝的系統(tǒng)提供記錄
20、能力,以供事后回放在控制臺上提供如窗口形式的圖形用戶界面,有必要提供特殊的與安全相關的功能,如顯示的窗口有一定的透明度,以免遮擋住重要信息在主計算機、主要的通信網(wǎng)絡以及主要的雷達傳感器出現(xiàn)故障時,提供一定的后備能力,ISSS系統(tǒng)所處的物理環(huán)境,物理視圖,模塊分解視圖,顯示管理,通用系統(tǒng)服務,記錄、分析與回放,全國空域系統(tǒng)修改,操作系統(tǒng),捕獲交通管制系統(tǒng)中的會話,以備事后分析,進程視圖,ISSS系統(tǒng)按照多處理器的環(huán)境設計。這些處
21、理器在邏輯上組成處理器組。處理器組的目的是要分別運行一個或多個應用程序的副本。其中,一個為主,其他為輔,稱統(tǒng)一應用程序及其不同副本為主地址空間(PAS)和備用地址空間(SAS)。操作單元:一個主地址空間和與其相應的備用地址空間的集合稱為操作單元。功能組:未以容錯方式實現(xiàn)的ISSS系統(tǒng)的其他部分在不同的處理器上獨立運行,稱其為功能組。,進程視圖,添加一個新的操作單元的步驟,如果在SAS內(nèi)部發(fā)現(xiàn)了錯誤,就要在另外的處理器上啟動新的SAS
22、。新的SAS要與其PAS協(xié)調(diào)工作,并接收狀態(tài)數(shù)據(jù)。確定必要的輸入數(shù)據(jù)及所在的位置;確定哪些操作單元需要用到該新操作單元的輸出數(shù)據(jù);以一種使該圖仍然保持非循環(huán)的方式將該操作單元的通信模式加到整個系統(tǒng)的非循環(huán)通信圖中,以免發(fā)生死鎖;設計消息,實現(xiàn)所期望的數(shù)據(jù)流;確定在進行系統(tǒng)評審時必須要用到的內(nèi)部狀態(tài)數(shù)據(jù),以及在從PAS到SAS的更新通信中必須包括的狀態(tài)數(shù)據(jù);將狀態(tài)數(shù)據(jù)劃分為能夠很好地適應網(wǎng)絡要求的消息;,添加一個新的操作單元的
23、步驟,如果在SAS內(nèi)部發(fā)現(xiàn)了錯誤,就要在另外的處理器上啟動新的SAS。新的SAS要與其PAS協(xié)調(diào)工作,并接收狀態(tài)數(shù)據(jù)。定義必須用到的消息類型;規(guī)劃在PAS失敗時的切換:要對更新數(shù)據(jù)做合理的規(guī)劃,保證能夠完全反映出各種狀態(tài);保證在切換發(fā)生時數(shù)據(jù)的一致性;保證各個處理步驟能夠在不超過一次系統(tǒng)“心跳”的時間內(nèi)完成;規(guī)劃與其他操作單元的數(shù)據(jù)共享和數(shù)據(jù)鎖定協(xié)議。,客戶機/服務器視圖,代碼視圖,展示了如何將功能映射到代碼單元上。應用程序
24、被分解為Ada程序包,這些程序包中只有類型定義。打包(packaging)是一種設計活動,其目的是包含抽象和信息隱藏。,分層視圖,容錯視圖,高可用性決定了系統(tǒng)出現(xiàn)故障時不能進行冷啟動。直接(或比較快地)切換到備用組件是必須的。容錯層次捕獲應用程序間的交互的錯誤并從中恢復。,容錯視圖,Summary,圖書管理系統(tǒng),圖書館管理系統(tǒng)中的書籍管理功能:書籍信息類書目類新增書籍界面類刪除書籍界面類書籍管理類,類,,,,順序圖,,協(xié)作
25、圖,,軟件體系結(jié)構上機案例,學校每一個學生都有兩類書籍第一類是學生常用書籍,另外一類是一些貴重的書籍。對于常用,學生在借閱時 需 要 進 行 登 記 ( Register ), 自 行 保 管 , 但 在 損 壞 時 需 要 進 行 注 銷(Cancellation)和賠償。而對于貴重書籍必須通過對外書籍管理系統(tǒng)進行統(tǒng)一管 理。在使用時需要辦理租借(Lend)手續(xù)。需要注意的是,對于一般學生,只能借與自己專業(yè)相關的書籍(也
26、就是本部門內(nèi)的書籍),而對于研究生,則可以借所有類型的書籍。由于書籍分布在不同的地理位置。開發(fā)一套書籍倉庫管理系統(tǒng)(Book Warehouse System, BWS)。,,BWS 主要分為兩個部分第一部分是學生與書籍信息管理系統(tǒng)(Student and Book Management System, SBMS),詳細記錄書籍的借、還狀態(tài),學生可以通過本地學校局域網(wǎng)(Intranet)查詢自己書籍的借還情況,并發(fā)出對貴
27、重書籍的請求。對于本地沒有的特殊書籍,員工可以使用 SBMS 通過互聯(lián)網(wǎng)(Internet)在全國圖書倉庫中查找特定書籍,并發(fā)出借用該書籍的請求。第二部分是一個書庫的實時管理系統(tǒng)(Book Warehouse Management System ,BWMS),位于不同位置的的書庫,在提取具體書籍時,用戶需要到具體的書庫進行書籍的提取。,,BWMS的具體要求如下。 書庫的實時管理系統(tǒng)中存在多個書籍抓取機器人,每個機器人都可從書柜上
28、獲取書籍并將其放在傳送帶上,傳送帶裝置根據(jù)重量傳感器得知是否有書籍在傳送帶上,并將書籍傳送到出口處。用戶在的出口處向書籍管理員提交書籍租借請求,由管理員將該請求輸 入書庫控制電腦,電腦控制書庫中的機器人抓取相應的工具并將其放到傳送帶上,一旦機器人出現(xiàn)故障,將通知控制電腦以便及時進行維修。帶開發(fā)的軟件系統(tǒng)需要能夠?qū)⒎植荚诳刂齐娔X,機器人以及傳送帶上。(不考慮書籍歸還系統(tǒng)),,1)書庫管理系統(tǒng)(Book Warehouse System,B
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 軟件體系結(jié)構設計方法的研究
- 異構軟件體系結(jié)構設計方法研究.pdf
- 智慧城市——事務模型軟件體系結(jié)構設計.pdf
- 集成體系結(jié)構設計
- VOIP系統(tǒng)中DSP的軟件體系結(jié)構設計.pdf
- 軟件體系結(jié)構設計方法的研究與應用.pdf
- 面向智能噴霧機的軟件體系結(jié)構設計.pdf
- 體系結(jié)構設計過程的研究.pdf
- 省級綜合結(jié)算系統(tǒng)體系結(jié)構設計
- 建筑板柱結(jié)構體系結(jié)構設計新探
- 面向方面軟件體系結(jié)構設計方法與描述機制研究.pdf
- 智慧城市云服務平臺軟件體系結(jié)構設計與應用.pdf
- 課程設計報告-vpn體系結(jié)構設計
- 省級綜合結(jié)算系統(tǒng)體系結(jié)構設計.pdf
- webservice軟件體系結(jié)構分析
- 基于web服務的體系結(jié)構設計研究
- 紋理映射單元硬件體系結(jié)構設計.pdf
- 企業(yè)應用程序體系結(jié)構設計.pdf
- 冷軋鋼板表面缺陷在線監(jiān)測軟件體系結(jié)構設計.pdf
- [優(yōu)秀畢業(yè)設計精品] 分布式軟件x系統(tǒng)體系結(jié)構設計
評論
0/150
提交評論