国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

需求分析在軟件開發(fā)過程中的重要性

2012-04-29 18:54:28陸麗
電腦知識與技術(shù) 2012年21期
關(guān)鍵詞:需求分析軟件工程

陸麗

摘要:軟件工程中的需求分析是軟件生命周期中一個非常重要的過程,它決定著整個軟件項目的質(zhì)量,也是整個軟件開發(fā)的成敗所在。該文主要討論軟件開發(fā)過程中需求分析的關(guān)鍵技術(shù)及應(yīng)用實例,并提出一些有探索性的問題。

關(guān)鍵詞:軟件工程;需求分析;用戶方成員;項目管理者

中圖分類號:TP271文獻標識碼:A文章編號:1009-3044(2012)21-5113-03

目前,計算機軟件業(yè)得到了快速發(fā)展,但是軟件業(yè)所呈現(xiàn)出來的劣勢已經(jīng)不容忽視,它正嚴重制約著我國IT業(yè)的發(fā)展。軟件開發(fā)中的劣勢主要表現(xiàn)在:軟件的開發(fā)和維護缺乏正確的方法,系統(tǒng)運行滿足不了用戶的需求,軟件產(chǎn)品的質(zhì)量存在大量的漏洞。而事實證明,造成這些后果的主要原因是:在軟件開發(fā)的初始階段,項目的需求分析做得不夠深入細致,也沒有實行有效的需求工程管理。大量的實例表明,軟件需求分析是決定軟件質(zhì)量的基礎(chǔ),也是一個軟件開發(fā)項目成敗的關(guān)鍵。軟件的需求分析作為一個軟件項目開發(fā)的第一階段,其重要性很突出。軟件的需求分析是指,理解用戶方對目標軟件在性能、功能、設(shè)計等方面的需求。通過對用戶方提出的具體問題的理解與分析,抽象出問題涉及的信息功能及行為的邏輯模型,并最終形成需求文檔,因此構(gòu)成軟件開發(fā)生命周期的需求分析階段。

目前,高校的計算機專業(yè)都設(shè)置了軟件工程這門課程,專門的軟件培訓(xùn)機構(gòu)也加大了對軟件工程人才的培養(yǎng),目的都在于建立學(xué)生的軟件開發(fā)基礎(chǔ),熟練掌握軟件工程中需求分析的技術(shù),提高學(xué)生軟件開發(fā)的能力。通過對軟件工程知識的系統(tǒng)學(xué)習(xí)以及參與的一些案例開發(fā),該文提出在軟件需求分析過程中的一些有效措施。

1確定各方成員,獲取用戶需求,減少不利因素對需求分析的影響

需求分析的第一步是全面熟悉該軟件項目的所有相關(guān)人員,明確需求分析方成員和用戶方成員。通過系統(tǒng)分析人員和用戶方成員的多次交流和溝通,最終確定對目標軟件的綜合要求,以及確定如何實現(xiàn)用戶方的需求和軟件最終應(yīng)達到的標準。在做需求調(diào)查時,應(yīng)避免不利因素的影響,分析者必須從該軟件項目的細節(jié)問題出發(fā),逐步細化軟件的功能,然后做一份詳細設(shè)計方案,提煉出各種不同的軟件元素,并找出各元素之間的聯(lián)系,預(yù)測該軟件項目是否存在片面性或可能導(dǎo)致不滿足用戶需求的情況。該過程中,如果有問題,需與用戶再進行交流,確定軟件最終的設(shè)計方案,并定義目標系統(tǒng)的詳細邏輯模型。另外,在做項目的需求分析時,還應(yīng)主動建立用戶方單位的人事組織、業(yè)務(wù)關(guān)系,并用結(jié)構(gòu)圖畫出單位的組織結(jié)構(gòu),還應(yīng)當在單位組織結(jié)構(gòu)圖基礎(chǔ)上畫出全體項目成員的結(jié)構(gòu)圖,以便更好更全面地進行需求調(diào)研分析,發(fā)現(xiàn)問題適時調(diào)整,進而確保需求分析的高度準確性。

2采取有效的需求分析方法,啟發(fā)各種客戶挖掘他們的需求,并對獲得的需求進行分析并建模

軟件需求包括三個不同的層次:業(yè)務(wù)需求、用戶需求和功能需求。在做需求調(diào)研時往往會發(fā)現(xiàn),有些客戶因為缺乏計算機專業(yè)知識,而無法提出準確的需求,所以有些潛在的需求就無法完善,導(dǎo)致最后的軟件試用令用戶不滿。所以,軟件需求分析人員應(yīng)站在用戶的角度,不但要確定用戶明確的需求,而且要善于啟發(fā)用戶,并結(jié)合調(diào)研分析技術(shù),幫助用戶共同挖掘隱含的需求。

總之,在做需求調(diào)研的過程中應(yīng)注意方法,然后再對需求進行分析和建模,一般需求分析的方法有結(jié)構(gòu)化需求分析和RUP需求分析。結(jié)構(gòu)化需求分析方法(簡稱SA方法),主要是對系統(tǒng)中的數(shù)據(jù)進行加工處理。RUP的需求分析采用UML作為建模工具,在UML中,用例驅(qū)動的需求分析是常用的一種方法,其中的用例模型描述的是站在系統(tǒng)使用的角度所理解的系統(tǒng)的總體功能。一個用例模型通常由若干個用例圖描述,用例圖的主要元素是用例、參與者、參與者的目標。

以網(wǎng)上書店電子商務(wù)系統(tǒng)為例,圖1是網(wǎng)上書店電子商務(wù)系統(tǒng)——管理員的用例圖,它的參考者包括超級管理員、會員管理員、庫存管理員和訂單管理員。超級管理員主要實現(xiàn)員工管理、統(tǒng)計營業(yè)額、統(tǒng)計會員的操作。會員管理員主要實現(xiàn)會員管理、處理會員評價投訴、會員級別管理、管理會員積分的操作。庫存管理員主要實現(xiàn)產(chǎn)品的庫存維護、產(chǎn)品上架、產(chǎn)品下架、發(fā)貨的操作,其中時間這個參與者主要對產(chǎn)品上架、產(chǎn)品下架,監(jiān)控訂單的狀態(tài)進行管理。訂單管理員主要實現(xiàn)處理訂單投訴、訂單管理的操作。在這個用例圖中,包括關(guān)系表示成一個構(gòu)造型為EXTEND的依賴關(guān)系,表示產(chǎn)品類別管理用例是從產(chǎn)品庫存維護用例擴展而來的。圖2是網(wǎng)上書店電子商務(wù)系統(tǒng)——用戶的用例圖,它的參與者包括會員、用戶、游客、時間。會員主要實現(xiàn)登錄、評價產(chǎn)品、確認收貨、退出的操作。用戶主要實現(xiàn)瀏覽商品、購買商品、瀏覽商品評價、搜索商品、顯示相關(guān)商品、查看購物車,結(jié)賬的操作。游客主要實現(xiàn)注冊操作。時間主要實現(xiàn)重置購物車的操作。在該用例圖中,包含關(guān)系有:查看商品明細用例是從瀏覽商品用例擴展而來,加入購物車用例是從購買商品用例擴展而來,刪除購物車商品用例、修改商品數(shù)量用例是從查看購物車用例擴展而來,而結(jié)賬用例包含了確認送貨地址用例,確認送貨地址用例包含了下訂單用例,注冊用例是從結(jié)賬用例擴展而來。

圖1和圖2所示的網(wǎng)上書店電子商務(wù)系統(tǒng)的用例模型清楚地表示出從使用者的角度所看到的系統(tǒng)功能。在需求分析的過程中之所以強調(diào)畫出用例圖,是為了明確各種用戶對系統(tǒng)的不同要求。普通用戶關(guān)注的是系統(tǒng)是否簡單易用,而對于高級用戶而言,關(guān)注的是系統(tǒng)的高效性和易維護性。因而在用例圖中必須對用戶進行分類,每一個用戶類將有自己的一系列功能要求??傊?,正確的需求分析是需要了解需求的來源、用戶的分類、用戶要求等功能因素。另外,需求分析中的界面設(shè)計也非常重要,良好的用戶界面可以提高軟件的可用性,有效地提高工作效率。所以在做需求分析時,應(yīng)充分考慮軟件中界面的設(shè)計。設(shè)計應(yīng)充分以用戶為中心,應(yīng)遵循Ben Shneiderman總結(jié)出的八條基本原則:1)界面設(shè)計盡量保持一致;2)提供“快捷鍵”操作方式;3)針對用戶的每一個動作,提供有效的反饋信息;4)交互過程應(yīng)該完整,即要有始有終;5)錯誤處理機制要簡潔明了;6)允許動作的撤消;7)提供提示字符或消息等操作信息;8)減少人機交互時的用戶短期記憶信息。

3詳細描述各項需求,形成需求文檔,最終和用戶共同確認。

優(yōu)秀的需求分析應(yīng)該準確、完整、一致、可測試的,可跟蹤的、可修改的,最終應(yīng)全面詳細地描述整個系統(tǒng)的業(yè)務(wù)流程,并將業(yè)務(wù)流程文檔化后與用戶再進行討論、完善和修改。所以,需求分析階段應(yīng)提交需求文檔也即需求規(guī)格說明書。需求規(guī)格說明書貫穿于項目開發(fā)的整個過程,一般對需求的有效性也起到某種程度的驗證作用。需求規(guī)格說明書應(yīng)完整、準確、具體地描述對目標系統(tǒng)的功能要求、數(shù)據(jù)要求、性能要求、用戶系統(tǒng)描述等。一個軟件開發(fā)項目中的功能需求分為若干個業(yè)務(wù),對數(shù)據(jù)也有不同的操作,所以各個業(yè)務(wù)都是作為獨立的一個功能模塊,在具體運用時都是通過接口來實現(xiàn)相互之間的調(diào)用。所以在需求文檔中在充分考慮用戶需求的同時不能忽略運行需求,其中包括用戶接口和軟件接口。當軟件項目中的某些問題發(fā)生變化時,對需求文檔中的描述要做到準確無誤,最終和用戶共同確認,再對內(nèi)容進行篩選和調(diào)整。

4結(jié)束語

需求分析是軟件生命周期中的一個重要階段,主要是確定用戶對軟件產(chǎn)品的需求,完成系統(tǒng)必須具有的功能。軟件工程中需求分析的發(fā)展,使軟件開發(fā)人員認識到,如果科學(xué)地進行需求分析,就能避免因需求分析不當而導(dǎo)致的系統(tǒng)問題,整個過程不但要有用戶的直接參與,而且項目管理者也要發(fā)揮主導(dǎo)作用,才能真正解決需求分析過程中的問題,進而探討軟件開發(fā)過程中的各種需求,自動適應(yīng)系統(tǒng)需求的不斷變化。

參考文獻:

[1]張海藩.軟件工程導(dǎo)論[M].北京:清華大學(xué)出版社,2003.

[2]楊芙清.軟件工程技術(shù)發(fā)展思索[J].軟件學(xué)報,2005(1).

[3]劉旭勇.用例驅(qū)動的交互式需求獲取技術(shù)及支持工具[D].西安:西北大學(xué),2008.

猜你喜歡
需求分析軟件工程
研究生公共英語課程改革模式探索
服裝設(shè)計智能化趨向及模式研究
大學(xué)師生需求發(fā)展分析
基于UML技術(shù)的高校貧困生管理系統(tǒng)建模分析
指揮信息系統(tǒng)模擬訓(xùn)練評估需求分析
價值工程(2016年29期)2016-11-14 01:54:24
依托工作室的軟件工程實踐教學(xué)研究
應(yīng)用瀑布模型的MOOC制作方法
計算機教育(2016年7期)2016-11-10 08:38:07
融合APTECH體系的軟件產(chǎn)業(yè)人才培養(yǎng)探究
計算機教育(2016年7期)2016-11-10 08:04:30
基于工程教育認證的《軟件工程》課程教學(xué)質(zhì)量建設(shè)研究 
應(yīng)用型本科大學(xué)英語后續(xù)課程建設(shè)之必要性探討
类乌齐县| 东丽区| 临汾市| 健康| 遵义县| 广河县| 桐庐县| 晋江市| 呼和浩特市| 抚松县| 曲水县| 米泉市| 娄烦县| 靖江市| 含山县| 灵璧县| 文成县| 孙吴县| 义乌市| 吉首市| 高尔夫| 上杭县| 河西区| 青神县| 宁津县| 满城县| 平安县| 德阳市| 盘山县| 噶尔县| 京山县| 扎鲁特旗| 博湖县| 江陵县| 大兴区| 上饶市| 察隅县| 富平县| 图木舒克市| 宁晋县| 洛扎县|