999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

論需求獲取技術

2007-12-31 00:00:00楊浩杰
成才之路 2007年25期

摘要:本文以某礦務局的“煤炭競標交易與雙邊交易互動系統”的開發為例,討論了軟件需求分析工具與方法的選用。軟件需求分析是軟件工程中的重要一步,直接關系到后繼工程的進行以及最終的產品能否滿足用戶的需求,因此在整個工程中起著關鍵性的作用。采用適當的工具,有可能顯著減少需求階段的錯誤,也可大幅度提高需求分析的質量和工作效率。當然工具的選用應當與實際的項目相結合,充分地發揮工具的作用。本文結合我們工作的實際,簡要討論了開發系統時所選用的工具及其應用,選用時所考慮的原則以及所碰到的問題。

關鍵字:需求分析 需求工程 結構化分析 面向對象的分析 需求分析工具 用例 原型法

軟件產業過去40多年的經驗和教訓已經證明了這樣一個事實,軟件需求的質量高低將直接決定軟件產品的質量。根據Standisk Group發布的最新報告顯示,在其對23000個項目進行的研究結果表明,28%的項目徹底失敗,46%的項目超出經費預算或者超出工期,只有26%的項目獲得成功,這樣的數據顯然表明軟件項目還是處于一個失敗率極高的狀態中,而導致這樣一個高失敗率的直接原因就是需求分析出現失誤。

需求分析作為軟件工程生命周期中的首要環節,的確是我們應該重點面對的一個問題。

在需求分析階段,我們要將客戶的所有需求挖掘出來,這里的需求包括顯性需求和隱性需求,顯性的需求具體有業務需求、用戶需求、功能需求、非功能需求(如可靠性,性能,響應時間,擴展性和容錯性等)。隱性需求則是用戶沒有描述出來,但是在系統建設中又極為重要的部分,隱性需求一般需要系統分析員去深入挖掘才能得到。

在實際情況中,用戶往往不能正確描述他們的意圖,而技術人員對客戶的業務領域又所知甚少。因此,如何將用戶的真正意圖描述出來加以實現,這是系統分析人員所面臨的首要任務。

需求分析在軟件項目中是如此的重要,因此現在需求分析已經演化成為需求工程,需求工程主要包括兩個方面:需求開發和需求管理。

需求分析的方法很多,主要有以下一些:

1.面談法(即和用戶直接交流,這是最基本、最常見的技術)

2.用戶調查(這是需求分析中調查面最廣的技術)

3.現場觀摩(即在用戶的業務現場了解業務流程)

4.文檔考古(即查閱用戶的歷史業務文檔資料,從中得出用戶的業務流程及功能)

5.聯合開發(即用戶和軟件設計人員共同開發,這是最有效的方法)

下面以一個具體的項目構建為例,討論一下在實踐中如何有效地獲取用戶需求。

2005年,我參與開發了某礦務局“煤炭競標交易與雙邊交易互動管理系統”(以下簡稱A系統)的設計,我在項目中擔任系統分析師的工作,并進行部分程序模塊的開發。

我們在與用戶深入交流之前,用戶已將A系統的基本功能及模塊組成以說明書的形式發給了我們,這說明他們對A系統的功能要求是有一定的研究準備的,A系統主要包括競標交易和雙邊交易兩大部分,分為“競標交易”,“雙邊交易”,“交易信息”三個模塊?!案倶私灰住蹦K主要反映全國各區域煤炭競標價格及競標供給量與交易量信息;“雙邊交易”主要反映全國各區域煤炭用戶價格和交易量信息;“交易信息顯示”主要提供全國煤炭價格波動信息,給企業決策層提供決策數據。

有了系統的基本功能框架,我們所要做的是采取合適的方法和工具深入剖析每個模塊所包含的具體功能,并將這些功能建模。在需求分析方法的選擇上,我們對結構化的方法和面向對象的方法進行了詳細對比,最終選擇了面向對象的方法(UML)來構建A系統的邏輯模型。因為面向對象的建模是軟件業發展的方向,另外采用UML建模具有接近自然表示,可擴展性,可維護性的特點。在工具的選擇上,我們采用了Rational Rose,因為Rose工具在UML建模領域功能強大,在用例圖、類圖、對象圖、活動圖、協作圖等UML圖形的繪制上比較容易。

在A系統的需求建模中,我們還使用了用例(User Case)分析的方法。用例作為系統給角色(Actor)提供的功能,本身就反映了用戶的需求,再通過用例之間的關系(關聯,包含,擴展,泛化)很容易就可以得到用戶的需求模型。在A系統的需求建模中,我們使用了帶泳道的活動圖來描述系統的業務流向,從中得到用戶的業務流程及相互間的關系。此外,我們利用ROSE工具描繪了A系統的類圖,對象圖,用例圖,從而得出了系統的邏輯模型。我們將系統的功能需求以需求規格說明書的形式交給用戶進行審閱,從而圈定了系統的邊界和功能約束。需求規格說明書的出臺為系統的實施奠定了法律和技術基礎。

在具體的需求獲取過程中,以下兩個方面對需求獲取的成功起了積極作用:

1.我們采用了用戶訪談和文檔考古的方法。首先,我們通過和用戶的溝通,讓用戶認識到他們和我們同是一條繩上的兩只螞蚱,即我們的共同利益是一致的,任何與對方對立的做法對系統的構建只能有害無益,只能造成系統的失敗或延期。從而為需求獲取中雙方的積極溝通打下了良好的基礎。在用戶訪談過程中,我們在每一次訪談前就訪談內容都做了充分的準備,以使訪談能夠得到具體的實質內容。

2.系統原型法的使用。雖然經過周密細致的需求分析,用戶的某些需求還是可能被忽略掉。為了避免出現這種情況,我們使用了原型的方法來獲取用戶的需求,我們首先根據早期得到的需求功能信息制作出了一個初始的原型系統,此系統用Visual Studio.NET制作,核心代碼用C#實現,架構上采用B/S模式,用ASP.NET設計了客戶端。我們把制作出的原型系統交給用戶使用,通過用戶的使用,對設計中不符合用戶需求的部分重新設計,從而在最大限度上挖掘出了用戶的真正需求。在A系統的需求構建中,我們的原型法取得了成功。

回顧A系統的開發過程,在需求分析階段,因為我們采用了有效的方法和技術工具,從而得到了較為真實的用戶需求,A系統的后續開發沒有因需求不一致而導致大的變動,這對系統能夠按預期進度和經費預算順利完工起到了積極的作用。A系統投入使用后,經過一段時間的試用期運行,一切正常,系統取得了成功。

參考文獻:

[1] 張友生,徐峰.系統分析師技術指南.北京:清華大學出版社,2004.

[2] 張友生.系統分析師之路.北京:清華大學出版社,2004.

主站蜘蛛池模板: 四虎影视无码永久免费观看| 久久美女精品| 91香蕉视频下载网站| 五月婷婷激情四射| 日韩A∨精品日韩精品无码| 91精品最新国内在线播放| 色亚洲成人| 亚洲狠狠婷婷综合久久久久| 在线中文字幕日韩| 国产chinese男男gay视频网| 久久久久亚洲精品成人网| 婷婷色在线视频| a天堂视频在线| 就去色综合| 日韩a级毛片| 国内a级毛片| 午夜性刺激在线观看免费| 国产亚洲精品无码专| 亚洲国产成人在线| 浮力影院国产第一页| 一区二区日韩国产精久久| 色一情一乱一伦一区二区三区小说| 日韩在线播放欧美字幕| 久久这里只有精品国产99| 久久青草热| 色综合久久88| 日韩欧美国产区| 丁香婷婷在线视频| 日韩第一页在线| 国产精品精品视频| 亚洲成人精品| 国产自视频| 欧美亚洲欧美| 久久久久亚洲av成人网人人软件| 萌白酱国产一区二区| 亚洲伊人电影| 欧美日韩精品综合在线一区| 国产精品手机在线观看你懂的| 国产伦精品一区二区三区视频优播 | 免费国产不卡午夜福在线观看| 日本伊人色综合网| 午夜福利视频一区| 99久久精品美女高潮喷水| 青青国产成人免费精品视频| 国产欧美日韩18| 精品一區二區久久久久久久網站| 亚洲九九视频| 日韩欧美91| 一级毛片免费不卡在线视频| 精品久久高清| 成人亚洲国产| 97人人模人人爽人人喊小说| 女人18毛片久久| 久久久久久尹人网香蕉| 91小视频在线| 99在线视频免费| 波多野衣结在线精品二区| 精品人妻AV区| 狂欢视频在线观看不卡| 国产美女免费| 亚洲丝袜中文字幕| 日韩一级毛一欧美一国产| 国产精品香蕉| 欧美成人国产| 国产精品亚洲一区二区三区z | 在线日韩一区二区| 天天色天天综合网| 日韩精品一区二区深田咏美| 免费一级全黄少妇性色生活片| 国产精品尤物在线| 国产美女无遮挡免费视频网站| 国产成人调教在线视频| 亚洲日韩久久综合中文字幕| 亚洲人成影院在线观看| 一本综合久久| 亚洲欧洲综合| 国产日韩欧美精品区性色| 99免费视频观看| 九九免费观看全部免费视频| 国产在线麻豆波多野结衣| 92午夜福利影院一区二区三区| 成人国内精品久久久久影院|