王欣欣
【摘要】 軟件開發成敗的關鍵主要取決于軟件需求的解決和目標條件的達成。本文在對軟件需求變更原因及影響分析的基礎之上,著重研究了對需求變更的具體處理方案,通過對軟件需求變更行之有效的管理,在為后續的軟件開發工作帶來便利的同時,從而進一步提升軟件的開發效率。
【關鍵詞】 需求開發 需求變更 需求分析
隨著計算機的不斷發展,軟件開發工程應運而生。影響軟件開發的效率因素多種多樣,主要包括需求調研過程中理解產生的歧義、需求編寫的不完整性、需求表達的二義性、以及需求的頻繁變更等都將會影響到軟件開發的最終結果。隨著軟件開發規模的逐漸擴大,軟件需求分析與管理成為整體軟件開發的關鍵環節,直接決定著軟件開發的成敗。在軟件的開發過程中,只有設定清晰完善的需求開發與管理方案,才有助于軟件設計、開發人員正確理解和確定軟件的完整功能,從而達到客戶需求的滿意度。
本文將以軟件需求工程為側重點、從軟件需求變更的原因、影響、原則及管理方案為研究領域進行分析和討論。
一、軟件需求變更的主要原因分析
1、客戶需求因素。在軟件的開發過程中,客戶會隨著項目開發的進程逐漸達成對軟件系統的深入了解和認識,在不斷的思考過后形成了新的需求信息或改進的需求信息,進而會提出滿足其新需要的軟件變更條款。2、系統內部因素。在軟件開發過程中,計算機外部硬件設備、系統軟件、系統數據等內部系統之間的相互適應要求都會引起軟件需求的變更。這種需求變更將會以硬件設備、操作系統、系統軟件等原始系統因素為基礎進行更新、升級、換代,以此確定軟件設計的安全性、兼容性和準確性。3、業務環境因素。在軟件開發過程中,與軟件開發相關聯的制度、規范、政策等的重新改寫與設定,或是軟件開發業務要求的不斷改變都將會引起軟件需求變更。例如,軟件的需求會隨著保險制度的變化而變更,會隨著交通制度的變化而變更等等。4、需求開發缺陷因素。在軟件需求開發過程中,需求信息調查研究、需求文檔的編寫及評審等工作的不足都是影響軟件需求變更的主要原因。
二、軟件需求變更的主要影響分析
1、影響軟件開發的實際進度。頻繁的需求變更不僅需要大量項目人員的支持,還需要投入大量的經費,如果投入的力度過大,將會導致軟件開發項目超過預期甚至導致失敗。
2、影響軟件開發質量的優良。在軟件開發過程中,需求的不斷變更將會導致原有的需求鏈斷裂,對原定需求的部分環節造成影響,而這些影響又將導致軟件開發項目設計的改變,最終導致系統質量的下降,開發效率的降低。
3、影響客戶與開發者之間的相互合作。軟件開發是客戶與開發者之間的一種相互信任、相互合作的過程。如果二者之間在軟件需求變更上產生不同意見,而且沒有得到妥善的處理,將會導致二者之間的合作關系破裂,甚至造成軟件開發中斷等嚴重后果。
三、軟件需求變更的處理原則
1、完整性原則。完整性是軟件安全的基本要點。在軟件開發過程中,要保證需求變更信息的采納收集、匯總整理、評判審核、監視追蹤等環節的完整性,保證軟件需求變更能夠按照規范的流程進行操作。
2、合理性原則。在軟件開發過程中,客戶與需求分析人員將會以不同的視角、不同的態度評估需求變更條件,要想達成軟件開發的精確性,就需要在用戶需求、軟件技術和整體開發能力的基礎上,達成需求變更的合理性,實際性。
四、軟件需求變更的有效管理方案
1、達成開發者與客戶之間的有效溝通。在發生軟件需求變更時,需求分析人員要與客戶進行及時有效的溝通和反復的確認,向客戶說明開發建議和解決方案并制定相應的合同規范,以此來達成對客戶的承諾和軟件修改后的滿意度。2、制定軟件需求變更信息的整理報告。在軟件需求變更過程中,要對客戶需求的規范、變更后的功能、軟件質量目標、變更解決方案等信息進行整理、分析和記錄,制定明確的需求分析整理報告,以此來確保需求變更的準確性、實際性與科學性。3、進行明確、合理的人員分工。在需求變更達成協議后,就需要對開發人員進行合理的安排和組織,對操作人員和測試人員進行明確的分工;利用合理的需求變更管理工具,達成整體軟件項目開發的高效和優質。4、做好需求和產品特性的評審和測試工作。做好需求變更相關信息的記錄后,需求分析人員要組織開發、測試與客戶等相關人員對更改后的需求進行評審和測試,篩出掉不符合實際的變更需求,確保需求變更流程的順利進行。在軟件變更實施的最后階段,要對軟件產品系統進行測試,以檢驗其是否滿足客戶的原定需求、是否達到了預期的效果和期望,以保證更改后產品系統的基準性和安全性。
總之,在出現軟件需求變更狀況時,首要的就是與客戶做好溝通和協商,其次要做好需求變更信息的詳細記錄,最后做好軟件需求變更后的測試。只要做好這關鍵的三部,就能夠充分確保軟件開發的規范化和優質化。
參 考 文 獻
[1]李厚明.軟件項目需求變更風險管理[D].山東大學2012
[2]季貫中.軟件開發中的需求分析及變更[D].復旦大學2011