《架構(gòu)設計最佳實踐》課程詳情
點擊下載課大綱及報名表
課程介紹
一般的書籍和培訓,往往是重點介紹設計原則和模式,之后給出幾個簡單的在理想情況下的應用;或者是拿出最終設計來講解,然后告訴他的設計的是多么靈活,多么的好。但是當你課程結(jié)束后,回到工作之中卻發(fā)現(xiàn)情況是完全的不一樣,這時你只有束手無策。
本課程重點關注提升軟件設計師技能,整個課程由多個實戰(zhàn)案例貫串始終,老師帶領大家通過案例實戰(zhàn)練習,一起走完項目的全過程。案例練習中老師著重闡述和分析在實際項目中遇到的問題,提煉架構(gòu)決策的思維方法,使學員體會在項目各個階段中架構(gòu)的發(fā)展演化規(guī)律,從而在實戰(zhàn)中提煉理論,培養(yǎng)學員的實際應用能力。
課程特點
l 理論與實踐相結(jié)合,注重案例的講解。
l 有深刻的理論深度,準確把握設計原則與要義。
l 全真案例講解,學員邊做邊學,具體、深刻。
l 能夠?qū)W員提出的案例進行咨詢,指導分析、設計。
學習收益
l 了解軟件設計基本原理、主要原則和國內(nèi)外主流方法論。
l 掌握前沿技術的同時,獲得解決實際問題的規(guī)范和能力。
l 幫助軟件企業(yè)完善軟件架構(gòu)設計、評審流程,改善軟件開發(fā)質(zhì)量和效率。
學習對象
l 中高級程序員、系統(tǒng)分析員、構(gòu)架設計師、產(chǎn)品市場技術人員。
l 具有2-3年IT部門工作經(jīng)驗,將負責信息化系統(tǒng)規(guī)劃等相關任務的技術人員。
l 希望加強軟件架構(gòu)理論和實踐能力的軟件開發(fā)人員。
l 負責軟件產(chǎn)品規(guī)劃與定義的相關人員。
l 需要了解軟件設計全過程的項目經(jīng)理。
學員基礎
l 至少2年以上開發(fā)經(jīng)驗,經(jīng)歷過頻繁需求變更或者系統(tǒng)重復開發(fā)的折磨。
l 熟悉Java/C#/C++任意一種面向?qū)ο笳Z言或者具備面向?qū)ο缶幊袒靖拍睢?br />l 一般軟件企業(yè)的設計人員和初級架構(gòu)師,以及資深程序員。
課程結(jié)構(gòu)和大綱
一、架構(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)與模式 案例分析,某研發(fā)中心引入敏捷的實戰(zhàn)分析,什么才是真正的敏捷
1、 某研發(fā)團隊5年前引入敏捷的失敗教訓-能力比方法重要,但改變方法比改變能力簡單多了
2、優(yōu)秀的設計來自優(yōu)秀的設計師,因此應該首先是尊重個體的主動和創(chuàng)造性,提高個體工作技能,而不是應用了一種流程,消滅了個體的活力。首先關注人,才能真敏捷。
二、基于框架的中小型系統(tǒng)軟件架構(gòu)設計案例分析與實踐
一、良好需求是優(yōu)秀設計的開端
1、確定業(yè)務模式
2、界定業(yè)務范圍
3、細化詳細需求
4、制定開發(fā)計劃
5、敏捷需求方法
二、針對變化的敏捷過程與設計
1、軟件設計的目標-靈活性
2、發(fā)現(xiàn)和封裝變化的原則
3、抽象穩(wěn)定接口(抽象類)
4、單一職責原則
5、多用組合,少用繼承
6、創(chuàng)建與使用分離,創(chuàng)建有變化也要封裝 網(wǎng)上訂單、嵌入式項目系統(tǒng)案例練習:
現(xiàn)場模擬架構(gòu)需求獲取過程,點評要點;
采用敏捷方式設計案例系統(tǒng)組成架構(gòu)模型;
故障單類型的增加后,設計如何通過代碼進行演化
三、改造類項目案例分析與實踐
一、軟件復用與基于框架技術的、架構(gòu)設計
1、框架的選擇/已有系統(tǒng)的架構(gòu)
2、軟件通用服務組件的設計
3、軟件復用的管理策略
4、詳細設計的核心——領域建模
5、領域模型中的常見問題
二、軟件改造過程
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)這些目標.
6、通過該案例分析,講師加入項目之后,將進行哪些重構(gòu)
四、基于架構(gòu)的大型系統(tǒng)軟件架構(gòu)設計案例分析與實踐(上) 一、優(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)的表示;
銀行、政府等多領域大型核心系統(tǒng)設計最佳實踐案例分析
1、案例背景介紹
2、提出問題,捕獲需求
3、工作量與開發(fā)計劃制定
五、基于架構(gòu)的大型系統(tǒng)軟件架構(gòu)設計案例分析與實踐(下) 二、架構(gòu)評審與架構(gòu)重構(gòu)
1、非功能性需求對架構(gòu)的影響;
2、高層架構(gòu)設計的應用技巧和實踐;
3、ATAM架構(gòu)評審與決策;
4、系統(tǒng)數(shù)據(jù)架構(gòu)模型
5、細化架構(gòu)設計
6、優(yōu)化分解架構(gòu)設計
7、合理重構(gòu)設計; 軍隊大型信息系統(tǒng)設計分析與實操演練
1、邏輯架構(gòu)視圖設計案例練習
2、物理架構(gòu)視圖設計案例練習
3、運行架構(gòu)視圖設計案例練習
4、數(shù)據(jù)視圖設計案例練習
5、非功能需求對架構(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
6、分庫
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、云計算、移動應用等新興技術的發(fā)展意味著什么?創(chuàng)業(yè)黃金期的到來
《架構(gòu)設計最佳實踐》課程目的
l 了解軟件設計基本原理、主要原則和國內(nèi)外主流方法論。
l 掌握前沿技術的同時,獲得解決實際問題的規(guī)范和能力。
l 幫助軟件企業(yè)完善軟件架構(gòu)設計、評審流程,改善軟件開發(fā)質(zhì)量和效率。
《架構(gòu)設計最佳實踐》所屬分類
研發(fā)項目
《架構(gòu)設計最佳實踐》授課培訓師簡介
楊老師
【資歷簡介】高級需求分析師,IBM軟件學院、IT產(chǎn)品管理與營銷專家。主要從事信息化項目規(guī)劃、架構(gòu)和管理工作,兼任軍隊信息化標準委員會副秘書長,國家人事部考試中心計算機命題評審委員會委員、國家SOA技術專家委常務委員、ISO國際標準組織SOA組中國區(qū)代表。
【授課風格】憑借多年的工作經(jīng)歷以及豐富的人生閱歷,將IT管理咨詢經(jīng)驗和職業(yè)經(jīng)歷結(jié)合。授課注重案例分析、互動游戲、實景訓練、小組討論等,使受訓學員都能學以致用。