比如在為客戶設計辦公自動化系統的時候,也許就要為客戶預留將來與他們的業務單位進行交互的通道;在設計郵件系統的時候要考慮可能會需要廣告管理服務器;設計網絡電子商店時需考慮今后增加庫存產品進銷存統計分析等等;限于時間和財力的考慮,客戶通常能夠接受分階段實施的開發過程,在需求分析時,提早為客戶設想到今后的需求變更除了使項目開發更加順利以外,也為今后業務的進一步深入打下了更好的基礎。
4.2 利用自然的語言和圖表描述項目模型
在業務員與客戶進行溝通和調查時撰寫的需求分析,盡可能用自然語言或形式化語言來描述,還可以添加圖形表述方式和模型表征方式。雖然客戶的水平和資歷有所不同,但是最自然的描述能夠使項目開發的各個成員都能清楚地理解需求含義,不至于在理解上產生偏差。對客戶而言,這樣的模型描述最接近真實,容易參與修訂,并能以此為測試和驗收的依據。制作示意圖可以有很多種方式,關鍵是利用示意圖將客戶的需求和即將開始設計的系統體現出來。在進行系統分析和程序開發之前,雙方對今后要完成的產品就能夠有直觀的認識,換言之,就是在產品還沒有真正進入開發階段的時候,雙方就對工作的結果達成統一的意見,這將大大地減輕需求變更所帶來的困擾,同時客戶更容易地參與到項目的開發過程中。
4.3 需求分析要共同參與各施其職
項目經理、系統分析員、開發經理、交互設計師、測試人員、文檔人員包括客戶代表都應該看需求分析,并進行共同討論,達成一致意見。參與項目開發的人員都應該對這份需求有統一清晰的認識,并根據自己的工作對需求提出意見,通過與客戶的溝通修訂,最終確定項目實現的目標。這樣可以盡量避免業務人員與開發人員、承建方和客戶方之間發生不必要的糾紛。
例如:項目經理通過需求分析才能組建所需要的團隊包括配置工作環境,制定開發周期;開發周期的限制和功能上的要求可能會影響到程序員采用什么樣的語言和工具進行編寫;操作用戶的技能水平將影響到交互設計師進行前臺設計時做到什么樣的精度;界面設計人員根據項目的性質和定位確定表現方式;測試人員了解測試環境和條件后才能對項目質量進行跟蹤和檢測。
4.4 將需求變更置于可控狀態
需求的變更幾乎是不可避免的,也許是出自客戶的遺漏,也可能是在開發過程中被激發出來的。如何以可控的方式管理網站項目需求的變更,對于項目的順利進行有著重要的意義。如果匆匆忙忙地完成用戶調研與分析,則往往意味著不穩定的需求。所以需求管理要保證需求分析各個活動都得到了充分的執行。
為了將變更及時反饋到項目的各個角色中,做好需求變更日志就顯得非常重要。在需求分析后面附上變更日志,并將修改后的需求分析制作成新版本,保留每次更改過的版本,而不是覆蓋,這樣就比較容易地跟蹤到需求變更過程中所帶來的工作調整。在新版本的需求分析中,將變更部分用特殊方式表示出來,并在日志中記錄變更明細。
4.5 評審需求文檔
需求文檔完成后,需要經過正式評審,以便作為下一階段工作的基礎。一般的評審分為用戶評審和同行評審兩類。用戶和開發方對于軟件項目內容的描述,是以需求規格說明書作為基礎的;用戶驗收的標準則是依據需求規格說明書中的內容來制訂,所以評審需求文檔時用戶的意見是第一位的。而同行評審的目的,是在軟件項目初期發現那些潛在的缺陷或錯誤,避免這些錯誤和缺陷遺漏到項目的后續階段。
5 總結
隨著互聯網的飛速發展,Web技術應用日益廣泛,網站的規模和復雜性不斷增加,網站項目的設計和開發進入了需要強調流程和分工的時代,軟件工程方法將越來越多地介入到網站項目的設計和開發中。建立規范的、有效的、健壯的開發機制,特別是打好網站項目管理的基石,強化項目的需求分析,將有利于高效、高速、高質量地完成開發任務。
文章來源于領測軟件測試網 http://www.kjueaiud.com/