高級系統(tǒng)架構(gòu)設計全程演練與最佳實踐培訓(北京,5月27-28日)
【舉辦單位】北京曼頓培訓網(wǎng) www.mdpxb.com
【咨詢電話】4006820825 010-56133998 13810210257
【培訓日期】2021年5月27-28日
【培訓地點】北京
【培訓對象】
1、中高級程序員、系統(tǒng)分析員、架構(gòu)設計師、產(chǎn)品市場技術(shù)人員;
2、具備IT部門工作經(jīng)驗,將負責信息化系統(tǒng)規(guī)劃等相關(guān)任務的技術(shù)人員;
3、希望加強軟件架構(gòu)理論和實踐能力的軟件開發(fā)人員;
4、負責軟件產(chǎn)品規(guī)劃與定義的相關(guān)人員;
5、需要了解軟件設計全過程的項目經(jīng)理。
【課程背景】
在軟件產(chǎn)品的開發(fā)組織中,軟件設計人員是軟件企業(yè)新產(chǎn)品、新技術(shù)體系的構(gòu)建者,是目前軟件開發(fā)中急需的高層次技術(shù)人才。為此,培訓中心特舉辦“高級系統(tǒng)架構(gòu)設計全程演練與最佳實踐”培訓班
【授課思路】
重點關(guān)注提升軟件開發(fā)人員設計能力,整個課程由多個實戰(zhàn)案例貫串始終,老師帶領(lǐng)大家通過實戰(zhàn)練習,一起走完項目設計的全過程。案例練習中老師著重闡述和分析在實際項目中遇到的問題,提煉架構(gòu)決策的思維方法,使學員體會在項目各個階段中架構(gòu)設計的發(fā)展演化規(guī)律,從而在實戰(zhàn)中提煉理論,培養(yǎng)學員的實際應用能力。課程主要特點:
1、理論與實踐相結(jié)合,注重案例的講解;
2、有深刻的理論深度,準確把握設計原則與要義;
3、全真案例講解,學員邊做邊學,具體、深刻;
4、能夠?qū)W員提出的案例進行咨詢,指導分析、設計。
【學員基礎】
1、三年以上開發(fā)經(jīng)驗,經(jīng)歷過頻繁需求變更或者系統(tǒng)重復開發(fā)的折磨;
2、熟悉Java/C#/C++任意一種面向?qū)ο笳Z言或者具備面向?qū)ο缶幊袒靖拍睢?/p>
【課程目標】
1、了解軟件設計基本原理、主要原則和國內(nèi)外主流方法論。
2、掌握前沿技術(shù)的同時,獲得解決實際問題的規(guī)范和能力。
3、幫助軟件企業(yè)完善軟件架構(gòu)設計、評審流程,改善軟件開發(fā)質(zhì)量和效率。
【課程大綱】
第一部分:架構(gòu)設計思想與原理
一、架構(gòu)設計的內(nèi)涵
1、概念和定義;
2、架構(gòu)原理;
3、架構(gòu)的三個層次;
4、企業(yè)架構(gòu)設計的產(chǎn)物;
5、大型系統(tǒng)架構(gòu)設計的產(chǎn)物;
6、中小型系統(tǒng)設計的產(chǎn)物。
二、架構(gòu)設計的外延
1、架構(gòu)設計方法體系;
2、架構(gòu)與軟件工程;
3、架構(gòu)與模式。
三、架構(gòu)師的成長
1、架構(gòu)師關(guān)鍵素質(zhì);
2、架構(gòu)師職業(yè)發(fā)展建議;
3、設計師與設計技能;
4、設計師能力模型。案例分析,某研發(fā)中心引入敏捷的實戰(zhàn)分析,什么才是真正的敏捷
1、某研發(fā)團隊5年前引入敏捷的失敗教訓-能力比方法重要,但改變方法比改變能力簡單多了;
2、優(yōu)秀的設計來自優(yōu)秀的設計師,因此應該首先是尊重個體的主動和創(chuàng)造性,提高個體工作技能,而不是應用了一種流程,消滅了個體的活力。首先關(guān)注人,才能真敏捷。
第二部分:中小型項目案例分析與實踐
一、良好需求是優(yōu)秀設計的開端
1、需求變更;
2、軟件不斷變更法則;
3、積極心態(tài)面對需求變更。
二、針對變化的敏捷過程與設計
1、敏捷設計的彈性和流程的靈活性;
2、軟件設計的目標:靈活性;
3、發(fā)現(xiàn)和封裝變化的原則;
4、抽象穩(wěn)定接口(抽象類),針對接口編程,而不是針對實現(xiàn)編程;
5、分離變化維度,單一職責原則;
6、動態(tài)綁定還是靜態(tài)綁定,多用組合,少用繼承;
7、創(chuàng)建與使用分離,創(chuàng)建有變化也要封裝。網(wǎng)上訂單、嵌入式項目系統(tǒng)案例練習:
1、現(xiàn)場模擬架構(gòu)需求獲取過程,點評要點;
2、采用敏捷方式設計案例系統(tǒng)組成架構(gòu)模型;
3、故障單類型的增加后,設計如何通過代碼進行演化。
第三部分:改造類項目案例分析與實踐
一、軟件復用與基于框架技術(shù)的架構(gòu)設計
1、框架的選擇/已有系統(tǒng)的架構(gòu);
2、 軟件通用服務組件的設計;
3、 軟件復用的管理策略;
4、軟件復用之道;
5、在詳細設計之中,分析發(fā)現(xiàn)共同的行為的抽象和共同的機制來實現(xiàn);
6、詳細設計的核心:領(lǐng)域建模。
二、軟件腐化與希波克拉底宣言
1、 First, Do No Harm.? 首先,做到不傷害;
2、 Proxy代理模式與軟件修改方案;
3、 decorator模式與遺留軟件修改。
三、軟件改造過程
1、初始設計的問題分析;
2、拙劣設計常見癥狀以及如何發(fā)現(xiàn)和治療;
3、在詳細設計中如何對設計問題進行重構(gòu);
4、代碼壞味道;
5、常見的重構(gòu)設計方式;
6、重構(gòu)到設計模式;
7、流程審核的改變。
薪酬系統(tǒng)、出租系統(tǒng)等案例設計分析與實操演練
1、結(jié)合多個案例項目進行分析,怎樣發(fā)現(xiàn)和封裝變化,如何通過具體的手段來進行適應這些變化;
2、分析真實項目,如何做的詳細設計,給我們哪些啟示,我們可以學習到什么;
3、分析我們在項目之中是那些原因?qū)е铝藳]有實現(xiàn)這些目標;
4、案例分析—如何維護遺留系統(tǒng)而不是遺留系統(tǒng)變爛;
5、通過該案例分析,對比有時是因為人員的設計技能導致加速軟件的腐化;
6、通過該案例分析,講師加入項目之后,將進行哪些重構(gòu)。
第四部分:大型系統(tǒng)項目案例分析與實踐(上)
一、優(yōu)秀大型系統(tǒng)架構(gòu)設計的要點
1、好的設計和衡量的手段,世界大師的觀點;
2、一個好的系統(tǒng)設計應該有如下的性質(zhì);
3、可擴展性(Extensibility)容易添加新的功能;
4、靈活性(Flexibility)代碼修改平穩(wěn)地發(fā)生;
5、可插入性(Pluggability)。
二、優(yōu)秀大型系統(tǒng)架構(gòu)設計的最佳實踐
1、合理的架構(gòu)設計來源于正確的需求過程;
2、業(yè)務建模和需求分析中的架構(gòu)因素;
3、采用原型法降低架構(gòu)風險;
4、架構(gòu)風險管理方法與決策;
5、幾種典型高層架構(gòu)介紹;
6、高層架構(gòu)設計的應用技巧和實踐;
7、高層架構(gòu)的表示;
8、非功能性需求對架構(gòu)的影響;
9、架構(gòu)評審與決策;
10、ATAM的參與人員、步驟和結(jié)果。
軍隊大型信息系統(tǒng)設計分析與實操演練
一、需求分析案例練習
1、案例背景介紹;
2、提出問題,捕獲需求;
3、工作量與開發(fā)計劃制定。
二、架構(gòu)設計案例練習
1、邏輯架構(gòu)視圖設計案例練習;
2、物理架構(gòu)視圖設計案例練習;
3、運行架構(gòu)視圖設計案例練習;
4、數(shù)據(jù)視圖設計案例練習;
5、非功能需求對架構(gòu)的影響。
第五部分:大型系統(tǒng)項目案例分析與實踐(下)
一、靈活性設計的最佳實踐
1、 多態(tài)(polymorphism)和針對接口的編程;
2、數(shù)據(jù)驅(qū)動(Data-Driven Design);
3、元數(shù)據(jù)驅(qū)動設計;
4、反射驅(qū)動(Meta-data or Reflective?);
5、解釋器驅(qū)動;
6、腳本引擎技術(shù)。
二、演化式設計(Emergent Design)
1、 演化式設計 Emergent Design ;
2、演化設計--重構(gòu),反思性設計(Reflective Design)。;
3、在詳細設計之中,對發(fā)現(xiàn)問題的設計進行重構(gòu)。
三、軟件設計原則/模式
1、項目系統(tǒng)的演變,以及設計原則的應用效果;
2、通過一個大型實例,傳遞Clean Code,設計原則等。
四、架構(gòu)評審與架構(gòu)重構(gòu)
1、現(xiàn)場設計案例系統(tǒng)部署架構(gòu)模型,并開展ATAM評估;
2、現(xiàn)場設計案例系統(tǒng)數(shù)據(jù)架構(gòu)模型,討論中間件對架構(gòu)決策的影響;
3、實操細化架構(gòu)設計練習,嘗試優(yōu)化分解架構(gòu)設計,使之適應未來架構(gòu)變化。銀行、政府等多領(lǐng)域大型核心系統(tǒng)設計最佳實踐案例分析
1、結(jié)合多個案例項目進行分析,怎樣發(fā)現(xiàn)和封裝變化,如何通過具體的手段來進行適應這些變化;
2、很多公司習慣做大量的預習設計,這被證明是風險很高的做法。好的架構(gòu)和設計是演進出來的,通過這個環(huán)節(jié)了解演進式設計的方法,包括演進式設計的方法、工具、模式等內(nèi)容;
3、案例分析,根據(jù)課程介紹的壞癥狀,進行重構(gòu)合理的設計;
4、如何計劃重構(gòu)活動以實現(xiàn)架構(gòu)演進,如何從設計方法、技術(shù)債務、復雜性等角度看架構(gòu)演。
第六部分 千萬級訪問量網(wǎng)站架構(gòu)變遷案例分析與最佳實踐 一、用戶體驗與交互設計
1、基本概念;
2、6大設計原則 ;
3、亞馬遜網(wǎng)站案例剖析。
二、千萬級訪問量的大型網(wǎng)站架構(gòu)變遷
1、物理分離webserver和數(shù)據(jù)庫;
2、增加頁面緩存;
3、增加頁面片段緩存;
4、數(shù)據(jù)緩存;
5、增加webserver ;
7、分表、DAL和分布式緩存;
8、增加更多的webserver ;
9、數(shù)據(jù)讀寫分離和廉價存儲方案;
10、大型分布式應用和廉價服務器群時代。
某Web互聯(lián)網(wǎng)電子商務系統(tǒng)設計最佳實踐和案例分析
1、如何從開源起步;
2、隨著訪問量的增加如何變遷架構(gòu);
3、淘寶 VS 12306,兩類系統(tǒng)架構(gòu)的差異性分析;
4、IBM小型機會被大量X86服務器替代嗎?各自的應用背景與優(yōu)勢分析;
5、云計算、移動應用等新興技術(shù)的發(fā)展意味著什么?創(chuàng)業(yè)黃金期的到來。
【講師介紹】
司老師,曼頓培訓網(wǎng)(www.mdpxb.com)資深講師。清華大學博士,人工智能方面專家,在意大利舉辦的國際在線指紋識別競賽中獲得冠軍,在機器學習和模式識別領(lǐng)域頂級期刊IEEE TPAMI等期刊發(fā)表多篇論文,擁有5個中國專利和1個美國專利,是人工智能、深度學習、機器學習和圖像處理和模式識別領(lǐng)域的實戰(zhàn)派專家。
【費用及報名】
1、費用:培訓費5900元(含培訓費、講義費);如需食宿,會務組可統(tǒng)一安排,費用自理。
2、報名咨詢:4006820825 010-56133998 56028090 13810210257 鮑老師
3、報名流程:電話登記-->填寫報名表-->發(fā)出培訓確認函
4、備注:如課程已過期,請訪問我們的網(wǎng)站,查詢最新課程
5、詳細資料請訪問北京曼頓培訓網(wǎng):www.mdpxb.com (每月在全國開設四百多門公開課,歡迎報名學習)