施,并安排相關(guān)人進(jìn)行驗(yàn)證。因?qū)嵤┘膀?yàn)證不屬于需求變更管理流程,故這里不贅述。
通過上述手段,本項(xiàng)目保證了所有的需求變更都有據(jù)可依,同時(shí),也通過該完整的需求管理過程,為后續(xù)的需求跟蹤及相關(guān)的測(cè)試提供了信息保障。
三、需求跟蹤
在實(shí)際項(xiàng)目開展中,經(jīng)常會(huì)發(fā)生這樣的情況。測(cè)試人員在進(jìn)行測(cè)試時(shí),發(fā)現(xiàn)某些需求未實(shí)現(xiàn),或者客戶UAT(用戶接收測(cè)試)時(shí),發(fā)現(xiàn)某些功能點(diǎn)未測(cè)試全。諸如此類的問題,很大一部分原因是由于需求雙向跟蹤未做好。
本項(xiàng)目需求雙向跟蹤,包括從用戶原始需求到系統(tǒng)需求、設(shè)計(jì)、編碼、測(cè)試用例等之間的雙向跟蹤。如下圖所示:
用戶需求 系統(tǒng)需求 概設(shè) 詳設(shè) 源碼 測(cè)試用例 …… 最終產(chǎn)品
1.1 1.1.1 P3 1.1.1 P4 1.1.1 XX.java TC01 …… 功能點(diǎn)1
雙向跟蹤包括:
·正向跟蹤:從需求到設(shè)計(jì)、源碼、測(cè)試用例的過程,用于明確是否所有需求都被設(shè)計(jì)了、被編碼了,被測(cè)試了等。一旦某個(gè)需求需要變更,就可以快速找到所有影響的范圍。
·反向跟蹤:從缺陷到測(cè)試用例、源碼、設(shè)計(jì)、需求的過程,用于明確所有的工作成果都是有對(duì)應(yīng)的需求,避免測(cè)試多余、設(shè)計(jì)多余的情況發(fā)生。同時(shí),一旦某項(xiàng)設(shè)計(jì)因多種原因發(fā)現(xiàn)需要變更,也可快速找到對(duì)應(yīng)的需求,以便快速確認(rèn)相應(yīng)的需求是否需要變更。
在本項(xiàng)目里,我們采用RP實(shí)現(xiàn)了上述雙向跟蹤。通過該工具,大大減少我們?nèi)藶檫M(jìn)行需求雙向跟蹤所需的工作量。而且通過RP和CQ集成,在進(jìn)行需求變更時(shí),我們可快速找到需求關(guān)聯(lián)項(xiàng)。
在我參與的這個(gè)項(xiàng)目里,作為需求管理負(fù)責(zé)人,我的工作主要目的是確保項(xiàng)目所有干系人對(duì)需求的一致理解,通過CQ管理和控制需求的變更,采用RP實(shí)現(xiàn)從需求到最終產(chǎn)品的雙向跟蹤。主要的工作流程包括制定需求管理計(jì)劃,并通過評(píng)審得到客戶的認(rèn)可,求得項(xiàng)目所有干系人對(duì)需求的理解,求得對(duì)需求的確認(rèn)、通過CQ管理需求變更,維護(hù)對(duì)需求的雙向跟蹤,并且通過RP的雙向跟蹤功能,協(xié)助我們識(shí)別項(xiàng)目工作與需求之間的不一致等。雖說該項(xiàng)目嚴(yán)格按照CMMI的需求管理過程要求實(shí)施,但是在實(shí)施過程中,也有我們自己的心得體會(huì)及教訓(xùn),下面各列舉一兩點(diǎn):
經(jīng)驗(yàn):
1.一定在項(xiàng)目啟動(dòng)時(shí),就要和客戶就需求接口人予以明確。經(jīng)過該項(xiàng)目的實(shí)踐,發(fā)現(xiàn),這個(gè)角色的設(shè)置,是相當(dāng)正確的,避免了客戶所有業(yè)務(wù)人員直接面對(duì)開發(fā)人員的情況,保證了開發(fā)所使用的需求都是有依據(jù)和證據(jù)的。
2.有效的需求跟蹤是避免需求遺漏的有效辦法之一??梢员苊庠陬愃芔AT時(shí)才發(fā)現(xiàn)需求未實(shí)現(xiàn)或者實(shí)現(xiàn)不全,減少項(xiàng)目上線壓力,同時(shí)也減少了客戶對(duì)公司項(xiàng)目團(tuán)隊(duì)的不滿。正因?yàn)槿绱?,通過該項(xiàng)目的實(shí)施經(jīng)歷,客戶與我們又簽訂了后續(xù)的合同。通過該項(xiàng)目的成功實(shí)施,為我司與該客戶后續(xù)的長(zhǎng)期合作奠定了良好基礎(chǔ)。
教訓(xùn):
由于客戶工作較忙,在進(jìn)行需求分析,并對(duì)需求達(dá)成一致階段,客戶無法保證時(shí)間進(jìn)行配合,無法逐個(gè)需求與我方進(jìn)行溝通,同時(shí),由于客戶對(duì)需求的理解也有個(gè)過程,所以剛開始,客戶提供的需求較泛。針對(duì)該情況,我方根據(jù)類似項(xiàng)目經(jīng)驗(yàn),結(jié)合我方對(duì)客戶提供需求的理解進(jìn)行開發(fā)。在提交第一版本給客戶時(shí),客戶發(fā)現(xiàn)該版本與實(shí)際需要有一定偏差。此時(shí)客戶對(duì)我們有很大意見。在碰到該問題情況下,我們及時(shí)調(diào)整需求分析及需求理解策略。經(jīng)過雙方溝通,客戶同意我方就關(guān)鍵需求,先開發(fā)原型,并就原型與客戶進(jìn)行實(shí)際演示,客戶針對(duì)原型上細(xì)化需求,并說明潛在需求。通過迭代式方式,當(dāng)原型實(shí)現(xiàn)的業(yè)務(wù)與功能達(dá)到客戶需求時(shí),我們?cè)籴槍?duì)這部分關(guān)鍵需求進(jìn)行開發(fā)。通過需求開發(fā)方式、需求達(dá)成一致策略的調(diào)整,該項(xiàng)目終于如期上線,并按計(jì)劃通過驗(yàn)收。