第一階段:
構(gòu)架全景視圖——核心開發(fā)過(guò)程
項(xiàng)目展示
展示以往成功實(shí)施UML&OOAD與UP的項(xiàng)目實(shí)例
以構(gòu)架為中心的開發(fā)過(guò)程——UP統(tǒng)一軟件過(guò)程
全面說(shuō)明UP統(tǒng)一軟件過(guò)程的內(nèi)容,包括角色,工件,和活動(dòng)(業(yè)務(wù)、需求等九大科目);
講解軟件開發(fā)所經(jīng)歷的從業(yè)務(wù)建模(領(lǐng)域建模)、到需求建模(用例建模)、進(jìn)而到架、建模、行為(應(yīng)用)建模、數(shù)據(jù)建模,后到測(cè)試建模的整個(gè)過(guò)程
闡述迭代模型,詳細(xì)講解RUP的先啟階段和精化階段的迭代內(nèi)容
對(duì)比RUP重量級(jí)過(guò)程與輕量級(jí)過(guò)程XP、Agile
Process的差別,以及各自的適用范圍
講解UML
9種圖形及應(yīng)用
用例驅(qū)動(dòng)的需求開發(fā)
對(duì)比用例方法與傳統(tǒng)需求開發(fā)方法的優(yōu)劣;用例模型在表達(dá)功能需求中的核心作用;
解釋收集信息的過(guò)程,解釋作用域?qū)<业慕巧?/SPAN>
寫一個(gè)明確的problem
statements
確定建設(shè)和維護(hù)數(shù)據(jù)字典的重要性
闡釋如何正確使用用例技術(shù)來(lái)捕獲客戶的功能需求;
需求建模實(shí)驗(yàn)
通過(guò)一個(gè)簡(jiǎn)化的項(xiàng)目實(shí)例,講解如何建立需求(用例)模型;針對(duì)選定的項(xiàng)目實(shí)例,指導(dǎo)學(xué)員使用文檔、活動(dòng)圖/序列圖等途徑詳述系統(tǒng)用例的規(guī)格
面向?qū)ο蠓治?/SPAN>
闡述從分析模型到設(shè)計(jì)模型,終到實(shí)施模型的整個(gè)演化過(guò)程;
講解分析類的概念,說(shuō)明邊界類、實(shí)體類和控制類的劃分與職責(zé)分配方法
講解如何從用例行為中識(shí)別分析類,并將相關(guān)行為向分析類進(jìn)行職責(zé)分配;說(shuō)明使用序列圖與協(xié)作圖來(lái)幫助用例分析的途徑;
說(shuō)明如何在較大規(guī)模的系統(tǒng)中,將眾多的分析類組織成分析包和服務(wù)包
面向?qū)ο蠓治鰧?shí)驗(yàn)
依照項(xiàng)目實(shí)例已建立的需求模型,講解進(jìn)行用例分析的過(guò)程;針對(duì)選定的項(xiàng)目實(shí)例,識(shí)別分析類,使用序列圖或協(xié)作圖來(lái)描述基于這些分析類來(lái)實(shí)現(xiàn)用例行為所代表的系統(tǒng)功能需求;
第二階段:
構(gòu)架分析
軟件構(gòu)架導(dǎo)論
闡述軟件構(gòu)架是什么,講解為什么需要軟件構(gòu)架,闡述構(gòu)架基線的概念;
介紹迭代開發(fā)各個(gè)階段需要解決的各類關(guān)鍵風(fēng)險(xiǎn),分析構(gòu)架基線是如何規(guī)避項(xiàng)目開發(fā)風(fēng)險(xiǎn)的
回顧RUP的分析設(shè)計(jì)過(guò)程,說(shuō)明構(gòu)架分析、設(shè)計(jì)在其中的關(guān)鍵位置;
介紹構(gòu)架設(shè)計(jì)的相關(guān)理論(元模型體系),以及業(yè)界主流的構(gòu)架體系模型
構(gòu)架風(fēng)格與模式
闡述構(gòu)架風(fēng)格的概念,介紹常見的相關(guān)構(gòu)架風(fēng)格;
講解構(gòu)架模式和框架,以及如何應(yīng)用構(gòu)架模式與框架來(lái)創(chuàng)建健壯的構(gòu)架;
重點(diǎn)講述層次模式,深入探討應(yīng)用層次模式來(lái)幫助開發(fā)系統(tǒng)初始的構(gòu)架層
軟件構(gòu)架分析
分析抽象概念在構(gòu)架分析中的作用;介紹如何使用分析模式、GRASP模式來(lái)精化實(shí)體模型;
講解如何開發(fā)系統(tǒng)的界面導(dǎo)航圖來(lái)框定系統(tǒng)的主體功能行為;
闡述構(gòu)架機(jī)制的概念,深入說(shuō)明分析機(jī)制,講解如何使用分析機(jī)制來(lái)修飾分析類之設(shè)計(jì)約束;
介紹新的代碼注釋技術(shù),講解如何使用ejb3.0的annotation來(lái)修飾設(shè)計(jì)約束(分析機(jī)制特征),并利用已有框架直接進(jìn)入實(shí)現(xiàn)
第三階段:
構(gòu)架(邏輯)設(shè)計(jì)
軟件構(gòu)架(邏輯)設(shè)計(jì)
闡述軟件構(gòu)架設(shè)計(jì)所面臨的挑戰(zhàn),說(shuō)明構(gòu)架設(shè)計(jì)的質(zhì)量目標(biāo):可維護(hù)性、可擴(kuò)展性、可重用性、互操作性等;講解構(gòu)架設(shè)計(jì)相關(guān)的一些原則;
選擇構(gòu)架級(jí)技術(shù)方案的指南,講解如何針對(duì)系統(tǒng)特征來(lái)確定構(gòu)架級(jí)技術(shù)方案;
介紹SEI-ATAM構(gòu)架折衷分析方法;并講解構(gòu)架設(shè)計(jì)如何反作用于系統(tǒng)行為;
闡述設(shè)計(jì)模型的組織結(jié)構(gòu),說(shuō)明如何進(jìn)行構(gòu)架級(jí)的分包,以及劃分子系統(tǒng)、定義接口等;
AOP面向方面的軟件開發(fā)技術(shù);講解如何使用AOP來(lái)實(shí)現(xiàn)為靈活的設(shè)計(jì)機(jī)制;
面向?qū)ο笤O(shè)計(jì)原則與模式
講解面向?qū)ο笤O(shè)計(jì)中的重要的原則,包括類的設(shè)計(jì)原則和包的設(shè)計(jì)原則;
結(jié)合實(shí)例闡述在實(shí)際設(shè)計(jì),特別是構(gòu)架設(shè)計(jì)中,應(yīng)用設(shè)計(jì)原則的方法、途徑;說(shuō)明保持平臺(tái)相關(guān)的細(xì)節(jié)和應(yīng)用的分離,如何應(yīng)用封裝,抽象(abstraction)和委派(delegation)的原則等;
闡述軟件構(gòu)造中的冗余,說(shuō)明在構(gòu)架設(shè)計(jì)中如何識(shí)別和利用復(fù)用機(jī)會(huì);結(jié)構(gòu)上的去冗余途徑,
探討元數(shù)據(jù)驅(qū)動(dòng)技術(shù)在產(chǎn)品二次開發(fā)上的應(yīng)用策略;
J2EE/Java
Lite與dot.Net構(gòu)架框架、以及基于服務(wù)的構(gòu)架SOA
系統(tǒng)地闡述業(yè)務(wù)密集型軟件系統(tǒng)的主流分層構(gòu)架設(shè)計(jì)途徑:從表示層設(shè)計(jì)、應(yīng)用控制邏輯設(shè)計(jì)、到業(yè)務(wù)邏輯層的工作流設(shè)計(jì)、以及業(yè)務(wù)服務(wù)構(gòu)件設(shè)計(jì),終到數(shù)據(jù)訪問(wèn)層設(shè)計(jì)等;
介紹當(dāng)前業(yè)務(wù)軟件主流構(gòu)架應(yīng)用框架以及中間件體系,包括:
J2EE重量級(jí)方案(以J2EE核心構(gòu)架模式為主)
Java
Lite輕量級(jí)方案(圍繞Struts+Spring+Hibernate)
dot.Net方案(以微軟的核心構(gòu)架模式為主)
闡述SOA構(gòu)架設(shè)計(jì)方案,說(shuō)明SOA是一種獨(dú)立性強(qiáng)、依賴性弱,具有更優(yōu)良的可復(fù)用性的基于構(gòu)件CBD的構(gòu)架開發(fā)方案;介紹實(shí)現(xiàn)SOA的常用技術(shù):Web
Services;
介紹基于SOA的JBoss構(gòu)架實(shí)例;
第四階段:
構(gòu)架(物理)設(shè)計(jì)與團(tuán)隊(duì)協(xié)作
軟件構(gòu)架(物理)設(shè)計(jì)
闡述源碼的并行開發(fā)管理,進(jìn)而講解構(gòu)件視圖(實(shí)施模型)的概念;
闡述軟件系統(tǒng)中的并發(fā)需求,進(jìn)而講解進(jìn)程視圖的概念(即通常說(shuō)的物理設(shè)計(jì)視圖);
闡述軟件系統(tǒng)中的分布需求,進(jìn)而講解部署視圖的概念(即通常說(shuō)的物理設(shè)計(jì)視圖);
軟件構(gòu)架(數(shù)據(jù))設(shè)計(jì)與對(duì)象持久化
講解對(duì)業(yè)務(wù)密集系統(tǒng)意義重大的數(shù)據(jù)庫(kù)設(shè)計(jì)與數(shù)據(jù)建模;
闡述對(duì)象持久化的概念,描述持久化機(jī)制,包括對(duì)應(yīng)的分析、設(shè)計(jì)和實(shí)施等機(jī)制;
闡述Object-Relationship
Mapping對(duì)象關(guān)系映射的概念,結(jié)合實(shí)例說(shuō)明實(shí)現(xiàn)對(duì)象關(guān)系映射的途徑和方法,并給出基于Hibernate或ejb3.0的持久化實(shí)現(xiàn);
數(shù)據(jù)訪問(wèn)模式,例如在線訪問(wèn)、Data
Access Object、Data
Transfer Object、離線數(shù)據(jù)模式等
軟件構(gòu)架文檔與構(gòu)架質(zhì)量評(píng)估
進(jìn)一步深入闡述4+1視圖的概念,講解RUP的軟件構(gòu)架文檔;
說(shuō)明軟件構(gòu)架文檔的內(nèi)容,并給出編寫軟件構(gòu)架文檔,和用它來(lái)指導(dǎo)目標(biāo)系統(tǒng)開發(fā)的指南;
說(shuō)明構(gòu)架設(shè)計(jì)流程中,解決方案的構(gòu)思、概念設(shè)計(jì)的創(chuàng)建、邏輯設(shè)計(jì)的創(chuàng)建、物理設(shè)計(jì)的創(chuàng)建等如何對(duì)應(yīng)到RUP的4+1視圖;
項(xiàng)目開發(fā)目錄結(jié)構(gòu)配置管理
講解如何定義項(xiàng)目開發(fā)目錄結(jié)構(gòu),以支持團(tuán)隊(duì)的協(xié)作開發(fā);
講解如何使用配置管理工具來(lái)支持項(xiàng)目開發(fā)目錄結(jié)構(gòu)的共享使用;
說(shuō)明目錄結(jié)構(gòu)的設(shè)計(jì)原則和方法;