體系結(jié)構(gòu)第5章架構(gòu)設計ppt課件
《體系結(jié)構(gòu)第5章架構(gòu)設計ppt課件》由會員分享,可在線閱讀,更多相關《體系結(jié)構(gòu)第5章架構(gòu)設計ppt課件(15頁珍藏版)》請在裝配圖網(wǎng)上搜索。
5.1 生命期中的構(gòu)架 5.2 良好架構(gòu)的評判原則 5.3 架構(gòu)設計的質(zhì)量驅(qū)動方法 5.4 創(chuàng)建骨架系統(tǒng) 5.5 團隊結(jié)構(gòu)的形成 5.6 架構(gòu)師的職責 5.7 小結(jié),第 5 章 設計構(gòu)架,1,5.1 生命期中的構(gòu)架,軟件過程—對軟件開發(fā)活動的組織、規(guī)范和管理 基于構(gòu)架的開發(fā)步驟 為軟件系統(tǒng)構(gòu)建一個商業(yè)案例 弄清系統(tǒng)需求 構(gòu)建或選用構(gòu)架 正確表述此構(gòu)架,并與有關各方進行交流 對此構(gòu)架進行分析和評價 實現(xiàn)基于構(gòu)架的系統(tǒng)并保證與構(gòu)架相一致 系統(tǒng)維護時,構(gòu)架文檔應同步維護,2,下圖的演變交付生命期模型表明了構(gòu)架所應處的位置。,3,何時可以開始設計? 對需求有了初步了解就可以開始設計。 構(gòu)架驅(qū)動因素的組成: 比較重要的功能、質(zhì)量屬性、限制條件構(gòu)成的某個子集 如何確定構(gòu)架驅(qū)動因素? 業(yè)務目標優(yōu)先級較高的要求,4,5.2 良好架構(gòu)的評判原則,設計構(gòu)架過程的建議: 構(gòu)架的設計應該由一位設計師來完成 設計師應全面掌握對系統(tǒng)的技術需求,以及對各項定性指標優(yōu)先級的清單 構(gòu)架的文檔完備,并采用所有人員認可的文檔形式 構(gòu)架設計方案應讓各風險承擔者積極參與評估 通過對構(gòu)架分析,得出明確的定性與定量指標 構(gòu)架設計應有助于具體實現(xiàn) 允許構(gòu)架帶來一定的資源爭用,并給出可行的解決方案,5,關于構(gòu)架的結(jié)構(gòu)的建議: 構(gòu)架由定義良好的模塊組成,各模塊的功能劃分應基于信息隱藏 模塊的劃分應體現(xiàn)出相互獨立的原則 把計算機基礎結(jié)構(gòu)的特性封裝在一定的模塊中 構(gòu)架盡量不依賴于某個特定版本的商用產(chǎn)品或工具 產(chǎn)生數(shù)據(jù)的功能和使用數(shù)據(jù)的功能應分屬于不同的模塊 對并發(fā)系統(tǒng),構(gòu)架應充分考慮進程與模塊結(jié)構(gòu)的不對應 進程編寫要考慮到與特定處理器的關系,并容易改變關系 構(gòu)架應盡量采用一些已知的設計模式。,6,5.3 架構(gòu)設計的質(zhì)量驅(qū)動方法,你作為設計師對構(gòu)架的設計和評價就如同一個足球教練對一場比賽的球隊組織,你首先要了解自身和對手的情況,明確你這場比賽想打輸、打贏或打平(質(zhì)量目標),然后根據(jù)該目標設計比賽陣型,如攻擊或防守陣型,再確定相關戰(zhàn)術和人員組織(構(gòu)架設計、戰(zhàn)術選用),最后將你的設計和隊員溝通,取得全體隊員的共識(構(gòu)架評價),7,屬性驅(qū)動的設計(Attribute Driven Design, ADD)把一組質(zhì)量屬性場景作為輸入,利用對質(zhì)量屬性實現(xiàn)與構(gòu)架設計之間的關系的了解,對構(gòu)架進行設計。 ADD是一種定義軟件構(gòu)架的方法,該方法將模塊分解過程建立在軟件必須滿足的質(zhì)量屬性之上。它是一個遞歸的分解過程,其中在每個階段都選擇構(gòu)架模式和戰(zhàn)術來滿足一組質(zhì)量屬性場景,然后對功能進行分配,以實例化有該模式所提供的模塊類型。 ADD的結(jié)果是粗粒度的, ADD的結(jié)果是構(gòu)架的模塊分解視圖和其他視圖的最初的幾個層次,不是視圖的所有細節(jié)都是通過ADD得到。 由ADD得到的構(gòu)架和已經(jīng)為實現(xiàn)做好準備的構(gòu)架之間的區(qū)別是,需要做出更詳細的設計決策。,8,ADD構(gòu)架設計的步驟如下: 樣本輸入。 選擇要分解的模塊。 根據(jù)下列步驟對模塊進行求精: a. 從具體的質(zhì)量場景和功能需求集合中選擇構(gòu)架驅(qū)動因素。 b. 選擇滿足構(gòu)架驅(qū)動因素的構(gòu)架模式。 c. 實例化模塊并根據(jù)用例分配功能,使用多個視圖進行表示。 d. 定義子模塊的接口。 e. 驗證用例和質(zhì)量場景并對其進行求精,使它們成為子模塊的限制。 對需要進一步分解的每個模塊重復上述步驟。,9,5.4 創(chuàng)建骨架系統(tǒng),提高開發(fā)效率,鼓舞士氣。 能更早發(fā)現(xiàn)復雜的依賴關系。 使開發(fā)人員更多關注在設想中最難以實現(xiàn)的部分。 能夠縮短系統(tǒng)集成時間,降低其成本,并使集成成本更明確。 便于評審和測試。,創(chuàng)建骨架系統(tǒng)的思想是提供一種基本能力,以一種對項目有力的順序?qū)崿F(xiàn)系統(tǒng)的功能。 在系統(tǒng)開發(fā)的最初階段創(chuàng)建整個系統(tǒng)的骨架系統(tǒng)是非常重要的,主要原因包括:,10,創(chuàng)建骨架系統(tǒng)的步驟: 實現(xiàn)處理構(gòu)架組件交互的軟件部分。 選擇組件逐步添加到系統(tǒng)中。 逐步進行測試。,11,5.6 團隊結(jié)構(gòu)的形成,開發(fā)小組的結(jié)構(gòu)反映了構(gòu)架的模塊結(jié)構(gòu)??梢园涯K看作一個小領域,再根據(jù)開發(fā)人員的專長進行安排。 開發(fā)小組要做到松耦合,高內(nèi)聚,即小組內(nèi)需要有非常便于溝通的機制,小組間的溝通盡可能少。 開發(fā)組織對構(gòu)架也會有影響。,12,5.5 架構(gòu)師的職責,架構(gòu)師要和多個部門和多種人溝通,如要指導以架構(gòu)為核心形成開發(fā)團隊,協(xié)調(diào)團隊之間的合作,解決他們之間的沖突;架構(gòu)師要支持項目經(jīng)理的工作,要知道開發(fā)團隊的技術水平;為明確組織的業(yè)務目標,架構(gòu)師需要和售前、售后部門交流,拜訪客戶。因此,架構(gòu)師必須縱觀軟件過程的全局,并對不同角色相互合作的接口和時機有清晰的把握。架構(gòu)師的職責包括: 1 了解所在組織的業(yè)務目標,使架構(gòu)更好地支持業(yè)務目標 2 規(guī)劃產(chǎn)品的開發(fā)與演進 3 規(guī)劃和建設架構(gòu)級的重用,如產(chǎn)品線等 4 領導并負責架構(gòu)設計,定義系統(tǒng)的高層結(jié)構(gòu)和接口 5 為項目管理提供支持,如技術可行性、任務劃分、人員招聘,13,6 領導和協(xié)調(diào)項目組的主要技術活動,對主要技術產(chǎn)品負責實際參與架構(gòu)原型的開發(fā)實現(xiàn) 7 講解架構(gòu)、指導詳細設計和開發(fā)、協(xié)調(diào)沖突以實現(xiàn)既定的構(gòu)架目標 8 規(guī)劃和協(xié)助軟件架構(gòu)的評審 9 評估新技術并提出采用建議,14,5.7 小結(jié),15,- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 體系結(jié)構(gòu) 架構(gòu) 設計 ppt 課件
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學習交流,未經(jīng)上傳用戶書面授權,請勿作他用。
鏈接地址:http://m.appdesigncorp.com/p-1921190.html