敬維 四川九洲電器集團(tuán)有限責(zé)任公司
計(jì)算機(jī)軟件行業(yè)的飛快發(fā)展,其中所存在的問題愈加明顯的暴露出來,軟件開發(fā)和維護(hù)方法不合理,難以保證系統(tǒng)的穩(wěn)定運(yùn)行。還有很多軟件產(chǎn)品中存在漏洞,主要是由于前期的軟件需求分析不透徹,最終開發(fā)的軟件與實(shí)際需求相背離。故此,為了保證軟件開發(fā)質(zhì)量,應(yīng)該正確看待需求分析在其中的重要性,了解用戶的實(shí)際功能需求,具體問題具體分析,建立邏輯模型,形成需求文檔,提升軟件開發(fā)水平。通過軟件開發(fā)過程中需求分析重要性研究,可以幫助開發(fā)人員綜合考量影響軟件開發(fā)的因素,設(shè)計(jì)更符合社會(huì)發(fā)展需要的軟件。
軟件的開發(fā)經(jīng)歷多個(gè)階段,包括軟件需求分析、軟件設(shè)計(jì)測試、軟件使用和維護(hù)幾個(gè)階段。軟件需求分析作為基礎(chǔ)環(huán)節(jié),直接關(guān)乎到后續(xù)幾個(gè)階段的展開,如果軟件需求分析存在失誤,可能導(dǎo)致項(xiàng)目返工無法順利完成軟件開發(fā)活動(dòng),同預(yù)期效果相距甚遠(yuǎn),甚至帶來不同程度上的經(jīng)濟(jì)損失。軟件開發(fā)初級(jí)階段,通過對(duì)用戶業(yè)務(wù)分析,設(shè)計(jì)用戶所需要的軟件產(chǎn)品,被用戶認(rèn)可。按照業(yè)務(wù)流程將用戶認(rèn)可的軟件開發(fā)成產(chǎn)品,幫助用戶解決業(yè)務(wù)和管理方面的問題。軟件需求分析,并不僅僅是確定系統(tǒng)需要完成哪些工作,有著明確、完整的要求,需要深層次剖析軟件的功能特性,了解用戶的要求[1]。通過需求分析,了解用戶的個(gè)性化需求,最終的需求分析結(jié)果合理有效。軟件產(chǎn)品的開發(fā),通常是結(jié)合市場需求進(jìn)行開發(fā),產(chǎn)品需要具備實(shí)用性和通用性,而實(shí)現(xiàn)這一目標(biāo)需要對(duì)軟件數(shù)據(jù)綜合分析,才可以開發(fā)在市場流通的軟件產(chǎn)品。
軟件需求分析,具體流程主要表現(xiàn)在以下幾個(gè)方面:①問題識(shí)別。軟件需求分析人員在實(shí)際工作中,需要了解到軟件開發(fā)要求和標(biāo)準(zhǔn)。軟件的需求,包括功能需求、可靠性保密需求、用戶界面需求、軟件成本和開發(fā)進(jìn)度需求等。明確軟件開發(fā)質(zhì)量標(biāo)準(zhǔn),選擇合適的軟件開發(fā)模式,對(duì)軟件各方面功能進(jìn)行驗(yàn)收和評(píng)估。②問題分析。對(duì)問題分析,需要關(guān)注軟件開發(fā)細(xì)節(jié),豐富軟件功能,挖掘各個(gè)要素之間的潛在聯(lián)系,實(shí)現(xiàn)各個(gè)元素有效銜接,分析軟件產(chǎn)品是否存在不合理之處,以便于滿足用戶需求,建立邏輯模型[2]。③編輯需求分析文檔。確定需求后,編輯需求文檔內(nèi)容,客觀反映出用戶的軟件要求、說明書和用戶手冊。④需求分析評(píng)審。通過對(duì)軟件需求分析評(píng)審,客觀評(píng)價(jià)文檔完備性、功能的準(zhǔn)確性。
為了保證需求分析合理,選擇合適的需求分析方法十分關(guān)鍵,是否最終開發(fā)的軟件是違背市場發(fā)展規(guī)律的,會(huì)造成不同程度上的資源浪費(fèi)。軟件需求分析方法多樣,包括原型方法、傳統(tǒng)方法和結(jié)構(gòu)化數(shù)據(jù)化系統(tǒng)開發(fā)方法,根據(jù)具體情況針對(duì)性選擇,充分掌握軟件開發(fā)需求。通常情況下,軟件開發(fā)中主要是采用原型法進(jìn)行需求分析,在需求分析結(jié)果基礎(chǔ)上形成完整的軟件需求,并結(jié)合用戶需求動(dòng)態(tài)調(diào)整和變化[3]。軟件開發(fā)工程項(xiàng)目中,分析系統(tǒng)原始模型,了解系統(tǒng)的需求后,設(shè)計(jì)簡單的軟件系統(tǒng),契合用戶的基本需求,設(shè)計(jì)高質(zhì)量的軟件產(chǎn)品。通過此種方式設(shè)計(jì)的軟件產(chǎn)品較為靈活,幫助用戶進(jìn)一步加深需求理解,確定軟件系統(tǒng)功能,提升軟件開發(fā)質(zhì)量。
在軟件開發(fā)中,很容易出現(xiàn)開發(fā)需求變更問題,需要?jiǎng)討B(tài)調(diào)整軟件開發(fā)方向。在這個(gè)過程中,用戶會(huì)不斷提出新的要求,要求開發(fā)者靈活解決。很多需求甚至在軟件開發(fā)后期提出,導(dǎo)致后期節(jié)段的周期需求分析和前期需求分析結(jié)果相背離,而這一問題則是需求變更。需求變更問題的出現(xiàn),主要是由于在需求分析階段,用戶與開發(fā)人員溝通不暢,或是開發(fā)周期過長導(dǎo)致[4]。需求分析變更會(huì)增加軟件開發(fā)周期,帶來不同程度上的經(jīng)濟(jì)損失。為了有效規(guī)避此類問題出現(xiàn),可以組織軟件開發(fā)人員積極參加專業(yè)培訓(xùn),更加深刻的了解用戶需求,設(shè)計(jì)高質(zhì)量的軟件;用戶與開發(fā)人員及時(shí)交流溝通,認(rèn)真聽取用戶提出的新需求,整理和分析,并綜合考量需求變更原因,提出可行方案,同時(shí)告知用戶需求變更可能產(chǎn)生的不良后果;加強(qiáng)需求評(píng)審,反饋用戶提出的意見,了解用戶需求后,多角度驗(yàn)證和改進(jìn),確保最終開發(fā)的軟件符合用戶需求[5]。用戶有著需求最終決定權(quán),最大程度上減少需求變更可能性,提升軟件開發(fā)質(zhì)量,在市場上取得可觀的效益。另外,需要注意的是,軟件需求發(fā)生變化,應(yīng)做好需求文檔記錄,保證文檔記錄中的內(nèi)容準(zhǔn)確、完整,與用戶確認(rèn)后篩選內(nèi)容,開發(fā)高質(zhì)量的軟件。
綜上所述,需求分析是軟件開發(fā)的基礎(chǔ)環(huán)節(jié),決定了軟件開發(fā)方向和最終效果,其重要性不言而喻。軟件開發(fā)中,通過需求分析了解用戶的軟件開發(fā)需求,開發(fā)軟件各項(xiàng)功能,針對(duì)其中的問題及時(shí)改進(jìn),促使軟件各項(xiàng)功能可以自行適應(yīng),避免出現(xiàn)經(jīng)濟(jì)損失。