又雙叒叕,需求分析在軟件開發的重要性!

2018-07-09 16:11:14

對于軟件需求分析及其變更的探討是軟件開發項目的基礎和前提條件,也是軟件開發能否取得成功的關鍵因素之一,提升軟件項目管理中軟件需求分析是我們當前的課題。然而,軟件是計算機技術開發的核心和關鍵軟件的開發和應用使人們不斷追求的目標,在軟件使用規模不斷擴大,應用領域不斷拓寬的新階段,軟件開發過程中對需求的分析至關重要,需求分析是軟件項目成功與否的關鍵。下面我們將主要討論需求分析在軟件開發過程中的重要作用以及怎樣做好需求分析。

在當前的軟件開發過程中,軟件需求變得尤為重要,軟件工程中的需求分析是軟件生命周期中最重要、最基本的環節,它不僅影響著整個軟件開發項目的質量,也同時決定著軟件能否成功的應用與生活以及能否給人們的生活帶來相應的便利。

一、需求分析的含義

需求分析是一個對用戶意圖不斷進行揭示和判斷的過程,同時要進一步對經過可行性分析所確定的系統目標和功能進行詳細論述,在此基礎上進一步確定用戶的要求和目的。需求分析的內容大致可以分為兩類,主要包括功能性需求和非功能性需求,功能性需求主要是用于說明系統各功能部件與環境之間相互作用的本質,換言之,就是還沒開發出來的軟件在實際應用中能做到什么,他是用戶最主要的需求,常常包括系統的輸入以及系統的輸出、系統能完成的功能以及其他反應、非功能性需求主要是從不同的角度對能想到的具有可行性的解決方案 的約束和限制作用,例如對時間、存儲、界面的約束等等,非功能性需求也被稱為“約束性需求”。

二、需求分析的意義

1.全面熟悉該軟件項目的所有相關人員,明確需求分析方成員和用戶成員的交流和溝通,最終確定對目標軟件的綜合要求,同時最終確定如何實現用戶方的需求和軟件最終應達到的水平和標準。

2.能夠挖掘用戶需求,并對其需求進行分析建模,有些用戶由于缺乏計算機方面的相關知識,所以沒有辦法提出相對準確的需求,從而導致一些潛在的需求得不到有效的滿足和完善,只是最后的軟件模型不能使用戶完全滿意,所以軟件需求分析人員應視圖站在用戶的角度,不但要確定用戶的需求,還要適當的啟發用戶。挖掘用戶的潛在需求。

三、優化分析需求的過程

1.問題識別:就是從系統角度來理解軟件,確定對所開發系統的綜合要求,并提出這些需求的實現條件,以及需求應該達到的標準。這些需求包括:功能需求(做什么)、性能需求(要達到什么指標)、環境需求(如機型、操作系統等)、可靠性需求(不發生故障的概率)、安全保密需求、用戶界面需求、資源使用需求(軟件運行是所需的內存、CPU等)、軟件成本消耗與開發進度需求、預先估計以后系統可能達到的目標。 

2.分析與綜合: 逐步細化所有的軟件功能,找出系統各元素間的聯系,接口特性和設計上的限制,分析他們是否滿足需求,剔除不合理部分,增加需要部分。最后綜合成系統的解決方案,給出要開發的系統的詳細邏輯模型(做什么的模型)。 

3.制訂規格說明書: 即編制文檔,描述需求的文檔稱為軟件需求規格說明書。請注意,需求分析階段的成果是需求規格說明書,向下一階段提交。

4. 評審: 對功能的正確性,完整性和清晰性,以及其它需求給予評價。評審通過才可進行下一階段的工作,否則重新進行需求分析。

四、優化需求分析的方法

目前,軟件需求的分析與設計方法較多,一些大同小異,而有的則基本思路相差很大。從開發過程及特點出發,軟件開發一般采用軟件生存周期的開發方法,有時采用開發原型以幫助了解用戶需求。在軟件分析與設計時,自上而下由全局出發全面規劃分析,然后逐步設計實現。 從系統分析出發,可將需求分析方法大致分為功能分解方法、結構化分析方法、信息建模法和面向對象的分析方法。 

(1)功能分解方法 

將新系統作為多功能模塊的組合。各功能義可分解為若干子功能及接口,子功能再繼續分解。便可得到系統的雛形,即功能分解——功能、子功能、功能接口。

(2)結構化分析方法

結構化分析方法是一種從問題空間到某種表示的映射方法,是結構化方法中重要且被普遍接受的表示系統,由數據流圖和數據詞典構成并表示。此分析法又稱為數據流法。其基本策略是跟蹤數據流,即研究問題域中數據流動方式及在各個環節上所進行的處理,從而發現數據流和加工。結構化分析可定義為數據流、數據處理或加工、數據存儲、端點、處理說明和數據字典。

 

 

日韩精品无码一区二区小说_日韩a片r级无码中文_日韩在线中文字幕有码中文