一個(gè)良好的需求應當具有一下特點(diǎn):
完整性:每一項需求都必須將所要實(shí)現的功能描述清楚,以使開(kāi)發(fā)人員獲得設計和實(shí)現這些功能所需的所有必要信息。
正確性:每一項需求都必須準確地陳述其要開(kāi)發(fā)的功能。
一致性:一致性是指與其它軟件需求或高層(系統,業(yè)務(wù))需求不相矛盾。
可行性:每一項需求都必須是在已知系統和環(huán)境的權能和限制范圍內可以實(shí)施的。
無(wú)二義性:對所有需求說(shuō)明的讀者都只能有一個(gè)明確統一的解釋?zhuān)捎谧匀徽Z(yǔ)言極易導致二義性,所以盡量把每項需求用簡(jiǎn)潔明了的用戶(hù)性的語(yǔ)言表達出來(lái)。
健壯性:需求的說(shuō)明中是否對可能出現的異常進(jìn)行了分析,并且對這些異常進(jìn)行了容錯處理。
必要性:“必要性”可以理解為每項需求都是用來(lái)授權你編寫(xiě)文檔的“根源”。要使每項需求都能回溯至某項客戶(hù)的輸入,如Use Case或別的來(lái)源。
可測試性:每項需求都能通過(guò)設計測試用例或其它的驗證方法來(lái)進(jìn)行測試。
可修改性:每項需求只應在S R S 中出現一次。這樣更改時(shí)易于保持一致性。另外,使用目錄表、索引和相互參照列表方法將使軟件需求規格說(shuō)明書(shū)更容易修改。
可跟蹤性:應能在每項軟件需求與它的根源和設計元素、源代碼、測試用例之間建立起鏈接鏈,這種可跟蹤性要求每項需求以一種結構化的,粒度好(f i n e - g r a i n e d )的方式編寫(xiě)并單獨標明,而不是大段大段的敘述。
另外應當對所有的需求分配優(yōu)先級。如果把所有的需求都看作同樣的重要,那么項目管理者在開(kāi)發(fā)或節省預算或調度中就喪失控制自由度
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/