




已閱讀5頁(yè),還剩29頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
,贏在架構(gòu),大中型軟件架構(gòu)設(shè)計(jì)實(shí)踐體系,軟件架構(gòu)專家 架構(gòu)咨詢顧問與培訓(xùn)師 軟件架構(gòu)設(shè)計(jì)作者,溫 昱,三個(gè)經(jīng)典難題,一套實(shí)踐體系 實(shí)踐體系的三個(gè)階段 Pre-architecture階段 Conceptual Architecture階段 Refined Architecture階段 實(shí)踐體系如何解決軟件企業(yè)的問題 ADMEMS方法的十大理念 Q&A,議 程,架構(gòu)設(shè)計(jì),三個(gè)經(jīng)典難題,需求,架構(gòu),思維過程亂 不能系統(tǒng)有序進(jìn)行思維,輸出亂 不能錯(cuò)落有致提供設(shè)計(jì)決策,輸入亂 不能深入全面把握需求,架構(gòu)師:混亂是思維的大敵!,一套實(shí)踐體系,Pre-architecture階段:錯(cuò)過 = 過錯(cuò) Conceptual Arch階段:大系統(tǒng)成敗關(guān)鍵 Refined Arch階段:團(tuán)隊(duì)并行開發(fā)基礎(chǔ),PA階段,需求,CA階段,RA階段,架構(gòu),三個(gè)經(jīng)典難題,一套實(shí)踐體系 實(shí)踐體系的三個(gè)階段 Pre-architecture階段 Conceptual Architecture階段 Refined Architecture階段 實(shí)踐體系如何解決軟件企業(yè)的問題 ADMEMS方法的十大理念 Q&A,議 程,第1步: 需求結(jié)構(gòu)化 第2步: 分析約束影響 第3步: 確定關(guān)鍵質(zhì)量 第4步: 確定關(guān)鍵功能,4,3,2,1,確定關(guān) 鍵功能,確定關(guān) 鍵質(zhì)量,分析約 束影響,全面有序理解需求,影響架構(gòu)的 因素多而雜,Pre-architecture:不僅是理解需求,例如,確定關(guān)鍵質(zhì)量時(shí),理解力:不能“還原”,何談“模仿”,創(chuàng)造力:用好Pre-architecture階段,功 能,質(zhì) 量,約 束,三個(gè)經(jīng)典難題,一套實(shí)踐體系 實(shí)踐體系的三個(gè)階段 Pre-architecture階段 Conceptual Architecture階段 Refined Architecture階段 實(shí)踐體系如何解決軟件企業(yè)的問題 ADMEMS方法的十大理念 Q&A,議 程,重大需求塑造概念架構(gòu),架構(gòu)決定因素 關(guān)鍵功能 關(guān)鍵質(zhì)量業(yè)務(wù)需求與約束,對(duì)比:RUP的用例驅(qū)動(dòng)方式,Use Cases,Analysis Classes,Source Code,Exec,Design Classes,兩種哲學(xué)的優(yōu)劣分析,驅(qū)動(dòng)力,功能 質(zhì)量 約束,功能 質(zhì)量 約束,驅(qū)動(dòng)力,概念架構(gòu)針對(duì)重大需求、特色需求、高風(fēng)險(xiǎn)需求,給出高層次的解決方案,問題1:過于理想化 問題2:未來修改很大,案例:基于Web的PMSys,PMSys例:概念架構(gòu)理想設(shè)計(jì),PMSys例:得到的概念架構(gòu),4層架構(gòu)及每層職責(zé) 采用B/S架構(gòu) 采用Java語言 ORM技術(shù)的采用 集成的考慮,細(xì)化架構(gòu),詳設(shè)與編程,概念架構(gòu),愿景與需求,三個(gè)經(jīng)典難題,一套實(shí)踐體系 實(shí)踐體系的三個(gè)階段 Pre-architecture階段 Conceptual Architecture階段 Refined Architecture階段 實(shí)踐體系如何解決軟件企業(yè)的問題 ADMEMS方法的十大理念 Q&A,議 程,軟件架構(gòu)設(shè)計(jì)中一則笑話,程序員說,架構(gòu)就是要決定需要編寫哪些類、使用哪些現(xiàn)成框架,程序經(jīng)理笑了; 程序經(jīng)理說,架構(gòu)就是模塊的劃分和接口的定義,系統(tǒng)分析員笑了; 分析員說,架構(gòu)就是為業(yè)務(wù)領(lǐng)域?qū)ο蟮年P(guān)系建模,配置管理員笑了; 配置管理員說,架構(gòu)就是開發(fā)出來的、以及編譯過后的軟件到底是個(gè)啥結(jié)構(gòu),數(shù)據(jù)庫(kù)工程師笑了; 數(shù)據(jù)庫(kù)工程師說,架構(gòu)規(guī)定了持久化數(shù)據(jù)的結(jié)構(gòu),其他一切都不過是對(duì)數(shù)據(jù)的操作而已,部署工程師笑了; 部署工程師說,架構(gòu)規(guī)定了軟件部署到硬件的策略,用戶笑了; 用戶說,架構(gòu)就是決定一個(gè)個(gè)功能子系統(tǒng)如何劃分,程序員又笑了。,RUP的4+1視圖,Design View,Implementation View,Process View,Components,Classes, interfaces, collaborations,Active classes,Deployment View,Use cases,5視圖:擴(kuò)充了經(jīng)驗(yàn),補(bǔ)足了技巧,運(yùn)行架構(gòu),數(shù)據(jù)架構(gòu),物理架構(gòu),邏輯架構(gòu),開發(fā)架構(gòu),持久數(shù)據(jù)單元 文件 關(guān)系數(shù)據(jù)庫(kù) 實(shí)時(shí)數(shù)據(jù)庫(kù) 數(shù)據(jù)存儲(chǔ)格式 文件格式 數(shù)據(jù)庫(kù)Schema,程序單元 源文件、配置文件 程序庫(kù)、框架 目標(biāo)單元 程序單元組織 Project劃分 Project目錄結(jié)構(gòu) 編譯依賴關(guān)系,控制流 進(jìn)程、線程 中斷服務(wù)程序 控制流組織 系統(tǒng)啟動(dòng)與停機(jī) 控制流通信 加鎖與同步,職責(zé)劃分 邏輯層(Layer) 子系統(tǒng)、模塊 關(guān)鍵類 職責(zé)間協(xié)作 接口 協(xié)作關(guān)系,物理節(jié)點(diǎn) PC、服務(wù)器 單片機(jī)、單板機(jī)、專用機(jī) 軟件安裝、部署、燒寫 系統(tǒng)軟件選型 物理節(jié)點(diǎn)拓?fù)?連接方式、 拓?fù)浣Y(jié)構(gòu) 物理層(Tier ) 冗余考慮,三個(gè)經(jīng)典難題,一套實(shí)踐體系 實(shí)踐體系的三個(gè)階段 Pre-architecture階段 Conceptual Architecture階段 Refined Architecture階段 實(shí)踐體系如何解決軟件企業(yè)的問題 ADMEMS方法的十大理念 Q&A,議 程,有獎(jiǎng)問答,某公司擬以C語言代替C+,重寫其電信計(jì)費(fèi)系統(tǒng),因?yàn)殚_發(fā)人員引入了太多抽象,使“可擴(kuò)展性上去了,性能下來了” 能解決問題 于事無補(bǔ),因?yàn)?用C語言 有會(huì)過度設(shè)計(jì) 問題根源出在Pre-architecture階段 架構(gòu)設(shè)計(jì)中必須分析質(zhì)量間相互影響,制訂權(quán)衡取舍策略,內(nèi)容回顧,確定關(guān)鍵質(zhì)量時(shí),企業(yè)內(nèi)訓(xùn)時(shí)推薦的文檔模板,1. 文檔簡(jiǎn)介 1.1 文檔目的 1.2 文檔范圍 1.3 定義、縮寫詞和縮略語 1.4 參考資料 2. 架構(gòu)描述方式 2.1 架構(gòu)視圖閱讀指南 2.2 圖表與模型閱讀指南 3. 架構(gòu)設(shè)計(jì)目標(biāo) 3.1 關(guān)鍵功能 3.2 關(guān)鍵質(zhì)量屬性 3.3 業(yè)務(wù)需求和約束因素,4. 架構(gòu)設(shè)計(jì)原則 4.1 架構(gòu)設(shè)計(jì)原則 4.2 備選架構(gòu)設(shè)計(jì)方案及被否原因 4.3 架構(gòu)設(shè)計(jì)對(duì)后續(xù)工作的限制(詳設(shè),部署等) 5. 邏輯架構(gòu)視圖 5.1 職責(zé)劃分與職責(zé)確定 5.2 接口設(shè)計(jì)與協(xié)作機(jī)制 5.3 重要設(shè)計(jì)包,企業(yè)內(nèi)訓(xùn)時(shí)推薦的文檔模板,6. 開發(fā)架構(gòu)視圖 6.1 Project劃分 6.2 Project 1 project目錄結(jié)構(gòu)指導(dǎo) 程序單元組織 框架與應(yīng)用之間的關(guān)系(可選) 6.3 Project n 7. 運(yùn)行架構(gòu)視圖 7.1 控制流組織 7.2 控制流的創(chuàng)建、銷毀、通信 7.3 加鎖設(shè)計(jì),8. 物理架構(gòu)視圖 8.1 物理拓?fù)?8.2 軟件到硬件的映射 8.3 優(yōu)化部署 9. 數(shù)據(jù)架構(gòu)視圖 持久化機(jī)制的選擇 持久化存儲(chǔ)方案 數(shù)據(jù)同步與復(fù)制策略 10. 關(guān)鍵質(zhì)量屬性的設(shè)計(jì)原理,有獎(jiǎng)問答,有獎(jiǎng)問答,許多公司從事嵌入式領(lǐng)域,也需架構(gòu)設(shè)計(jì)實(shí)踐體系的指導(dǎo),圖示的架構(gòu)中,有幾個(gè)控制流? 1個(gè) 2個(gè) 4個(gè) 7個(gè),內(nèi)容回顧,5視圖方法 之 運(yùn)行架構(gòu)視圖,運(yùn)行架構(gòu),控制流 進(jìn)程、線程 中斷服務(wù)程序 控制流組織 系統(tǒng)啟動(dòng)與停機(jī) 控制流通信 加鎖與同步,有獎(jiǎng)問答,許多公司困擾于:開發(fā)人員不按照架構(gòu)進(jìn)行詳細(xì)設(shè)計(jì)和編程。如何讓開發(fā)人員更“擁護(hù)”架構(gòu)? 在架構(gòu)設(shè)計(jì)中重視“開發(fā)架構(gòu)視圖”,讓開發(fā)人員看到他最關(guān)心的“程序單元”、“源碼目錄結(jié)構(gòu)”等概念 架構(gòu)設(shè)計(jì)不可“高來高去”,能支持并行的詳細(xì)設(shè)計(jì)是“架構(gòu)設(shè)計(jì)進(jìn)行到什么程度”的標(biāo)志 應(yīng)令HR對(duì)開發(fā)人員批評(píng)、教育 編程一線的程序經(jīng)理參與架構(gòu)設(shè)計(jì),多管齊下,在架構(gòu)設(shè)計(jì)中重視“開發(fā)架構(gòu)視圖” 編程一線的程序經(jīng)理參與架構(gòu)設(shè)計(jì) 能支持并行的詳細(xì)設(shè)計(jì)是“架構(gòu)設(shè)計(jì)進(jìn)行到什么程度”的標(biāo)志,三個(gè)經(jīng)典難題,一套實(shí)踐體系 實(shí)踐體系的三個(gè)階段 Pre-architecture階段 Conceptual Architecture階段 Refined Architecture階段 實(shí)踐體系如何解決軟件企業(yè)的問題 ADMEMS方法的十大理念 Q&A,議 程,業(yè)界趨勢(shì):方法體系是必由之路,架構(gòu)與OO:必須弄清誰包含誰 多視圖方法:必須貼近實(shí)踐 大系統(tǒng)架構(gòu)設(shè)計(jì)能否成功:要靠概念架構(gòu) 非功能需求支持能否到位:要靠場(chǎng)景思維 混亂乃思維大敵:但架構(gòu)設(shè)計(jì)的混亂存在于何處 需求決定了架構(gòu):但不同需求影響架構(gòu)的原理有何不同 關(guān)鍵需求決定架構(gòu):實(shí)踐 理論 架構(gòu)設(shè)計(jì):?jiǎn)我环椒?or 方法體系 時(shí)間先后組織方法體系:架構(gòu)視圖 架構(gòu)層次 技術(shù)選擇與非功能考慮:殲滅戰(zhàn) or 持久戰(zhàn),三個(gè)經(jīng)典難題,一套實(shí)踐體系 實(shí)踐體系的三個(gè)階段 Pre-architecture階段
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 縣域市場(chǎng)治理方案(3篇)
- 工程公司招聘管理制度
- 封閉場(chǎng)所疫情管理制度
- 小區(qū)現(xiàn)場(chǎng)日常管理制度
- 橋梁防撞措施方案(3篇)
- 對(duì)外客戶培訓(xùn)管理制度
- 單位工勤人員管理制度
- 廢舊煤炭處置方案(3篇)
- 合伙公司內(nèi)部管理制度
- 小型環(huán)衛(wèi)公司管理制度
- 手術(shù)室PDCA-提高急診手術(shù)器械物品準(zhǔn)備的完善率
- 幼兒園大班心理健康《我勇敢了》課件
- 有害物質(zhì)管理程序
- 法學(xué)專業(yè)實(shí)習(xí)手冊(cè)
- 全部編版三年級(jí)語文下冊(cè)生字讀音、音序、偏旁及組詞
- 中國(guó)鋁業(yè)股份有限公司偃師市東溝鋁土礦礦山地質(zhì)環(huán)境保護(hù)與土地復(fù)墾方案
- 市政工程質(zhì)量通病與防治
- 魔方社團(tuán)精彩活動(dòng)記錄簿 副本
- 配電項(xiàng)目工程重點(diǎn)、難點(diǎn)及解決措施
- 三一sy215c8零件手冊(cè)SY215C8液壓挖掘機(jī)零部件圖冊(cè)
評(píng)論
0/150
提交評(píng)論