課程(cheng)描述INTRODUCTION
軟件架構與案例分析*實踐培訓
日程安(an)排SCHEDULE
課程大(da)綱Syllabus
軟件架構與案例分析*實踐培訓
一、課程介紹
本課程通過介紹軟(ruan)(ruan)(ruan)(ruan)件(jian)(jian)(jian)架(jia)(jia)(jia)(jia)構視(shi)圖和軟(ruan)(ruan)(ruan)(ruan)件(jian)(jian)(jian)文檔,軟(ruan)(ruan)(ruan)(ruan)件(jian)(jian)(jian)架(jia)(jia)(jia)(jia)構設(she)(she)計(ji)過程,軟(ruan)(ruan)(ruan)(ruan)件(jian)(jian)(jian)架(jia)(jia)(jia)(jia)構應(ying)(ying)(ying)用(yong)與常(chang)用(yong)的(de)(de)架(jia)(jia)(jia)(jia)構模(mo)式/策略/原則等(deng)諸(zhu)多架(jia)(jia)(jia)(jia)構實際問(wen)題(ti),透(tou)視(shi)軟(ruan)(ruan)(ruan)(ruan)件(jian)(jian)(jian)架(jia)(jia)(jia)(jia)構是如(ru)(ru)何設(she)(she)計(ji)和實現的(de)(de)? 并(bing)且介紹應(ying)(ying)(ying)該如(ru)(ru)何應(ying)(ying)(ying)用(yong)系(xi)統架(jia)(jia)(jia)(jia)構設(she)(she)計(ji)為后期的(de)(de)詳細設(she)(she)計(ji)和應(ying)(ying)(ying)用(yong)開發提供(gong)指(zhi)導。針對大多數(shu)企業(ye)目(mu)前(qian)是維護(hu)遺留系(xi)統, 該課程介紹了軟(ruan)(ruan)(ruan)(ruan)件(jian)(jian)(jian)架(jia)(jia)(jia)(jia)構的(de)(de)監控,架(jia)(jia)(jia)(jia)構的(de)(de)壞(huai)癥狀和重構方法,因為架(jia)(jia)(jia)(jia)構設(she)(she)計(ji)的(de)(de)前(qian)期不能考慮(lv)到所有的(de)(de)問(wen)題(ti),設(she)(she)計(ji)包容一(yi)切的(de)(de)完美架(jia)(jia)(jia)(jia)構. 還針對軟(ruan)(ruan)(ruan)(ruan)件(jian)(jian)(jian)架(jia)(jia)(jia)(jia)構常(chang)見(jian)設(she)(she)計(ji)技術(shu)專題(ti)等(deng)問(wen)題(ti)進行了分(fen)析(xi)并(bing)提出了解決方案,并(bing)結合眾多大型(xing)軟(ruan)(ruan)(ruan)(ruan)件(jian)(jian)(jian)項(xiang)目(mu)架(jia)(jia)(jia)(jia)構案例(li)進行更深入的(de)(de)剖析(xi)!
二、培訓對象:軟件架構師、項目經理、技術總監、高級軟件設計師、資深技術人員和其他開發人員
三、培訓講師
梁老師:加(jia)拿大籍IT專家,領導(dao)和參與了加(jia)拿大多倫多證券中(zhong)心股票(piao)交易系(xi)(xi)統(tong)、*J.P.Morgan銀(yin)行人力資源管理(li)系(xi)(xi)統(tong)、PenGroup e-Biz企(qi)(qi)業管理(li)信(xin)息系(xi)(xi)統(tong)、中(zhong)國(guo)銀(yin)行天津分行企(qi)(qi)業集團財務中(zhong)心業務管理(li)系(xi)(xi)統(tong)、中(zhong)國(guo)科學院空(kong)間中(zhong)心電(dian)子政(zheng)務系(xi)(xi)統(tong)、北京地(di)稅(shui)后勤管理(li)系(xi)(xi)統(tong)等項目的研發。
范老師(shi):資(zi)深專(zhuan)家、高級(ji)顧問,受聘于包括SUN在(zai)內的國際知(zhi)(zhi)名(ming)IT廠商的金牌講(jiang)師(shi)。一(yi)直致力于軟件需求分(fen)析/架構設計(ji)的研究和實(shi)踐對(dui)國外的軟件需求分(fen)析理論和實(shi)踐有透徹的理解(jie)和研究,與國外知(zhi)(zhi)名(ming)的專(zhuan)家保(bao)持密切(qie)的交流和協作融合東(dong)西(xi)方軟件研究的成(cheng)果,在(zai)10多(duo)年的實(shi)踐中(zhong)對(dui)軟件需求管理有深刻理解(jie)。
四、頒發證書
參加相關培訓并通過考試的學員,可以獲得:
1.工業和信息化部信息中心頒發的-高級軟件架構師職業技能證書。該證書可作為專業技術人員職業能力考核的證明,以及專業技術人員崗位聘用、任職、定級和晉升職務的重要依據。
注:請學員(yuan)帶二寸彩照2張(背(bei)面注明(ming)姓名)、身份證復(fu)印件一(yi)張。
課題內容
第一單元: 軟件架構文檔和架構視圖-如何有效描述架構藍圖
一、軟件架構的視圖?
(1)軟件架構視圖的意義, 軟件架構師的多維思考?
(2)邏輯視圖、開發視圖、部署視圖、運行視圖、場景視圖,數據視圖 ,實現視圖?
(3)如何和怎樣繪制軟件架構視圖?
(4)UML建模工具在架構視圖的應用?
(5)典(dian)型案例分析:結合(he)多個電信,金融行(xing)業項目案例,分析真實(shi)項目軟(ruan)件架(jia)構視圖
二、軟件架構的文檔編寫?
(1)軟件架構文檔的意義?
(2)軟件架構模板(根據實際項目情況選擇合適內容)
(3)軟件架構文檔的結構(避免出現不必要的重復和缺少關鍵信息)
(4)軟件架構文檔必須包含的內容(通過多個項目,分析不同系統包含系統內容不同)
(5)文檔的后期管理(使文檔保持更新)
(6)軟件架構文檔的評審?
(7)典型案(an)例分(fen)析:結(jie)合(he)多個電(dian)信項目案(an)例,進行(xing)分(fen)析和評審軟(ruan)件架構文(wen)檔
第二單元: 軟件架構設計關注點(哪些因素驅動架構設計,是架構開始設計之前必須知道的?)和架構*策略
一、軟件架構設計關注點(軟件架構師在架構設計之前必須考慮的要素)
(1)架構設計的關注是什么?
(2)軟件架構的驅動因素(改變傳統以功能實現和新技術為驅動的策略)
(3)軟件質量需求對架構的影響(質量屬性場景定義和對應架構策略)
(4)軟件功能需求對架構的影響(分析功能需求變化點和進化點)
(5)軟件約束條件與架構的影響(業務,運行環境,開發團隊,實現技術等約束)
(6)如何使功能性需求,非功能性需求和平臺細節在架構中能保持分離,從而改善可維護性和可擴展性?
(7)處理功能需求,非功能性需求,平臺細節.制定架構目標?
(8)典型案例分析:結合項目,因為分析驅動因素的錯誤,導致項目不能如期驗收的失敗案例?
(9)其中(zhong)多個真實失敗案例,值得借鑒.
二、軟件架構*策略?
(1)重新認識系統質量屬性,如何定義質量屬性和相應的架構策略?
(2)系統架構的可擴展性設計策略?
(3)系統架構的可靠性設計策略?
(4)系統架構的高性能設計策略?
(5)系統架構的可維護性設計策略?
(6)系統架構的易用性設計策略?
(7)系統架構質量屬性和架構模式的應用?
(8)思考這些架構策略,如何應(ying)用在自己的實際(ji)項目中
第三單元: 軟件架構設計過程
一、軟件架構設計過程?
(1)軟件架構設計過程方法論(步驟和相應的成果)?
(2)典型(xing)案(an)例分析:結合具(ju)體項目案(an)例進(jin)行分析:演示架構設(she)計過程?
二、商業架構分析?
(1)軟件系統邊界和外部系統接口的定義?
(2)大型軟件系統的劃分子系統原則?
(4)子系統功能模塊的分解?
(5)子系統間的通信接口的設計?
(6)如何應對系統內部緊耦合、高內聚?
(7)軟件系統關鍵質量屬性樹和可行性分析?
(8)軟件系統部署架構(分布式/數據分布/通信/安全)
(9)軟件系統部署容量評估(主機/中間件/數據庫等資源容量評估)
(10)典型(xing)案例(li)分析:結合多個項目實(shi)例(li),分析商業(ye)架(jia)構成果(guo)?
三、邏輯架構設計?
(1)應用系統的類型和架構風格?
(2)架構模式在實際項目的應用?
(3)軟件架構立方體圖(軟件架構的分層,分區和基礎服務)
(4)軟件架構通用機制的分析(如何處理基礎設施擴展和具體有什么方法做基礎設施擴展, 掌握如何分離這些基礎設施用例)
(5)使用質量場景屬性進行迭代架構設計?
(6)軟件架構各層的架構策略(針對企業應用分層,每層的架構策略)
(8)軟件系統線程架構策略(結合Apache HTTP Server分析線程和進程的架構)
(9)典(dian)型案例(li)分析:結合(he)項目實(shi)例(li),進行分析該(gai)階段的主要任務和相關成果?
四、物理架構設計?
(1)數據架構(數據模型/數據分布/數據存取,以及核心數據流)
(2)用例視圖(抽取典型,有分險和客戶最關心用例進行分析,結合架構進行設計)
(3)實現視圖(架構,設計和開發,實現原則和指南)?
(4)完成架構文檔,對架構文檔進行評估?
(5)典型案例分析:結合3G增(zeng)值(zhi)服(fu)務項目(mu),分析物(wu)理架(jia)構設計
第四單元: 軟件架構應用
一、架構設計的評估和驗證?
(1)軟件架構的驗證(軟件架構風險驗證)
(2)軟件架構的驗證方法和指標(基于問題檢查表和質量屬性樹)
(3)軟件架構的驗證注意事項?
(4)軟件架構的評估方式?
(5)軟件詳細設計和實現時期,架構師的職責和架構的監控?
(6)典型案例分析:結合項目實例,分析如何進行驗證架構和架構設計的后期重構技巧?
二、架構設計重構和復用?
(1)軟件架構重構概述?
(2)軟件架構常見的壞癥狀?
(4)軟件架構的重構手段?
(5)軟件架構的復用?
(6)結合某著名(ming)公司(si)全球架構(gou)師團隊架構(gou)實例,分析架構(gou)重構(gou)和(he)架構(gou)復用技巧
第五單元: 軟件應用類型和參考架構(不同應用類型,必須采用不同架構風格)
(1)聯機交易類架構?
(2)Web應用系統/大規模高并發Web2.0互聯網系統?
(3)Client/Server系統(銀行交易系統)
(4)連接分析分析系統(移動經營分析系統)
(5)大規模實時并發系統(電信計費系統)
(6)Portal系統(個性化和頁面集成系統 )
(7)EAI企業集成系統(基于大規模消息集成系統)
(8)基于WAP系統(多渠道/多種手機接入系統)
(9)后臺批處理系統(高并發后臺批處理類型 銀行后臺系統)
(10)基于SOA架構系統?
(11)結合多個項(xiang)目案例分析每種應(ying)用類型的(de)架(jia)構風格特點,主要架(jia)構挑(tiao)戰和相應(ying)對策
第六單元: 軟件架構模式應用
一、軟件架構模式?
(1)軟件架構模式概述?
(2)管道過濾器/事件架構/微內核/反射架構模式(其他10多種常見的架構模式)
(4).net常見架構模式和J2EE架構模式?
(5)分布式和并發架構模式?
(6)典型案(an)例(li)分(fen)析:結合國(guo)內社(she)保平臺項目分(fen)析軟件(jian)架(jia)構模式的應(ying)用經(jing)驗(yan)
第七單元: 軟件架構的實現-框架和設計模式
1.應用框架(Application framework)
(1)框架vs.類庫
(2)軟件架構如何以框架的方式實現
(3)框架的開發過程和開發技術(通用點vs.擴展點)?
(4)一個著名框架的實現分析?
(5)典型案例分析:結合項目實例,開發框架?
2.設計模式技術在軟件框架設計之中的應用?
(1)設計模式思想(封裝變化)
(2)設計模式的在架構設計之中的綜合應用?
(3)典型案例分析:結合(he)項目實(shi)例,分析設(she)計模式在架構設(she)計時期的實(shi)際應用
第八單元: 軟件架構核心策略
1、領域模型架構?
(1)領域模型架構策略?
(2)領域模型建模(關聯,屬性)
(3)多個系統數據模型不一致和領域模型的同步?
(4)公共數據模型(CDM)
(5)領域模型分析模式(模型的選擇會影響最終產生系統的靈活性和可重用性)
(6)根據電信(xin)計(ji)費系統和網(wang)絡資(zi)源管理案例(li)分析領域模型(xing)的架構?
2、業務邏輯和業務流程架構?
(1)業務邏輯架構模式(事務腳本/領域模型/服務層模式)
(2)業務流程架構策略?
(3)基于容器的業務邏輯架構(EJB和輕量級,以及容器提供的基礎服務)
(4)面向方面的業務架構和AOP技術在業務邏輯架構的應用?
(5)狀態管理架構策略(有狀態和無狀態服務,以及對可擴展性的影響)
(6)業務邏輯的分布式架構策略(遠程或本地/同步或異步)
(7)并發和同步架構模式(Half-Sync/Half-Async和Leader/Followers和Active object和Monitor object)
(8)基于中間(jian)件的業務邏輯架(jia)構(Corba/Tuxedo/MQSeries/J2EE/.net) (9)典(dian)型案例分析:結合某銀行交易系統分析業務邏輯架(jia)構?
3、數據存取(持久性)架構?
(1)數據存取架構策略(對象和關系數據庫的映射)
(2)對象關系阻抗/ORM技術/數據映射SQLMapper
(3)緩存技術在存取層的應用/緩存數據和數據庫數據一致性?
(4)分布式數據存取策略(讀寫分離/分布數據/異構數據存取)
(5)數據同步和一致性策略?
(6)數據訪問層的性能考慮?
(7)事務管理(本地事務和分布式事務,以及事務補償)
(8)數據鎖管理(悲觀鎖和樂觀鎖)
(9)典型案例(li)分析(xi):結(jie)合零售行業POS項目(mu)分析(xi)數據訪問(wen)層的架構設(she)計?
4、數據架構?
(1)數據架構概述
(2)數據建模原則和優化策略?
(3)數據分布策略(集中,歸檔,子集,ETL等模式)
(4)數據復制和同步策略?
(5)數據一致性和分布式事務
(6)大數據量數據庫可擴展性(水平和垂直擴展,讀寫分離)以及單表記錄過大拆分策略?
(7)數據庫集群規劃?
(8)分布式數據存取策略(跨多個庫, 可能數據庫異構類型)
(9)數據備份與恢復
(10)數據庫性能規劃?
(11)數據安全策略?
(12)與遺留系統的數據庫兼容性考慮?
(13)結合(he)電(dian)信,金融(rong),零售POS項(xiang)目實(shi)例分析,系統數(shu)據架(jia)構設計策略?
5、系統內部各組件或層之間通信架構?
(1)系統通信設計原則
(2)通信機制和通信模式?
(3)協議選擇對性能的考慮
(4)同步還是異步?
(5)適配器策略(基于API/數據庫/文件/協議等適配)
(6)通信接口設計策略(統一接口/業務分類)
(7)數據傳輸形式(DTO/xml等)
(8)Extension/Explicit/Proxy/Dynamic/Batch 接口形式?
(9)結合項(xiang)目(mu)實(shi)例(li)分析(xi),系統內部(bu)的通(tong)信設計?
6、系統與外部系統的接口架構?
(1)系統接口設計策略
(2)點對點和基于EAI平臺架構?
(3)系統接口策略(基于文件,共享數據庫,同步RPC或者異步消息)
(4)系統接口安全/審計/稽核等架構策略?
(5)結合某省電信BSS系(xi)統(tong)EAI項目實例分析,系(xi)統(tong)接口架構策略(lve)?
7、系統基礎服務組件架構?
(1)系統基礎服務組件架構策略
(2)系統通用服務層與業務邏輯分離?
(3)系統必備13種基礎服務架構(異常處理/事務管理/緩存/工作流/校驗/通信/安全/日志/定時觸發/狀態/消息通信/系統監控/配置管理) (4)業務通用服務架構實現策略
(5)結(jie)合多個項目(mu)實(shi)例(li)分析,架構師如(ru)何萃取基礎服務(wu)組件和怎(zen)樣設計實(shi)現
第九單元: 大型軟件系統架構實踐與剖析?
(該案例分別在以上各單元,結合主題進行介紹)綜合軟件架構實踐與剖析(以實際項目案例為背景)
(1)電信行業(電信97/移動BOSS/電信MBOSS/經營分析)軟件架構案例研究?
(2)金融行業(XXX銀行企業信貸和XXX銀行)軟件架構案例研究?
(3)政府行業(XXX社保和XXX稅務)軟件架構案例研究?
(4)電力行業(SG168和XXX電網門戶系統)軟件架構案例研究?
(5)大型互聯網系統架構案例研究?
(6)郵政(zheng)行業(***郵政(zheng)項目(mu))案例研究
軟件架構與案例分析*實踐培訓
轉載://citymember.cn/gkk_detail/65326.html
已開課時間Have start time
大數據課程內訓
- 建材門店--微信獲客與運營 武建偉
- 數據創造價值——大數據分析 張曉如(ru)
- 能源電力企業數字化轉型探索 李開東(dong)
- 數據驅動價值 ——基于Ex 張曉如
- 大數據項目解決方案及應用 胡(hu)國慶(qing)
- 《銀行--網絡消費行為與網 武(wu)建偉(wei)
- 《大數據精益化營銷思維與運 喻國慶
- 《精細運營——京東/天貓平 武建偉
- 企業區塊鏈技術的應用場景與 李璐
- 大數據提升:用戶體驗提升與 武建(jian)偉(wei)
- 《大數據分析與客戶開發》 喻國慶
- 《流量神器,銷量升級:如何 武建偉(wei)