如果你是一個開發(fā)人員,一天,市場部的小莉跑過來讓你修改你正在開發(fā)產(chǎn)品的一個小小的功能,這是應(yīng)客戶的要求添加的,你覺得這個要求很簡單,再加上你對小莉有好感,可能你就答應(yīng)了她的要求??墒菍?shí)際的情況是怎么樣的呢?你會發(fā)現(xiàn)小小的修改并沒有想象的那么簡單,對這項(xiàng)產(chǎn)品的修改導(dǎo)致了進(jìn)程的延誤,最糟糕的是,由于這項(xiàng)修改沒有傳達(dá)到整個需求鏈,其他的開發(fā)人員那里由于你的修改出現(xiàn)了一些要命的錯誤。
軟件工程重視的是過程能力,如果不能嚴(yán)格的確保過程的每一個環(huán)節(jié)都被不擇不扣的執(zhí)行,軟件過程就會不成功,我們都學(xué)過法律常識,都知道有法可依還不夠,還必須有法必依,執(zhí)法必嚴(yán)。遺憾的是,中國的軟件組織對過程的嚴(yán)格執(zhí)行并不是特別重視,上面的例子在各團(tuán)體中都是很普遍的,這可能和中國人的思維方式有些關(guān)系,關(guān)于這一點(diǎn),魯迅先生在很早的時候已經(jīng)討論過了,我們就不用在此羅嗦了。
需求鏈的概念指的是需求能夠上傳下達(dá),從客戶傳達(dá)到需求過程,并從需求過程傳達(dá)到需求過程的下游開發(fā)鏈。而這個傳達(dá)是可以逆向的。
需求跟蹤提供了一個表明與合同或說明一致的方法。更進(jìn)一步,需求跟蹤可以改善產(chǎn)品質(zhì)量,降低維護(hù)成本,而且很容易實(shí)現(xiàn)重用( Ramesh 1998)。
在CMM三級中要求軟件團(tuán)體必須具備需求跟蹤的能力:“在軟件工作產(chǎn)品之間,維護(hù)一致性。工作產(chǎn)品包括軟件計(jì)劃,過程描述,分配需求,軟件需求,軟件設(shè)計(jì),代碼,測試計(jì)劃,以及測試過程?!?BR> 實(shí)際上,創(chuàng)建需求跟蹤能力是困難的,尤其是在短期之內(nèi)會造成開發(fā)成本的上升,雖然從長遠(yuǎn)來看可以減少軟件生存期的費(fèi)用,軟件團(tuán)體在實(shí)施這項(xiàng)能力的時候應(yīng)循序漸進(jìn),逐步實(shí)施。
需求跟蹤的一種通用的方法是采用需求能力跟蹤矩陣。它的前提條件是將在需求鏈中各個過程的元素加以編號,例如:需求的實(shí)例號,設(shè)計(jì)的實(shí)例號,編碼的實(shí)例號,測試的實(shí)例號。他們的關(guān)系都是一對一和一對多的關(guān)系。通過編號,你可以使用數(shù)據(jù)庫進(jìn)行管理,需求的變化能夠立刻體現(xiàn)在整條需求鏈的變化上。
需求跟蹤矩陣并沒有規(guī)定的實(shí)現(xiàn)辦法,每個團(tuán)體注重的方面不同,所創(chuàng)建的需求跟蹤矩陣也不同,只要能夠保證需求鏈的一致性和狀態(tài)的跟蹤就達(dá)到目的了。
項(xiàng)目經(jīng)理勝任力免費(fèi)測評PMQ上線啦!快來測測你排多少名吧~
http://m.opto-elec.com.cn/pmqhd/index.html