第一階段:
構架全景視圖——核心開發過程(cheng)
項(xiang)目(mu)展示
展示以往成功實施UML&OOAD與UP的項目實例(li)
以構架為中心(xin)的開發過程——UP統一軟件(jian)過程
全面(mian)說明UP統一軟件過程(cheng)的內容(rong),包括角色,工件,和(he)活(huo)動(業務、需求等九大科目);
講解軟件開(kai)發所(suo)經歷(li)的從業務(wu)建(jian)(jian)模(mo)(領域(yu)建(jian)(jian)模(mo))、到需求(qiu)建(jian)(jian)模(mo)(用例建(jian)(jian)模(mo))、進而到架、建(jian)(jian)模(mo)、行為(應用)建(jian)(jian)模(mo)、數據建(jian)(jian)模(mo),最后到測試建(jian)(jian)模(mo)的整個(ge)過(guo)程
闡述迭(die)代模型,詳細講解RUP的先啟(qi)階段(duan)和精化階段(duan)的迭代內容(rong)
對比RUP重量(liang)級過程(cheng)與(yu)輕量(liang)級過程(cheng)XP、Agile
Process的差別,以及各自(zi)的適(shi)用范圍
講解UML
9種圖(tu)形及(ji)應(ying)用
用例驅動的需(xu)求開發
對比用(yong)例(li)方法與傳統(tong)需求開(kai)發(fa)方法的優劣(lie);用(yong)例(li)模型在表達功能需求中(zhong)的核心作用(yong);
解(jie)釋(shi)收集信(xin)息的過(guo)程,解(jie)釋(shi)作用(yong)域專(zhuan)家(jia)的角(jiao)色
寫(xie)一個明確(que)的problem
statements
確定(ding)建設(she)和維護數據字典的重要性(xing)
闡(chan)釋如何正(zheng)確(que)使用(yong)用(yong)例(li)技術來捕(bu)獲客(ke)戶(hu)的功能需求;
需求建(jian)模實驗(yan)
通(tong)過一個(ge)簡化的(de)項(xiang)目實例(li),講解如何建立(li)需求(用(yong)例(li))模型;針(zhen)對選定的(de)項(xiang)目實例(li),指導學員(yuan)使用(yong)文檔、活動圖/序(xu)列圖等途徑詳述系統用例的規格(ge)
面向(xiang)對象分析(xi)
闡(chan)述從分析模型到(dao)設計模型,最終(zhong)到(dao)實施模型的(de)整個演化過程;
講(jiang)解(jie)分析類(lei)(lei)的概念(nian),說明邊界類(lei)(lei)、實(shi)體類(lei)(lei)和控制類(lei)(lei)的劃分與職(zhi)責分配方法
講解如何從用例行為中(zhong)識(shi)別分(fen)(fen)(fen)析(xi)(xi)(xi)類,并將(jiang)相關行為向(xiang)分(fen)(fen)(fen)析(xi)(xi)(xi)類進行職(zhi)責(ze)分(fen)(fen)(fen)配;說明使用序列(lie)圖(tu)與協作圖(tu)來幫助用例分(fen)(fen)(fen)析(xi)(xi)(xi)的(de)途徑(jing);
說(shuo)明(ming)如(ru)何在較大(da)規(gui)模的系統中(zhong),將眾多(duo)的分(fen)析類組織成(cheng)分(fen)析包和服務包
面向(xiang)對象分(fen)析實(shi)驗
依照項目(mu)實(shi)例(li)(li)(li)已建立的需(xu)求(qiu)模型,講(jiang)解進行(xing)用例(li)(li)(li)分析(xi)的過(guo)程;針對選定(ding)的項目(mu)實(shi)例(li)(li)(li),識(shi)別分析(xi)類(lei),使用序(xu)列圖或協(xie)作(zuo)圖來描述基(ji)于(yu)這(zhe)些分析(xi)類(lei)來實(shi)現用例(li)(li)(li)行(xing)為所代表的系統功能需(xu)求(qiu);
第二階段:
構架分(fen)析
軟件構架導論
闡述軟(ruan)件(jian)構架(jia)是什么,講(jiang)解為什么需要軟(ruan)件(jian)構架(jia),闡述構架(jia)基線的概念(nian);
介紹(shao)迭(die)代開發各(ge)個階段需(xu)要解決的各(ge)類關鍵(jian)風險(xian),分析構架基線是如何規避項目開發風險(xian)的
回顧RUP的(de)分析設計過程,說明構架分析、設計在其中的(de)關鍵位(wei)置(zhi);
介(jie)紹(shao)構架(jia)設計的相關理論(lun)(元(yuan)模型(xing)體系(xi)),以及業(ye)界(jie)主流的構架(jia)體系(xi)模型(xing)
構架風格與模(mo)式(shi)
闡述構(gou)架風格(ge)的概念,介紹(shao)常見的相(xiang)關構(gou)架風格(ge);
講解構(gou)架(jia)(jia)模(mo)式和框架(jia)(jia),以及如何(he)應用構(gou)架(jia)(jia)模(mo)式與(yu)框架(jia)(jia)來創建健壯的(de)構(gou)架(jia)(jia);
重點講述層(ceng)次模式,深入探討應(ying)用(yong)層(ceng)次模式來幫助(zhu)開發系(xi)統初始的構架層(ceng)
軟件構架分析
分析(xi)抽(chou)象概念在構架分析(xi)中的作用;介(jie)紹如何使用分析(xi)模(mo)式、GRASP模式來精化實體模型;
講解如何開發系統的界面導航圖來框定系統的主體功能行為;
闡述構(gou)架機(ji)(ji)制的概念,深入(ru)說明分(fen)析(xi)機(ji)(ji)制,講解如(ru)何使用分(fen)析(xi)機(ji)(ji)制來修(xiu)飾分(fen)析(xi)類之(zhi)設計約束(shu);
介(jie)紹最新的(de)代碼注(zhu)釋技術(shu),講解如何使用ejb3.0的annotation來修(xiu)飾(shi)設計約束(shu)(分析機制特征),并利用已(yi)有框架直接(jie)進入實(shi)現(xian)
第三階段:
構(gou)架(邏(luo)輯(ji))設計
軟件構(gou)架(邏輯)設計(ji)
闡述軟(ruan)件構(gou)架設計(ji)所(suo)面臨的挑戰,說明構(gou)架設計(ji)的質(zhi)量(liang)目標:可(ke)(ke)維護性(xing)(xing)、可(ke)(ke)擴(kuo)展(zhan)性(xing)(xing)、可(ke)(ke)重用(yong)性(xing)(xing)、互操作性(xing)(xing)等;講(jiang)解構(gou)架設計(ji)相關的一些原則;
選擇構架級技術方案的指南,講(jiang)解如何針(zhen)對系統特征來確定構架級技術方案;
介紹SEI-ATAM構(gou)架折衷分(fen)析(xi)方法;并講解構(gou)架設(she)計如何(he)反作用于系統行為;
闡述(shu)設計模型的組織結(jie)構,說明如何(he)進行構架級的分(fen)包,以及劃(hua)分(fen)子(zi)系統、定義接口等;
AOP面向方面的軟(ruan)件開發技(ji)術;講解如何使(shi)用AOP來實現最為靈活的設計機(ji)制;
面向對象設計(ji)原則(ze)與模式
講解面向對象設計(ji)中的最(zui)重要的原(yuan)則(ze),包(bao)括類的設計(ji)原(yuan)則(ze)和包(bao)的設計(ji)原(yuan)則(ze);
結合(he)實例闡述在實際設(she)計,特(te)別是構架設(she)計中,應用(yong)設(she)計原則(ze)的方法(fa)、途徑(jing);說(shuo)明保(bao)持平臺相(xiang)關(guan)的細節(jie)和應用(yong)的分離(li),如(ru)何應用(yong)封裝,抽(chou)象(abstraction)和委派(delegation)的原(yuan)則等(deng);
闡述軟件(jian)構造中的冗(rong)余,說明在構架(jia)設(she)計中如何識別和利用復用機會;結構上的去(qu)冗(rong)余途徑,
探討元數據驅動(dong)技術在產品二(er)次開發上(shang)的應用策略(lve);
J2EE/Java
Lite與(yu)dot.Net構架(jia)框(kuang)架(jia)、以及基于服務的構架(jia)SOA
系(xi)統(tong)地闡述(shu)業務(wu)密(mi)集型軟件系(xi)統(tong)的主流分層(ceng)(ceng)構架設(she)(she)計(ji)途徑:從表示層(ceng)(ceng)設(she)(she)計(ji)、應用控制邏輯(ji)設(she)(she)計(ji)、到業務(wu)邏輯(ji)層(ceng)(ceng)的工作流設(she)(she)計(ji)、以(yi)及(ji)業務(wu)服務(wu)構件設(she)(she)計(ji),最終到數據訪問層(ceng)(ceng)設(she)(she)計(ji)等(deng);
介紹當(dang)前業務(wu)軟件(jian)主流(liu)構(gou)架應用框(kuang)架以及中間件(jian)體系(xi),包括:
J2EE重量級方案(以J2EE核心構架模式為主)
Java
Lite輕量級方案(an)(圍(wei)繞Struts+Spring+Hibernate)
dot.Net方案(以微軟的核(he)心構架(jia)模(mo)式(shi)為主(zhu))
闡(chan)述(shu)SOA構架設(she)計(ji)方案,說明SOA是一種獨立性(xing)(xing)強、依賴性(xing)(xing)弱,具(ju)有更(geng)優良的可復用性(xing)(xing)的基于構件CBD的構架(jia)開發方(fang)案;介紹實現SOA的常用技術:Web
Services;
介(jie)紹基于SOA的(de)JBoss構架實例(li);
第四階段:
構架(物理)設計與團隊協作
軟(ruan)件構架(物理)設(she)計
闡述源碼的并行(xing)開發管理,進而講解構件視圖(實施(shi)模型)的概(gai)念;
闡述軟件系統(tong)中的(de)并發需求,進而講(jiang)解進程視圖的(de)概念(nian)(即通常說(shuo)的(de)物理設計視圖);
闡述軟(ruan)件系統中(zhong)的(de)分布(bu)需求(qiu),進而講解部署視(shi)圖的(de)概念(即通(tong)常說的(de)物(wu)理設(she)計視(shi)圖);
軟件構架(jia)(數據)設計與對象(xiang)持(chi)久(jiu)化
講解對業務密集系統(tong)意(yi)義重大(da)的(de)數(shu)據庫設計與數(shu)據建模;
闡述(shu)對象持(chi)久化的概念,描述(shu)持(chi)久化機制,包括對應的分析、設計和實施等機制;
闡述Object-Relationship
Mapping對象關系(xi)映射的概念(nian),結合實例說明(ming)實現對象關系(xi)映射的途徑和方法,并給(gei)出基于Hibernate或ejb3.0的持久化實現;
數(shu)據(ju)訪(fang)問模式,例如在線訪(fang)問、Data
Access Object、Data
Transfer Object、離線數據模式等
軟件(jian)構架(jia)文檔與構架(jia)質量評估
進一步(bu)深入闡述4+1視圖的概念(nian),講解RUP的軟件構架文檔;
說(shuo)明(ming)軟(ruan)件構架文(wen)檔(dang)的(de)內容,并給出編寫軟(ruan)件構架文(wen)檔(dang),和用它來指(zhi)導(dao)目標系統開發的(de)指(zhi)南(nan);
說明構(gou)架設計(ji)流程中,解(jie)決方案的(de)構(gou)思、概念設計(ji)的(de)創(chuang)建、邏輯設計(ji)的(de)創(chuang)建、物理設計(ji)的(de)創(chuang)建等(deng)如何(he)對應到(dao)RUP的4+1視圖(tu);
項目開發(fa)目錄結構配置管理
講(jiang)解如何定義(yi)項目開發目錄結構(gou),以支持團(tuan)隊的(de)協作(zuo)開發;
講(jiang)解如(ru)何使(shi)用(yong)配(pei)置管理工具來支持項目(mu)開發目(mu)錄(lu)結構(gou)的共享使(shi)用(yong);
說明目錄結構的設計原則和方法;