在軟體開發的意義論文
在軟體開發的意義論文
對於軟體需求分析及其變更的探討是軟體開發專案的基礎和前提條件,也是軟體開發能否取得成功的關鍵因素之一,提升軟體專案管理中軟體需求分析是我們當前的主要課題。
然而,軟體是計算機技術開發的核心和關鍵,軟體的開發和應用是人們不斷追求的目標,在軟體使用規模不斷擴大、應用領域不斷拓寬的新階段,軟體開發過程中對需求的分析顯得至關重要,需求分析是軟體專案成功與否的關鍵。本文將主要討論需求分析在軟體開發過程中的重要作用以及怎樣做好需求分析。
在當前的軟體開發過程中,軟體需求變得尤為重要,軟體工程中的需求分析是軟體生命週期中最重要、最基本的環節,它不僅影響著整個軟體開發專案的質量,也同時決定著軟體能否成功的應用於生活以及能否給人們的生活帶來相應的便利。
一、需求分析的含義
需求分析是一個對使用者意圖不斷進行揭示和判斷的過程,同時要進一步對經過可行性分析所確定的系統目標和功能進行詳細論述,在此基礎上進一步確定使用者的要求和目的。需求分析的內容大致可以分為兩類,主要包括功能性需求和非功能性需求,功能性需求主要是用於說明系統各功能部件與環境之間相互作用的本質,換言之,就是還沒開發出來的軟體在實際應用中能做到什麼,它是使用者最主要的需求,常常包括系統的輸入以及系統的輸出、系統能完成的功能以及其他反應。非功能性需求主要是從不同的角度對能想到的具有可行性的解決方案的約束和限制作用,例如對時間、儲存、介面的約束等等,非功能性需求也被稱為“約束性需求”。
二、需求分析在軟體開發中的意義
(一)能夠減少不利因素對需求分析的影響
需求分析的第一步是全面熟悉該軟體專案的所有相關人員,明確需求分析方成員和使用者方成員,透過系統分析人員和使用者方成員的交流和溝通,最終確定對目標軟體的綜合要求,同時最終確定如何實現使用者方的需求和軟體最終應達到的水平和標準。
在做需求調查時,首先分析者應該從軟體專案的細節出發,並逐步將軟體的'功能細化,然後再做一份更加詳細的設計方案,不僅要把各種不同的軟體元素分門別類,還要找出各軟體元素之間的關係,預測該軟體專案是否存在不全面性或者存在可能導致使用者不滿意的因素,在做需求調查時,一定要避免不利因素的影響,如果在這其中發現問題,應及時與使用者進行進一步的溝通和交流,從而確定軟體的最終設計方案,同時定義目標系統的詳細邏輯模型。
與此同時,為了更好更全面的進行需求調研分析,還應該主動建立使用者方單位的人事組織、業務關係,並用結構圖畫出該組織結構,在發現問題時應適當調整,進而確保需求分析的高度準確性[1]。
(二)能夠挖掘使用者需求,並對其需求進行分析建模
軟體需求包括三個不同的層次:業務需求、使用者需求和功能需求。有些使用者由於缺乏計算機方面的相關知識,所以沒有辦法提出相對準確的需求,從而導致一些潛在的需求得不到有效地滿足和完善,致使最後的軟體模型不能使使用者完全滿意。基於此種原因,軟體需求分析人員應試圖站在使用者的角度,不但要確定使用者的需求,還要適當的啟發使用者,挖掘使用者的潛在需求,不僅節約時間和成本,還能更加有效的開發出令使用者滿意的高水平軟體。
(三)能夠詳細描述各項需求,並最終與使用者溝通確認
優秀的需求分析應該是準確、完整、可測試、可修改、可跟蹤的,最終達到能夠全面詳細的展現整個系統業務流程的效果,並將最終的流程文件與使用者進行再討論和完善。所以,需求文件在需求分析階段是不可被忽視的一道流程。需求規格說明書貫穿於專案開發的整個過程,能夠提高需求的有效性。需求規格說明書應完整、準確、具體的描述對目標系統功能要求、資料要求、效能要求、使用者系統等。
由於在一個軟體開發專案中各個業務都是一個獨立的功能模組,所以在應用時主要是透過介面來實現各模組之間的相互呼叫。因此,在需求文件中要要充分考慮關於使用者介面和軟體介面的執行需求,當軟體專案中發生問題時,對需求文件中的描述要做到儘量精準,最終和使用者共同確認,再對內容進行調整和篩選[2]。
三.最佳化需求分析的過程
(一)問題識別
問題識別階段主要是對軟體開發的可行性進行分析,並透過報告的形式展現出來。最佳化需求分析要儘量擴大需求範圍,做到在實施過程中更加全面,這些需求主要包括功能性需求、效能需求、執行環境需求、可靠性需求、安全保密性需求、資源使用性需求、軟體開發進度需求等,建立一條完善的資訊通訊途徑,確保需求分析順利進行[3]。
(二)採用新技術最佳化需求分析
在需求分析的過程中,開發人員必須對軟體專案所處的技術環境進行考察和分析,以及專案邊境以外的技術環境也要放在軟體開發的考慮範圍之內,充分發揮科學技術的作用,使其能夠更好的帶動需求分析的發展和更新,所以,軟體開發企業可以積極引進新技術和新裝置最佳化需求分析,同時對分析人員進行定期的專業性培訓,使其能跟得上技術發展的步伐。
(三)完善軟體的附加功能需求
為軟體新增一些附加功能需求能夠確保軟體的平穩高效執行,這些附加功能需求在軟體的功能需求中佔有很大比例,它不僅能夠使軟體更加豐富,還能夠使軟體的功能更加強大。但是由於其實現的難度較大,所需費用也相對較高,常常導致其價值被使用者忽視。因此,應該不斷完善對軟體附加功能的分析,從而更好的為軟體新增合理的附加功能。
四、結束語
需求分析在軟體的開發中佔有不可替代的作用,為了更好的開發軟體,必須要先做好需求分析。