<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    迷途書童

    敏感、勤學、多思
    隨筆 - 77, 文章 - 4, 評論 - 86, 引用 - 0
    數據加載中……

    軟件架構設計(一)——軟件架構的概念和表述

    做了好幾年架構設計的事了,一直沒有好好的總結。實在不好,花點時間總結一下,寫出來,有興趣的朋友可以一起探討。

    軟件架構設計的主題狠深狠難,本文打算從架構的概念,架構的表述方法,架構設計的過程三個方面來講一下我的理解。

    一、什么是軟件架構?

          溫昱在《軟件架構設計》一書中,給了下面的定義:

          組合派:軟件系統的架構將系統描述為計算組件及組件之間的交互。
          決策派:架構是一系列重要決策的集合,這些決策與以下內容有關:軟件的組織,構成系統的結構元素及其接口的選擇,這些元素在相互協作中明確表現出的行為,這些結構元素和行為元素進一步組合所構成的更大規模的子系統,以及指導這一組織--包括這些元素及其接口、它們的協作和它們的組合--架構風格。

          在我看來,決策派的定義更為具體和準確,注意決策派用了元素這一詞而沒有用組件,組件是有具體含義的,指一個可獨立替換的物理單元,而架構需要能夠指導涉眾,如開發人員、用戶、部署人員等等,對開發人員來講,開發過程中如何分包、如何將包打包為組件,架構師需不需要提供指導呢,答案是肯定的。因此,如果將架構限定在組件和組件的交互上,是不完整的。

    二、架構的表述方法

         這個現在都有共識,就是4+1視圖表述法:邏輯視圖,實現視圖,進程視圖,部署視圖,用例視圖。 參見下圖RUP 4+1視圖:

    82250175980 

          用例視圖關注系統的人、事、物、規則,人是指系統的Actor,包括業務主角和業務工人,事是指系統用例,物是指業務實體,規則指做事情的前置條件、后置條件,做事情過程中的規則。下面這個圖很精辟:

      image

          用例視圖是4+1視圖中的+1,它定義需求標準,跟其它視圖描述系統某一方面的結構有很大的不同。

          邏輯視圖關注系統的邏輯功能模塊和領域模型,不僅包括用戶可見的功能模塊,還包括實現用戶功能而必須提供的“輔助功能模塊”;它們可能是邏輯層、功能模塊、類等。

          實現視圖關注程序包,不僅包括要編寫的源程序,還包括可以直接使用的第三方SDK和現成框架、類庫,以及開發的系統將運行于其上的系統軟件或中間件。開發架構和邏輯架構之間可能存在一定的映射關系:比如邏輯架構中的邏輯層一般會映射到實現架構中的多個程序包;再比如實現架構中的源碼文件可以包含邏輯架構中的一到多個類(在C++里一個源碼文件可以包含多個類,即使在Java里一個源碼文件也可以同時包含一個類和幾個內部類)。

          進程視圖關注進程、線程、對象等運行時概念,以及相關的并發、同步、通信等問題。

          進程視圖和實現視圖的關系:實現視圖一般偏重程序包在編譯時期的靜態依賴關系,而這些程序運行起來之后會表現為對象、線程、進程,進程視圖比較關注的是這些運行時單元的交互問題。

          物理視圖關注“目標程序及其依賴的運行庫和系統軟件”最終如何安裝或部署到物理機器,以及如何部署機器和網絡來配合軟件系統的可靠性、可伸縮性等要求。物理架構和運行架構的關系:運行架構特別關注目標程序的動態執行情況,而物理架構重視目標程序的靜態位置問題;物理架構還要考慮軟件系統和包括硬件在內的整個IT系統之間是如何相互影響的。

          上面幾個視圖是最典型的視圖,不管你是通信中間件,還是依賴于數據庫的企業應用都需要的。對于依賴數據庫的企業應用,通常還需要數據視圖,數據視圖關注對象如何存儲,如數據庫表等。

           4+1視圖不僅僅是軟件架構的表述方法,它們各自從不同的視角去展現架構,因此,還是一種比較好的思維方式,引導我們從不同的視角去思考,從而做出比較系統的架構設計。

    posted on 2012-06-28 23:29 迷途書童 閱讀(1303) 評論(0)  編輯  收藏 所屬分類: 系統設計

    主站蜘蛛池模板: 好看的亚洲黄色经典| 亚洲一卡二卡三卡| 99精品视频在线观看免费专区| 久久精品国产亚洲AV大全| 四虎永久在线精品免费网址| 免费一级全黄少妇性色生活片| 亚洲成a人片在线观看无码| 久久久久国色AV免费观看性色| 一本到卡二卡三卡免费高| 亚洲综合自拍成人| 全部免费毛片免费播放| 四虎国产成人永久精品免费| 亚洲国产精品无码观看久久| 亚洲国产综合无码一区| 最近免费中文字幕大全视频| 中国人免费观看高清在线观看二区| 亚洲av永久综合在线观看尤物 | 亚洲天堂免费在线视频| 曰批视频免费40分钟试看天天| 国产精品亚洲一区二区三区 | 国产V亚洲V天堂A无码| 午夜一级毛片免费视频| 日本高清高色视频免费| 老外毛片免费视频播放| 亚洲婷婷天堂在线综合| 亚洲人成网站在线观看播放| 国产小视频免费观看| 久久精品国产免费观看三人同眠| 久久www免费人成看国产片| 亚洲国产精品网站在线播放| 亚洲性猛交xx乱| 亚洲Av永久无码精品三区在线 | 最近2019中文字幕免费直播| 国产VA免费精品高清在线| 亚洲精品女同中文字幕| 亚洲精品中文字幕无码AV| 中文字幕一精品亚洲无线一区| 国产成人涩涩涩视频在线观看免费| 2022久久国产精品免费热麻豆| 久久精品免费一区二区三区| 又大又硬又粗又黄的视频免费看 |