需求入門(mén): 需求工程=需求開(kāi)發(fā)+需求管理
上圖是需求工程的組成部分,從圖中可以看出,需求工程劃分為兩個(gè)部分:需求開(kāi)發(fā)和需求管理。需求 開(kāi)發(fā)又分為需求獲?。‥licitation)、需求分析(Analysis)、編寫(xiě)規(guī)約(Specification)和需求驗(yàn)證 (Validation)。需求管理又分為基線管理、變更管理、需求跟蹤。
下面我將分別介紹一下上面各個(gè)主要組成部分主要的工作內(nèi)容,以便那些不熟悉需求的人員讀后能夠從總體上把握需求所涉及的工作內(nèi)容。
需求開(kāi)發(fā)
需求開(kāi)發(fā)活動(dòng)包括以下幾個(gè)方面:
- 確定產(chǎn)品所期望的用戶(hù)分類(lèi)。
- 獲取每類(lèi)用戶(hù)的需求。
- 了解實(shí)際用戶(hù)任務(wù)和目標(biāo)以及這些任務(wù)所支持的業(yè)務(wù)需求。
- 分析源于用戶(hù)的信息以區(qū)別用戶(hù)任務(wù)需求、功能需求、業(yè)務(wù)規(guī)則、質(zhì)量屬性、建議解決方法和附加信息。
- 將系統(tǒng)級(jí)的需求分為幾個(gè)子系統(tǒng),并將需求中的一部份分配給軟件組件。
- 了解相關(guān)質(zhì)量屬性的重要性。
- 商討實(shí)施優(yōu)先級(jí)的劃分。
- 將所收集的用戶(hù)需求編寫(xiě)成規(guī)格說(shuō)明和模型。
- 評(píng)審需求規(guī)格說(shuō)明,確保對(duì)用戶(hù)需求達(dá)到共同的理解與認(rèn)識(shí),并在整個(gè)開(kāi)發(fā)小組接受說(shuō)明之前將問(wèn)題都弄清楚。
實(shí)際工作中很難一次性得到完全正確的需求,所以以上步驟并不是嚴(yán)格順序執(zhí)行到底的,它是一個(gè)不斷反復(fù)的過(guò)程。這些步驟也不是完全順序的,很可能需要迭代的進(jìn)行?;陧?xiàng)目的產(chǎn)品需求開(kāi)發(fā)過(guò)程可能如下圖所示:
下面就需求開(kāi)發(fā)每個(gè)活動(dòng)進(jìn)行簡(jiǎn)單介紹:
需求獲取
在《軟件需求的三個(gè)層次》中介紹了三個(gè)層次的需求,在需求獲取中,這些需求都是我們需要獲取的,我們需要收集問(wèn)題域的描述,要求解決的問(wèn)題列表,以及了解系統(tǒng)的行為或約束。
信息來(lái)源
- 客戶(hù)(實(shí)際的和潛在的)
- 用戶(hù)(實(shí)際的和潛在的)
- 已有系統(tǒng)及其文檔
- 領(lǐng)域?qū)<?/li>
- 相關(guān)技術(shù)標(biāo)準(zhǔn)和法規(guī)
獲取技術(shù)
- 閱讀背景資料
- 用戶(hù)訪談、調(diào)研
- 需求討論會(huì)
- 現(xiàn)場(chǎng)觀摩
需求分析
需求分析是指通過(guò)對(duì)需求獲取中獲得的問(wèn)題域的研究,獲得對(duì)該領(lǐng)域特性及存在其中的問(wèn)題特性的透徹理解并用文檔說(shuō)明。
- 不需要等到需求完全捕獲后開(kāi)始,在“業(yè)務(wù)需求”充分理解下,并且收集了本質(zhì)的“用戶(hù)需求”之后就可以開(kāi)始進(jìn)行需求分析
- 交替進(jìn)行,先把握“用戶(hù)需求”主要部分,然后在分析的基礎(chǔ)上引入系統(tǒng)級(jí)的需求(系統(tǒng)的涉及與實(shí)現(xiàn)角度),并且分析模型,成為開(kāi)發(fā)人員之間、開(kāi)發(fā)人員與客戶(hù)之間達(dá)成共識(shí)的一個(gè)平臺(tái)
- 分析的基礎(chǔ)上,就會(huì)發(fā)現(xiàn)更多的不明確項(xiàng),更多待捕獲的信息,這時(shí)就可以生成第二次的需求調(diào)研計(jì)劃、問(wèn)題和素材
編寫(xiě)規(guī)約
- 規(guī)格說(shuō)明書(shū)是對(duì)需求分析結(jié)果的文檔化過(guò)程
- 需求規(guī)約必須與實(shí)際開(kāi)發(fā)緊密結(jié)合,否則很容易造成與開(kāi)發(fā)脫離
- 為需求規(guī)約定義統(tǒng)一的格式是一個(gè)很重要的工作
- 規(guī)約內(nèi)容必須嚴(yán)謹(jǐn)、正確、無(wú)歧義
需求驗(yàn)證
- 不重視需求驗(yàn)證工作會(huì)在系統(tǒng)交付時(shí),客戶(hù)發(fā)現(xiàn)不是這樣的,導(dǎo)致不期望的需求變更
- 提高需求質(zhì)量的重要手段有:需求評(píng)審、需求確認(rèn)和原型驗(yàn)證《需求方法之-原型開(kāi)發(fā)》
需求管理
需求管理活動(dòng)包括:
- 定義需求基線(迅速制定需求文檔的主體)。
- 評(píng)審提出的需求變更、評(píng)估每項(xiàng)變更的可能影響從而決定是否實(shí)施它。
- 以一種可控制的方式將需求變更融入到項(xiàng)目中。
- 使當(dāng)前的項(xiàng)目計(jì)劃與需求一致。
- 估計(jì)變更需求所產(chǎn)生影響并在此基礎(chǔ)上協(xié)商新的承諾(約定)。
- 讓每項(xiàng)需求都能與其對(duì)應(yīng)的設(shè)計(jì)、源代碼和測(cè)試用例聯(lián)系起來(lái)以實(shí)現(xiàn)跟蹤。
- 在整個(gè)項(xiàng)目過(guò)程中跟蹤需求狀態(tài)及其變更情況。
軟件需求的三個(gè)層次
轉(zhuǎn)自: http://www.uml.org.cn/RequirementProject/201005285.asp
這位作者有點(diǎn)不地道了,本篇的內(nèi)容是出自一個(gè)大師的書(shū)中的內(nèi)容,不信大家看看這本書(shū)就知道《軟件需求》,作者:【美】 Karl Wiegers Joy Beatty