識別和描述各種架構,包括嵌入式系統、客戶端-伺服器、N-層、網路、無線、資訊傳遞、協作平臺,並分析其對質量的影響。
系統架構定義了系統級元件(包括子系統)、這些元件之間的介面,以及系統級需求對這些元件和介面的分配。系統的架構設計也可以考慮這些介面的時間和頻寬。系統級元件可以是軟體、資料、硬體和人(執行流程和手工操作的人),也可以包括 "流程(例如,向用戶提供服務的流程)、程式(例如,操作者的指令)、設施、材料和自然實體"(ISO/IEC/IEEE 2011)。
好的系統架構解決了系統的高層次概念和抽象。低層次的細節在元件設計(也稱為詳細設計)活動中處理,這些活動在硬體/軟體/資料/流程工程層面定義每個元件的內部結構)。系統架構的利益相關者應該能夠。
理解系統的作用理解系統如何工作理解系統與環境的關係在系統的一個部分工作,獨立於其他部分擴充套件系統重用系統元件或部分來建立另一個系統架構和設計的層次
架構可能包括以下幾個層次:
企業架構。企業架構是組織級元件的結構(例如,流程、系統、人員、團隊、組織子單元等),以及它們之間的關係/介面。如果軟體是企業使用的架構的一部分,那麼企業和它的系統都會對軟體的設計產生影響。系統架構。對於作為大系統一部分的軟體,設計也可能包括系統的架構設計。系統層面的需求被分配到各個組成部件(子系統或包,包括硬體、軟體、資料庫和系統內的手工操作子系統等)。這個層次的主要設計活動是確定如何最好地將系統分離,並定義這些子系統之間的通訊、介面和相互作用。較小的軟體應用程式則可以跳過這一步。系統的系統。系統也可能是更大的系統的一部分。例如財務系統可能時間會計系統、工資系統、應付賬款系統、應收賬款系統等等。系統架構定義了構成系統的系統以及這些系統之間的關係和介面。軟體架構和設計。本書第13章將介紹軟體架構和設計。
《聯邦企業架構的共同方法》,(見whitehouse.gov/sites/default/files/omb/assets/egov_docs/common_approach_to_federal_ea.pdf2012),其中列出了實施架構的八個層次範圍。
國際國家級聯邦部門機構分段系統應用嵌入式系統
嵌入式系統是具有專用功能的計算機系統,被嵌入到一個更大的系統中。例如,作為一個大系統(汽車、飛機)的組成部分的軟/硬體分離系統或燃料噴射系統。如果軟體被安裝到一個硬體元件中,它通常被稱為韌體,並被儲存在只讀儲存器(ROM)、快閃記憶體晶片或其他裝置中。
嵌入式系統的能力差異很大。與個人電腦或主機相比,許多嵌入式系統只限於執行一個或有限數量的專用功能或任務。數字手錶、微波爐、行動電話、交通訊號燈和手持式計算器只是眾多嵌入式系統中的幾個例子。像現代汽車或飛機這樣的系統的系統有多個嵌入式系統。醫療裝置和武器系統是複雜和多功能的嵌入式系統的例子。嵌入式系統的範圍可以從沒有使用者介面到類似於個人電腦的複雜圖形使用者介面。許多嵌入式系統還受到時間、尺寸、功率利用、可靠性以及系統環境所施加的其他限制。
n-層
在n層架構中,也被稱為多層架構,系統在邏輯上被分解成兩個或更多的層(級別),每個層都有獨立的處理能力,創造了一個模組化的架構方法。n層架構中的 "n "意味著任何數字,如兩層、四層、五層,等等。定義明確的介面和資訊隱藏(抽象)是分層或分層架構風格的特點。每個層與它上面和/或下面的層都有介面,並執行整個系統的部分功能。如果兩個層之間的通訊被切斷,每個層內或不被切斷的層之間的部分獨立功能仍然是可能的。例如,電信網路是一個典型的分層結構。如果一個公司內部的專用交換機(PBX)失去了與本地交換機的連線,員工就不能打外部電話,但他們可能仍然能夠使用同一PBX呼叫其他員工。然而,如果本地交換機與PBX有良好的連線,但失去了與五級交換機的連線,員工仍然可以互相打電話,也可能與共享同一本地交換機的其他人有有限的外部呼叫能力。
各層提供了抽象性,因為一個層不需要知道它上面或下面的層的操作是如何實現的。在分層架構中,各層可以獨立新增、升級或替換,而不會對系統的其他部分產生重大影響。
客戶機-伺服器
客戶機-伺服器架構是一種特殊的雙層架構。例如,企業內的許多計算機網路都是基於客戶-伺服器架構的。網路上的每臺計算機或裝置都是客戶端或伺服器。網路上的中央伺服器計算機/裝置提供服務,管理網路資源(例如,共享軟體許可證),並集中大部分或全部的資料。
客戶端是服務的請求者,通常執行在分散的訪問終端、計算機或工作站上。這些客戶端下載或訪問集中的資料,共享網路資源,並利用伺服器提供的集中處理能力。瘦客戶機,也被稱為瘦身或精簡客戶機,主要集中在使用者介面和從伺服器傳送和接收輸入/輸出。瘦客戶端的大部分或全部處理活動都依賴於伺服器。通常,安裝在瘦客戶機上的唯一軟體是使用者介面、網路作業系統,以及可能是數量有限的經常使用的應用程式。相比之下,胖客戶端,也被稱為富客戶端或厚客戶端,通常安裝有大量的應用程式,並在本地執行大部分的處理功能,主要依靠伺服器來共享資料。厚客戶機可以獨立執行得更多。事實上,厚客戶機可以在不連線伺服器的情況下執行一段時間,只需要定期連線以重新整理資料並與系統的其他部分及其使用者同步。
客戶機-伺服器架構的優點包括:。
在整個網路中分散地分配角色和責任資源和資料的共享簡化系統管理(例如,新/更新軟體的單點傳播和集中備份可以從伺服器上斷開的客戶端,用於工作現場遠端輸入和/或修改資料,再加上從分散式客戶端重新整理伺服器上的集中共享資料庫的能力能夠在伺服器層面加強安全保護潛在的低成本,特別是如果軟體許可證可以經濟地共享,或者可以利用低成本的裝置(例如,使用瘦客戶端)。缺點可能包括。
在高網路流量條件下,效能下降或資源不可用如果與伺服器的連線被切斷,客戶端可用的處理水平受到限制如果客戶端在備份時斷開連線,那麼在備份未上傳到伺服器的組織資產時可能會出現問題。點對點架構
點對點架構是一種分散式應用架構,它將任務或工作負載在具有同等許可權的、相互連線的節點(對等體)之間進行劃分。這些對等體是相互連線的,並在網路上相互共享資源,不需要使用一個或多個集中的管理系統(客戶-伺服器架構中的伺服器)。每個對等體都可以作為網路上其他對等體的客戶和伺服器發揮作用。
Web
有三種主要的網路架構,包括。
網際網路是一個連線數百萬臺計算機的全球網路。網際網路的特點是企業對消費者(B to C)的架構,網際網路頁面由企業、組織和/或個人建立,向消費者提供開放的訪問。這創造了一個消費者會重新訪問的社群,因為有動態的內容交付能力。TCP/IP網路架構由四層組成,它們相互作用,使網際網路工作,包括。 應用層。該層提供的服務可由主機上的應用程式用於與同一或不同主機上的其他應用程式進行資料通訊。它定義了網際網路服務的運作方式以及這些服務如何被應用程式使用。例如,這些服務包括用於檔案傳輸的FTP服務,用於網頁的HTTP服務,以及用於電子郵件的簡單郵件傳輸協議(SMTP)。 傳輸層。該層執行主機到主機的通訊。在傳送方一側,該層將應用程式要傳輸的資訊分解成資料包,並試圖傳遞這些資料包。在接收方一側,該層從資料包中檢索資訊並將其傳遞給適當的應用程式。這是用兩種協議之一完成的,即傳輸控制協議(TCP)或使用者資料報協議(UCP)。 IP層。該層將網際網路協議(IP)資料包從發端主機跨越網路邊界傳輸到目標主機。對於發出的資料包,該層負責網際網路協議(IP)資料包的定址、路由和擁堵控制等功能。它透過傳遞給適當的網路介面層將資料包傳送到下一跳節點。對於傳入的資料包,該層檢索資料包並將其傳送到運輸層。 網路介面層。這一層也叫網路接入層,負責透過網路轉發資料包,包括透過中間路由器的路由,利用其獨特的網際網路協議(IP)地址轉發到適當的目標節點。同一訊息的資料包可能採取不同的路線。有些可能永遠不會到達目的地,在這種情況下,如果使用TCP協議,TCP要求對丟失或損壞的包進行重傳。如果使用UDP協議,應用程式必須照顧到任何錯誤。內聯網駐紮在一個組織的防火牆後面,只有該組織內部的人才能訪問。內部網通常實施企業對員工(B to E)的架構,內部網的網頁整合和鞏固企業資訊。這使得員工能夠從一個自助訪問點更有效地訪問和利用現有的資訊,促進新資訊的獲取和共享,減少資料過載,並確保當前最新的資訊可以隨時獲得。在一個組織內可以有許多門戶,用於不同的部門、專案、地理位置等等。 外聯網指的是透過各種安全保護措施,向被授權的外部人員提供多層次訪問的內聯網。外聯網允許組織夥伴在企業對企業(B to B或B2B)架構的基礎上交換資訊。外聯網頁面向外部合作伙伴提供商業資訊和應用功能,包括對重要資料的實時訪問。這可以減少合作伙伴支援活動的成本。每個入口網站都有能力根據個別合作伙伴(例如,客戶、供應商和合資企業的合作伙伴)的需求進行定製和個性化。無線
在今天的環境中,許多人需要在旅行時帶著他們的計算機處理能力,而不需要透過電纜拴在網路上。人們在從一個地方到另一個地方時,需要無線訪問網際網路,訪問儲存的資訊和資料,等等。例如,醫生或護士可以使用個人電子裝置從任何需要該資訊的地方訪問病人的記錄。銷售人員、顧問、執法人員、學生和許多其他人需要在旅行中保持聯絡,這可以透過他們的電子裝置的無線訪問來實現。無線接入通常提供給公司的客人,或在會議室或生產區使用,在那裡電線可能是一個問題。
資訊傳遞
資訊傳遞系統架構的設計是為了接受來自其他系統的資訊,或向其他系統傳遞資訊。電子郵件系統或即時通訊(IM)是資訊傳遞系統的例子。在其最簡單的形式中,一個訊息傳遞架構。
接受來自外部系統的資訊,確定內部收件人,並適當地路由這些資訊。接受來自內部的資訊,確定其目的地系統,並根據需要在內部或外部進行路由。協作平臺
根據維基百科,"協作平臺提供一套軟體元件和軟體服務,使個人能夠找到對方和他們需要的資訊,並能夠進行交流和合作,以實現共同的商業目標"。協作平臺幫助個人和團隊一起工作,無論他們在地理上如何分散。協作平臺的關鍵組成部分的例子包括。
透過電子郵件、資料庫或聯絡人或客戶名單傳遞資訊,以及協調日曆和日程安排工具虛擬會議工具,包括即時資訊、基於網路的會議、音訊或影片會議,以及桌面共享。透過共享檔案和資料重新整理、具有搜尋功能的檔案庫以及分享想法和筆記的機制進行資訊共享社會計算工具,如部落格、維基、聊天室和社會媒體(例如,Facebook、LinkedIn等)。