[摘要]本作者從實(shí)際實(shí)施角度論述了RUP方法的一種改良方法——TPUP。本文從個(gè)人對(duì)TPUP理論的切身體會(huì),以及實(shí)證講述和論證了TPUP的四個(gè)階段,最后提到個(gè)人對(duì)RUP方法發(fā)展的一點(diǎn)看法。并且提出相關(guān)理論。
[關(guān)鍵詞]工程方法TPUP Rational統(tǒng)一軟件開發(fā)過程迭代
中圖分類號(hào):TP18 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009~-283(2009)04-0152-01
1 TPUP在的應(yīng)用
拓普軟件開發(fā)過程中,將自己多年來積累的開發(fā)經(jīng)驗(yàn)與cMM的思想、PsP的作法和RuP理論相結(jié)合,最終形成了TPUP,其主導(dǎo)思想是基于Rational公司提出的RUP,根據(jù)公司自己的特點(diǎn),對(duì)RUP中的一些不適合自己的繁瑣做法作裁減(比如有許多的Artifacts根本沒有必要全部寫出來),同時(shí)擴(kuò)充了cMM中所強(qiáng)調(diào)的質(zhì)量管理,在項(xiàng)目管理中采用PSP做法,加強(qiáng)對(duì)工程師的培訓(xùn)、管理和監(jiān)控,提高項(xiàng)目的成功率。本系統(tǒng)完全按照TOP集團(tuán)的TPUP進(jìn)行開發(fā),項(xiàng)目評(píng)審小組制定了四個(gè)階段的評(píng)審,評(píng)審結(jié)果用A,B,c,D分別表示為:
A——接受被評(píng)審的開發(fā)成果/文檔;B——由于被評(píng)審的開發(fā)成果/文檔不完善,改正后另行評(píng)審;C——暫時(shí)接受被評(píng)審的開發(fā)成果/文檔(小錯(cuò)誤已經(jīng)發(fā)現(xiàn),必須改,但沒必要再評(píng)審);D——由于被評(píng)審的開發(fā)成果/文檔嚴(yán)重錯(cuò)誤,建議終止項(xiàng)目繼續(xù)開發(fā)。TPUP和RUP類似,分為四個(gè)階段,分別是先啟(inception)、精化、(elaboration)、構(gòu)建(constrtlc-hon)、產(chǎn)品化(transition)。每個(gè)星期要求完成一個(gè)階段,并在下個(gè)星期一做階段評(píng)審。下面將講解TPUP的一些主要運(yùn)作流程。
1.1 先啟階段(inception)項(xiàng)目經(jīng)理首先召開會(huì)議,進(jìn)行項(xiàng)目動(dòng)員和工作任務(wù)的分配,明確每個(gè)人在TPUP中所擔(dān)任的角色
本項(xiàng)目組共有9個(gè)人(1個(gè)人可以充當(dāng)多個(gè)角色),安排4個(gè)人成立一個(gè)需求分析小組,指定其中1個(gè)人作為小組組長(zhǎng);再安排2個(gè)人做技術(shù)和架構(gòu)方面的研究,要求產(chǎn)生一個(gè)原型,保證技術(shù)上的可行性;項(xiàng),目經(jīng)理為1個(gè)人,負(fù)責(zé)項(xiàng)目的計(jì)劃、控制和跟蹤;再安排1個(gè)人專職制訂測(cè)試計(jì)劃和SQA(軟件質(zhì)量保證)的工作;最后1個(gè)人負(fù)責(zé)在1天的時(shí)間內(nèi)搭建起整個(gè)團(tuán)隊(duì)需要使用的軟件配置庫(kù);成立SEPG小組(軟件工程過程小組)負(fù)責(zé)軟件流程活動(dòng),監(jiān)督開發(fā)過程是否滿足公司制訂的標(biāo)準(zhǔn);成立CCB小組(變更控制委員會(huì)),主要任務(wù)是明確產(chǎn)品的基線、復(fù)審對(duì)基線的變更、最后批準(zhǔn)、否決變更或延期執(zhí)行。下面從每個(gè)角色的角度去論述相應(yīng)情況。
(1)項(xiàng)目經(jīng)理——有兩個(gè)主要任務(wù),分別是項(xiàng)目開發(fā)計(jì)劃、項(xiàng)目跟蹤和控制。項(xiàng)目開發(fā)計(jì)劃中要求產(chǎn)生下面的文檔:迭代計(jì)劃(產(chǎn)生in-eeptoon、elaboration兩個(gè)階段的迭代計(jì)劃)、軟件開發(fā)計(jì)劃、風(fēng)險(xiǎn)管理計(jì)劃、風(fēng)險(xiǎn)列表、商業(yè)理由、SQA計(jì)劃、產(chǎn)品驗(yàn)收計(jì)劃。項(xiàng)目跟蹤和控制中要求產(chǎn)生下面的文檔:迭代評(píng)估報(bào)告、狀態(tài)評(píng)估報(bào)告、成本跟蹤表、風(fēng)險(xiǎn)跟蹤表、工作量統(tǒng)計(jì)表、進(jìn)度跟蹤表。項(xiàng)目經(jīng)理需要注意下面的一些問題,在分配任務(wù)的時(shí)候,必須考慮每個(gè)成員各自的興趣、愛好、工作特長(zhǎng),調(diào)動(dòng)項(xiàng)目組成員的積極性。每天下班前,組員需要把當(dāng)天工作成果保存到服務(wù)器的配置庫(kù)中,并寫下daily report記載所做工作。項(xiàng)目經(jīng)理要隨時(shí)與團(tuán)隊(duì)成員進(jìn)行溝通,了解他們的進(jìn)度和工作中的困難。為了增強(qiáng)團(tuán)隊(duì)成員互相之間的溝通,每周可以安排1次座談,交流彼此的工作體會(huì)。開會(huì)時(shí),項(xiàng)目經(jīng)理要提前準(zhǔn)備好開會(huì)內(nèi)容,將開會(huì)的概要事先分發(fā)給組員們,并且要牢牢控制開會(huì)主題。(2)測(cè)試人員——完成整個(gè)系統(tǒng)測(cè)試計(jì)劃,同需求分析小組緊密合作,制作SqA評(píng)審計(jì)劃,對(duì)項(xiàng)目質(zhì)量保證監(jiān)控方面做出計(jì)劃安排。(3)需求分析人員——明確需求和分析需求,產(chǎn)生如下相應(yīng)工件:前景、用例模型、詞匯表、補(bǔ)充規(guī)約、涉眾請(qǐng)求、需求管理計(jì)劃、用例實(shí)現(xiàn)規(guī)約。(4)軟件配置人員——立軟件配置庫(kù)(采用了VSS6.0軟件)和相關(guān)的項(xiàng)目環(huán)境支持工件,要求產(chǎn)生如下工件:部署計(jì)劃、軟件配置管理計(jì)劃、變更管理計(jì)劃、編程指南、測(cè)試指南、開發(fā)組織評(píng)估、設(shè)計(jì)指南、業(yè)務(wù)建模指南、用例建模指南、開發(fā)案例。(5)技術(shù)分析員——主要研究技術(shù)上的可行性、技術(shù)造型和產(chǎn)生一個(gè)原型,產(chǎn)生如下相應(yīng)工件:軟件架構(gòu)文檔。通過需求小組的分析,先畫出用例模型,然后根據(jù)用例模型寫出用例實(shí)現(xiàn)規(guī)約、詞匯表、補(bǔ)充規(guī)約、涉眾請(qǐng)求,進(jìn)一步得到了測(cè)試用例,測(cè)試計(jì)劃。
1.2 精化階段(elaboration)
細(xì)化階段在四個(gè)階段中最關(guān)鍵,其主要任務(wù)是確保構(gòu)架、需求和計(jì)劃足夠穩(wěn)定,充分減少風(fēng)險(xiǎn),所以所有工作必須圍繞這個(gè)任務(wù)展開。施時(shí),本階段要求完成用例模型中的80%,作出主要關(guān)鍵用例的可執(zhí)行版本。然后項(xiàng)目經(jīng)理再次召開會(huì)議,講述本階段的工作,開始分配任務(wù)。下面按照角色來敘述各自的工作任務(wù)。
(1)項(xiàng)目經(jīng)理——有兩個(gè)主要任務(wù):項(xiàng)目開發(fā)計(jì)劃、項(xiàng)目跟蹤和制。此階段要密切關(guān)注用例模型的詳細(xì)分析和關(guān)鍵用例的實(shí)現(xiàn)。(2)測(cè)試人員——要求做下面的工作:測(cè)試過程、測(cè)試模型、測(cè)試日志、集成測(cè)試計(jì)劃、系統(tǒng)測(cè)試計(jì)劃、集成測(cè)試用例、系統(tǒng)測(cè)試用例。(3)需求分析人員——進(jìn)一步細(xì)化用例模型,完成大多數(shù)的用例分析和規(guī)格說明書,更新下列文檔:前景、用例模型、詞匯表、補(bǔ)充規(guī)約、涉眾請(qǐng)求、需求管理計(jì)劃、用例實(shí)現(xiàn)規(guī)約,創(chuàng)建用戶界面原型文檔。(4)軟件配置人員——負(fù)責(zé)細(xì)化階段的工具安裝,將一些設(shè)計(jì)指南和編程指南放置到基線庫(kù)中。(5)技術(shù)分析員—完成分析和設(shè)計(jì)模型,包括所有的子產(chǎn)品、對(duì)象模型、設(shè)計(jì)類、子系統(tǒng)和包等。
1.3 構(gòu)建階段(construction)
在構(gòu)建階段,所有剩余構(gòu)件和應(yīng)用程序功能被開發(fā)并集成為產(chǎn)品,所有功能被詳盡地進(jìn)行測(cè)試。該階段需要實(shí)現(xiàn)精化階段所剩下的20%的用例,同時(shí)需要對(duì)系統(tǒng)進(jìn)行嚴(yán)格的質(zhì)量測(cè)試和保證質(zhì)量,進(jìn)而形成系統(tǒng)的各種版本(Alpha、Beta等)。在系統(tǒng)完善中,要注意各種文檔的收集和整理,要準(zhǔn)備好用戶手冊(cè)和公司的開發(fā)文檔等。
1.4 產(chǎn)品化階段(transition)
在這一階段,我們將測(cè)試合格的產(chǎn)品部署完成,然后開始使用這套系統(tǒng),通過一段時(shí)間的使用,客戶對(duì)該系統(tǒng)有一個(gè)初步的掌握,然后根據(jù)驗(yàn)收標(biāo)準(zhǔn)對(duì)系統(tǒng)的性能和易用性等做出評(píng)估(即相當(dāng)于客戶對(duì)系統(tǒng)的滿意度)。
2 結(jié)束語
本文對(duì)那些預(yù)實(shí)施RuP的組織和公司具有較好的實(shí)用價(jià)值和參考價(jià)值,讀者可以在此基礎(chǔ)上結(jié)合自己的經(jīng)驗(yàn),形成一個(gè)有效的、適合自己的、經(jīng)過裁減的RUP,從而獲得高效的軟件管理、開發(fā)模式。目前市場(chǎng)上還有一些非常優(yōu)秀的軟件開發(fā)方法,作者認(rèn)為,如果能夠?qū)UP和PSP、TSP、CMM四者很好地結(jié)合起來,可以為開發(fā)工作帶來巨大收益,這將會(huì)是軟件工程一個(gè)很好的發(fā)展方向。