架構(gòu)師
其他
軟件架構(gòu)
架構(gòu)設(shè)計
軟件設(shè)計
推薦課程
average > 0 ? $model->average . '分' : '10.0分' ?>

高級系統(tǒng)架構(gòu)設(shè)計師培訓(xùn)

楊朔

中科院軟件所 架構(gòu)師、項目經(jīng)理

一直致力于軟件工程的研究和實踐,對國外的軟件工程的理論和實踐有透徹的理解和研究,每年軟件所都將國外知名的軟件工程知名認(rèn)識邀請到所里,進(jìn)行理論和實踐的交流,對比國內(nèi)外在軟件工程上的異同,融合東西方軟件研究的成果,在軟件所的諸多項目中實踐,大部分的項目是成功的,也有幾個項目是失敗,對于經(jīng)驗和教訓(xùn)的吸納,在10多年的實踐悟出了軟件架構(gòu)的真諦。

作為項目的主要成員和負(fù)責(zé)人參與并領(lǐng)導(dǎo)完成了多個大型復(fù)雜項目,具有豐富的項目管理經(jīng)驗。所參與實施和咨詢的項目涉及建設(shè)工程、制造和IT領(lǐng)域。既通曉國際項目環(huán)境和管理模式,又熟悉中國企業(yè)的管理實踐。在項目管理理論,方法工具和應(yīng)用實踐方面均具有高水平。持續(xù)6年代團(tuán)隊開發(fā)項目,目前團(tuán)隊分布在北京,上海、深圳、廣州、天津,石家莊以及蘭州,遠(yuǎn)程合作開發(fā),團(tuán)隊規(guī)模165人,實現(xiàn)了跨地區(qū)的軟件開發(fā),歷經(jīng)了幾十個軟件項目的設(shè)計與開發(fā)。

一直致力于軟件工程的研究和實踐,對國外的軟件工程的理論和實踐有透徹的理解和研究,每年軟件所都將國外知名的軟件工程知名認(rèn)識邀請到所里,進(jìn)行理論和實踐的交流,對比國內(nèi)外在軟件工程上的異同,融合東西方軟件研究的成果,在軟件所的諸多項目中實踐,大部分的項目是成功的,也有幾個項目是失敗,對于經(jīng)驗和教訓(xùn)的吸納,在10多年的實踐悟出了軟件架構(gòu)的真諦。 作為項目的主要成員和負(fù)責(zé)人參與并領(lǐng)導(dǎo)完成了多個大型復(fù)雜項目,具有豐富的項目管理經(jīng)驗。所參與實施和咨詢的項目涉及建設(shè)工程、制造和IT領(lǐng)域。既通曉國際項目環(huán)境和管理模式,又熟悉中國企業(yè)的管理實踐。在項目管理理論,方法工具和應(yīng)用實踐方面均具有高水平。持續(xù)6年代團(tuán)隊開發(fā)項目,目前團(tuán)隊分布在北京,上海、深圳、廣州、天津,石家莊以及蘭州,遠(yuǎn)程合作開發(fā),團(tuán)隊規(guī)模165人,實現(xiàn)了跨地區(qū)的軟件開發(fā),歷經(jīng)了幾十個軟件項目的設(shè)計與開發(fā)。

課程費用

5800.00 /人

課程時長

2

成為教練

課程簡介

本課程將對軟件生命周期與軟件架構(gòu)進(jìn)行介紹,重點講述面向?qū)ο蟪绦蛟O(shè)計原則與模式及方法論、用UML輔助系統(tǒng)分析與設(shè)計、借鑒RUP的設(shè)計過程、設(shè)計模式與軟件設(shè)計思想、架構(gòu)設(shè)計實踐等要點,并結(jié)合軟件架構(gòu)設(shè)計案例進(jìn)行進(jìn)一步分析

目標(biāo)收益

培訓(xùn)對象

課程大綱

軟件生命周期與軟件
架構(gòu)介紹
軟件架構(gòu)介紹
IT行業(yè)的人才結(jié)構(gòu)與軟件架構(gòu)師的定位
軟件架構(gòu)師應(yīng)掌握的知識體系
軟件架構(gòu)設(shè)計的特點、層次、分類
軟件架構(gòu)的主要理論、方向和趨勢
軟件工廠,實現(xiàn)軟件開發(fā)的產(chǎn)業(yè)化
軟件生命周期進(jìn)程模型介紹
RUP與XP
Agile與CMMI
MSF
技術(shù)架構(gòu)視圖─面向?qū)ο蟪绦蛟O(shè)計原則與模式及方法論 衡量軟件系統(tǒng)質(zhì)量的標(biāo)準(zhǔn)
軟件系統(tǒng)開始變壞的表現(xiàn):硬化、脆弱、綁死、膠著。
軟件系統(tǒng)關(guān)鍵的質(zhì)量特性:正確性、健壯性、可擴(kuò)展性、可復(fù)用性、兼容、可移植性、高效性、timeliness、economy and functionality
面向?qū)ο笤O(shè)計的基本原則
類的設(shè)計原則:
開閉原則、依賴倒置原則、Liskov替換原則、單一職責(zé)原則、接口分離原則、組合復(fù)用原則、所知最少原則
例:會議管理系統(tǒng)等、API函數(shù)的啟示等
包內(nèi)聚原則:發(fā)布與復(fù)用等價原則、共同封閉原則、共同復(fù)用原則
包耦合原則:無循環(huán)的依賴原則、穩(wěn)定的依賴原則、穩(wěn)定的抽象
用GRASP模式指導(dǎo)架構(gòu)設(shè)計
GRASP架構(gòu)模式:
信息專家、創(chuàng)建者、高內(nèi)聚、低耦合、控制者、多態(tài)、間接、純虛構(gòu)、保護(hù)變化

典型案例分析:
違反信息專家模式案例分析
應(yīng)用信息專家模式案例分析
應(yīng)用GRASP模式精化架構(gòu)設(shè)計案例分析
軟件架構(gòu)設(shè)計的關(guān)鍵因素
什么是架構(gòu), 它和系統(tǒng)是如何關(guān)聯(lián)的。
如何獲得可維護(hù)性、可擴(kuò)展性、可重用性、互操作性等。
在系統(tǒng)中如何組織組件(Component) 。
如何組織組件(Component)的內(nèi)部。
如何保持平臺相關(guān)的細(xì)節(jié)和應(yīng)用的分離。
如何應(yīng)用封裝(encapsulation)、抽象(abstraction)和委派(delegation)的原則。
如何應(yīng)用設(shè)計模式來實現(xiàn)好的結(jié)構(gòu)。
案例分析
模板容器、Movie查詢等
用UML輔助系統(tǒng)分析與設(shè)計 UML中的常見疑難問題辨析
用例圖
- 參與者建模中的常見問題
- 用例建模中的常見問題
- UaseCase的本質(zhì)討論

類設(shè)計
- UML中關(guān)系的辨析: 依賴關(guān)系、關(guān)聯(lián)關(guān)系辨析;聚合,組合辨析

類設(shè)計中的常見問題:
- 一些常見但易混淆的類關(guān)系圖;
- 熟悉類的自關(guān)聯(lián)形式;使用關(guān)聯(lián)類;
- 一些易混淆的重數(shù)表示方法
- 建模為對象與建模為屬性 / 建模為方法與建模為對象的辨析。

其它辨析
- 包與組件
- 擴(kuò)展基類與覆蓋基類等;自關(guān)聯(lián)、關(guān)聯(lián)多重性、關(guān)聯(lián)角色名辨析
- 消除多重繼承的常用手段
借鑒RUP的設(shè)計過程 借鑒RUP的設(shè)計過程
全局分析:
選用架構(gòu)模式;識別關(guān)鍵抽象;標(biāo)識分析機(jī)制;常見的分析機(jī)制

局部分析:
提取分析類:
分析類的類型劃分:邊界類、實體類、控制類,分析類在模型中的位置,邊界類的復(fù)用,控制類的變通。
分析動態(tài)場景:
消息與責(zé)任;事件序列在邊界、實體及控制類間的原則;控制類在交互圖中的表現(xiàn)特征;交互圖的正確性。
整理分析類:
分析類的責(zé)任和關(guān)聯(lián)關(guān)系;動態(tài)與靜態(tài)的關(guān)系;確定類的責(zé)任;設(shè)計類和子系統(tǒng)接口。
設(shè)計模式與軟件設(shè)計思想 GOF設(shè)計模式
- 使用GOF設(shè)計模式,借鑒前人的經(jīng)驗。
- 分析創(chuàng)建型模式:
- 單例模式(Singleton)、工廠模式、抽象工廠模式(Abstractfactory)
- 分析結(jié)構(gòu)型模式:
- 橋梁模式(Bridge)、裝飾模式(Decorator)、適配器模式(Adapter)、代理模式(Proxy)、組合模式(Composite)
- 分析行為型模式:
- 命令模式(Command )、觀察者模式(Observer)、狀態(tài)模式(State)、策略模式(Strategy)、模板方法模式(Template Method)、訪問者模式(Template Method)
設(shè)計模式深入討論
- 設(shè)計模式的本質(zhì):
- 隔離變化點;間接;透明;局部雙向依賴;邏輯與功能;用接口抹平差異、延遲調(diào)用。
- 模式的推演:
- 掌握模式的本質(zhì),而非形式。
- 設(shè)計模式的高級運用:
- 高手的選擇;神似而非形似;一切以工程實際為標(biāo)準(zhǔn);可以犧牲掉的特征;簡化的模式;防止濫用;自創(chuàng)的模式。
常用的軟件架構(gòu)風(fēng)格及適用情況分析
- 系統(tǒng)軟件
- 分層(Layer)、管道和過濾器(Pipes and Filters)、黑板(Blackboard)
- 分布式軟件
- 經(jīng)紀(jì)人(Broker) 、客戶/服務(wù)器(Client/Server)、點對點(Peer to Peer)
- 交互軟件
模型-視圖-控制器(Model-View-Controller)、顯示-抽象-控制(Presentation-Abstraction-COntrol)
SOA的設(shè)計思想
- SOA的概念
- SOA的設(shè)計目標(biāo)
異構(gòu)性Heterogeneity;可伸縮性Scalability;適用性Availability;分布式Distribution; .機(jī)動性Flexibility;可見性
典型案例分析
媒體顯示、數(shù)據(jù)采集系統(tǒng)、編輯器、文件解析器。
架構(gòu)設(shè)計實踐 靜態(tài)設(shè)計
- 按層+高內(nèi)聚低耦合的原則進(jìn)行模塊劃分
高內(nèi)聚原則;按功能分解;按業(yè)務(wù)進(jìn)行分解;以數(shù)據(jù)轉(zhuǎn)換為中心分解;實際運用中的折中。
- 劃分層次
- 將模塊劃入對應(yīng)的層;分層與分區(qū);邏輯模塊與實體組件的對應(yīng)關(guān)系。
- 為模塊進(jìn)行職責(zé)分配
隔離關(guān)注面:低耦合原則;適當(dāng)采用設(shè)計模式;
用設(shè)計模式優(yōu)化核心結(jié)構(gòu):經(jīng)典模式運用:
用橋接模式作為中心骨架。
用橋接模式作為中心骨架。
用工廠模式進(jìn)行組裝。
用命令模式處理事務(wù)。
模塊結(jié)構(gòu)的常見形式
容器模塊 + 控制者 + 功能模塊 + 臨時構(gòu)建的小類;單例模式;命令模式。
核心模塊的接口設(shè)計。
外觀模式;適配器模式;代理模式;中介者模式。
其它形式的的模塊結(jié)構(gòu):變換型模塊結(jié)構(gòu);事務(wù)型模塊結(jié)構(gòu)。
模塊間的通信及耦合設(shè)計
- 組件式編程。
- 通訊機(jī)制:
- 觀察者模式;本地SDK;輪訓(xùn)。
- 解耦:
- 針對接口編程;增加間接模塊;依賴注入。
- 設(shè)計數(shù)據(jù)層
數(shù)據(jù)結(jié)構(gòu)選用的設(shè)計;數(shù)據(jù)訪問層的設(shè)計
動態(tài)設(shè)計
- 抽象與統(tǒng)一不同的因素
根據(jù)業(yè)務(wù)尋找關(guān)鍵因素;統(tǒng)一到復(fù)雜的情況。
- 常用的流程抽象手段:
依賴注入 / 控制反轉(zhuǎn);表格法;配置文件。
- 邏輯控制:
控制者模式;信息專家模式。
- 消息通知機(jī)制 MVC模式;觀察者模式;責(zé)任鏈模式;中介者模式。
模塊調(diào)整
- 調(diào)整模塊等級。
適當(dāng)封裝;把屬性提升為類;將類降為屬性;將類提升為組件。
- 用設(shè)計模式優(yōu)化設(shè)計
在主體的框架上進(jìn)行調(diào)整:訪問者模式;裝飾模式。
- 編碼時構(gòu)建適當(dāng)?shù)膭討B(tài)臨時類。
命令模式;事務(wù)處理類型。
- 效率的優(yōu)化 效率與結(jié)構(gòu)的折中:優(yōu)化效率的3步驟。
軟件架構(gòu)設(shè)計案例分析 綜合架構(gòu)案例剖析
- 商店P(guān)OS系統(tǒng)架構(gòu)設(shè)計
- 薪酬系統(tǒng)架構(gòu)設(shè)計
- 倉庫管理系統(tǒng)架構(gòu)設(shè)計
實戰(zhàn)典型案例分析(以實際項目案例為背景)
- 需求分析、領(lǐng)域建模:零售店銷售系統(tǒng)
- 設(shè)計模式的綜合運用:Dvc文件分析系統(tǒng)
- 架構(gòu)分析:互聯(lián)網(wǎng)商品數(shù)據(jù)分析系統(tǒng)
- 綜合案例分析:圖像處理系統(tǒng) 基于搜索的二次開發(fā)系統(tǒng)
軟件生命周期與軟件
架構(gòu)介紹
軟件架構(gòu)介紹
IT行業(yè)的人才結(jié)構(gòu)與軟件架構(gòu)師的定位
軟件架構(gòu)師應(yīng)掌握的知識體系
軟件架構(gòu)設(shè)計的特點、層次、分類
軟件架構(gòu)的主要理論、方向和趨勢
軟件工廠,實現(xiàn)軟件開發(fā)的產(chǎn)業(yè)化
軟件生命周期進(jìn)程模型介紹
RUP與XP
Agile與CMMI
MSF
技術(shù)架構(gòu)視圖─面向?qū)ο蟪绦蛟O(shè)計原則與模式及方法論
衡量軟件系統(tǒng)質(zhì)量的標(biāo)準(zhǔn)
軟件系統(tǒng)開始變壞的表現(xiàn):硬化、脆弱、綁死、膠著。
軟件系統(tǒng)關(guān)鍵的質(zhì)量特性:正確性、健壯性、可擴(kuò)展性、可復(fù)用性、兼容、可移植性、高效性、timeliness、economy and functionality
面向?qū)ο笤O(shè)計的基本原則
類的設(shè)計原則:
開閉原則、依賴倒置原則、Liskov替換原則、單一職責(zé)原則、接口分離原則、組合復(fù)用原則、所知最少原則
例:會議管理系統(tǒng)等、API函數(shù)的啟示等
包內(nèi)聚原則:發(fā)布與復(fù)用等價原則、共同封閉原則、共同復(fù)用原則
包耦合原則:無循環(huán)的依賴原則、穩(wěn)定的依賴原則、穩(wěn)定的抽象
用GRASP模式指導(dǎo)架構(gòu)設(shè)計
GRASP架構(gòu)模式:
信息專家、創(chuàng)建者、高內(nèi)聚、低耦合、控制者、多態(tài)、間接、純虛構(gòu)、保護(hù)變化

典型案例分析:
違反信息專家模式案例分析
應(yīng)用信息專家模式案例分析
應(yīng)用GRASP模式精化架構(gòu)設(shè)計案例分析
軟件架構(gòu)設(shè)計的關(guān)鍵因素
什么是架構(gòu), 它和系統(tǒng)是如何關(guān)聯(lián)的。
如何獲得可維護(hù)性、可擴(kuò)展性、可重用性、互操作性等。
在系統(tǒng)中如何組織組件(Component) 。
如何組織組件(Component)的內(nèi)部。
如何保持平臺相關(guān)的細(xì)節(jié)和應(yīng)用的分離。
如何應(yīng)用封裝(encapsulation)、抽象(abstraction)和委派(delegation)的原則。
如何應(yīng)用設(shè)計模式來實現(xiàn)好的結(jié)構(gòu)。
案例分析
模板容器、Movie查詢等
用UML輔助系統(tǒng)分析與設(shè)計
UML中的常見疑難問題辨析
用例圖
- 參與者建模中的常見問題
- 用例建模中的常見問題
- UaseCase的本質(zhì)討論

類設(shè)計
- UML中關(guān)系的辨析: 依賴關(guān)系、關(guān)聯(lián)關(guān)系辨析;聚合,組合辨析

類設(shè)計中的常見問題:
- 一些常見但易混淆的類關(guān)系圖;
- 熟悉類的自關(guān)聯(lián)形式;使用關(guān)聯(lián)類;
- 一些易混淆的重數(shù)表示方法
- 建模為對象與建模為屬性 / 建模為方法與建模為對象的辨析。

其它辨析
- 包與組件
- 擴(kuò)展基類與覆蓋基類等;自關(guān)聯(lián)、關(guān)聯(lián)多重性、關(guān)聯(lián)角色名辨析
- 消除多重繼承的常用手段
借鑒RUP的設(shè)計過程
借鑒RUP的設(shè)計過程
全局分析:
選用架構(gòu)模式;識別關(guān)鍵抽象;標(biāo)識分析機(jī)制;常見的分析機(jī)制

局部分析:
提取分析類:
分析類的類型劃分:邊界類、實體類、控制類,分析類在模型中的位置,邊界類的復(fù)用,控制類的變通。
分析動態(tài)場景:
消息與責(zé)任;事件序列在邊界、實體及控制類間的原則;控制類在交互圖中的表現(xiàn)特征;交互圖的正確性。
整理分析類:
分析類的責(zé)任和關(guān)聯(lián)關(guān)系;動態(tài)與靜態(tài)的關(guān)系;確定類的責(zé)任;設(shè)計類和子系統(tǒng)接口。
設(shè)計模式與軟件設(shè)計思想
GOF設(shè)計模式
- 使用GOF設(shè)計模式,借鑒前人的經(jīng)驗。
- 分析創(chuàng)建型模式:
- 單例模式(Singleton)、工廠模式、抽象工廠模式(Abstractfactory)
- 分析結(jié)構(gòu)型模式:
- 橋梁模式(Bridge)、裝飾模式(Decorator)、適配器模式(Adapter)、代理模式(Proxy)、組合模式(Composite)
- 分析行為型模式:
- 命令模式(Command )、觀察者模式(Observer)、狀態(tài)模式(State)、策略模式(Strategy)、模板方法模式(Template Method)、訪問者模式(Template Method)
設(shè)計模式深入討論
- 設(shè)計模式的本質(zhì):
- 隔離變化點;間接;透明;局部雙向依賴;邏輯與功能;用接口抹平差異、延遲調(diào)用。
- 模式的推演:
- 掌握模式的本質(zhì),而非形式。
- 設(shè)計模式的高級運用:
- 高手的選擇;神似而非形似;一切以工程實際為標(biāo)準(zhǔn);可以犧牲掉的特征;簡化的模式;防止濫用;自創(chuàng)的模式。
常用的軟件架構(gòu)風(fēng)格及適用情況分析
- 系統(tǒng)軟件
- 分層(Layer)、管道和過濾器(Pipes and Filters)、黑板(Blackboard)
- 分布式軟件
- 經(jīng)紀(jì)人(Broker) 、客戶/服務(wù)器(Client/Server)、點對點(Peer to Peer)
- 交互軟件
模型-視圖-控制器(Model-View-Controller)、顯示-抽象-控制(Presentation-Abstraction-COntrol)
SOA的設(shè)計思想
- SOA的概念
- SOA的設(shè)計目標(biāo)
異構(gòu)性Heterogeneity;可伸縮性Scalability;適用性Availability;分布式Distribution; .機(jī)動性Flexibility;可見性
典型案例分析
媒體顯示、數(shù)據(jù)采集系統(tǒng)、編輯器、文件解析器。
架構(gòu)設(shè)計實踐
靜態(tài)設(shè)計
- 按層+高內(nèi)聚低耦合的原則進(jìn)行模塊劃分
高內(nèi)聚原則;按功能分解;按業(yè)務(wù)進(jìn)行分解;以數(shù)據(jù)轉(zhuǎn)換為中心分解;實際運用中的折中。
- 劃分層次
- 將模塊劃入對應(yīng)的層;分層與分區(qū);邏輯模塊與實體組件的對應(yīng)關(guān)系。
- 為模塊進(jìn)行職責(zé)分配
隔離關(guān)注面:低耦合原則;適當(dāng)采用設(shè)計模式;
用設(shè)計模式優(yōu)化核心結(jié)構(gòu):經(jīng)典模式運用:
用橋接模式作為中心骨架。
用橋接模式作為中心骨架。
用工廠模式進(jìn)行組裝。
用命令模式處理事務(wù)。
模塊結(jié)構(gòu)的常見形式
容器模塊 + 控制者 + 功能模塊 + 臨時構(gòu)建的小類;單例模式;命令模式。
核心模塊的接口設(shè)計。
外觀模式;適配器模式;代理模式;中介者模式。
其它形式的的模塊結(jié)構(gòu):變換型模塊結(jié)構(gòu);事務(wù)型模塊結(jié)構(gòu)。
模塊間的通信及耦合設(shè)計
- 組件式編程。
- 通訊機(jī)制:
- 觀察者模式;本地SDK;輪訓(xùn)。
- 解耦:
- 針對接口編程;增加間接模塊;依賴注入。
- 設(shè)計數(shù)據(jù)層
數(shù)據(jù)結(jié)構(gòu)選用的設(shè)計;數(shù)據(jù)訪問層的設(shè)計
動態(tài)設(shè)計
- 抽象與統(tǒng)一不同的因素
根據(jù)業(yè)務(wù)尋找關(guān)鍵因素;統(tǒng)一到復(fù)雜的情況。
- 常用的流程抽象手段:
依賴注入 / 控制反轉(zhuǎn);表格法;配置文件。
- 邏輯控制:
控制者模式;信息專家模式。
- 消息通知機(jī)制 MVC模式;觀察者模式;責(zé)任鏈模式;中介者模式。
模塊調(diào)整
- 調(diào)整模塊等級。
適當(dāng)封裝;把屬性提升為類;將類降為屬性;將類提升為組件。
- 用設(shè)計模式優(yōu)化設(shè)計
在主體的框架上進(jìn)行調(diào)整:訪問者模式;裝飾模式。
- 編碼時構(gòu)建適當(dāng)?shù)膭討B(tài)臨時類。
命令模式;事務(wù)處理類型。
- 效率的優(yōu)化 效率與結(jié)構(gòu)的折中:優(yōu)化效率的3步驟。
軟件架構(gòu)設(shè)計案例分析
綜合架構(gòu)案例剖析
- 商店P(guān)OS系統(tǒng)架構(gòu)設(shè)計
- 薪酬系統(tǒng)架構(gòu)設(shè)計
- 倉庫管理系統(tǒng)架構(gòu)設(shè)計
實戰(zhàn)典型案例分析(以實際項目案例為背景)
- 需求分析、領(lǐng)域建模:零售店銷售系統(tǒng)
- 設(shè)計模式的綜合運用:Dvc文件分析系統(tǒng)
- 架構(gòu)分析:互聯(lián)網(wǎng)商品數(shù)據(jù)分析系統(tǒng)
- 綜合案例分析:圖像處理系統(tǒng) 基于搜索的二次開發(fā)系統(tǒng)

課程費用

5800.00 /人

課程時長

2

預(yù)約體驗票 我要分享

近期公開課推薦

近期公開課推薦

活動詳情

提交需求