溫林芝
摘要:現階段軟件企業在實際落實項目開發相關工作的過程中往往存在一定程度的風險,而為了使所開發的軟件能夠充分發揮應用價值,并且實現順利盈利,在充分考慮軟件自身生命周期的基礎之上,在軟件開發的過程中,落實動態風險管理的相關工作就顯得十分有必要。本次研究工作的開展過程中,文章就以軟件的不同生命周期為基礎,探討了需求分析階段、軟件設計階段、軟件編碼階段、軟件集成和測試階段潛在的風險,并針對上述風險提出了相應的解決策略,希望能夠帶給廣大研究者一些有益的幫助和啟發。
關鍵詞:生命周期;軟件開發;動態風險;管理
中圖分類號:TP311? ? ? 文獻標識碼:A
文章編號:1009-3044(2021)23-0078-02
軟件開發本身是一項具有較強系統性以及復雜性的工作,軟件開發工作能否順利展開,往往會受到多方面因素的影響。從實際工作的角度來講,軟件開發工作的過程也伴隨著一定的風險,軟件開發工作的開展過程中經常會遇到各種各樣的問題,甚至在一些問題無法得到有效解決的情況下還會導致軟件開發失敗。針對上述情況,在軟件開發工作的開展過程中對潛在的相關風險進行動態管理就顯得十分有必要,由于在軟件開發的不同階段開發者所面臨的開發風險也存在著較大的差異。文章就從軟件開發的生命周期出發,探討了軟件開發過程中常見的風險以及具體的解決策略,下文將具體報告研究結果。
1 軟件的不同生命周期階段潛在的風險
1.1 需求分析階段潛在的風險
軟件開發工作的落實過程中,在需求分析階段開發人員面臨的一個最常見的風險就是軟件開發錯誤,當用戶需求較多的時候,導致軟件開發工作很難按時完成或是難以完成軟件測試的相關工作等。從軟件開發的需求分析階段的特點來講,針對需求分析報告的數據,不僅要保證文字的描述具有較高的清晰度、保證需求的分析具有較高的完整性,同時還需要保證分析的結果更容易理解。各項工作的開展主要目的在于為后期軟件開發工作的全面展開提供必要的支持,使軟件開發工作的開展能夠體現較強的可追溯性。
首先,從文字描述的清晰度來看,分析員在實際落實需求分析相關工作的過程中,往往難以完全通過技術語言來表達客戶的需求,進而導致所形成的分析報告出現語言描述不規范、不準確等一系列的問題,為后續軟件設計工作的開展帶來一定的難度,導致軟件設計質量下降,不利于軟件項目的整體推動,使得所開發出的軟件無法全面滿足客戶的實際需要。
其次,從需求分析完整性的角度來講,在實際形成需求分析報告的過程中,分析人員要能夠在報告中詳細的反映客戶的需求,并將客戶的需求進行分解,在軟件設計的每一個環節進行體現,否則,也會在一定程度上導致軟件開發人員在進行軟件開發的過程中由于缺乏對于細節問題的關注,導致無法按計劃完成軟件開發的相關任務。
最后,從需求分析理解難度的角度來講,由于人與人之間在理解能力方面普遍存在著較大的差異,個別情況下,需求分析報告的閱讀者出于自身因素或是外部客觀因素無法對于需求分析報告中的一些語句實現較好的理解,導致誤解報告中的一些內容,進而給后續工作的開展帶來了一定的難度。
除此之外,由于軟件的開發周期相對較長,客戶在此過程中需求也可能會發生變化,進而增加軟件設計工作的開展風險。
1.2 軟件設計階段潛在的風險
軟件設計階段的工作目標主要是連接軟件需求分析階段的工作和后期編碼階段的工作。軟件設計工作的開展不僅要能夠保證完整性和具有較強的結構性,同時,設計文字還需要具有較高的清晰度。而在這一部分工作的開展過程中也伴隨著一定程度的風險,常見的風險主要包括軟件設計錯誤、對設計報告理解錯誤、模塊結構錯誤,致使下一階段的工作無法實現順利完成。
無論是軟件的設計階段,還是軟件的需求分析階段,在實際進行軟件開發的過程中均將其劃歸為基礎階段的范疇。然而,由于這一階段的工作要能夠將客戶的需求轉化成專用的技術語言,因此,這一階段的工作開展質量也會影響到后續軟件編碼工作以及軟件集成和測試相關工作的開展,且相比于軟件需求分析相關階段的工作來說,這一階段工作的開展有著更高的復雜度,面臨的風險也更多。
軟件設計報告的主要目的在于為后續編碼人員的工作提供指導,方便后續測試人員對軟件功能情況進行分析。但是,由于軟件設計者在分析客戶需求的過程中需要進行通俗語言向技術語言的轉化,這就會在一定程度上影響技術分析的明確度以及完整度,進而增加了設計報告的理解難度,影響使用者的正常使用。
軟件設計結構會直接影響軟件測試、軟件編碼相關工作的開展,對于軟件的功能能否得到正常實現會產生直接的影響。在軟件設計完整度無法得到保證的情況之下,軟件功能就會發生遺漏,進而影響到軟件自身的可擴展性,嚴重者還會導致開發返工,增加軟件開發的成本。
1.3 軟件編碼階段潛在的風險
從軟件編碼階段的工作來講,相關工作能否順利展開主要受到以下幾方面因素的影響,即軟件自身的模塊結構、維護軟件代碼的難度兩個方面,在這兩個方面所面臨的風險主要包括錯誤的代碼無法得到有效修正、模塊結構設計發生錯誤。
這一階段的工作是在軟件設計工作結束之后開始,首先從模塊結構的角度來講,其所面臨的風險主要是在實際針對軟件項目進行詳細設計以及概要設計之后,在編碼階段工作的開展過程中,編碼人員的工作還會受到軟件結構問題的影響,若軟件設計階段存在編碼誤差或是設計誤差,則會導致軟件結構的搭建錯誤、程序代碼修正困難兩方面的問題。其次,從軟件代碼修正的角度來講,若代碼維護難度較高的情況之下,后續進行代碼維護的過程中往往也需要付出較多的成本,給用戶后續的軟件使用帶來一定的麻煩。
1.4 軟件集成和測試階段潛在的風險
軟件集成和測試相關工作的開展過程中,工作目標能否得以有效達成,主要的影響因素就是軟件的可靠性以及軟件的正確性。因此,在這一階段工作的開展過程中,最常見的問題主要包括由于軟件測試人員對錯誤進行了低估,進而導致軟件的功能無法得以正常實現。從測試正確性的角度來講,軟件測試人員缺乏足夠的修正錯誤的能力以及識別錯誤的能力。從測試可靠性的角度來講,主要風險在于軟件集成和測試人員針對軟件正常操作過程中存在的錯誤無法實現及時發現。從測試時間的角度來講,主要風險在于由于無法及時完成軟件測試以及軟件集成的相關的工作,進而增加了軟件開發的成本。