培訓(xùn)搜索引擎

高級(jí)系統(tǒng)架構(gòu)師(謝老師)

參加對(duì)象:項(xiàng)目經(jīng)理、系統(tǒng)架構(gòu)師、系統(tǒng)分析師、高級(jí)程序員、資深開發(fā)人員。

公開課編號(hào) GKK2737
主講老師 謝老師
參加費(fèi)用 5800元
課時(shí)安排 4天
近期開課時(shí)間 2015-07-15
舉辦地址 加載中...

其他開課時(shí)間
  • 開課地址: 開課時(shí)間:

公開課大綱

培訓(xùn)要點(diǎn)
    什么是設(shè)計(jì)呢?設(shè)計(jì)是一種對(duì)話,它不僅僅是與利益相關(guān)方的對(duì)話,也是自己與自己的對(duì)話。對(duì)于設(shè)計(jì)人員來(lái)講,本身的工作背景只是一個(gè)點(diǎn),如果思考方式僅僅依靠這個(gè)點(diǎn),慢慢的思想就被禁錮住了,這會(huì)嚴(yán)重約束我們的發(fā)展。我們必須撕破這個(gè)束縛,站在更高的角度看軟件,才能尋求更大的發(fā)展空間。
    軟件設(shè)計(jì)是一個(gè)思維活動(dòng),需要從什么是設(shè)計(jì)?為什么要設(shè)計(jì)?怎樣進(jìn)行設(shè)計(jì)?三個(gè)層面系統(tǒng)思考與研究,才可能進(jìn)一步提升軟件設(shè)計(jì)能力。世界上沒有神奇的設(shè)計(jì),優(yōu)秀的設(shè)計(jì)來(lái)自于對(duì)每個(gè)問(wèn)題的細(xì)致分析,來(lái)自于對(duì)每一個(gè)問(wèn)題和解決方案的仔細(xì)權(quán)衡,也來(lái)自于我們的經(jīng)驗(yàn)和眼光。設(shè)計(jì)的質(zhì)量是由設(shè)計(jì)人員的質(zhì)量決定的,深厚的積淀能夠幫助我們應(yīng)對(duì)軟件開發(fā)的挑戰(zhàn),并且指導(dǎo)我們應(yīng)對(duì)這些挑戰(zhàn)。
    那么優(yōu)秀的設(shè)計(jì)師是怎樣成長(zhǎng)起來(lái)的?任何人的成長(zhǎng)都離不開實(shí)踐,在實(shí)踐中體會(huì),在實(shí)踐中解決問(wèn)題,在實(shí)踐中增長(zhǎng)才干,這就形成了深厚的積淀。但是光有積淀是不夠的,還需要把實(shí)踐中的問(wèn)題進(jìn)行梳理,通過(guò)分析發(fā)現(xiàn)其中的規(guī)律,把它上升到理論的高度,并用理論來(lái)指導(dǎo)實(shí)踐。正是在這種層層的循環(huán)中,才能使我們上升到前所未有的高度。
    課程將從設(shè)計(jì)方法論開始引入思考框架,然后直接通過(guò)案例分析進(jìn)入設(shè)計(jì)過(guò)程,不斷地提出問(wèn)題并解決問(wèn)題,使學(xué)員逐步的領(lǐng)悟:如何進(jìn)行系統(tǒng)思考?如何系統(tǒng)化考慮各種關(guān)系?如何發(fā)現(xiàn)問(wèn)題并解決問(wèn)題?在這個(gè)經(jīng)驗(yàn)的基礎(chǔ)上,進(jìn)一步尋找規(guī)律,從過(guò)程和模式兩個(gè)方面進(jìn)行歸納總結(jié),使經(jīng)驗(yàn)上升到理性的高度,形成能夠指導(dǎo)未來(lái)設(shè)計(jì)的設(shè)計(jì)模式與模式語(yǔ)言。在此基礎(chǔ)上,課程將引導(dǎo)學(xué)員再一次回到實(shí)踐,以一個(gè)“日超過(guò)億萬(wàn)調(diào)用的互聯(lián)網(wǎng)中間層改造工程”案例為背景,重點(diǎn)討論在這個(gè)背景下遇到的問(wèn)題以及面對(duì)的挑戰(zhàn),緊扣“并發(fā)”、“同步”、“緩存”、“表”這四個(gè)關(guān)鍵問(wèn)題展開討論,完成認(rèn)識(shí)事物螺旋上升法則的一個(gè)完整循環(huán)。
    從這個(gè)意義上說(shuō),本課程與其說(shuō)是告訴人們?cè)趺丛O(shè)計(jì),還不如說(shuō)是描述了一個(gè)向更高層次蛻變的故事,這個(gè)故事中蘊(yùn)含的思想,可能比僅僅告訴人們?cè)趺慈プ龈幸饬x。在本課程基礎(chǔ)上,我們希望學(xué)員不但能掌握軟件系統(tǒng)設(shè)計(jì)方法論,更要根據(jù)組織所處領(lǐng)域的不同,通過(guò)總結(jié)歷史形成的經(jīng)驗(yàn)、教訓(xùn)、方法、模式,通過(guò)歸納整理,形成具有本組織領(lǐng)域特色的系統(tǒng)設(shè)計(jì)方法,并最終形成對(duì)本組織有價(jià)值的智力資產(chǎn)。

培訓(xùn)內(nèi)容
第一講 軟件架構(gòu)設(shè)計(jì)的方法論 
    1,系統(tǒng)思考:軟件架構(gòu)設(shè)計(jì)方法學(xué)
    2,用風(fēng)險(xiǎn)消除策略驅(qū)動(dòng)架構(gòu)設(shè)計(jì)
         質(zhì)量風(fēng)險(xiǎn)對(duì)架構(gòu)設(shè)計(jì)的影響
         進(jìn)度風(fēng)險(xiǎn)對(duì)架構(gòu)設(shè)計(jì)的影響
         盡早發(fā)現(xiàn)軟件的腐化 
    3,擁抱著變化而設(shè)計(jì)
         面向?qū)ο蠓治雠c設(shè)計(jì)的本質(zhì)
         關(guān)注特征:共性和可變性分析
         在行為分析中發(fā)現(xiàn)共性和變化性
         對(duì)變化建模:發(fā)現(xiàn)變化的規(guī)律
    4,面向?qū)ο蟮脑O(shè)計(jì)原則
第二講 從實(shí)踐到理論:頂層設(shè)計(jì)的案例
    1,實(shí)踐:從案例分析入手研究問(wèn)題
         案例背景及領(lǐng)域分析
         確定產(chǎn)品設(shè)計(jì)的目標(biāo)與策略
    2,建立清晰的初期概念架構(gòu)
         劃分大泥球:職責(zé)的層次分解
         分布式問(wèn)題的設(shè)計(jì)考慮
         分離用戶界面的設(shè)計(jì)考慮
    3,基礎(chǔ)系統(tǒng)的細(xì)化設(shè)計(jì)
         分布式環(huán)境對(duì)于組件布局的影響
         領(lǐng)域?qū)ο蟮牟l(fā)訪問(wèn)考慮
         日志處理的并發(fā)性考慮
第三講 從實(shí)踐到理論:領(lǐng)域?qū)ο笤O(shè)計(jì)的案例
    1,關(guān)注細(xì)節(jié):業(yè)務(wù)拓?fù)浣M件設(shè)計(jì)
         支持軟件模型的重新組織
         提高訪問(wèn)領(lǐng)域?qū)ο蟮男阅?br />          支持重新配置行為考慮
    2,組件設(shè)計(jì)的問(wèn)題與對(duì)策 
         實(shí)現(xiàn)全局拓?fù)涔芾砉δ?br />          支持業(yè)務(wù)流的后期擴(kuò)展
         維護(hù)內(nèi)存中的存儲(chǔ)單元數(shù)據(jù)
         業(yè)務(wù)拓?fù)浣M件接口詳細(xì)設(shè)計(jì)
第四講 從理論到實(shí)踐:設(shè)計(jì)模式與模式語(yǔ)言 
    1,如何把經(jīng)驗(yàn)歸納總結(jié)成理論 
         從過(guò)程的角度進(jìn)行歸納總結(jié)
         從模式的角度進(jìn)行歸納總結(jié)
         把模式嵌入過(guò)程:模式語(yǔ)言
    2,頂層架構(gòu)設(shè)計(jì)過(guò)程域
         如何解決從混沌到結(jié)構(gòu)的問(wèn)題 
         如何解決分布式基礎(chǔ)設(shè)施中的問(wèn)題 
         如何解決事件分離和分發(fā)中的問(wèn)題 
         如何解決接口劃分中的問(wèn)題
    3,組件設(shè)計(jì)過(guò)程域
         如何解決組件劃分中的問(wèn)題
         如何解決并發(fā)方面的問(wèn)題 
         如何解決同步方面的問(wèn)題 
         如何解決對(duì)象之間的交互中的問(wèn)題 
         如何解決適配與擴(kuò)展中的問(wèn)題 
    4,資源應(yīng)用過(guò)程域    
         如何解決資源管理中的問(wèn)題    
         如何解決數(shù)據(jù)庫(kù)訪問(wèn)中的問(wèn)題        
    5,問(wèn)題與擴(kuò)展:面向服務(wù)的架構(gòu)設(shè)計(jì)與實(shí)施 
第六講 理論到實(shí)踐:日超過(guò)億萬(wàn)調(diào)用的互聯(lián)網(wǎng)中間層改造工程 
    1,案例背景:遇到的問(wèn)題以及面對(duì)的挑戰(zhàn)
    2,項(xiàng)目的初期決策以及關(guān)注點(diǎn)
         對(duì)IT架構(gòu)和架構(gòu)師的職責(zé)定義
         IT技術(shù)的四個(gè)領(lǐng)域及構(gòu)建知識(shí)體系
         IT架構(gòu)都必定擁有的三個(gè)架構(gòu)組成部分
    3,并發(fā)設(shè)計(jì)
         多核處理器并發(fā)所面臨的挑戰(zhàn)
         NUMA、SMP與CMP架構(gòu)的特點(diǎn)
         多核情況下CPU緩存所帶來(lái)的問(wèn)題:一致性和性能問(wèn)題
         并發(fā)設(shè)計(jì)解決方案
    4,阻塞同步與自旋
         自旋鎖的概念,使用條件
         偏向鎖、可重入鎖和讀寫鎖
         粗粒度和細(xì)粒度同步,樂(lè)觀同步、非阻塞同步
         復(fù)合邏輯的并發(fā)問(wèn)題
         上下文切換的影響,以及如何降低上下文切換
         同步問(wèn)題解決方案
    5,緩存設(shè)計(jì)
         緩存的常見算法:拉鏈法和開放地址散列,內(nèi)外緩存
         緩存部署分類:?jiǎn)螜C(jī)混合部署、多機(jī)部署
         通過(guò)命中率、緩存穿透后代價(jià)等因素來(lái)評(píng)價(jià)緩存
         臟數(shù)據(jù)和時(shí)間不同步所帶來(lái)的問(wèn)題。
         CPU緩存設(shè)計(jì)的啟示,使用多級(jí)緩存,冷熱數(shù)據(jù)分離
         緩存服務(wù)的解決方案
    6,合理的表結(jié)構(gòu)設(shè)計(jì)
        互聯(lián)網(wǎng)中的反范式
        混搭數(shù)據(jù)庫(kù)類型的問(wèn)題和好處
        空間與時(shí)間互相交換,散列
    7,課程總結(jié)

師資
由業(yè)界知名軟件架構(gòu)師親自授課:
謝老師   培訓(xùn)中心副校長(zhǎng)、教授,大型電子對(duì)抗項(xiàng)目首席系統(tǒng)架構(gòu)師
劉老師   國(guó)內(nèi)某著名網(wǎng)站技術(shù)總監(jiān)

 

上一篇:企業(yè)研發(fā)中的知識(shí)產(chǎn)權(quán)管理和專利挖掘(楊安進(jìn))
下一篇:決戰(zhàn)項(xiàng)目管理(黃老師)

培訓(xùn)現(xiàn)場(chǎng)