軟件需求工程_第1頁
軟件需求工程_第2頁
軟件需求工程_第3頁
軟件需求工程_第4頁
軟件需求工程_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

軟件需求工程第四章軟件需求與需求工程1軟件需求的定義軟件需求可以定義為:業(yè)務(wù)知識+問題列表+其它因素。

業(yè)務(wù)知識:包括業(yè)務(wù)事件、業(yè)務(wù)實(shí)體和業(yè)務(wù)規(guī)則

問題列表:用戶在工作中遇到的困難和障礙,即軟件開發(fā)時要解決的問題。

其它因素:設(shè)計(jì)約束和非功能方面的需求2需求的層次與類型三個層次:業(yè)務(wù)需求、用戶需求、軟件需求

業(yè)務(wù)需求項(xiàng)目視圖/范圍文檔用戶需求用例文檔功能需求軟件需求質(zhì)量屬性其他非功能需求設(shè)計(jì)約束SRS非功能需求三種類型:功能需求、非功能需求、設(shè)計(jì)需求

3需求的三個層次—業(yè)務(wù)需求業(yè)務(wù)需求是反映企業(yè)/組織對軟件系統(tǒng)的高層次目標(biāo)要求,即軟件系統(tǒng)的建設(shè)目標(biāo)。這種目標(biāo)體現(xiàn)在兩個方面:

問題:解決企業(yè)/組織運(yùn)作過程中遇到的問題。如物資供應(yīng)脫節(jié)、用戶投訴大等。

機(jī)會:抓住外部環(huán)境變化帶來的機(jī)會,以便為企業(yè)帶來新的發(fā)展。如電子商務(wù)、網(wǎng)上銀行等。

業(yè)務(wù)需求的提出者通常是企業(yè)/組織的高層管理人員,導(dǎo)出的是軟件開發(fā)的高層需求,代表著軟件項(xiàng)目開發(fā)的方向。業(yè)務(wù)需求是需求定義的產(chǎn)物,是軟件項(xiàng)目立項(xiàng)階段必須明確的問題。4需求的三個層次—用戶需求用戶需求描述的是用戶使用軟件需要完成什么任務(wù)、怎樣完成任務(wù)的需求。用戶需求是在業(yè)務(wù)需求的基礎(chǔ)上進(jìn)行用戶訪談、調(diào)查,對用戶使用場景進(jìn)行整理的結(jié)果。即用戶需求是需求捕捉的產(chǎn)物。特點(diǎn):

●零散:用戶會提出不同角度、不同層面、不同粒度的需求,而且通常是以一句話的形式提出的。

●存在矛盾:用戶處于企業(yè)/組織的不同層面,提出的需求往往具有片面性,甚至不同用戶之間會持不同的觀點(diǎn)。

用戶需求也叫原始需求,需要進(jìn)行分析和整理,從而得到更加精確的需求說明。5需求的三個層次—軟件需求軟件需求是需求分析和建模的產(chǎn)物,是對用戶需求進(jìn)行分析、提煉、整理的結(jié)果。即需求規(guī)格說明書描述的結(jié)果。

業(yè)務(wù)需求是需求定義的產(chǎn)物用戶需求是需求捕捉的產(chǎn)物軟件需求是需求分析和建模的產(chǎn)物6軟件需求的三種類型—功能需求

功能需求最關(guān)鍵的問題是如何對其進(jìn)行組織,即如何來表達(dá)功能需求(表達(dá)形式不一樣,得到不一樣的結(jié)果)。傳統(tǒng)的方法以系統(tǒng)->子系統(tǒng)->模塊->下層模塊的層次結(jié)構(gòu)來組織。這種組織基本上是按照程序的結(jié)構(gòu)來梳理,難以體現(xiàn)用戶的使用場景。

現(xiàn)代需求理論更加強(qiáng)調(diào)需求分析人員從用戶的角度,將系統(tǒng)理解成一個黑盒子,從橫向的使用視角來整理需求。采用用例的方法組織功能需求被認(rèn)為目前是最佳方法。

7軟件需求的三種類型—非功能需求

非功能需求的要點(diǎn)在于保證信息的有效傳遞和注意其局部性。

信息傳遞無效性:在很多需求規(guī)格說明書中都列出諸如高可靠性、高可用性、安全性、高擴(kuò)展性的要求。但開發(fā)人員根本不去看,因?yàn)檫@樣的定性描述是沒有判斷標(biāo)準(zhǔn)的,即這種信息傳遞是無效的。信息傳遞有效性指開發(fā)人員能夠清楚地知道列出的非功能需求針對的問題和要達(dá)到的標(biāo)準(zhǔn),如系統(tǒng)7×24小時不間斷運(yùn)行,指系統(tǒng)在用戶看來任何時候不能中斷運(yùn)行。

非功能需求的局部性:絕大多數(shù)非功能需求都是針對具體的功能,而非整個系統(tǒng)。如“所有查詢的響應(yīng)時間不超過10秒”的描述,對于一般性的簡單查詢或許可能滿足,但對于年度統(tǒng)計(jì)分析的查詢可能很難滿足。更科學(xué)的做法是抓住具體的場景來描述非功能需求。

8軟件需求的三種類型—設(shè)計(jì)約束

設(shè)計(jì)約束指軟件系統(tǒng)開發(fā)所必須遵守的限制條件。

非技術(shù)因素決定的技術(shù)選型:有些技術(shù)選型不是由技術(shù)團(tuán)隊(duì)決定,而是受到企業(yè)/組織實(shí)際情況的影響。如鐵路行業(yè)規(guī)定鐵路信息系統(tǒng)開發(fā)必須采用oracle數(shù)據(jù)庫管理系統(tǒng),必須采用三級數(shù)據(jù)庫部署架構(gòu)。有的要求系統(tǒng)開發(fā)采用J2EE等。

預(yù)期的硬軟件環(huán)境:技術(shù)開發(fā)團(tuán)隊(duì)在決定架構(gòu)、選擇實(shí)現(xiàn)技術(shù)時會受到企業(yè)/組織實(shí)際的硬軟件環(huán)境的影響。如企業(yè)/組織的網(wǎng)絡(luò)環(huán)境、服務(wù)器性能、個人電腦配置、操作系統(tǒng)、工具軟件等,應(yīng)該將這些預(yù)期的硬軟件環(huán)境描述出來。

預(yù)期的使用環(huán)境:除硬軟件環(huán)境之外的其它環(huán)境,如地理環(huán)境、基于局域網(wǎng)的信息系統(tǒng)的在局域網(wǎng)范圍之外的移動設(shè)備用戶、野外現(xiàn)場應(yīng)用等。9優(yōu)秀需求的標(biāo)準(zhǔn)—完整性

1、完整性需求的完整性就是需求沒有遺漏。要保障需求的完整性,就必須從業(yè)務(wù)角度來組織各種需求項(xiàng)。與需求相關(guān)的主題域、業(yè)務(wù)事件、業(yè)務(wù)活動、業(yè)務(wù)步驟、困難與障礙點(diǎn)等盡可能完整,更具操作性。業(yè)務(wù)導(dǎo)向的層次結(jié)構(gòu)是保障完整性的關(guān)鍵。用戶是驗(yàn)證需求完整性的合適人選。需求完整性存在不同層面。企業(yè)/組織中的高層管理人員、中層管理人員、業(yè)務(wù)操作人員所了解和掌握的信息是不一樣的。要從不同層次的需求來驗(yàn)證需求的完整性,即不同層次人員只負(fù)責(zé)評審與自己相關(guān)的需求。10優(yōu)秀需求的標(biāo)準(zhǔn)—不失真

2、不失真確保需求在信息傳遞的過程中不失真(不同人對其理解的一致性),即確保需求的正確性和無歧義性。正確性:要找到正確的人來驗(yàn)證需求,即不同層次的用戶驗(yàn)證對應(yīng)層次的需求和直接相關(guān)的人員來驗(yàn)證需求。

無歧義性:歧義主要是不同背景的人在傳遞時加入不同理解而導(dǎo)致的??赡芤ㄟ^協(xié)商或上一層次的人來解決。要確保需求不失真,加強(qiáng)需求的驗(yàn)證是關(guān)鍵手段。11優(yōu)秀需求的標(biāo)準(zhǔn)—有優(yōu)先級

3、需求有優(yōu)先級

“事有輕重緩急”,需求也有不同的優(yōu)先級,用戶最希望系統(tǒng)能解決他希望解決的問題,在軟件驗(yàn)收時,總是抓住他希望實(shí)現(xiàn)的功能反復(fù)使用,看是否滿足他的要求。同時,在設(shè)計(jì)時關(guān)鍵需求決定軟件架構(gòu)。優(yōu)先級的三種角度角度參與人員說明要點(diǎn)業(yè)務(wù)用戶代表需求人員根據(jù)業(yè)務(wù)的價值和頻度進(jìn)行評價優(yōu)先級是相對的技術(shù)開發(fā)架構(gòu)師開發(fā)人員根據(jù)技術(shù)依賴性對優(yōu)先級進(jìn)行評價在業(yè)務(wù)優(yōu)先級后進(jìn)行只提級不降級項(xiàng)目管理項(xiàng)目經(jīng)理架構(gòu)師根據(jù)項(xiàng)目風(fēng)險對優(yōu)先級進(jìn)行評價在業(yè)務(wù)優(yōu)先級后進(jìn)行只提級不降級12優(yōu)秀需求的標(biāo)準(zhǔn)—技術(shù)團(tuán)隊(duì)早介入

4、開發(fā)團(tuán)隊(duì)早介入

需求規(guī)格說明書的內(nèi)容來自用戶,需求規(guī)格說明書的讀者是技術(shù)團(tuán)隊(duì),即開發(fā)團(tuán)隊(duì)和測試團(tuán)隊(duì)。需求的可行性需要開發(fā)團(tuán)隊(duì)早介入。某些需求項(xiàng)在實(shí)現(xiàn)方面的可行性需要開發(fā)團(tuán)隊(duì)給予評價。需求分析的可驗(yàn)證性指需求規(guī)格說明書應(yīng)能指導(dǎo)測試活動。需求規(guī)格說明書的組織應(yīng)考慮測試的需要,應(yīng)該便于推導(dǎo)出測試用例。13需求工程軟件工程活動包括需求、系統(tǒng)分析與設(shè)計(jì)、編碼、測試、配置管理等活動,但唯獨(dú)只有需求被稱為工程。需求錯誤的代價階段代價(時間單元)需求1設(shè)計(jì)5編碼10測試20--50運(yùn)行與維護(hù)200在需求階段花1個時間單元改正的錯誤,推遲到設(shè)計(jì)階段改正需要花5倍的時間,編碼階段是10倍,測試階段是20至50倍,維護(hù)階段是200倍之多。14需求工程—范疇需求工程包括需求開發(fā)和需求管理兩大范疇需求獲取需求分析編寫規(guī)約需求驗(yàn)證需求工程基線管理變更管理需求跟蹤需求開發(fā)需求管理15需求工程—需求開發(fā)需求開發(fā)包括需求獲取、需求分析、編寫規(guī)約和需求驗(yàn)證。需求獲取需求分析編寫規(guī)約需求驗(yàn)證證實(shí)重寫評估重新更正16需求工程—需求開發(fā)

需求獲取:也稱需求捕獲,即獲取用戶需求。

需求分析:需求分析是需求開發(fā)中的核心任務(wù)。需求分析是業(yè)務(wù)分析,因此將從業(yè)務(wù)線索入手,對用戶需求進(jìn)行分析、提煉和整合,建立模型。必須強(qiáng)調(diào)的是:需求分析是目標(biāo),需求建模是手段,建模的過程就是分析的過程。

編寫規(guī)約:將需求分析結(jié)果文檔化的過程—需求規(guī)格說明書。

需求驗(yàn)證:通過評審發(fā)現(xiàn)盡可能多的錯誤,減少因需求錯誤而帶來的工作量浪費(fèi)。需求驗(yàn)證的關(guān)鍵手段是評審。17需求工程—需求開發(fā)需求開發(fā)的4個具體活動不是一個順序過程,而是要通過多次循環(huán)才能完成。一般至少要經(jīng)過3次循化才能完成。循環(huán)工作任務(wù)對應(yīng)的RUP階段初始循環(huán)明確項(xiàng)目的目標(biāo)和范圍,完成子系統(tǒng)劃分;明確每個子系統(tǒng)的內(nèi)容(業(yè)務(wù)事件和報表)和相互之間的接口。初始階段脈絡(luò)階段通過對每個業(yè)務(wù)事件進(jìn)行流程分析、業(yè)務(wù)實(shí)體分析,并標(biāo)識出所有用例。細(xì)化階段的第一次迭代細(xì)節(jié)循環(huán)對每個用例的細(xì)節(jié)進(jìn)行分析,包括事件流、用戶界面原型等細(xì)化階段的第二次迭代18需求工程—需求管理

1、基線管理需求基線的內(nèi)容是一次迭代開發(fā)的工作內(nèi)容?;€中的需求是明確的,所以每次迭代都是一個小型的瀑布型生命周期。通過這樣的劃分,整個開發(fā)工作被劃分成了多個小項(xiàng)目。這樣更容易使開發(fā)人員保持良好的工作節(jié)奏。

2、變更管理

需求變更管理的核心是控制變更對技術(shù)開發(fā)工作所帶來的影響,以減少返工、重做的工作量。

3、需求跟蹤

需求跟蹤是將單個需求與其它系統(tǒng)元素之間的依賴關(guān)系和邏輯關(guān)系建立跟蹤。包括用戶需求向前跟蹤到軟件需求,從軟件需求到向前跟蹤到下游工作產(chǎn)品;從下游工作產(chǎn)品后向跟蹤到軟件需求,從軟件需求后向跟蹤到用戶需求。19需求分析人員的技能需求分析人員是對項(xiàng)目相關(guān)人員的需求進(jìn)行收集、分析、記錄和驗(yàn)證等職責(zé)的主要承擔(dān)者,是用戶群體與軟件開發(fā)團(tuán)隊(duì)間進(jìn)行需求溝通的主要渠道。主要完成的活動包括:定義業(yè)務(wù)需求、確定項(xiàng)目涉眾和用戶類別、獲取需求、分析需求、為需求建模、編寫需求規(guī)格說明、主持對需求的驗(yàn)證、引導(dǎo)需求的優(yōu)先級的劃分、管理需求。需求分析人員必須掌握的技能包括:傾聽、交談和提問的技巧,分析、協(xié)調(diào)、觀察、寫作、組織、建模、人際交往和建模能力。這些能力可以概括為業(yè)務(wù)知識、技術(shù)知識和溝通能力三個方面20課程任務(wù)本課程主要講解與需求開發(fā)的相關(guān)內(nèi)容。具體將按照Subject->Event/Report->UseCase的層次過程進(jìn)行

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論