眾所周知,軟體並不是憑空產生的,有了需求,才會催生出相應的軟體產品!所有生產軟體的專案組才會如此的重視軟體的需求管理過程,這乙個過程叫做需求工程。
一、了解軟體需求工程的過程
需求工程流程圖
srs(軟體需求規格說明書):軟體需求說明書的編制是為了使使用者和軟體開發者雙方對該軟體的初始規定有乙個共同的理解, 使之成為整個開發工作的基礎。包含硬體、功能、效能、輸入輸出、介面需求、警示資訊、保密安全、資料與資料庫、文件和法規的要求等等。
可行性分析過程
需求匯出和分析過程
這之中的需求檢查過程尤為重要,需求檢查的內容如下
1. 有效性檢查
根據不同的使用者需要確定不同的功能,所以要在不同使用者中協商系統功能,保證功能的有效性。
2. 一致性 檢查
在文件中不應該有衝突,即同乙個功能在同一系統中不能有不同描述或相互
矛盾的約束。
3. 完備性 檢查
需求文件中應該包含所有使用者所需要的功能和約束。
4. 現實性檢查 :
對已有技術的了解,檢查需求以保證能利用現有技術實現。
5. 可檢驗性檢查:
為了避免減少客戶和開發商的爭議,開發的系統應該可以設計一些可以檢驗交付的系統是否滿足需求。
需求管理
①獲得對需求的理解。在初步整理需求的基礎上,專案小組和使用者代表通過初步的分析討論,對當前
專案的需求達成共識,並在需求列表中作相應記錄。
②獲取需求承諾。通過專案參與者的書面承諾,建立各方或各項工作的基準。
③管理需求變更。維護變更歷史,為調整與控制提供資料。
④在需求變更後維護對需求的雙向可追溯性。從軟體可維護性的角度提出管理要求。
⑤標識專案工作(包括計畫和產品)與需求的不一致性。若發現不一致性,即啟動糾正措施。
二、需求評審會議
開需求評審的目的是為了更快捷高效的討論並解決軟體需求的相關問題,便於後期的軟體開發工作。
參與會議的人員如下圖
參與人員並不是固定的,根據公司具體要求配置(通常都包含需求、開發、測試人員)
需求評審會議的流程
三、測試需求分析---測試人員的工作
軟體產品的質量模型:一組特性及特性之間的關係,它提供規定質量需求和評價軟體產品質量的基礎。
測試需求分析:了解軟體質量特性,測試工程師需進行需求分析定義測試範圍,明確測試項和測試子項,以便後續設計測試用例
測試需求分析的過程:
1.根據需求規格提取獨立的功能點,確定測試範圍;
2.對獨立功能進行分析,確定各獨立功能的測試點;
3.對業務場景即功能組合進行分析,提供業務場景的測試點;
4.對非功能特性進行分析,了解需要測試的非功能特性;
5.針對系統級介面進行分析,了解被測試物件、測試規格。
分析可測性,確定測試方法、工具。
測試需求分析的方法:
三步法:呼叫原始測試需求分析-->編寫測試項---->編寫測試子項
測試項、測試子項的概念:
測試項:作為測試物件的工作版本。
測試子項:是對測試項的細分。
舉例四、需求跟蹤矩陣(rtm)
定義:是一種主要管理需求變更和驗證需求是否得到了實現的有效工具,可以跟蹤每個需求的狀態。
作用:(1) 在需求變更、設計變更、**變更、測試用例變更時,需求跟蹤矩陣是目前經過實踐檢驗的進行變更波及範圍影響分析的最有效的工具,如果不借助rtm,則發生上述變更時,往往會遺漏某些連鎖變化。
(2) rtm也是驗證需求是否得到了實現的有效工具,借助rtm,可以跟蹤每個需求的狀態:是否設計了,是否實現了,是否測試了。
需求管理系列之二 軟體需求分析關注什麼?
需求開發沒有做好會出現什麼後果?需求問題的代價?需求分析如何做?為什麼要做?首先來看下需求問題產生的代價模型 一 需求問題的代價 通過圖形可以看出,在需求階段消除問題的代價最小,而如果需求問題等到產品發布出去後才發現的話,那修復的成本就會 n倍的增加。不合格的需求分析 1 沒有足夠的使用者參與 2 ...
軟體專案管理之五 產品需求
今天我們從管理面來談一談產品需求,主要談如何抓準和控制需求,這裡並不會談到處理產品需求的一些細節及挖掘需求的具體方法。做產品需求首先要理解客戶需要解決的問題,這是分析產品需求的核心價值所在。一些程式設計師出身的產品經理由於程式設計師的潛在特質,在和客戶談需求時無形中會思考客戶問題的解決方案,這種處理...
軟體專案的需求變更管理
一 做好需求工程 需求分析是軟體工程專案最重要 最基礎的起始階段,為後續的規劃設計階段提供參照依據。在軟體研發專案過程中一定要樹立需求工程的意識,將需求視為一項系統工程。為了能夠全面做好需求管理,應根據專案實際情況嚴格劃分專案階段,清晰界定 定義專案階段的基線,在每個專案階段制訂 執行階段性需求管理...