項目需求是為了確保項目成功或竣工而必須完成的條件或任務。項目需求清楚地表明需要完成的工作,目的是將項目資源與企業目標結合起來。因為項目需求為產品的愿景、范圍、成本和進度奠定了基礎,最終瞄準的必須是成品的質量和性能。每個利害關系人將會理解需求,并對最終產品抱有切實的期待。所以,項目需求管理很重要。
編寫需求的方法有很多:從傳統的需求文檔到更敏捷的方法,比如用戶故事、測試驅動開發(TDD)和驗收測試驅動開發(ATDD)等。這些方法都受益于可測試需求原則的遵循。

用戶故事
用戶故事是作為目標而編寫的需求,使用的語言避開了專業術語,并對最終用戶有意義。用戶故事簡短,通常采用以下格式:作為[用戶角色],我希望/需要[功能],這樣[目標]。例如:“作為尋找產品的客戶,我希望在兩者間做出選擇,在列表中還是在網格中查看可用產品的列表,這樣我就能對可用產品進行比較。”
顧名思義,將需求寫成用戶故事會將重點放在用戶或客戶上。就本身而言,以用戶故事形式撰寫的需求沒有足夠的信息可供測試。用戶故事應包含驗收準則,這樣團隊就能知道用戶故事何時“完成”。
測試驅動開發(TDD)
在TDD中,需求被寫為單元測試。單元測試在編碼之前執行,往往容易失敗,因為單元測試所描述的代碼還不存在。然后,為了讓測試用例通過,代碼被編寫或重構,測試再次執行,確保測試用例通過,隨后進行必要的重構。
這種方法有時被稱為開發者測試,這不僅是因為該測試由開發人員執行,而且還因為在開發周期中測試所發生的位置。不過,測試人員在TDD中能夠發揮重要作用。測試人員可以與開發者一同創建更好的單元測試,應用邊界值分析、等價類劃分和風險分析等技術,幫助確保進行必要的集成和工作流程測試。TDD測試規范應是應用程序文檔的重要組成部分。
驗收測試驅動開發(ATDD)
在ATDD中,用戶故事及其隨附的驗收準則成為測試,用于向客戶展示應用程序按預期工作。驗收測試通常由三人團隊協作編寫,包括用戶代表、開發者和測試人員。為確保團隊中每個人都能理解,這些測試用“業務領域”術語而非技術術語編寫。
ATDD中的工作流程類似于TDD:首先,編寫用戶故事,然后進行驗收測試。隨后,實現用戶故事,然后團隊重復驗收測試,確定測試用例通過。最后,完成所需的重構。對于一個團隊而言,同時實踐TDD和ATDD是有可能的。
項目需求管理工具
8Manage PM項目管理工具內置需求跟蹤和變更控制功能。在整個開發周期中,該功能能夠使項目團隊輕松跟蹤需求,確保萬無一失。此功能還使所有利害關系人了解變更影響,共同努力,實現項目所需變更和可預測性的適當平衡。
以上就是確保需求可測試的策略,但最重要的策略是,確保在需求定義過程的早期包含測試人員和用戶代表。盡管可測試需求使自動化測試變得更加容易,但核心目標是確保整個團隊對需求有清晰的理解。http://www.8manage.cn/






