軟件架構技術

    軟件架構是具備必定形式的結構化元素,即構件的集合,包括處理構件、數據構件和鏈接構件。而架構問題包括整體組織和全局控制、通訊協議、同步、數據存取,給設計元素分配特定功能,設計元素的組織,規模和性能,在各設計方案間進行選擇等。 數據庫

 1、軟件架構建模: 安全

一、結構模型:以架構的構件、鏈接件和其餘概念來刻畫結構 服務器

二、框架模型:比結構模式更側重總體 數據結構

三、動態模型:對結構模式和框架模型的補充,研究系統「大顆粒」的行爲性質 架構

四、過程模型:研究構造系統的步驟和過程 併發

五、功能模型:該模型認爲架構是由一組功能構件按層次組成,下層向上層提供服務。 框架

【5種模型中最經常使用的是結構模型和動態模型】 性能

 

「4+1」視圖模型: 設計

邏輯視圖【功能需求】 對象

開發視圖【軟件管理】

進程視圖【性能可擴充性和吞吐量】

物理視圖【系統拓撲、安裝和通訊】

場景

 

2、軟件架構風格

通用架構風格分類以下:

一、數據流風格:批處理序列、管道/過濾器

二、調用/返回風格:主程序/子程序、面向對象風格、層次結構

三、獨立構件風格:進程通訊、事件系統

四、虛擬機風格:解釋器、基於規則的系統

五、倉庫風格:數據庫系統、超文本系統、黑板系統

 

客戶端/服務器風格

兩層C/S下的胖客戶端和三層C/S【表示層、功能層、數據層】

B/S與C/S區別:B/S幾乎算是0客戶端了,容易在運行時自動升級,可是B/S缺少對動態頁面的支持能力,沒有集成有效的數據庫處理功能,且擴展能力差,安全性難以控制,採用B/s架構的應用系統在數據查詢等響應速度上要遠低於C/S,而且數據的交互性不強。【B/s實際上是三層C/s中的一種,它的功能層放在Web服務中】

爲了解決B/s下的富因特網應運而生,主要的RIA技術平臺:Flash/Flex、Bindows、Java、Ajax、Laszlo、Xul、Avalon

 

正交架構:正交軟件架構由組織層和線索的構件構成。【層次化,上層調用下層的線索,若是線索是相互獨立的,即不一樣的構件之間是不存在相互調用,那這個結構就是徹底正交的,其基本思想是把應用系統的結構按功能的正交相關性,垂直分割爲若干個線索(子系統),線索又分爲幾個層次,每一個線索由多個具備不一樣層次功能和不一樣抽象級別的構件構成,系統有一個公共驅動層(最高層)和公共數據結構(最低層)】

 

基於層次消息總線的架構:基於層次渻總線,支持構件的分佈和併發,構件之間經過消息總線進行通訊【相似於硬件中的總線結構只過它是鏈接各個構件的或者是複合構件(子系統【內部也是消息總路線的架構】),各個構件掛接在消息總線上,向總線登記感興趣的消息類型,構件根據須要發出消息,由消息總路線負責把消息分派到系統中全部對此消息感興趣的構件】

相關文章
相關標籤/搜索