軟件開發(fā)需求分析技術(shù)探討
1 引言
隨著計(jì)算機(jī)技術(shù)的快速發(fā)展和進(jìn)步,計(jì)算機(jī)軟件已經(jīng)在工業(yè)控制、電子商務(wù)、電子政務(wù)、金融證券、電力通信等領(lǐng)域得到了廣泛的應(yīng)用。軟件系統(tǒng)開發(fā)過程中,需求分析可以幫助軟件工程師與用戶進(jìn)行溝通,能夠快速的獲取軟件需要完成的操作功能,以便滿足用戶的需求,具有重要的作用。
2 軟件需求分析作用
隨著軟件功能的復(fù)雜,軟件規(guī)模越來越大,軟件的操作功能也更加難以獲取,因此軟件工程的作用越來越受到重視,已經(jīng)得到了廣泛的研究和改進(jìn)。在軟件工程中,軟件需求分析是最為重要的一個(gè)環(huán)節(jié)。軟件需求分析可以通過查詢相關(guān)的文檔資料,分析軟件原型,與軟件用戶進(jìn)行溝通和交流,發(fā)現(xiàn)原有系統(tǒng)存在的漏洞和用戶新的功能需求,以便能夠完善軟件功能。軟件需求分析的主要作用是了解軟件的處理過程,通過用例技術(shù)、數(shù)據(jù)流圖技術(shù)、業(yè)務(wù)流程圖技術(shù)等導(dǎo)出系統(tǒng)的邏輯業(yè)務(wù)功能模塊,建立一個(gè)詳細(xì)的軟件模型,將其展現(xiàn)給用戶,以便用戶能夠觀察軟件是否能夠滿足其功能需求。軟件需求分析是軟件設(shè)計(jì)與實(shí)現(xiàn)的前提,軟件需求分析的結(jié)果準(zhǔn)確與否對(duì)后期軟件設(shè)計(jì)與實(shí)現(xiàn)的影響非常大,因此軟件需求分析具有重要的作用。
3 軟件需求分析技術(shù)探討
目前,軟件需求分析過程中,常用的軟件需求分析技術(shù)主要包括面向?qū)ο蠛兔嫦蚪Y(jié)構(gòu)兩種,面向?qū)ο笮枨蠓治黾夹g(shù)以UML為代表,面向結(jié)構(gòu)以數(shù)據(jù)流圖和業(yè)務(wù)流程圖為代表,這兩類型的需求分析技術(shù)適用于大小規(guī)模不同的軟件設(shè)計(jì)與實(shí)現(xiàn)過程,詳細(xì)描述如下:
3.1 UML需求分析技術(shù)
UML需求分析技術(shù)是建立在面向?qū)ο蟮乃枷肷系囊环N需求分析技術(shù)。UML需求分析的原型為用例建模分析方法,該方法是由美國(guó)杰克遜博士提出來的,后來其被軟件工程學(xué)者綜合到了UML中,已經(jīng)成為軟件需求分析表達(dá)的標(biāo)準(zhǔn)化軟件工程。UML需求分析可以使用用例圖、靜態(tài)圖、類圖、順序圖、狀態(tài)圖等,與用戶、硬件設(shè)備或其他軟件系統(tǒng)進(jìn)行交互,詳細(xì)的描述軟件功能。UML技術(shù)在應(yīng)用過程中,需求分析最為關(guān)鍵的步驟就是識(shí)別系統(tǒng)參與者,以便能夠通過對(duì)參與者需要完成的功能進(jìn)行調(diào)研和分析,使用各類圖形建模技術(shù),分析軟件業(yè)務(wù)功能。目前,UML需求分析技術(shù)已經(jīng)在工業(yè)生產(chǎn)、電子政務(wù)、電子商務(wù)和金融證券等領(lǐng)域的軟件設(shè)計(jì)與實(shí)現(xiàn)中得到了廣泛的應(yīng)用,取得了顯著的成效。比如在教學(xué)
管理軟件開發(fā)過程中,可以獲取用戶角色主要包括學(xué)生、教師和行政管理人員,其主要功能包括學(xué)生信息管理、教師信息管理和教務(wù)信息管理。
3.2 數(shù)據(jù)流圖技術(shù)
在軟件需求分析過程中,數(shù)據(jù)流圖是一種結(jié)構(gòu)化的需求分析工具,其也是信息系統(tǒng)邏輯業(yè)務(wù)處理需求分析的一種模型之一,可以對(duì)現(xiàn)實(shí)的數(shù)據(jù)進(jìn)行抽象。數(shù)據(jù)流圖可以利用圖形的直觀形式表述系統(tǒng)的邏輯業(yè)務(wù)功能,它跟系統(tǒng)的軟硬件沒有關(guān)聯(lián),也無需涉及到系統(tǒng)的物理部署環(huán)境等,具有較高的應(yīng)用層次。軟件數(shù)據(jù)流圖分析過程包括的元素主要是外部實(shí)體、數(shù)據(jù)處理、數(shù)據(jù)流等。外部實(shí)體表示系統(tǒng)的數(shù)據(jù)源點(diǎn)或終點(diǎn),其可以反應(yīng)系統(tǒng)的數(shù)據(jù)流圖和外部實(shí)體之間的關(guān)系,并且能夠讓外部實(shí)體表示系統(tǒng)的組成部分。數(shù)據(jù)處理表示軟件對(duì)數(shù)據(jù)的加工和處理,也就是軟件如何滿足用戶需要的操作功能。數(shù)據(jù)流是指系統(tǒng)中的數(shù)據(jù)的傳播的一個(gè)過程,其表示系統(tǒng)的數(shù)據(jù)源點(diǎn)到系統(tǒng)終點(diǎn)的一個(gè)過程,能夠有效的表示系統(tǒng)數(shù)據(jù)處理的內(nèi)容,數(shù)據(jù)流可以使用矢量圖描述,以便能夠明確數(shù)據(jù)流傳輸?shù)姆较颉?/div>
3.3 業(yè)務(wù)流程圖技術(shù)
業(yè)務(wù)流程圖技術(shù)也是一種結(jié)構(gòu)化需求分析方法。在軟件需求分析過程中,為了能夠讓用戶更加充分的理解軟件的工作流程,使用業(yè)務(wù)流程圖能夠有效地導(dǎo)出系統(tǒng)的功能操作流程,便于用戶直觀的理解系統(tǒng)功能。業(yè)務(wù)流程圖可以采用固定的基本符號(hào)元素,描述某個(gè)具體的邏輯業(yè)務(wù)處理過程,在描述軟件功能的過程中,其可以使用戶充分的理解系統(tǒng)的功能,并且能夠掌握系統(tǒng)的功能,了解系統(tǒng)輸入信息、輸出信息、存儲(chǔ)信息、信息處理方式和過程等,以便能夠?yàn)橄到y(tǒng)的數(shù)據(jù)處理、邏輯處理打下良好的基礎(chǔ),為了能夠更好的掌握系統(tǒng)的運(yùn)行狀況,業(yè)務(wù)流程圖已經(jīng)成為系統(tǒng)需求分析不可或缺的重要步驟,是系統(tǒng)需求分析的關(guān)鍵環(huán)節(jié)。軟件業(yè)務(wù)流程圖構(gòu)建過程中,可以采用的基本圖形符號(hào)包括五個(gè)類別,分別是系統(tǒng)用戶、系統(tǒng)信息流、系統(tǒng)的數(shù)據(jù)存貯、實(shí)體、處理或加工符號(hào)等。在業(yè)務(wù)流程圖建模過程中,圓圈可以表示參與系統(tǒng)的操作的用戶,比如單位教務(wù)管理人員或教師、學(xué)生等用戶;使用矩形框表示教務(wù)管理過程中的信息業(yè)務(wù)加工和處理的操作;實(shí)體、單據(jù)或憑證表示可以使用卡片形式的符號(hào)表示;實(shí)心表示業(yè)務(wù)處理信息的流程;學(xué)校在實(shí)際工作過程中,能夠直接表明教務(wù)管理信息系統(tǒng)的文字,并且表示管理系統(tǒng)處理的功能。
隨著軟件工程的發(fā)展和應(yīng)用,軟件需求分析技術(shù)也得到了極大的改進(jìn),軟件需求分析技術(shù)已經(jīng)逐漸向原型化系統(tǒng)、敏捷需求分析、構(gòu)件和組件等方向發(fā)展,其適用于PC軟件、移動(dòng)終端軟件等不同類型軟件的需求分析,可以導(dǎo)出完善的軟件功能,滿足用戶多樣化的需求。