有助于找到不正確的、不一致的、遺漏的和冗余的需求。這樣的模型包括數(shù)據(jù)流圖、實體關系圖、狀態(tài)變換圖、對話框圖、對象類及交互作用圖。
需求整理并形成需求規(guī)格說明書
需求規(guī)格說明書的模板我想每家公司都是不一樣的,也沒有必要都一樣,但我認為每個需求規(guī)格說明書至少應包括,軟件需求一旦通過了評審,就應該基線化,納入配置管理庫.而在配置管理庫中的文檔或代碼不能再輕易進行修改.當有需求要進行變更的時候,就必須提出申請,寫需求變更計劃,審核通過,才有權限進行需求變更.然后配置管理員一定要做好需求的跟蹤,凡是跟變更需求有牽連的開發(fā)人員和測試人員都要同步的通知到和及時讓他們做好相應部分的各類文檔的修改。
需求變更管理
需求的變更管理我個人認為是最容易出問題,一般項目做不完也主要是由此產(chǎn)生。需求變更的出現(xiàn)主要是因為在項目的需求確定階段,用戶往往不能確切地定義自己需要什么。用戶常常以為自己清楚,但實際上他們提出的需求只是依據(jù)當前的工作所需,而采用的新設備、新技術通常會改變他們的工作方式;或者要開發(fā)的系統(tǒng)對用戶來說也是個未知數(shù),他們以前沒有過相關的使用經(jīng)驗。隨著開發(fā)工作的不斷進展,系統(tǒng)開始展現(xiàn)功能的雛形,用戶對系統(tǒng)的了解也逐步深入。于是,他們可能會想到各種新的功能和特色,或?qū)σ郧疤岢龅囊筮M行改動。
他們了解得越多,新的要求也就越多,需求變更因此不可避免地一次又一次出現(xiàn)。如何有效的管理需求變更,下面是我公司目前的做法。公司采用Test Director作為需求管理工具,需求人員每次與客戶溝通后形成需求調(diào)查表,統(tǒng)一錄入Test Director,并進行綜合及整理后形成需求規(guī)格說明書, 之后由研發(fā)部、產(chǎn)品部、及銷售代表(如果有客戶參加就更好了)進行需求評審,建立需求基線。制訂簡單、有效的變更控制流程,并形成文檔。在建立了需求基線后提出的所有變更都必須遵循變更控制流程進行控制,同時每一筆重要的需求變更都需要客戶簽字確認才認為需求變更生效。需求變更后,受影響的軟件計劃、產(chǎn)品、活動都要進行相應的變更,以保持和更新的需求一致。因為Test Director提供了需求變更記錄,可以幫助我們形成良好的文檔,便于進行管理。
和客戶交談
你要面對“正確”的客戶區(qū)分不同層次的客戶需求,要面對不同層級,不同部門的客戶,把客戶分類,區(qū)分需求的優(yōu)先級別.如果你做的項目業(yè)務是你熟悉的,那還好,如果是你不熟悉的,一定要花點精力學習一下這個行業(yè)業(yè)務的背景資料,這也是我上面談到的先請行業(yè)專家的原因。畢竟,客戶是不可能給你系統(tǒng)地介紹業(yè)務的。只有你通曉了行業(yè)業(yè)務,才能和用戶交流,并正確而有效地引導客戶,做好需求分析,你不能指望客戶能明確地說出需求。當然,這也是系統(tǒng)分析人員的職責所在。在開始做需求的時候,你最后花一點時間搞清楚你接觸的客戶是不是做實際業(yè)務的客戶,如果你面對的客戶不是將來的系統(tǒng)的實際使用者。你就有點麻煩了。
可能他是客戶公司派過來的IT部的人,他會提一大堆東西,而這些東西可能根本不是實際業(yè)務需要的功能,而他一般還會興致勃勃地給你一些技術實現(xiàn)的建議。這個時候你就要小心了,如果你聽了他的話,你可能在最后才發(fā)現(xiàn),你花了大量精力解決的問題,其實并不是客戶真正需要的。而你真正需要關注的,卻做得遠遠不夠。