課程簡介
針對大多數(shù)企業(yè)目前是維護遺留系統(tǒng), 該課程介紹了軟件架構(gòu)的監(jiān)控,架構(gòu)的壞癥狀和重構(gòu)方法,因為架構(gòu)設(shè)計的前期不能考慮到所有的問題,設(shè)計包容一切的完美架構(gòu).
目標收益
本課程通過介紹軟件架構(gòu)視圖和軟件文檔,軟件架構(gòu)設(shè)計過程,軟件架構(gòu)應用與常用的架構(gòu)模式/策略/原則等諸多架構(gòu)實際問題,透視軟件架構(gòu)是如何設(shè)計和實現(xiàn)的? 并且介紹應該如何應用系統(tǒng)架構(gòu)設(shè)計為后期的詳細設(shè)計和應用開發(fā)提供指導。
培訓對象
軟件架構(gòu)師/技術(shù)總監(jiān)/資深技術(shù)人員/高級軟件設(shè)計師
課程內(nèi)容
我們已經(jīng)為幾十家企業(yè)提供了內(nèi)訓如Adobe中國研發(fā)中心,Autodesk軟件(中國)研發(fā)中心,愛立信中國研發(fā)中心(7次內(nèi)訓),思科中國研發(fā)中心,卓望科技,朗訊研發(fā)中心,平安科技,Visto中國研發(fā)中心,橫河電機(中國)有限公司,大唐電信研發(fā)中心,美國通用電氣(GE)研發(fā)中心,邁瑞研發(fā)中心,阿里巴巴研發(fā)中心,摩托羅拉成都研發(fā)中心
課程大綱
第一篇: 軟件架構(gòu)核心原理和設(shè)計過程 第1單元:軟件架構(gòu)文檔和架構(gòu)視圖-如何有效描述架構(gòu)藍圖 |
內(nèi)容一:軟件架構(gòu)的視圖 1.軟件架構(gòu)的視圖原理 2.軟件架構(gòu)視圖的意義, 軟件架構(gòu)師的多維思考 3.邏輯視圖、開發(fā)視圖、部署視圖、運行視圖、場景視圖,數(shù)據(jù)視圖 ,實現(xiàn)視圖 4.如何和怎樣繪制軟件架構(gòu)視圖 5.UML建模工具在架構(gòu)視圖的應用 6.典型案例分析:結(jié)合多個電信,金融行業(yè)項目案例,分析真實項目軟件架構(gòu)視圖 內(nèi)容二: 軟件架構(gòu)的文檔編寫 1.軟件架構(gòu)文檔的意義 2.軟件架構(gòu)模板(根據(jù)實際項目情況選擇合適內(nèi)容) 3.軟件架構(gòu)文檔的結(jié)構(gòu)(避免出現(xiàn)不必要的重復和缺少關(guān)鍵信息) 4.軟件架構(gòu)文檔必須包含的內(nèi)容(通過多個項目,分析不同系統(tǒng)包含系統(tǒng)內(nèi)容不同) 5.文檔的后期管理(使文檔保持更新) 6.軟件架構(gòu)文檔的評審 7.典型案例分析:結(jié)合多個電信項目案例,進行分析和評審軟件架構(gòu)文檔 典型案例分析:結(jié)合多個電信項目案例,進行分析和評審軟件架構(gòu)文檔 |
第2單元:軟件架構(gòu)設(shè)計關(guān)注點(哪些因素驅(qū)動架構(gòu)設(shè)計,是架構(gòu)開始設(shè)計之前必須知道的?)和架構(gòu)最佳策略 |
內(nèi)容一:軟件架構(gòu)設(shè)計關(guān)注點(軟件架構(gòu)師在架構(gòu)設(shè)計之前必須考慮的要素) 1.架構(gòu)設(shè)計的關(guān)注是什么 2.軟件架構(gòu)的驅(qū)動因素(改變傳統(tǒng)以功能實現(xiàn)和新技術(shù)為驅(qū)動的策略) 3.軟件質(zhì)量需求對架構(gòu)的影響(質(zhì)量屬性場景定義和對應架構(gòu)策略) 4.軟件功能需求對架構(gòu)的影響(分析功能需求變化點和進化點) 5.軟件約束條件與架構(gòu)的影響(業(yè)務,運行環(huán)境,開發(fā)團隊,實現(xiàn)技術(shù)等約束) 6.如何使功能性需求,非功能性需求和平臺細節(jié)在架構(gòu)中能保持分離,從而改善可維護性和可擴展性 7.處理功能需求,非功能性需求,平臺細節(jié).制定架構(gòu)目標 8.典型案例分析:結(jié)合項目,因為分析驅(qū)動因素的錯誤,導致項目不能如期驗收的失敗案例 內(nèi)容二:軟件架構(gòu)最佳策略 1.重新認識系統(tǒng)質(zhì)量屬性,如何定義質(zhì)量屬性和相應的架構(gòu)策略 2.系統(tǒng)架構(gòu)的可擴展性設(shè)計策略 3.系統(tǒng)架構(gòu)的可靠性設(shè)計策略 4.系統(tǒng)架構(gòu)的高性能設(shè)計策略 5.系統(tǒng)架構(gòu)的可維護性設(shè)計策略 6.系統(tǒng)架構(gòu)的易用性設(shè)計策略 7.系統(tǒng)架構(gòu)質(zhì)量屬性和架構(gòu)模式的應用 8.通過分析案例,了解基本架構(gòu)策略如何應用 |
第3單元:軟件架構(gòu)設(shè)計過程 |
內(nèi)容一、軟件架構(gòu)設(shè)計過程 1.軟件架構(gòu)設(shè)計過程方法論(步驟和相應的成果) 2.軟件系統(tǒng)邊界和外部系統(tǒng)接口的定義 3.大型軟件系統(tǒng)的劃分子系統(tǒng)原則 4.子系統(tǒng)功能模塊的分解 5.子系統(tǒng)間的通信接口的設(shè)計 6.如何應對系統(tǒng)內(nèi)部緊耦合、高內(nèi)聚 7.軟件系統(tǒng)關(guān)鍵質(zhì)量屬性樹和可行性分析 8.軟件系統(tǒng)部署架構(gòu)(分布式/數(shù)據(jù)分布/通信/安全) 9.軟件系統(tǒng)部署容量評估(主機/中間件/數(shù)據(jù)庫等資源容量評估) 10.應用系統(tǒng)的類型和架構(gòu)風格 11.架構(gòu)模式在實際項目的應用 12.軟件架構(gòu)立方體圖(軟件架構(gòu)的分層,分區(qū)和基礎(chǔ)服務) 13.軟件架構(gòu)通用機制的分析(如何處理基礎(chǔ)設(shè)施擴展和具體有什么方法做基礎(chǔ)設(shè)施擴展, 掌握如何分離這些基礎(chǔ)設(shè)施用例) 14.使用質(zhì)量場景屬性進行迭代架構(gòu)設(shè)計 15.軟件架構(gòu)各層的架構(gòu)策略(針對企業(yè)應用分層,每層的架構(gòu)策略) 16.軟件系統(tǒng)線程架構(gòu)策略(結(jié)合Apache HTTP Server分析線程和進程的架構(gòu)) 17.數(shù)據(jù)架構(gòu)(數(shù)據(jù)模型/數(shù)據(jù)分布/數(shù)據(jù)存取,以及核心數(shù)據(jù)流) 18.用例視圖(抽取典型,有分險和客戶最關(guān)心用例進行分析,結(jié)合架構(gòu)進行設(shè)計) 19.實現(xiàn)視圖(架構(gòu),設(shè)計和開發(fā),實現(xiàn)原則和指南) 20.完成架構(gòu)文檔,對架構(gòu)文檔進行評估 21.典型案例分析:結(jié)合3G增值服務項目,分析物理架構(gòu)設(shè)計 |
第4單元:軟件架構(gòu)應用 |
內(nèi)容一、架構(gòu)設(shè)計的評估和驗證 1.軟件架構(gòu)的驗證(軟件架構(gòu)風險驗證) 2.軟件架構(gòu)的驗證方法和指標(基于問題檢查表和質(zhì)量屬性樹) 3.軟件架構(gòu)的驗證注意事項 4.軟件架構(gòu)的評估方式 5.軟件詳細設(shè)計和實現(xiàn)時期,架構(gòu)師的職責和架構(gòu)的監(jiān)控 6.典型案例分析:結(jié)合項目實例,分析如何進行驗證架構(gòu)和架構(gòu)設(shè)計的后期重構(gòu)技巧 內(nèi)容二、架構(gòu)設(shè)計重構(gòu)和復用 1.軟件架構(gòu)重構(gòu)概述 2.軟件架構(gòu)常見的壞癥狀 3.軟件架構(gòu)的重構(gòu)手段 4.軟件架構(gòu)的復用 結(jié)合某著名公司全球架構(gòu)師團隊架構(gòu)實例,分析架構(gòu)重構(gòu)和架構(gòu)復用技巧 |
第二篇: 軟件架構(gòu)分層架構(gòu)和每層核心策略 第5單元:軟件架構(gòu)核心策略 |
內(nèi)容一:領(lǐng)域模型層架構(gòu) 1.領(lǐng)域模型架構(gòu)策略 2.領(lǐng)域模型建模(關(guān)聯(lián),屬性) 3.多個系統(tǒng)數(shù)據(jù)模型不一致和領(lǐng)域模型的同步 4.公共數(shù)據(jù)模型(CDM) 5.領(lǐng)域模型分析模式(模型的選擇會影響最終產(chǎn)生系統(tǒng)的靈活性和可重用性) 6.根據(jù)電信計費系統(tǒng)和網(wǎng)絡(luò)資源管理案例分析領(lǐng)域模型的架構(gòu) 內(nèi)容二:業(yè)務邏輯層 1.業(yè)務邏輯架構(gòu)模式(事務腳本/領(lǐng)域模型/服務層模式) 2.業(yè)務流程架構(gòu)策略 3.基于容器的業(yè)務邏輯架構(gòu)(EJB和輕量級,以及容器提供的基礎(chǔ)服務) 4.面向方面的業(yè)務架構(gòu)和AOP技術(shù)在業(yè)務邏輯架構(gòu)的應用 5.狀態(tài)管理架構(gòu)策略(有狀態(tài)和無狀態(tài)服務,以及對可擴展性的影響) 6.業(yè)務邏輯的分布式架構(gòu)策略(遠程或本地/同步或異步) 7.并發(fā)和同步架構(gòu)模式(Half-Sync/Half-Async和Leader/Followers和Active Object和Monitor Object) 8.基于中間件的業(yè)務邏輯架構(gòu)(Corba/Tuxedo/MQSeries/J2EE/.net) 9.典型案例分析:結(jié)合某銀行交易系統(tǒng)分析業(yè)務邏輯架構(gòu) 內(nèi)容三:數(shù)據(jù)存?。ǔ志眯裕蛹軜?gòu) 1.數(shù)據(jù)存取架構(gòu)策略(對象和關(guān)系數(shù)據(jù)庫的映射) 2.對象關(guān)系阻抗/ORM技術(shù)/數(shù)據(jù)映射SQLMapper 3.緩存技術(shù)在存取層的應用/緩存數(shù)據(jù)和數(shù)據(jù)庫數(shù)據(jù)一致性 4.分布式數(shù)據(jù)存取策略(讀寫分離/分布數(shù)據(jù)/異構(gòu)數(shù)據(jù)存取) 5.數(shù)據(jù)同步和一致性策略 6.數(shù)據(jù)訪問層的性能考慮 7.事務管理(本地事務和分布式事務,以及事務補償) 8.數(shù)據(jù)鎖管理(悲觀鎖和樂觀鎖) 9.典型案例分析:結(jié)合零售行業(yè)POS項目分析數(shù)據(jù)訪問層的架構(gòu)設(shè)計 內(nèi)容四:數(shù)據(jù)架構(gòu) 1.數(shù)據(jù)架構(gòu)概述 2.數(shù)據(jù)建模原則和優(yōu)化策略 3.數(shù)據(jù)復制和同步策略 4.數(shù)據(jù)一致性和分布式事務 5.大數(shù)據(jù)量數(shù)據(jù)庫可擴展性(水平和垂直擴展,讀寫分離)以及單表記錄過大拆分策略 6. 數(shù)據(jù)庫集群規(guī)劃 7.分布式數(shù)據(jù)存取策略(跨多個庫, 可能數(shù)據(jù)庫異構(gòu)類型) 8.數(shù)據(jù)備份與恢復 9.數(shù)據(jù)庫性能規(guī)劃 10.數(shù)據(jù)安全策略 11.與遺留系統(tǒng)的數(shù)據(jù)庫兼容性考慮 12.結(jié)合電信,金融,零售POS項目實例分析,系統(tǒng)數(shù)據(jù)架構(gòu)設(shè)計策略 內(nèi)容五:系統(tǒng)基礎(chǔ)服務組件架構(gòu) 1.系統(tǒng)基礎(chǔ)服務組件架構(gòu)策略 2.系統(tǒng)通用服務層與業(yè)務邏輯分離 3.系統(tǒng)必備13種基礎(chǔ)服務架構(gòu)(異常處理/事務管理/緩存/工作流/校驗/通信/安全/日志/定時觸發(fā)/狀態(tài)/消息通信/系統(tǒng)監(jiān)控/配置管理) 4.業(yè)務通用服務架構(gòu)實現(xiàn)策略 結(jié)合多個項目實例分析,架構(gòu)師如何萃取基礎(chǔ)服務組件和怎樣設(shè)計實現(xiàn) |
第6單元:軟件應用類型和參考架構(gòu)(不同應用類型,必須采用不同架構(gòu)風格) |
內(nèi)容一:軟件應用類型和參考架構(gòu) 1.聯(lián)機交易類架構(gòu) 2.Web應用系統(tǒng)/大規(guī)模高并發(fā)Web2.0互聯(lián)網(wǎng)系統(tǒng) 3.Client/Server系統(tǒng)(銀行交易系統(tǒng)) 4.連接分析分析系統(tǒng)(移動經(jīng)營分析系統(tǒng)) 5.大規(guī)模實時并發(fā)系統(tǒng)(電信計費系統(tǒng)) 6.Portal系統(tǒng)(個性化和頁面集成系統(tǒng) ) 7.EAI企業(yè)集成系統(tǒng)(基于大規(guī)模消息集成系統(tǒng)) 8.基于WAP系統(tǒng)(多渠道/多種手機接入系統(tǒng)) 9.后臺批處理系統(tǒng)(高并發(fā)后臺批處理類型 銀行后臺系統(tǒng)) 10.基于SOA架構(gòu)系統(tǒng) 結(jié)合多個項目案例分析每種應用類型的架構(gòu)風格特點,主要架構(gòu)挑戰(zhàn)和相應對策 |
第三篇:大型高可用高并發(fā)分布式系統(tǒng)架構(gòu)設(shè)計與實踐 第7單元 大型分布式架構(gòu)設(shè)計最佳實踐 |
內(nèi)容一:大型分布式架構(gòu)核心概念 1.無狀態(tài)化設(shè)計; 2.冗余設(shè)計; 3.負載均衡設(shè)計; 4.分級管理設(shè)計; 5.純異步調(diào)用(狀態(tài)機等方式)設(shè)計; 6.調(diào)用合理超時設(shè)計; 7.服務降級設(shè)計; 8.冪等設(shè)計; 9.我們的實踐案例; 內(nèi)容二:大型分布式系統(tǒng)服務降級設(shè)計與實踐 1.服務限流降級概念; 2.服務限流降級使用業(yè)務場景; 3.服務限流降級設(shè)計環(huán)節(jié); 4.服務限流降級之原則篇、架構(gòu)篇、框架篇、業(yè)務篇; 5.移動時代服務限流降級如何打造; 6.我們的實踐案例; 內(nèi)容三:大型分布式系統(tǒng)緩存設(shè)計與實踐 1.互聯(lián)網(wǎng)使用緩存類型有哪些?各自作用是什么? 2.分布式緩存冗余如何設(shè)計? 3.高可用架構(gòu)緩存一致性如何保證? 4.高可用架構(gòu)緩存高性能如何保證? 5.我們的實踐案例; 6.緩存系統(tǒng)在大型網(wǎng)站架構(gòu)中發(fā)揮的作用 7.單機緩存系統(tǒng)自研與選型 8.Memcached與Redis的異同及應用場景 9.深入剖析Redis技術(shù) 10.Redis主要數(shù)據(jù)結(jié)構(gòu)剖析 11.Redis性能優(yōu)化及配置優(yōu)化 12.Redis復制機制與持久化機制 13.Redis缺陷與陷阱 14.分布式緩存技術(shù)剖析 15.擴展Redis集群,如何實現(xiàn)集群彈性伸縮,無縫擴容 16.Redis Cluster官方集群擴展方案及缺陷 業(yè)界主流Redis集群方案剖析 內(nèi)容四:大型分布式系統(tǒng)性能優(yōu)化 1.系統(tǒng)性能優(yōu)化的模式都有哪些; 2.系統(tǒng)性能優(yōu)化常用的步驟是什么; 3.系統(tǒng)性能優(yōu)化的環(huán)節(jié)都能哪些; 4.我們的實踐案例; 內(nèi)容五:分布式系統(tǒng)數(shù)據(jù)庫架構(gòu)設(shè)計與實踐 1.數(shù)據(jù)庫架構(gòu)設(shè)計基本概念; 2.高可用性設(shè)計與實踐; 3.高并發(fā)設(shè)計與實踐; 4.讀性能設(shè)計與實踐; 5.一致性設(shè)計與實踐; 6.擴展性設(shè)計與實踐; 7.我們的實踐案例; 內(nèi)容六:分布式系統(tǒng)數(shù)據(jù)庫架構(gòu)設(shè)計與實踐 1.數(shù)據(jù)庫架構(gòu)設(shè)計基本概念; 2.高可用性設(shè)計與實踐; |
第四篇: 架構(gòu)師與架構(gòu)職責 第8單元: 軟件架構(gòu)師成長 |
內(nèi)容一、軟件架構(gòu)師成長 1.軟件架構(gòu)師職責 2.軟件架構(gòu)師與項目經(jīng)理,產(chǎn)品經(jīng)理,需求分析師不同 3.軟件架構(gòu)師技能模型 4.軟件架構(gòu)師如何成長 5.中國特色的架構(gòu)師(目前國內(nèi)很多架構(gòu)師是身兼多職) |
第五篇: 案例分析 第9單元:大型軟件系統(tǒng)架構(gòu)實踐與剖析 (該案例分別在以上各單元,結(jié)合主題進行介紹) |
綜合軟件架構(gòu)實踐與剖析(以實際項目案例為背景) (1)電信行業(yè)(電信97/移動BOSS/電信MBOSS/經(jīng)營分析)軟件架構(gòu)案例研究 (2)金融行業(yè)(XXX銀行企業(yè)信貸和XXX銀行)軟件架構(gòu)案例研究 (3)政府行業(yè)(XXX社保和XXX稅務)軟件架構(gòu)案例研究 (4)電力行業(yè)(SG168和XXX電網(wǎng)門戶系統(tǒng))軟件架構(gòu)案例研究 (5)大型互聯(lián)網(wǎng)系統(tǒng)架構(gòu)案例研究 (6)郵政行業(yè)(***郵政項目)案例研究 |
第一篇: 軟件架構(gòu)核心原理和設(shè)計過程 第1單元:軟件架構(gòu)文檔和架構(gòu)視圖-如何有效描述架構(gòu)藍圖 內(nèi)容一:軟件架構(gòu)的視圖 1.軟件架構(gòu)的視圖原理 2.軟件架構(gòu)視圖的意義, 軟件架構(gòu)師的多維思考 3.邏輯視圖、開發(fā)視圖、部署視圖、運行視圖、場景視圖,數(shù)據(jù)視圖 ,實現(xiàn)視圖 4.如何和怎樣繪制軟件架構(gòu)視圖 5.UML建模工具在架構(gòu)視圖的應用 6.典型案例分析:結(jié)合多個電信,金融行業(yè)項目案例,分析真實項目軟件架構(gòu)視圖 內(nèi)容二: 軟件架構(gòu)的文檔編寫 1.軟件架構(gòu)文檔的意義 2.軟件架構(gòu)模板(根據(jù)實際項目情況選擇合適內(nèi)容) 3.軟件架構(gòu)文檔的結(jié)構(gòu)(避免出現(xiàn)不必要的重復和缺少關(guān)鍵信息) 4.軟件架構(gòu)文檔必須包含的內(nèi)容(通過多個項目,分析不同系統(tǒng)包含系統(tǒng)內(nèi)容不同) 5.文檔的后期管理(使文檔保持更新) 6.軟件架構(gòu)文檔的評審 7.典型案例分析:結(jié)合多個電信項目案例,進行分析和評審軟件架構(gòu)文檔 典型案例分析:結(jié)合多個電信項目案例,進行分析和評審軟件架構(gòu)文檔 |
第2單元:軟件架構(gòu)設(shè)計關(guān)注點(哪些因素驅(qū)動架構(gòu)設(shè)計,是架構(gòu)開始設(shè)計之前必須知道的?)和架構(gòu)最佳策略 內(nèi)容一:軟件架構(gòu)設(shè)計關(guān)注點(軟件架構(gòu)師在架構(gòu)設(shè)計之前必須考慮的要素) 1.架構(gòu)設(shè)計的關(guān)注是什么 2.軟件架構(gòu)的驅(qū)動因素(改變傳統(tǒng)以功能實現(xiàn)和新技術(shù)為驅(qū)動的策略) 3.軟件質(zhì)量需求對架構(gòu)的影響(質(zhì)量屬性場景定義和對應架構(gòu)策略) 4.軟件功能需求對架構(gòu)的影響(分析功能需求變化點和進化點) 5.軟件約束條件與架構(gòu)的影響(業(yè)務,運行環(huán)境,開發(fā)團隊,實現(xiàn)技術(shù)等約束) 6.如何使功能性需求,非功能性需求和平臺細節(jié)在架構(gòu)中能保持分離,從而改善可維護性和可擴展性 7.處理功能需求,非功能性需求,平臺細節(jié).制定架構(gòu)目標 8.典型案例分析:結(jié)合項目,因為分析驅(qū)動因素的錯誤,導致項目不能如期驗收的失敗案例 內(nèi)容二:軟件架構(gòu)最佳策略 1.重新認識系統(tǒng)質(zhì)量屬性,如何定義質(zhì)量屬性和相應的架構(gòu)策略 2.系統(tǒng)架構(gòu)的可擴展性設(shè)計策略 3.系統(tǒng)架構(gòu)的可靠性設(shè)計策略 4.系統(tǒng)架構(gòu)的高性能設(shè)計策略 5.系統(tǒng)架構(gòu)的可維護性設(shè)計策略 6.系統(tǒng)架構(gòu)的易用性設(shè)計策略 7.系統(tǒng)架構(gòu)質(zhì)量屬性和架構(gòu)模式的應用 8.通過分析案例,了解基本架構(gòu)策略如何應用 |
第3單元:軟件架構(gòu)設(shè)計過程 內(nèi)容一、軟件架構(gòu)設(shè)計過程 1.軟件架構(gòu)設(shè)計過程方法論(步驟和相應的成果) 2.軟件系統(tǒng)邊界和外部系統(tǒng)接口的定義 3.大型軟件系統(tǒng)的劃分子系統(tǒng)原則 4.子系統(tǒng)功能模塊的分解 5.子系統(tǒng)間的通信接口的設(shè)計 6.如何應對系統(tǒng)內(nèi)部緊耦合、高內(nèi)聚 7.軟件系統(tǒng)關(guān)鍵質(zhì)量屬性樹和可行性分析 8.軟件系統(tǒng)部署架構(gòu)(分布式/數(shù)據(jù)分布/通信/安全) 9.軟件系統(tǒng)部署容量評估(主機/中間件/數(shù)據(jù)庫等資源容量評估) 10.應用系統(tǒng)的類型和架構(gòu)風格 11.架構(gòu)模式在實際項目的應用 12.軟件架構(gòu)立方體圖(軟件架構(gòu)的分層,分區(qū)和基礎(chǔ)服務) 13.軟件架構(gòu)通用機制的分析(如何處理基礎(chǔ)設(shè)施擴展和具體有什么方法做基礎(chǔ)設(shè)施擴展, 掌握如何分離這些基礎(chǔ)設(shè)施用例) 14.使用質(zhì)量場景屬性進行迭代架構(gòu)設(shè)計 15.軟件架構(gòu)各層的架構(gòu)策略(針對企業(yè)應用分層,每層的架構(gòu)策略) 16.軟件系統(tǒng)線程架構(gòu)策略(結(jié)合Apache HTTP Server分析線程和進程的架構(gòu)) 17.數(shù)據(jù)架構(gòu)(數(shù)據(jù)模型/數(shù)據(jù)分布/數(shù)據(jù)存取,以及核心數(shù)據(jù)流) 18.用例視圖(抽取典型,有分險和客戶最關(guān)心用例進行分析,結(jié)合架構(gòu)進行設(shè)計) 19.實現(xiàn)視圖(架構(gòu),設(shè)計和開發(fā),實現(xiàn)原則和指南) 20.完成架構(gòu)文檔,對架構(gòu)文檔進行評估 21.典型案例分析:結(jié)合3G增值服務項目,分析物理架構(gòu)設(shè)計 |
第4單元:軟件架構(gòu)應用 內(nèi)容一、架構(gòu)設(shè)計的評估和驗證 1.軟件架構(gòu)的驗證(軟件架構(gòu)風險驗證) 2.軟件架構(gòu)的驗證方法和指標(基于問題檢查表和質(zhì)量屬性樹) 3.軟件架構(gòu)的驗證注意事項 4.軟件架構(gòu)的評估方式 5.軟件詳細設(shè)計和實現(xiàn)時期,架構(gòu)師的職責和架構(gòu)的監(jiān)控 6.典型案例分析:結(jié)合項目實例,分析如何進行驗證架構(gòu)和架構(gòu)設(shè)計的后期重構(gòu)技巧 內(nèi)容二、架構(gòu)設(shè)計重構(gòu)和復用 1.軟件架構(gòu)重構(gòu)概述 2.軟件架構(gòu)常見的壞癥狀 3.軟件架構(gòu)的重構(gòu)手段 4.軟件架構(gòu)的復用 結(jié)合某著名公司全球架構(gòu)師團隊架構(gòu)實例,分析架構(gòu)重構(gòu)和架構(gòu)復用技巧 |
第二篇: 軟件架構(gòu)分層架構(gòu)和每層核心策略 第5單元:軟件架構(gòu)核心策略 內(nèi)容一:領(lǐng)域模型層架構(gòu) 1.領(lǐng)域模型架構(gòu)策略 2.領(lǐng)域模型建模(關(guān)聯(lián),屬性) 3.多個系統(tǒng)數(shù)據(jù)模型不一致和領(lǐng)域模型的同步 4.公共數(shù)據(jù)模型(CDM) 5.領(lǐng)域模型分析模式(模型的選擇會影響最終產(chǎn)生系統(tǒng)的靈活性和可重用性) 6.根據(jù)電信計費系統(tǒng)和網(wǎng)絡(luò)資源管理案例分析領(lǐng)域模型的架構(gòu) 內(nèi)容二:業(yè)務邏輯層 1.業(yè)務邏輯架構(gòu)模式(事務腳本/領(lǐng)域模型/服務層模式) 2.業(yè)務流程架構(gòu)策略 3.基于容器的業(yè)務邏輯架構(gòu)(EJB和輕量級,以及容器提供的基礎(chǔ)服務) 4.面向方面的業(yè)務架構(gòu)和AOP技術(shù)在業(yè)務邏輯架構(gòu)的應用 5.狀態(tài)管理架構(gòu)策略(有狀態(tài)和無狀態(tài)服務,以及對可擴展性的影響) 6.業(yè)務邏輯的分布式架構(gòu)策略(遠程或本地/同步或異步) 7.并發(fā)和同步架構(gòu)模式(Half-Sync/Half-Async和Leader/Followers和Active Object和Monitor Object) 8.基于中間件的業(yè)務邏輯架構(gòu)(Corba/Tuxedo/MQSeries/J2EE/.net) 9.典型案例分析:結(jié)合某銀行交易系統(tǒng)分析業(yè)務邏輯架構(gòu) 內(nèi)容三:數(shù)據(jù)存?。ǔ志眯裕蛹軜?gòu) 1.數(shù)據(jù)存取架構(gòu)策略(對象和關(guān)系數(shù)據(jù)庫的映射) 2.對象關(guān)系阻抗/ORM技術(shù)/數(shù)據(jù)映射SQLMapper 3.緩存技術(shù)在存取層的應用/緩存數(shù)據(jù)和數(shù)據(jù)庫數(shù)據(jù)一致性 4.分布式數(shù)據(jù)存取策略(讀寫分離/分布數(shù)據(jù)/異構(gòu)數(shù)據(jù)存取) 5.數(shù)據(jù)同步和一致性策略 6.數(shù)據(jù)訪問層的性能考慮 7.事務管理(本地事務和分布式事務,以及事務補償) 8.數(shù)據(jù)鎖管理(悲觀鎖和樂觀鎖) 9.典型案例分析:結(jié)合零售行業(yè)POS項目分析數(shù)據(jù)訪問層的架構(gòu)設(shè)計 內(nèi)容四:數(shù)據(jù)架構(gòu) 1.數(shù)據(jù)架構(gòu)概述 2.數(shù)據(jù)建模原則和優(yōu)化策略 3.數(shù)據(jù)復制和同步策略 4.數(shù)據(jù)一致性和分布式事務 5.大數(shù)據(jù)量數(shù)據(jù)庫可擴展性(水平和垂直擴展,讀寫分離)以及單表記錄過大拆分策略 6. 數(shù)據(jù)庫集群規(guī)劃 7.分布式數(shù)據(jù)存取策略(跨多個庫, 可能數(shù)據(jù)庫異構(gòu)類型) 8.數(shù)據(jù)備份與恢復 9.數(shù)據(jù)庫性能規(guī)劃 10.數(shù)據(jù)安全策略 11.與遺留系統(tǒng)的數(shù)據(jù)庫兼容性考慮 12.結(jié)合電信,金融,零售POS項目實例分析,系統(tǒng)數(shù)據(jù)架構(gòu)設(shè)計策略 內(nèi)容五:系統(tǒng)基礎(chǔ)服務組件架構(gòu) 1.系統(tǒng)基礎(chǔ)服務組件架構(gòu)策略 2.系統(tǒng)通用服務層與業(yè)務邏輯分離 3.系統(tǒng)必備13種基礎(chǔ)服務架構(gòu)(異常處理/事務管理/緩存/工作流/校驗/通信/安全/日志/定時觸發(fā)/狀態(tài)/消息通信/系統(tǒng)監(jiān)控/配置管理) 4.業(yè)務通用服務架構(gòu)實現(xiàn)策略 結(jié)合多個項目實例分析,架構(gòu)師如何萃取基礎(chǔ)服務組件和怎樣設(shè)計實現(xiàn) |
第6單元:軟件應用類型和參考架構(gòu)(不同應用類型,必須采用不同架構(gòu)風格) 內(nèi)容一:軟件應用類型和參考架構(gòu) 1.聯(lián)機交易類架構(gòu) 2.Web應用系統(tǒng)/大規(guī)模高并發(fā)Web2.0互聯(lián)網(wǎng)系統(tǒng) 3.Client/Server系統(tǒng)(銀行交易系統(tǒng)) 4.連接分析分析系統(tǒng)(移動經(jīng)營分析系統(tǒng)) 5.大規(guī)模實時并發(fā)系統(tǒng)(電信計費系統(tǒng)) 6.Portal系統(tǒng)(個性化和頁面集成系統(tǒng) ) 7.EAI企業(yè)集成系統(tǒng)(基于大規(guī)模消息集成系統(tǒng)) 8.基于WAP系統(tǒng)(多渠道/多種手機接入系統(tǒng)) 9.后臺批處理系統(tǒng)(高并發(fā)后臺批處理類型 銀行后臺系統(tǒng)) 10.基于SOA架構(gòu)系統(tǒng) 結(jié)合多個項目案例分析每種應用類型的架構(gòu)風格特點,主要架構(gòu)挑戰(zhàn)和相應對策 |
第三篇:大型高可用高并發(fā)分布式系統(tǒng)架構(gòu)設(shè)計與實踐 第7單元 大型分布式架構(gòu)設(shè)計最佳實踐 內(nèi)容一:大型分布式架構(gòu)核心概念 1.無狀態(tài)化設(shè)計; 2.冗余設(shè)計; 3.負載均衡設(shè)計; 4.分級管理設(shè)計; 5.純異步調(diào)用(狀態(tài)機等方式)設(shè)計; 6.調(diào)用合理超時設(shè)計; 7.服務降級設(shè)計; 8.冪等設(shè)計; 9.我們的實踐案例; 內(nèi)容二:大型分布式系統(tǒng)服務降級設(shè)計與實踐 1.服務限流降級概念; 2.服務限流降級使用業(yè)務場景; 3.服務限流降級設(shè)計環(huán)節(jié); 4.服務限流降級之原則篇、架構(gòu)篇、框架篇、業(yè)務篇; 5.移動時代服務限流降級如何打造; 6.我們的實踐案例; 內(nèi)容三:大型分布式系統(tǒng)緩存設(shè)計與實踐 1.互聯(lián)網(wǎng)使用緩存類型有哪些?各自作用是什么? 2.分布式緩存冗余如何設(shè)計? 3.高可用架構(gòu)緩存一致性如何保證? 4.高可用架構(gòu)緩存高性能如何保證? 5.我們的實踐案例; 6.緩存系統(tǒng)在大型網(wǎng)站架構(gòu)中發(fā)揮的作用 7.單機緩存系統(tǒng)自研與選型 8.Memcached與Redis的異同及應用場景 9.深入剖析Redis技術(shù) 10.Redis主要數(shù)據(jù)結(jié)構(gòu)剖析 11.Redis性能優(yōu)化及配置優(yōu)化 12.Redis復制機制與持久化機制 13.Redis缺陷與陷阱 14.分布式緩存技術(shù)剖析 15.擴展Redis集群,如何實現(xiàn)集群彈性伸縮,無縫擴容 16.Redis Cluster官方集群擴展方案及缺陷 業(yè)界主流Redis集群方案剖析 內(nèi)容四:大型分布式系統(tǒng)性能優(yōu)化 1.系統(tǒng)性能優(yōu)化的模式都有哪些; 2.系統(tǒng)性能優(yōu)化常用的步驟是什么; 3.系統(tǒng)性能優(yōu)化的環(huán)節(jié)都能哪些; 4.我們的實踐案例; 內(nèi)容五:分布式系統(tǒng)數(shù)據(jù)庫架構(gòu)設(shè)計與實踐 1.數(shù)據(jù)庫架構(gòu)設(shè)計基本概念; 2.高可用性設(shè)計與實踐; 3.高并發(fā)設(shè)計與實踐; 4.讀性能設(shè)計與實踐; 5.一致性設(shè)計與實踐; 6.擴展性設(shè)計與實踐; 7.我們的實踐案例; 內(nèi)容六:分布式系統(tǒng)數(shù)據(jù)庫架構(gòu)設(shè)計與實踐 1.數(shù)據(jù)庫架構(gòu)設(shè)計基本概念; 2.高可用性設(shè)計與實踐; |
第四篇: 架構(gòu)師與架構(gòu)職責 第8單元: 軟件架構(gòu)師成長 內(nèi)容一、軟件架構(gòu)師成長 1.軟件架構(gòu)師職責 2.軟件架構(gòu)師與項目經(jīng)理,產(chǎn)品經(jīng)理,需求分析師不同 3.軟件架構(gòu)師技能模型 4.軟件架構(gòu)師如何成長 5.中國特色的架構(gòu)師(目前國內(nèi)很多架構(gòu)師是身兼多職) |
第五篇: 案例分析 第9單元:大型軟件系統(tǒng)架構(gòu)實踐與剖析 (該案例分別在以上各單元,結(jié)合主題進行介紹) 綜合軟件架構(gòu)實踐與剖析(以實際項目案例為背景) (1)電信行業(yè)(電信97/移動BOSS/電信MBOSS/經(jīng)營分析)軟件架構(gòu)案例研究 (2)金融行業(yè)(XXX銀行企業(yè)信貸和XXX銀行)軟件架構(gòu)案例研究 (3)政府行業(yè)(XXX社保和XXX稅務)軟件架構(gòu)案例研究 (4)電力行業(yè)(SG168和XXX電網(wǎng)門戶系統(tǒng))軟件架構(gòu)案例研究 (5)大型互聯(lián)網(wǎng)系統(tǒng)架構(gòu)案例研究 (6)郵政行業(yè)(***郵政項目)案例研究 |