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