前言:想要寫出一篇引人入勝的文章?我們特意為您整理了面向?qū)ο蟮能浖こ绦枨蠓治龇椒ǚ段?,希望能給你帶來靈感和參考,敬請閱讀。
面向?qū)ο蟮?/a>軟件工程中,軟件需求的任務(wù)在于確定系統(tǒng)完成工作的方式,然而這種理解方式存在一定的不完整性,在此提出,軟件需求的任務(wù)是確定系統(tǒng)完成工作的內(nèi)容,其中包括對目標(biāo)系統(tǒng)的完整性、準(zhǔn)確性和具體性;軟件需求的工作是探析軟件的功能和使用方式,從而得出軟件的設(shè)計(jì)意圖和軟件與其他程序之間接口的方式和結(jié)論,并且為軟件的其他有效性的要去進(jìn)行定義.
關(guān)鍵詞:面向?qū)ο?軟件工程;軟件需求分析
本文主要闡述軟件需求分析在關(guān)鍵工程中的必要性,并描述了面向?qū)ο蟮能浖こ讨熊浖枨蠓治龅娜蝿?wù)、過程和方法。
1軟件工程
軟件工程涉及程序涉及語言、數(shù)據(jù)庫、開發(fā)工具、以及設(shè)計(jì)模式等等,是研究并維護(hù)軟件的一門學(xué)科。在目前的社會中,軟件在各個方面都被廣泛的應(yīng)用,如辦公套件、操作系統(tǒng)以及游戲。其中計(jì)算機(jī)軟件的應(yīng)用在銀行、工農(nóng)業(yè)、政府、企業(yè)中的應(yīng)用更為廣泛,有了這種軟件工程的加入,讓人們的生活和工作的質(zhì)量更高,同時也加強(qiáng)了工作效率,推動社會經(jīng)濟(jì)的發(fā)展。開發(fā)軟件的職業(yè)是軟件工程師,也能夠根據(jù)所負(fù)責(zé)的工作不同進(jìn)行劃分為系統(tǒng)分析員、軟件設(shè)計(jì)師、系統(tǒng)架構(gòu)師和程序員等。軟件工程在學(xué)界中并沒有專一的概念,比較被大部分人認(rèn)可的定義為:軟件工程是針對軟件出現(xiàn)的各種問題而出現(xiàn)的一門學(xué)科,同時也是對軟件進(jìn)行一系列研究的方法。軟件工程的目標(biāo)在于研發(fā)質(zhì)量較高的軟件產(chǎn)品,使軟件在功能、可靠、使用、效率、維護(hù)、移植等方面都具有良好的標(biāo)準(zhǔn)。軟件工程的表現(xiàn)為以下幾點(diǎn):首先,軟件并不是指實(shí)際產(chǎn)品,它是指邏輯上存在的產(chǎn)品,費(fèi)用的使用也主要是在研制過程中,軟件的問題并不存在像實(shí)物中一些用壞或者損壞情況,而是存在過時問題;其次,軟件的功能體現(xiàn)是靠用戶的使用和軟硬件的運(yùn)行狀態(tài),而且其功能的復(fù)雜性也高于一般產(chǎn)品;最后,軟件設(shè)計(jì)在功能和實(shí)現(xiàn)上有很大的多樣性,提升軟件的質(zhì)量和開發(fā)效率就是推動軟件工程發(fā)展的關(guān)鍵。
2軟件需求分析具體過程
軟件需求分析的過程主要有四個階段,分別為確定軟件需求目標(biāo)、進(jìn)行分析并整合、規(guī)格的相關(guān)說明規(guī)定、以及最終評審。確定軟件需求目標(biāo)在涵義上是指系統(tǒng)分析師和程序開發(fā)工程師在進(jìn)行工作中,找出目標(biāo)軟件工程所需的要求,從而講述出能夠達(dá)到要求所需要的條件。一般來說,這些要求主要體現(xiàn)在功能、性能、環(huán)境、可靠性、安全性以及用戶界面、資源使用、軟件成本消耗與開發(fā)進(jìn)度等。(1)功能是指將軟件的功能開發(fā);(2)性能則在于軟件技術(shù)性能標(biāo)準(zhǔn);(3)環(huán)境是指如硬件和軟件方面在軟件系統(tǒng)運(yùn)行時的要求,另外還包括對使用此軟件的工作人員的技術(shù)要求;(4)可靠性是通過軟件在開發(fā)過程中對實(shí)際環(huán)境的要求,并滿足在進(jìn)行需求分析時顯露出所有存在的問題,估計(jì)運(yùn)行后會產(chǎn)生的后果,提出更高的可靠性;(5)安全性是指安全保密,在進(jìn)行開發(fā)時特別針對安全性能嚴(yán)格要求,保證在日后的使用過程中能夠擁有強(qiáng)大的安全性能;(6)用戶界面要根據(jù)客戶的要求進(jìn)行需求分析;(7)資源使用是要保證用戶能夠接受在軟件的使用中的資源需求;(8)大致提出軟件開發(fā)所需要的時間和各個階段的費(fèi)用,合理控制成本消耗和進(jìn)度。另外,分析系統(tǒng)的功能,檢測在開發(fā)之后的性能,有利于及時對系統(tǒng)做出改正。在這些問題得出相應(yīng)的分析結(jié)果之后,要將結(jié)果與軟件開發(fā)工程師進(jìn)行核對,并且得到認(rèn)可。
3面向?qū)ο蟮能浖こ讨熊浖枨蠓治龅姆椒?/p>
有關(guān)分析軟件需求的方法有很多,但是在一定程度上也存在很大的相似性,主要體現(xiàn)在支持?jǐn)?shù)據(jù)域分析機(jī)制方面和功能表示方面。對于數(shù)據(jù)域分析機(jī)制方面來說,所有的方法中都包含數(shù)據(jù)流、數(shù)據(jù)特征以及數(shù)據(jù)結(jié)構(gòu),在一般情況下,數(shù)據(jù)流特征所描述的變換過程是將輸入轉(zhuǎn)化為輸出;數(shù)據(jù)內(nèi)容的表示方法則為數(shù)據(jù)字典機(jī)制。對于功能表示方面來說,一般的表示方法是將數(shù)據(jù)進(jìn)行加工或者變換。另外,接口定義和問題分解機(jī)制與抽象支持、邏輯視圖、物理視圖中也有相似機(jī)制的存在。對于快速原型方法的分析主要如下:傳統(tǒng)軟件工程方法與快速原型方法的區(qū)別在于,傳統(tǒng)方法中的開發(fā)為分階段開發(fā),并且在開發(fā)每個階段之前都需要對項(xiàng)目進(jìn)行研究,并從中獲取嚴(yán)謹(jǐn)?shù)亩x,然而,實(shí)際上,只是依靠簡單的分析和研究并不能建設(shè)一套完整的應(yīng)用,在另一方面來說,提前對軟件系統(tǒng)進(jìn)行定義,若是無法滿足用戶的需求則會在很大程度上降低軟件的使用效率和開發(fā)價(jià)值。因此,快速原型方法能夠很好的解決這一問題,并且在當(dāng)前軟件開發(fā)過程中應(yīng)用十分廣泛??焖僭头椒軌蛟诹私廛浖_發(fā)需求的前提下,以極快的速度制造出大概結(jié)構(gòu)的過程,雖然不一定能夠符合實(shí)際使用過程中的需求,但是卻能夠?qū)㈤_發(fā)軟件的系統(tǒng)及時的展現(xiàn)出來,同時也能夠根據(jù)軟件的模型來進(jìn)行更為準(zhǔn)確的開發(fā)。使用快速原型方法,若是用戶對軟件開發(fā)過程中有不滿意的情況,也能夠及時的對原型進(jìn)行改進(jìn),從而獲取新的目標(biāo)系統(tǒng),沒有重新進(jìn)行開發(fā)的必要;快速原型建造工具也能夠在很大程度上縮短創(chuàng)建系統(tǒng)的時間,使得系統(tǒng)原型在很短時間內(nèi)就能創(chuàng)建成功,增強(qiáng)了軟件的開發(fā)效率和質(zhì)量,同時也促進(jìn)了用戶對軟件的使用率,提升軟件存在的價(jià)值。由于建立原型目的有所差別,在快速原型法實(shí)現(xiàn)過程中存在探索型、實(shí)驗(yàn)型和進(jìn)化型等三種不同的類型。探索型的目的是研究探索,明確木白哦系統(tǒng)的需求和特征需求;實(shí)驗(yàn)型是在實(shí)驗(yàn)?zāi)康南陆⒃停陂_發(fā)軟件的前期建立原型來檢測方法的可靠性。一般建立的背景為針對問題的方案;進(jìn)化型目的是演示,為了能夠更好的解決系統(tǒng)的適應(yīng)性,從而生成演示型的系統(tǒng)開發(fā)模式。也就是說,在面向?qū)ο蟮能浖こ讨羞M(jìn)行軟件需求分析時,采用快速原型法能夠提升使用效率,而且還能夠避免一些不必要的階段,節(jié)省大量投資。
4結(jié)束語
綜上所述,軟件需求分析對軟件工程來說非常重要,不僅是作用于及時發(fā)現(xiàn)其中出現(xiàn)的問題,構(gòu)建合理的原型來幫助分析工作的順利進(jìn)行,同時也有利于軟件需求分析能夠提升效率,并且減少一些經(jīng)濟(jì)支出,降低投資為下一個軟件的開發(fā)做好準(zhǔn)備。
參考文獻(xiàn)
[1]藺茹.軟件工程中面向?qū)ο蠓椒ǖ膬?yōu)勢分析[J].電子技術(shù)與軟件工程,2014(24):54-55.
[2]韓沁軒.傳統(tǒng)軟件工程與面向?qū)ο?、?gòu)件軟件工程的比較分析[J].信息與電腦(理論版),2012(02):41-42.
作者:田鐘曉 虞翔 單位:保山學(xué)院