?
目標收益
本課程屬于架構(gòu)設計的高端課程,需要學員具備軟件設計的實際工作經(jīng)驗,處于項目和系統(tǒng)控制或主導的角色,課程希望能夠給學員提供更寬的視野,提升站在更高的角度思考問題的能力。
本課程并不準備用工匠式的方式說明問題,而是更深入的研討現(xiàn)代軟件系統(tǒng)優(yōu)化設計的各種方法和思路,旨在提高企業(yè)技術(shù)人員的整體水平,并且對于任何一種編程語言背景的系統(tǒng)架構(gòu)的開發(fā)和思維方法都是適用的。
在實戰(zhàn)演練過程中,將針對性地向?qū)W員詳解架構(gòu)設計方法和原則,為項目團隊更好的對軟件項目的系統(tǒng)架構(gòu)提供解決問題的思路和方法,能有效地提升學員理解和掌握高級系統(tǒng)架構(gòu)的知識、并應用于項目開發(fā)過程的能力。
培訓對象
架構(gòu)設計師、項目經(jīng)理、技術(shù)經(jīng)理、項目組長、技術(shù)骨干、技術(shù)支持人員或其他對系統(tǒng)架構(gòu)設計有興趣的相關(guān)人員
課程大綱
?
主題 |
內(nèi)容 |
? 系統(tǒng)架構(gòu)概覽
|
?
|
? 架構(gòu)設計的背景與目標
|
? 架構(gòu)師和系統(tǒng)架構(gòu)的定義
? 何為高級系統(tǒng)架構(gòu)師?
? 架構(gòu)設計師的知識結(jié)構(gòu)
? 架構(gòu)的職責是什么?
? 案例分析:煙囪系統(tǒng)
? 架構(gòu)的思考:組成派VS.決策派
? 架構(gòu)設計要關(guān)注什么?
? 架構(gòu)設計的常見方法?
? 分層的細化
? 分區(qū)的引入
? 機制的提取
? 架構(gòu)設計與迭代開發(fā)
? 什么是優(yōu)雅的架構(gòu)?
? 系統(tǒng)功能的模塊化原則
? 基于構(gòu)件的架構(gòu)設計
|
? 軟件系統(tǒng)架構(gòu)的模型和方法
|
? 架構(gòu)的架構(gòu)
? 邏輯架構(gòu)
? 開發(fā)架構(gòu)
? 運行架構(gòu)
? 物理架構(gòu)
? 數(shù)據(jù)架構(gòu)
? 案例分析:NGBOSS, CRM, 移動電子商務, 寬帶P-BOSS系統(tǒng), 智能網(wǎng)絡視頻監(jiān)控系統(tǒng), DTV-OSS
? 4+1視圖法則
? UML在架構(gòu)設計中的應用方法
? 系統(tǒng)建模與架構(gòu)設計過程
|
? 系統(tǒng)架構(gòu)與軟件開發(fā)過程的結(jié)合
|
? 軟件架構(gòu)與面向?qū)ο蠓治鲈O計過程的結(jié)合
? 軟件開發(fā)——工程VS.創(chuàng)作
? 規(guī)范過程下的敏捷——大象與猴子的故事
? 純粹敏捷的缺陷
? 架構(gòu)設計與敏捷開發(fā)
? 架構(gòu)驅(qū)動的增量開發(fā)模型
? 分析癱瘓的后果
? 架構(gòu)驅(qū)動開發(fā)的節(jié)奏
? 合作型組織與反饋控制
? 軟件架構(gòu)的設計過程
? 業(yè)務架構(gòu)概念
? 產(chǎn)品架構(gòu)概念
? 架構(gòu)基線
? 子系統(tǒng)架構(gòu)
? 構(gòu)件架構(gòu)
? 架構(gòu)設計與TDD測試驅(qū)動開發(fā)
|
? 基于質(zhì)量屬性的架構(gòu)設計決策和改進
|
? 軟件質(zhì)量與架構(gòu)
? 軟件質(zhì)量的定義
? 質(zhì)量屬性對架構(gòu)的影響
? 基于質(zhì)量屬性的架構(gòu)策略
? 軟件架構(gòu)的質(zhì)量評估
? ATAM(架構(gòu)權(quán)衡分析方法)
? 軟件架構(gòu)的重構(gòu)與優(yōu)化
? 軟件重構(gòu)與設計模式
? 重構(gòu)的時機和方法
? 架構(gòu)設計之軟件設計原則
? SRP
? LSP
? DIP
? ISP
? OCP
? 軟件架構(gòu)中設計模式的應用案例分析
? 利用外觀(Fa?ade)模式封裝子系統(tǒng)的變化
? 利用適配器封裝接口變化
? 用模板方法封裝業(yè)務單元的變化
? 利用裝飾器模式封裝核心業(yè)務單元
? 用工廠模式封裝對象創(chuàng)建過程的變化
? 利用觀察者模式處理業(yè)務單元的變化
? 在團隊并行開發(fā)中使用代理模式
? 過度設計的架構(gòu)
|
? 常見架構(gòu)體系的介紹和案例分析
|
? 架構(gòu)設計的層面
? Infra-structural
? Platform
? Application
? 多層架構(gòu)的介紹和對比分析
? 1 tier
? 2 tier
? N tier
? J2EE架構(gòu)和.NET架構(gòu)分析
? 幾種典型的高層架構(gòu)介紹及其案例說明
? 客戶機-服務器體系結(jié)構(gòu)(C/S Architecture)
? 多級體系結(jié)構(gòu)(N-tier Architecture)
? 流程處理體系結(jié)構(gòu)(Procedural processing architecture)
? 代理體系結(jié)構(gòu)(Agent architecture)
? 聚合體系結(jié)構(gòu)(Aggregate architecture)
? 聯(lián)邦體系結(jié)構(gòu)(Federation architecture)
? 架構(gòu)與框架的區(qū)別,Architecture VS. Framework
? Framework技術(shù)
? 性能優(yōu)化的常見架構(gòu)方法
? 負載均衡架構(gòu)設計
? 為什么需要集群技術(shù)?
? 負載均衡的算法和架構(gòu)
? 會話管理和Session的故障恢復
? 軟件可靠性質(zhì)量解決方案
? 系統(tǒng)安全性及其防護措施
|
? 面向服務的基礎架構(gòu)(SOA)
|
?
|
? 大規(guī)模高并發(fā)系統(tǒng)架構(gòu)設計及其案例分析
|
?
|
? 架構(gòu)設計案例——分組互動實踐
|
?
|
? 架構(gòu)文檔寫作
|
?
|
? 架構(gòu)與管理
|
?
|
? 架構(gòu)設計實戰(zhàn)要領(lǐng)
|
? |