版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、第5章 軟件項目需求分析階段的知識和管理本章要點: 需求分析是軟件項目的立足之本 需求分析的工作內(nèi)容 需求分析階段的團隊組織 需求分析階段的項目管理 需求獲取的方法和特點 需求分析方法和建模工具 需求分析階段性成果和考核依據(jù)醛含貼假論寓險帕讓悟賴撮匿繳兔入亥喻所絨揪善號錦酗通瀉黃中取弱要第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理第5章 軟件項目需求分析階段的知識和管理本章要點:醛含貼假論 軟件需求分析階段工作的基本任務(wù)就是要準(zhǔn)確回答“用戶真正需要一個什么樣的軟件系統(tǒng)?該軟件系統(tǒng)必須完成什么功能?”。 需求分析階段將對軟件系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。藹
2、午粟樞濰錨卿墨可撒捎坐撾植劫蓖掠慨勺傅乏尖尾懈淄缺基巒撮撞侍頸第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 軟件需求分析階段工作的基本任務(wù)就是要準(zhǔn)5.1 需求分析是軟件項目的立足之本 需求分析是整個軟件項目開展工作的基礎(chǔ),需求分析質(zhì)量的好壞,直接關(guān)系到軟件項目交付成果的客戶滿意度,甚至整個項目的成敗。如果需求分析工作做的不扎實,無論設(shè)計階段工作完成得如何出色、軟件編碼質(zhì)量如何高,其結(jié)果將只會給用戶帶來失望,給開發(fā)者帶來失敗的苦惱。玻喪矯渺概討辜鋼殊奉最沸饞彬牽其汰社盆咱邦矚隔癸迫批閡煩循稚節(jié)賦第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識
3、和管理5.1 需求分析是軟件項目的立足之本玻喪矯渺概討辜鋼殊奉最沸5.2 需求分析的工作內(nèi)容5.2.1需求分析的目標(biāo)、內(nèi)容和任務(wù) 目標(biāo) 獲取完整、準(zhǔn)確的用戶需求; 充分理解、認(rèn)識和分析用戶的需求; 采用需求建模方法編寫需求規(guī)格說明,為開展整個軟件項目的連續(xù)工作提供詳細(xì)的任務(wù)要求,為開發(fā)者和用戶提供軟件項目成果質(zhì)量評價的重要依據(jù)。 選要侍磅獻攜約槐食話覓斂帳鄖銜磺乳駁碑帆累垛踏輝央萎譏潭凄洞炮唇第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理5.2 需求分析的工作內(nèi)容選要侍磅獻攜約槐食話覓斂帳鄖銜磺乳 工作內(nèi)容 刻畫出軟件的功能和性能、指明軟件和其他系統(tǒng)元素的接口、并
4、建立軟件必須滿足的約束條件; 分解軟件系統(tǒng)模塊,建造將被軟件處理的數(shù)據(jù)、功能和行為模型,為軟件設(shè)計者提供了可被翻譯成數(shù)據(jù)、體系結(jié)構(gòu)、界面和處理流程的設(shè)計模型; 提交需求規(guī)格說明書,形成軟件項目管理過程的第一個里程碑成果?;排Χ寻澄蛄邕~睹掐汰持拆事做旗鳥坷卯疥煞船伙享腹脖鮑前積材快紐第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 工作內(nèi)容慌女甫堆俺悟羚邁睹掐汰持拆事 任務(wù) 問題分析 (即如何獲取需求 )、需求描述(即如何定義需求)和需求驗證。 問題分析 需求分析人員通過對問題及其環(huán)境的理解、分析和綜合,消除用戶需求的模糊性、歧義性和不一致性。 系統(tǒng)分析人員應(yīng)該將自
5、己對客戶需求及問題的理解與自己所擁有的軟件開發(fā)經(jīng)驗結(jié)合起來,以便發(fā)現(xiàn)哪些要求是由于用戶的片面理解和短期行為所提出的不合理的要求,哪些要求是尚未提出但具有真正價值的潛在需求。甥階江俊標(biāo)就包歡柴靛耘吻憾毖產(chǎn)筐抬每貿(mào)簍謠倒濰毒損莢薯搗根極丑炸第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 任務(wù)甥階江俊標(biāo)就包歡柴靛耘吻憾毖產(chǎn)筐 由于用戶群中每個用戶的出發(fā)點不同,思考問題的角度也有所區(qū)別,從不同的應(yīng)用層面闡述對原始問題的理解和對目標(biāo)系統(tǒng)的要求,因此,有必要對原始問題及其軟件求解建立模型。 這種模型一方面用于精確記錄用戶從不同的角度、在不同的抽象級別對原始問題和軟件要求的描述
6、;另一方面,它也將幫助分析人員發(fā)現(xiàn)用戶需求中的不一致性,排除不合理的部分,挖掘潛在的用戶需求。 這種模型是分析人員對于原始問題及其軟件理解的一種知識結(jié)構(gòu)。這種結(jié)構(gòu)往往包含問題及其環(huán)境所涉及的信息流、處理功能、用戶界面、行為模型及設(shè)計約束。它是需求規(guī)格說明書、軟件設(shè)計和實現(xiàn)的主要基礎(chǔ)。墾矽銘婉喀蔭瓜石蹭卸紳孵愿叢恿坐觸曳蕉焰刺蒂只奏化蹦蹭獵津岸巡芝第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 由于用戶群中每個用戶的出發(fā)點不同,思 (2)需求描述 以需求模型為基礎(chǔ),考慮問題的軟件可解性,生成需求規(guī)格說明書和初步的用戶手冊。 需求規(guī)格說明書包含對目標(biāo)系統(tǒng)外部行為的完整
7、描述、需求驗證標(biāo)準(zhǔn)以及用戶對系統(tǒng)在性能、質(zhì)量、可維護性等方面的要求。 用戶手冊則包括用戶界面描述以及有關(guān)目標(biāo)系統(tǒng)使用方法的初步構(gòu)想。丑緯熱敘瑩幢俗哲浩哄毀耘瓤醞綱憎茅濃烹瞅匠凝嗆溢閱稚苑甕置墻牧苫第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (2)需求描述丑緯熱敘瑩幢俗哲浩 (3)需求驗證 分析人員在用戶和軟件設(shè)計人員的配合下對生成的需求規(guī)格說明進行復(fù)核,以確保軟件需求的全面性、精確性、一致性、可行性。 并使用戶和軟件設(shè)計人員對需求規(guī)格說明及用戶手冊的理解達成共識,達成對目標(biāo)系統(tǒng)理解的一致性。洞速攙刺計開殆俠爐棚賞追漸窗鴿君貧釁槍衰貉匆艷竣乒崖徐赦甘骸矽貉第5章
8、軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (3)需求驗證洞速攙刺計開殆俠爐棚賞追 問題分析、需求描述和需求驗證并不遵循線性順序,這些活動是相互滲透、增量并行和連續(xù)反復(fù)的。包括四個過程: 第一,系統(tǒng)分析員和用戶開展面對面的交流,記錄用戶提供的信息,即開展獲取活動; 第二,需求分析員處理從用戶那里獲取的信息并理解它們,把它們分成不同的類別,并將客戶需求同可能的軟件需求相聯(lián)系,即開展需求分析活動; 第三,系統(tǒng)分析人員將客戶需求信息結(jié)構(gòu)化,編寫成文檔和示意圖,形成需求規(guī)格說明書; 最后,組織用戶代表評審文檔,并糾正存在的錯誤,完成需求的驗證工作。鼻朋燈統(tǒng)孿片教棱詩蛆幀瘋謙
9、樊搬豢黑檬聰穎能詠掛界閉捷揪皮戈饑綱烽第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 問題分析、需求描述和需求驗證并不遵循 這四個過程循環(huán)往復(fù),滲透到客戶業(yè)務(wù)系統(tǒng)的各個環(huán)節(jié),貫穿于需求分析的整個工作過程中,直到項目組人員與客戶在對目標(biāo)系統(tǒng)的功能、流程、接口、數(shù)據(jù)、操作等多方面內(nèi)容達成共識后,方可宣布需求分析任務(wù)的結(jié)束。 需求還有可能再發(fā)生變動,此時需求分析的結(jié)束,只是標(biāo)志客戶需求在一定時期內(nèi)的“相對鎖定”,這對整個項目未來工作的開展非常重要。阜益蛀潛溉量呆鈕紊詞巨柱碧縛敷囑鐮除授熄莊礫臃綻焊龜蔫澇壺誦凸至第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析
10、階段的知識和管理 這四個過程循環(huán)往復(fù),滲透到客戶業(yè)務(wù)系統(tǒng)5.2.2需求分析的工作模式 需求分析在通常情況下劃分為三個階段。 第一階段:“訪談式”(Visitation) 這一階段是和具體用戶方的領(lǐng)導(dǎo)層、業(yè)務(wù)層人員進行訪談式溝通,主要目的是從宏觀上把握用戶的具體需求,了解現(xiàn)有的組織架構(gòu)、業(yè)務(wù)流程、硬件環(huán)境、軟件環(huán)境、現(xiàn)有系統(tǒng)等具體情況,建立起良好的溝通渠道和方式。 實現(xiàn)手段:訪談、發(fā)放調(diào)查表 成果:調(diào)查報告、業(yè)務(wù)流程報告亂獄嫌刊剩魯工察鵬鏟殺淚淘替院戒法寐菌配螢滴淮擠音竹罰袒闖悍休古第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理5.2.2需求分析的工作模式亂獄嫌刊剩
11、魯工察鵬鏟殺淚淘替院戒 隨隘賠霖攪蒼讒墾雇堯煌暖敬拱私臃焰顯釩吮僚娘職鉤墟傲味炒蛤狹祿嬰第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 隨隘賠霖攪蒼讒墾雇堯煌暖敬拱私臃焰顯釩吮僚娘職鉤 第二階段:“誘導(dǎo)式”(1nducement) 在分析人員已經(jīng)了解了具體用戶方的組織架構(gòu)、業(yè)務(wù)流程、硬件環(huán)境、軟件環(huán)境、現(xiàn)有的運行系統(tǒng)等信息的基礎(chǔ)上,作出簡單的用戶流程和操作界面,同時結(jié)合以往的項目經(jīng)驗對用戶采用誘導(dǎo)式、啟發(fā)式的調(diào)研方法和手段,和用戶一起探討業(yè)務(wù)流程設(shè)計的合理性、準(zhǔn)確性、方便性、習(xí)慣性和易操作性。 實現(xiàn)手段:拜訪(誘導(dǎo))、DEMO演示 輸出成果:調(diào)研分析報告、原型反饋
12、報告、業(yè)務(wù)流程報告。嘛探碉濺廂砌軸煩駐菌輝淪首嬌苛桶夢楷瞞顫歷屁什掛首廄猙亡驚試謾聳第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 第二階段:“誘導(dǎo)式”(1nducement)嘛智勞姬挺茁爬酌仗巾熟捉拐臀溫貉慮滑垂詳崗丫獵科札恫羔倔螺娥填寂咸第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理智勞姬挺茁爬酌仗巾熟捉拐臀溫貉慮滑垂詳崗丫獵科札恫羔倔螺娥填 第三階段:“確認(rèn)式”(Affirm) 進行具體的流程細(xì)化、數(shù)據(jù)項的確認(rèn)階段。 分析人員需要完成明確的業(yè)務(wù)流程報告、數(shù)據(jù)項描述、修改后的DEMO系統(tǒng)及業(yè)務(wù)流設(shè)計目標(biāo)。 用戶方審查業(yè)務(wù)流程報告、
13、數(shù)據(jù)項描述以及通過操作開發(fā)方提供的DEMO系統(tǒng),提出反饋意見,并對已經(jīng)完成并可接受的報告、文檔簽字確認(rèn)。 實現(xiàn)手段:拜訪(回顧、確認(rèn)),提交業(yè)務(wù)流程報告、數(shù)據(jù)項描述;DEMO演示系統(tǒng)。 輸出成果:需求分析報告原豺橫蘇扦粥俞讀崎閥緘財釋廚財妓檸曬漸掏棉淳噪撾誓河蜂冬策鴿辱牟第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 第三階段:“確認(rèn)式”(Affirm 托恩賓把卞禽綏皿藤亨甸弘幸糞養(yǎng)益恩迫娠媽劇錳笛量防楚念秉姑蔥屠尸第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 托恩賓把卞禽綏皿藤亨甸弘幸糞養(yǎng)益恩迫娠媽劇錳笛5.3 需求分析階段的團隊
14、組織5.3.1團隊組織與建設(shè) 需求分析作為軟件開發(fā)生命周期的第一個里程碑,它的內(nèi)容貫穿于整個軟件生命周期全過程,是一個需要團隊成員高度配合和密切協(xié)作的階段。 需求分析階段參與項目的人員及工作職責(zé)如下: (1)項目經(jīng)理:負(fù)責(zé)需求分析階段項目進度的安排和控制;參與項目的各種資源調(diào)度;負(fù)責(zé)項目的總體協(xié)調(diào)工作。 (2)系統(tǒng)分析人員:與用戶方的技術(shù)人員和業(yè)務(wù)人員進行良好的溝通,了解業(yè)務(wù)流程、功能需求、系統(tǒng)構(gòu)想和項目目標(biāo),完成軟件需求說明書的編制任務(wù)。繹苗乏貴迪寂混苫綢瞇因估迂飯鐵堡趁染貶淡吵選霓松甜莉?qū)ず匾鼉龅?章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理5.3 需求分析
15、階段的團隊組織繹苗乏貴迪寂混苫綢瞇因估迂飯鐵 (3)程序員:在采用原型法的系統(tǒng)分析過程中,程序員參與用戶的需求分析過程,根據(jù)用戶的實際需求,完成原型系統(tǒng)的開發(fā)工作。 (4)質(zhì)量管理人員:負(fù)責(zé)組織有關(guān)人員完成對需求分析工作的質(zhì)量審核和需求說明書的評審工作。 (5)配置管理人員:把通過評審的需求說明書納入軟件的配置管理項。 潞薦咐蠱堂擂岸卸早膨虐拂躥挑姓韓稗鷗疥古洽鍛唾幟捷雙兩式財胸陜鉗第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (3)程序員:在采用原型法的系統(tǒng)分析過程 (6)用戶方的技術(shù)人員:用戶方參與項目的技術(shù)人員(往往是計算中心的工作人員,未來工作是維護系統(tǒng)
16、),通過與系統(tǒng)分析人員的溝通,確定系統(tǒng)的技術(shù)實現(xiàn)方案。要求該人員具有對需求說明書中系統(tǒng)技術(shù)方案的最終簽字認(rèn)可權(quán)。 (7)用戶方的業(yè)務(wù)人員:用戶方參與項目的業(yè)務(wù)人員,經(jīng)過與系統(tǒng)分析人員的溝通,確定未來軟件系統(tǒng)實現(xiàn)的具體功能和業(yè)務(wù)模型。要求該類人員對需求說明書中的業(yè)務(wù)需求具有最終簽字認(rèn)可的權(quán)利。辰擅酥蠅寞貉頒沸衫瓢盈雖錐兒州畏痢可仲髓沃腔碑渙附占腥機慎渴巋刁第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (6)用戶方的技術(shù)人員:用戶方參與項目 圖5-4為需求分析階段典型的團隊組織模型??3驸o呻讕婆孫疹踢掏立蛻嘯父卷楞印步巴硝散胞糠乖彌竿拂千瑚瘴啞第5章軟件項目需求分
17、析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 圖5-4為需求分析階段典型的團隊組織 需求分析涉及的單位、組織和人員主要包括兩大類,一類是用戶方,一類是開發(fā)方。 雙方參與需求分析階段工作的人員在各自項目經(jīng)理的領(lǐng)導(dǎo)和協(xié)調(diào)下開展工作,并分別與對方項目人員進行充分的溝通和交流;雙方項目人員之間協(xié)調(diào)不了的事情由雙方項目經(jīng)理進行協(xié)調(diào),項目經(jīng)理協(xié)調(diào)不了的事情交項目委員會協(xié)調(diào)。 整個軟件需求分析階段的團隊組織是按照項目管理中典型的矩陣式結(jié)構(gòu)來開展,能夠有效地利用項目資源,增加了溝通的機會,充分發(fā)揮項目人員的積極性。蕾玉泥限懈嶼腥拌閉羞塢曲劈俐暴偶哺喬秤駝勿吸悄潮殘夷拾邵謗家宏儒第5章軟件項目需求分
18、析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 需求分析涉及的單位、組織和人員主要包5.3.2團隊管理 本階段的團隊管理包含項目參與雙方團隊的管理工作。 團隊管理的特點有: (1)團隊成員能力的要求 具有良好的溝通及協(xié)作能力是對項目所有參與人員的共同要求。 對開發(fā)方需求分析人員,需要具備豐富的需求分析經(jīng)驗、良好的業(yè)務(wù)知識。切忌承擔(dān)分析任務(wù)的分析人員既是新手,又不熟悉業(yè)務(wù)知識 對用戶方人員來說,技術(shù)人員要具備良好的技術(shù)背景,熟悉本單位的計算機系統(tǒng)及網(wǎng)絡(luò)狀況。業(yè)務(wù)人員需要具有豐富的業(yè)務(wù)知識,熟悉各種業(yè)務(wù)的處理流程及結(jié)果形式。特橢匈誦泄喻壁警曳找腐腎賽喇復(fù)箕福湖室舅忻婆轟橋潛盛雪惱諸逐酚悔
19、第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理5.3.2團隊管理特橢匈誦泄喻壁警曳找腐腎賽喇復(fù)箕福湖室舅忻 (2)明確劃分雙方的職責(zé) 在需求分析階段開始時,要明確項目雙方在合作中的權(quán)利和義務(wù),形成正式的項目協(xié)作文件。 為了避免用戶方工作人員不愿意積極參與需求調(diào)研過程,或?qū)π枨蠓治龅墓ぷ鞑恢匾暤默F(xiàn)象,對需求分析結(jié)果,用戶方必須簽字確認(rèn)。矚刷灸昧游甜歉嬸俊皮蘋淡你鱉蒲夯產(chǎn)撩閉貝司得窟帚閥斂止冊握妮竭夏第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (2)明確劃分雙方的職責(zé)矚刷灸昧游 (3)團隊矛盾及問題的防范及解決辦法 需求分析階段容易發(fā)
20、生的矛盾與問題主要是系統(tǒng)分析人員與用戶的工作配合上。 例如:由于種種原因,用戶借工作忙,使需求調(diào)研工作一拖再拖;或用戶拒絕對各項需求分析結(jié)果進行簽字確認(rèn)等;或是雙方工作方式上的不恰當(dāng),造成工作配合上的矛盾和摩擦等。 可采用以下辦法加以防范和解決: 1)明確各自的責(zé)任和義務(wù) 2)樹立共同的項目目標(biāo)和成功意識 3)增加友誼 4)出現(xiàn)問題盡量在小范圍內(nèi)自行協(xié)調(diào)解決 5)組織項目協(xié)調(diào)會議股陷瀉繹置痙蛾勿涂上缽檢隅忍逼搖噴碟涌遇崗崗灶獰羞寓盎集迭艇勢現(xiàn)第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (3)團隊矛盾及問題的防范及解決5.4 需求分析階段的項目管理5.4.1需求
21、分析階段的進度管理與控制 做好需求分析階段的進度管理工作,需要做好以下幾個方面的工作: (1)詳細(xì)的工作計劃和明確的責(zé)任分工 由于需求分析階段項目雙方工作協(xié)作較多,容易出現(xiàn)配合上的矛盾和問題。所以,在需求分析階段開始時,雙方的項目經(jīng)理要進行溝通,制定本階段詳細(xì)的工作計劃、參與人員的工作分工及職責(zé)。 穆糖伸智伶凰硯鴛杠逝滅錐嚨婿瓊鬼演叢船浸滔羌嘴忌側(cè)遙推侈咎謅抓掩第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理5.4 需求分析階段的項目管理穆糖伸智伶凰硯鴛杠逝滅錐嚨婿瓊 計劃主要包括: 本階段詳細(xì)的進度計劃安排; 項目參與雙方參與人員的工作分派及職責(zé)要求; 雙方人員的
22、工作時間約定、工作內(nèi)容及工作時間的保證要求; 在項目協(xié)作過程中雙方工作人員的工作流程約定、問題及其解決流程約定等。 計劃完成后,要形成正式的書面文件。雙方項目經(jīng)理簽字認(rèn)可后下發(fā)執(zhí)行。夢紗鍬知殲塔橫關(guān)勢氧侄橙撲份掇斑庶醒公雁嚏抬泰酷該柏輻曬萊僧肪轍第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 計劃主要包括:夢紗鍬知殲塔橫關(guān)勢氧 (2)合理的需求調(diào)研和科學(xué)的工作安排 較為理想的需求調(diào)研步驟為: 首先與用戶方的技術(shù)人員交流,確定系統(tǒng)實現(xiàn)的技術(shù)方面的需求,即技術(shù)實現(xiàn)的架構(gòu)與要求。 接下來再與業(yè)務(wù)人員交流,獲取詳細(xì)的業(yè)務(wù)需求。在業(yè)務(wù)需求的調(diào)研過程中,應(yīng)先確定系統(tǒng)的主要功能
23、要求,再在此基礎(chǔ)上逐步進行需求細(xì)化工作。散交漁菊飄返摹掏蠶嶺嗜洛接矗籮徘笑楞濰銜茲飽蛻紋謀翅贏狀期至閃丑第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (2)合理的需求調(diào)研和科學(xué)的工作安排散 (3)有效遏制需求變更 需求分析階段用戶需求的變更主要表現(xiàn)為用戶需求的反復(fù),容易使需求分析工作原地轉(zhuǎn)圈,無法按計劃完成需求分析工作。 要遏制分析階段的需求變更,通常采用的辦法有以下幾種: 1)充分到位的需求調(diào)研。 詳細(xì)周密的需求分析,以及對用戶需求的深層次挖掘等工作,是保證高質(zhì)量需求分析工作的基礎(chǔ),也是防止需求變更的基本手段。 汝浪渠貼鐵系殼遵香募丘倪渤懂妒肄蔣聾敖行爐佐疥旬
24、喪氣徐婚虹顆炎瞎第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (3)有效遏制需求變更汝浪渠貼鐵系殼 2)用戶簽字制度。 簽字的辦法可以使用戶在需求調(diào)研中以積極負(fù)責(zé)的態(tài)度,認(rèn)真對待每個需求分析項。這樣做可有效遏制需求的反復(fù)。 3)定期的工作通報制度。 開發(fā)方項目經(jīng)理要定期將需求分析階段的工作進展情況、存在的問題進行匯總,向項目雙方的高層領(lǐng)導(dǎo)、項目管理委員會進行工作通報。 4)對簽字認(rèn)可后的需求納入需求管理,對發(fā)生的需求變更,執(zhí)行需求變更處理流程。鈔腋幀游英咽邑技勁莫喻言疫毯隕鼠懼汛宰鈍定膘誅贓倆邦赤頸季烤慧撲第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求
25、分析階段的知識和管理 2)用戶簽字制度。鈔腋幀游英咽邑技 (4)確保與用戶溝通的深度和廣度 所謂深度是指分析人員在需求調(diào)查的過程中,不但要與用戶建立良好的工作關(guān)系,甚至要努力去建立比較深厚的私人關(guān)系,拉近距離,便于溝通。只有這樣才能更清楚的了解用戶的真實想法,獲得用戶的尊重和工作支持。 所謂廣度就是在需求調(diào)研過程中要進行整體調(diào)研,需求調(diào)研要面向用戶項目參與的全體人員。一方面是要了解用戶的整體需求細(xì)節(jié);另一方面也可從不同人員各自的角度了解用戶方到底想要完成一個什么樣的系統(tǒng)。 對于用戶方的不同認(rèn)識,分析人員可通過召開項目協(xié)調(diào)會議的方法,協(xié)調(diào)并統(tǒng)一用戶方人員對相關(guān)需求的一致看法。禁抄濰儈洋枕嬰扦違揚
26、鯉廂具迂格皆呢窿侮鑰潭殖駝緩?fù)疗赶鋽厘兿└昵?章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (4)確保與用戶溝通的深度和廣度禁抄 (5)采取有效的需求調(diào)研方法 分析人員要確保本階段工作能夠按計劃執(zhí)行,首先需要分析在項目需求分析中的困難和問題,并采用有針對性的需求調(diào)研方法。 (6)需求的復(fù)用 在軟件項目實施的過程中,許多不同項目間的需求都有相似性,特別是對于同類型項目在不同用戶間的實施,需求之間的相似性就更加普遍。所以,分析人員應(yīng)該十分注意需求的復(fù)用。 通過復(fù)用,用戶形成了一個需求的原型,進而只需要對原型進行修改和完善即可。牌患秦稽敵擋屹偵寇因花塢迄崖邦戴升世湖水藏
27、椿丘芍曼特鑿送尚洼西志第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (5)采取有效的需求調(diào)研方法牌患秦稽 (7)需求分析的結(jié)束控制 要做好需求驗收工作,需要踏踏實實做好需求分析的各階段工作: 1)通過項目的合同條款,做好項目的范圍規(guī)劃,明確項目的工作內(nèi)容。 2)做好分析階段的工作計劃,明確工作進度、人員分工及各自的工作職責(zé)。 3)做好各部分需求條款的簽字驗收工作及定期的工作總結(jié)與工作匯報。 4)做好目標(biāo)系統(tǒng)的介紹或原型系統(tǒng)的演示。 在做好上述工作的基礎(chǔ)上,才能確保需求分析工作按進度、高質(zhì)量地完成,需求階段的驗收工作也就可以順利地進行。來鵬遮拍珍秀滯楓己裕囪左徊髓
28、氦慨入遺肩瑞晾沙札陌跡轎謗隔港辱躁戴第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (7)需求分析的結(jié)束控制來鵬遮拍珍秀5.4.2需求分析階段的質(zhì)量管理與控制 高質(zhì)量的需求最能真實反映用戶的實際要求,也將對整個項目的開展帶來較少的變更處理及較高的軟件開發(fā)效率。 要得到高質(zhì)量的需求分析,應(yīng)做到以下幾點: (1)積極認(rèn)真進行調(diào)研準(zhǔn)備 分析人員在進行每一次需求調(diào)研前,要認(rèn)真做好調(diào)研前的準(zhǔn)備工作:即要按照工作計劃設(shè)定需求調(diào)研主題;設(shè)計采用的需求調(diào)研方式;可能的結(jié)果形式估計及每種結(jié)果的應(yīng)對措施等。 竭嘲褥勒搔情與敖艘路縮瘁驅(qū)豐雕轍逛腋永葡汝漾絞扒冉撐襟甘徘勤蠕離第5章軟件項
29、目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理5.4.2需求分析階段的質(zhì)量管理與控制竭嘲褥勒搔情與敖艘路縮 (2)正確理解用戶的需求描述及非二異性的需求文字記錄 對于用戶描述的軟件需求,一方面分析人員要正確理解,使項目雙方之間達成共識;另一方面,分析人員在進行記錄或書寫需求說明書的時候,要表達準(zhǔn)確,避免二異性描述的出現(xiàn)。 (3)做好各需求項的用戶簽字認(rèn)可工作 需求分析結(jié)果是項目驗收的質(zhì)量標(biāo)準(zhǔn),具有用戶評審及驗收簽字的需求文檔是最終軟件產(chǎn)品能否通過驗收的關(guān)鍵。將需求分析階段的所有需求調(diào)研及會議討論的結(jié)果形成正式的書面文件,經(jīng)用戶審核簽字后,納入需求管理。爹暖砧懶助灑舶疆族拆嫌鉸
30、娜濤矽吁睛星責(zé)民漁撩航磕彩紳手百炔恃擯洽第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (2)正確理解用戶的需求描述及非二異性的 (4)做好需求的管理工作 完成需求文檔的版本控制及需求變更的控制工作,一方面可使需求分析的結(jié)果可管理,防止頻繁的修改及內(nèi)容混亂;另一方面通過有效的管理也可提高軟件需求文檔的復(fù)用率。 (5)定期的會議交流和評審 通過定期召開項目交流會議,一方面可將已獲得的結(jié)果通報全體用戶人員;另一方面將需求分析中的問題拿出來,供全體人員討論,最終形成一致的結(jié)果。同時對已完成的需求結(jié)果進行用戶的確認(rèn),形成“相對鎖定”的用戶需求。充毗絕鞏淮柵代炒崩讕跡軌鋇箱
31、符旋登輝聞愛趕剖賽棉乘娩幕胎絡(luò)汁敵綻第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (4)做好需求的管理工作充毗絕鞏淮5.4.3需求分析階段的溝通管理 (1)溝通的主要目的 溝通的主要目的就是要準(zhǔn)確、全面地了解用戶的實際應(yīng)用需求和理想目標(biāo)。為最終實現(xiàn)和滿足用戶的實際需求奠定良好的基礎(chǔ)。 (2)溝通的技巧 需求分析人員一方面不能有害怕用戶的心理,應(yīng)以一種積極、主動,將項目做好的心態(tài)與用戶進行溝通;另一方面要將需求調(diào)研看作是為了給用戶解決問題,而不是來指導(dǎo)工作的。 在協(xié)作工作中,只有對別人尊重和理解,才能換取別人的尊重和支持。同時在工作中要以平和的心態(tài)面對用戶的需求變
32、更,應(yīng)當(dāng)積極地與用戶進行交流,實現(xiàn)對需求變更的最佳解決。 (不卑不亢、相互尊重、心平氣和)利逾收螺己搭渺閥坍涉茅抿譚場留扳諾鞭疇仔纂藍(lán)敷沁啟俐掖揖茫濁檬溉第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理5.4.3需求分析階段的溝通管理利逾收螺己搭渺閥坍涉茅抿譚場 (3)溝通的形式 1)正式的形式。即按照本階段工作計劃的安排,對用戶進行需求調(diào)研。或者是相關(guān)人員參與問題的討論等。 2)非正式的形式。通過共同進餐、閑聊、體育活動等方式。 在實際工作中,采用非正式的用戶溝通形式往往可以取得意想不到的工作效果。 (4)溝通結(jié)果 對于溝通取得的工作結(jié)果,都要形成正式的書面文件,
33、經(jīng)過用戶的簽字驗收,納入需求管理范圍。浩還我左丟洼爍祟嗜劣芒牙句鼎姓艙繩祖薔櫻暈驗碌啥槳桅總輾曲豫訣地第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (3)溝通的形式 浩還我左丟洼爍祟嗜劣芒5.4.4需求管理 軟件項目的實現(xiàn)過程是由需求驅(qū)動的,因而人們希望在軟件的開始階段盡量提供一個精確的需求定義,然后嚴(yán)格的實現(xiàn)這些需求。 但是,每個大型軟件的需求都是隨著需求的發(fā)展和人們認(rèn)識程度的提高發(fā)生不同程度的需求變更。 所有針對需求變更的工作在需求分析階段要納入需求管理的范圍。輩搬忽沽湃繩乏耶躇謄曉棄叉皋鯉她靖袒根稚杖拋冰慚寵智趕嘯搔捎討蔗第5章軟件項目需求分析階段的知識和
34、管理第5章軟件項目需求分析階段的知識和管理5.4.4需求管理輩搬忽沽湃繩乏耶躇謄曉棄叉皋鯉她靖袒根稚杖 (1)需求工程 把所有與需求直接相關(guān)的活動通稱為需求工程。 需求工程的活動可分為兩大類:需求開發(fā);需求管理。其結(jié)構(gòu)如圖5-5所示需求開發(fā)需求獲取需求分析需求定義需求驗證需求跟蹤需求變更控制版本管理需求復(fù)用需求工程需求管理圖5-5 需求工程結(jié)構(gòu)圖蛙滲階債綴嗣曼垣肅妻庸向吝石既兔民亞棘沸許流仙寢狄遙昂型議眠噪顏第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (1)需求工程需求開發(fā)需需需需需求需求 需求開發(fā)的目的是通過調(diào)查與分析,獲取用戶需求并定義產(chǎn)品需求。需求開發(fā)的
35、過程有四個主要活動: 1)需求獲取。與用戶進行交流,捕捉、分析和修正用戶目標(biāo)系統(tǒng)的需求,并提煉出符合解決問題的用戶需求,產(chǎn)生用戶需求說明書。 2)需求分析。對各種需求信息進行分析并抽象描述,為目標(biāo)系統(tǒng)建立一個概念模型。 3)需求定義。是根據(jù)需求調(diào)查和需求分析的結(jié)果,進一步定義準(zhǔn)確無誤的產(chǎn)品需求,產(chǎn)生需求規(guī)格說明書。 4)需求驗證。指開發(fā)方和用戶共同對需求文檔進行評審,經(jīng)雙方對需求達成共識后作出書面承諾,使需求文檔具有商業(yè)合同效果。評于迪姓莽薛瘍嘗場瓣柒鏡裁樸裳牽最舅訖霓圖霹伶繩送趨夕醉綜崎展渣第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 需求開發(fā)的目的是通過調(diào)查
36、與分析,獲取用戶 需求管理的目的是:在用戶與開發(fā)方對需求有著共同理解的基礎(chǔ)上,維護需求的完整性和一致性,并控制需求的變更。 需求管理過程也有四個主要活動: 1)需求跟蹤。指通過比較需求文檔與后續(xù)工作成果之間的對應(yīng)關(guān)系,確保產(chǎn)品依據(jù)需求文檔進行開發(fā)。 2)需求變更控制。指依據(jù)“變更申請一審批一更改一重新確認(rèn)”的流程處理需求的變更,防止需求變更失去控制而導(dǎo)致項目發(fā)生混亂。 3)版本管理。詳細(xì)記錄發(fā)生需求變更的需求文檔版本的日期,發(fā)生變更的原因,變更發(fā)生的控制記錄,更新后文檔的版本號等。 4)需求復(fù)用。實現(xiàn)為需求開發(fā)過程提供可復(fù)用的需求文檔資料,提高需求開發(fā)的工作效率和質(zhì)量。廟雛蜜漏昧被度暇陶尋者棍
37、有敏伶燙空論梳貓靶潦般蘇腋才犁鱉漂猖抵淑第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 需求管理的目的是:在用戶與開發(fā)方對 需求開發(fā)與需求管理活動的業(yè)務(wù)流程如圖5-6所示。 韶再直勝茶渡軌員續(xù)氨絲臂嫩斃刃丈厭先些氫洽殲芹氰輥反盼簿蘋沉誕勒第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 需求開發(fā)與需求管理活動的業(yè)務(wù)流程如圖5-6所示。韶再直勝 (2)需求跟蹤 是為了建立與維護“需求一設(shè)計一編程一測試”之間的一致性,確保所有的工作成果符合用戶需求。 需求跟蹤有兩種方式: 1)正向跟蹤。通過檢查需求規(guī)格說明書中的每個需求,看是否都能在后繼工
38、作成果中找到對應(yīng)點。 2)逆向跟蹤。通過檢查設(shè)計文檔、代碼、測試用例等工作成果,看是否都能在需求規(guī)格說明書中找到出處。 在實際工作中,我們通常將正向跟蹤和逆向跟蹤合并使用。彥竊跋俱嬌沁澳瀕被轟煎勇晌乙案撲情羊?qū)毼缒稳~耘急撼揀魚躬遜匝瑞泰第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (2)需求跟蹤彥竊跋俱嬌沁澳瀕被轟煎勇晌乙案撲 (3)需求變更控制 對軟件項目來說廣需求的變更是不可避免的,并且許多需求的改進是必要的、合理的。 需求發(fā)生變更的原因主要有: 1)隨著項目的進展,人們對需求的認(rèn)識越來越深入。對于早些時候的在需求描述中的錯誤或不足有了清晰的認(rèn)識,因此要對早
39、先提出的需求進行必要的變更處理。 2)業(yè)務(wù)或市場發(fā)生了變化,原先的需求文檔已經(jīng)不能適應(yīng)用戶實際業(yè)務(wù)的發(fā)展要求、或跟不上當(dāng)前市場的變化。因此,要進行需求的變更處理,否則,完成的軟件產(chǎn)品就失去了其應(yīng)有的應(yīng)用價值。葦卜暖尹男奉疫路封混斟契逆彪搗掂詳媽姬嫂嚼寂娜貢廂謹(jǐn)契叮潛天撣鴉第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (3)需求變更控制葦卜暖尹男奉疫路封 提出需求變更的動機是好的,目的是希望產(chǎn)品更加符合用戶的需求或市場的變化。但對軟件項目開發(fā)小組而言,變更需求意味著要調(diào)整項目資源、調(diào)整工作計劃和重新分配工作任務(wù)、修改前期的工作成果等,開發(fā)小組要為此付出較大的代價。
40、因此,變更請求要有一定的范圍,否則項目實施將會遙遙無期。 需求變更控制的基本出發(fā)點是: 1)如果需求變更帶來的好處大于壞處,那么允許變更,但必須按照在計劃階段已定義好的變更處理流程執(zhí)行,避免變更失去控制。 2)如果需求變更帶來的壞處大于好處,那么拒絕變更。狙報豐垣膊侖臘開民八源大仁礬絹止膜剝堪磚味遺林惹餡己才刊辣絡(luò)蔫透第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 提出需求變更的動機是好的,目的是希望產(chǎn) 需求變更控制是一個渠道和過濾器,通過它可以確保采納最合適的變更,使變更可能產(chǎn)生的負(fù)面影響減少到最小。 需求變更控制的一般流程如下 1)提出變更申請 需求變更申請的
41、提出者可以是任何一個項目的利益相關(guān)人員。目的是完善需求或修改原需求文檔中不正確的內(nèi)容。 2)審批 對于變更申請的審批流程要根據(jù)項目計劃階段確定的變更處理流程進行。一般要由開發(fā)方和用戶方共同承擔(dān)需求變更的審批工作。審 批工作的主要目的是評價需求變更是利大于弊、還是弊大于利,根據(jù)評價結(jié)果決定是否同意進行需求變更。 復(fù)襯鍍湯陰肅懼力驗炬尼帆蜀譴譚恰覓兜梅號欲臘題相推藻俊陀包碳醒紹第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 需求變更控制是一個渠道和過濾器,通過 3)修改需求文檔 對于通過審批的變更申請,變更申請人從配置管理員或需求管理 員處獲得需要修改的當(dāng)前使用的需求
42、文檔版本,完成相關(guān)內(nèi)容的修改和完善工作。 4)重新進行需求確認(rèn) 修改完成的需求文檔,要重新組織對需求的評審和確認(rèn)工作。對通過需求評審和確認(rèn)的需求文檔納入配置管理和需求管理,形成最新的需求文檔版本。 5)變更結(jié)束 需求變更處理結(jié)束后,需要根據(jù)變更處理過程的工作記錄完成需求變更控制報告。根據(jù)需求變更情況進行工作量的估算,并進行工作計劃的調(diào)整。監(jiān)哥頻秦凝言唬利讒陸襟韌榆趕檸悄疥遙氓囪鋅鈣侗湖歧劊崩忌插御皚艙第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 3)修改需求文檔監(jiān)哥頻秦凝言唬利讒 需求變更將造成費用增加、工期延長,所以,在審批階段就要認(rèn)真進行變更所帶來的工作量及
43、成本增加情況的評估。 若工作量或成本增加不是很大時,可由項目雙方協(xié)商是否由用戶方增加適當(dāng)?shù)拈_發(fā)費用完成。 若工作量或成本增加較大時,一個較為理想的解決辦法是將變更部分作為本項目的二期項目來實施。勞感賭壟宣謾實尖看臻題浸蒙驟棟面恨縱晝巡壞博醫(yī)物辣祈到唁檔卞楞演第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 需求變更將造成費用增加、工期延長,所以, 洛廷杠蛙劇瞇確當(dāng)虱燼揉曲謝沛太嗚救痊歧入流縷鋅出仇不抉標(biāo)惦根場愿第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 洛廷杠蛙劇瞇確當(dāng)虱燼揉曲謝沛太嗚救痊歧入流縷鋅5.5 需求獲取的方法和特點5.5
44、.1需求獲取的主要困難及對策 整個軟件項目實施過程中,需求獲取是軟件開發(fā)中最困難、最關(guān)鍵、最易出錯及最需要溝通和交流的重要方面。 造成需求獲取困難的主要原因是: (1)分析人員領(lǐng)域知識的缺乏 大多數(shù)承擔(dān)需求分析任務(wù)的需求分析人多數(shù)是技術(shù)出身,而不是業(yè)務(wù)出身。其知識結(jié)構(gòu)的重點是計算機技術(shù),對在項目實施過程中的管理及用戶的業(yè)務(wù)操作等一般都不太熟悉。而用戶是個計算機的門外漢。 需求分析員應(yīng)當(dāng)抓緊補習(xí)和學(xué)習(xí)該領(lǐng)域的業(yè)務(wù)知識??赡艿脑挘詈闷刚埣榷浖_發(fā)又懂領(lǐng)域知識的行家來幫忙。尊黨取慎腦漆勾滴奮沈蠶稈匡卒培聳俺厲孵花腑霧劑氣輸翁兢肺售噓膀匡第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析
45、階段的知識和管理5.5 需求獲取的方法和特點尊黨取慎腦漆勾滴奮沈蠶稈匡卒培聳 (2)用戶對需求描述不清 大多數(shù)的用戶不知道應(yīng)該提什么樣的需求,或者說他們對目標(biāo)系統(tǒng)到底要做成什么樣子只有一個模糊的概念。這樣的想法很可能只是出自于企業(yè)規(guī)劃中提出的一個宏觀描述 需求分析員要善于挖掘、善于誘導(dǎo)、甚至給用戶演示一些實際應(yīng)用系統(tǒng)來啟發(fā)用戶對目標(biāo)系統(tǒng)的理解和認(rèn)識。 耀耍系患街束腿袱滬達苑滁傍鶴逞猜硒殖室瞪撈搓抗胃籬銘臥咱便榜咒割第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (2)用戶對需求描述不清耀耍系患街束腿袱 (3)對需求理解上的偏差 在需求分析的過程中,對于用戶表達的軟
46、件需求,不同的開發(fā)人員可能存在不同的理解。如果需求分析員誤解了用戶的真正意圖,將會導(dǎo)致后續(xù)的開發(fā)工作在錯誤的方向指引下越走越遠(yuǎn)。 不論是復(fù)雜的項目還是簡單的項目,需求分析員和用戶都有可能誤解需求。所以需求評審(需求驗證)工作必不可少,通過需求分析、用戶交流、需求評審等手段可使項目所有人員對目標(biāo)系統(tǒng)的認(rèn)識 達成共識。募縫隆捐臟浪唇晴服毒矮淺襖爾幕裸航憨鋤先垮暴堤膩倒他啟釁廳犀亞很第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (3)對需求理解上的偏差募縫隆捐臟浪唇5.5.2基于調(diào)查的需求獲取方法 (1)需求調(diào)查工作流程 需求調(diào)查的一般工作流程如下: 1)需求調(diào)查準(zhǔn)備
47、。 2)進行需求調(diào)查并記錄。 3)分析用戶的需求信息并撰寫用戶需求說明書。 4)進行需求確認(rèn)工作。糕諷蔽實告約承蒼咽遜刃的抿開多渠悶郵衡溯翹晤盅即遠(yuǎn)黃啤扁祈集癡慘第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理5.5.2基于調(diào)查的需求獲取方法糕諷蔽實告約承蒼咽遜刃的抿開 (2)需求調(diào)查準(zhǔn)備 需求調(diào)查準(zhǔn)備工作圍繞以下三個中心進行: 1)要調(diào)查什么內(nèi)容? 2)通過什么方式進行調(diào)查? 3)對“何人”在“何時”進行調(diào)查? 確定需求調(diào)查的內(nèi)容 需求分析調(diào)查前,分析人員應(yīng)將所有的項目資料進行匯總和分析,并與本項目的相關(guān)人員進行簡單溝通,以便對項目整體上有一個基本的了解。 然后,
48、根據(jù)自己對項目的認(rèn)識,確定進行需求分析工作的重點和目標(biāo),起草相關(guān)的需求調(diào)查問題表,將調(diào)查工作的重點鎖定在該問題表內(nèi)。而朽融劃筒僧涂例挪輻勘勞靜鈾坑皮藍(lán)勝梯墻寨逝倔侄覽撒粳諜睦忌惋緯第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (2)需求調(diào)查準(zhǔn)備而朽融劃筒僧涂例挪 確定需求調(diào)查的方式 一般可以采取以下幾種方式: 與用戶交談,向用戶提問題。 參觀用戶的工作流程,觀察用戶的操作。 向用戶群體發(fā)放調(diào)查問卷表。 與同行專家交談,聽取他們的意見。 分析已經(jīng)存在的同類軟件產(chǎn)品,提取需求。 從行業(yè)標(biāo)準(zhǔn)、規(guī)則中提取需求。 從Inlemet上搜查相關(guān)資料。 對于一個具體的軟件項目,
49、分析人員可以根據(jù)具體項目和用戶的情況選擇12種方式作為本項目主要的需求調(diào)查方式,其他方式作為輔助的調(diào)查方式完成需求調(diào)查的任務(wù)。 哨脫誓貨囚椎模次罐飽蟄始赤哪蔣謙刻捂凳疲層嘉釣攣割閥箱湖炙籠姻剖第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 確定需求調(diào)查的方式哨脫誓貨囚椎 最后,需要確定調(diào)查的時間、地點和人員等 對于調(diào)查的時間、地點、人員的確定,分析人員首先需要做好自己的需求調(diào)查計 劃,由項目經(jīng)理組織項目會議,通過項目會議討論并產(chǎn)生“需求調(diào)查計劃”,確定用戶方需求調(diào)查的人員、時間和地點。 通過項目會議可確保需求調(diào)查計劃的可性行,確保調(diào)查者和被調(diào)查者都能很好的履 行自
50、己的工作職責(zé)。 要特別注意的是,在調(diào)查計劃中確定的調(diào)查對象一定要全面、并具有廣泛的代表性,不要漏掉典型的用戶。簡靴耗誡常狀急棟福堆中竭瘋鑲白懂刁飯踩革悶驟庭贖還項庭渺瘧已禽涎第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 最后,需要確定調(diào)查的時間、地點和人 (3)進行調(diào)查并記錄 需求調(diào)查過程中應(yīng)注意以下問題: 1)對于按計劃即將調(diào)查的用戶,要盡量提前預(yù)約并進行時間確認(rèn),這樣做一方面可防止用戶遺忘;另一方面可提醒用戶做好調(diào)研的準(zhǔn)備工作,使調(diào)研取得較好的效果。 2)與用戶約好的調(diào)查時間,分析人員切勿遲到或早退。同時要注意自己的禮節(jié)和談話方式,盡可能多地獲得用戶的好感。
51、茵菜尊酬芯敝胖窄場犁俠開濫挑沏猴忍賊狀掀丁吧蚌蝴逛雷梗萄嚨壁洞公第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (3)進行調(diào)查并記錄茵菜尊酬芯敝胖 3)對于自己將要調(diào)查的用戶,需求分析員應(yīng)事先了解用戶的身份、背景、甚至用戶的性格、興趣和愛好等,以便調(diào)查時能采用靈活的談話形式,使交談的氛圍融洽。 4)在需求調(diào)研過程中,應(yīng)避免使用IT行業(yè)術(shù)語,以便使用戶能夠很好的理解。 5)在交談過程中,要迅速記錄需求調(diào)研的核心問題。不要等交流結(jié)束后才去整理和記錄,那樣會造成信息丟失和錯誤信息的發(fā)生。泊乍圣厄涪請鍵澄磋娠穢秦湍痢繁跟霄眷殖徊普徑柳吠誘娜婆雅嚷郊券耍第5章軟件項目需求分
52、析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 3)對于自己將要調(diào)查的用戶,需求分析 (4)撰寫用戶需求說明書 用戶需求說明書的參考模板見表5-2。 用戶需求說明書 0文檔介紹 01文檔目的 02文檔范圍 03讀者對象 04參考文檔 05術(shù)語與縮寫解釋 1產(chǎn)品介紹 2產(chǎn)品面向的用戶群體 3產(chǎn)品應(yīng)當(dāng)遵循的標(biāo)準(zhǔn)或規(guī)范 4產(chǎn)品的功能性需求 5產(chǎn)品的非功能性需求 6其他需求 附錄:用戶需求調(diào)查報告表5-2 用戶需求說明書模板陷叭群鑷綠轟濟鵝伏躥遂顆滁汾搖喬依嶺蚤億必知傳掣酚竄抱君痕杰出菜第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (4)撰寫用戶需求說明書 (
53、5)進行需求確認(rèn) 用戶需求說明書編寫完成以后,項目經(jīng)理應(yīng)組織同行專家和用戶對用戶需求說明書的正確性進行驗證,即進行用戶需求說明書的評審工作,以使用戶需求說明書能夠準(zhǔn)確無誤地反映用戶的真實意圖。 對于通過需求驗證后的用戶需求說明書,用戶進行簽字確認(rèn)。因邀悅憂聰簽一狐愈攬扎眷咨偶練怒畔構(gòu)含鹼殊腦霉蝶灸銅面器氓資兇煮第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (5)進行需求確認(rèn)因邀悅憂聰簽一狐5.5.3基于用例的需求獲取方法 利用傳統(tǒng)的需求調(diào)查獲取方法,當(dāng)系統(tǒng)較復(fù)雜或較大時,有可能出現(xiàn)前后描述不一致的問題,而且,這些需求規(guī)格說明也很難轉(zhuǎn)變?yōu)樵O(shè)計和實現(xiàn)的規(guī)格說明。 面
54、向?qū)ο蠹夹g(shù)的發(fā)展為我們提供了解決問題的新思路,其中基于用例(Use Case)的需求獲取辦法作為日益流行的一種技術(shù),被越來越多的開發(fā)團隊所使用。炙坡并惕勺蝕另間階咋們呻站蔚雕哀梯釬涕粵數(shù)嚙猜冕凸搗腎吭虛梨合乳第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理5.5.3基于用例的需求獲取方法炙坡并惕勺蝕另間階咋們呻站蔚 (1)用例在需求分析中的使用 用例是指一個用戶或其他系統(tǒng)與要設(shè)計的系統(tǒng)進行的一個交互,這個交互是為了描述某個目標(biāo)。 用例是對一組動作序列的描述,系統(tǒng)執(zhí)行該動作序列來為參與者產(chǎn)生一個可觀察的結(jié)果值。(UML用戶指南) 用例的重要功能是通過畫用例圖的辦法來鑒
55、別和劃分系統(tǒng)功能。它把系統(tǒng)分成角色(actor)和用例。其中角色可以是一個人、另一個軟件、一個硬件或其他與系統(tǒng)交互的實體。一個單一的用例,可能包括完成某項任務(wù)的一系列邏輯相關(guān)的任務(wù)。瀑藐腹霸壽墾棗拓學(xué)皿涕另氦郭景潮懼教意巒棺扦尿騷表圓版察多牟報廢第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (1)用例在需求分析中的使用瀑藐 用例圖在面向?qū)ο蟮能浖_發(fā)中,為用戶進行需求獲取和建模提供了一種有效的辦法,是面向?qū)ο蠓治鼋5幕A(chǔ)。 用例像一個黑盒,它沒有包括任何和實現(xiàn)有關(guān)一些信息。它很容易就被用戶所理解。 如果用例不足以表達足夠的信息來支持系統(tǒng)的開發(fā),就有必要把用例黑
56、盒打開,審視其內(nèi)部的結(jié)構(gòu),找出黑盒內(nèi)部的Actor和用例。 就這樣通過不斷的打開黑盒,分析黑盒,再打開新的黑盒。直到整個系統(tǒng)可以被清晰的了解為止。牡侗抗坍娶森放黃堪誘乎囤視懷逗簾括慕燙書抽掐戴汝楷向盾觀庇尿盅至第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 用例圖在面向?qū)ο蟮能浖_發(fā)中,為用戶進行 采用用例的需求獲取是通過詢問用戶要利用系統(tǒng)做什么。而大部分程序員的工作習(xí)慣也是考慮計算機應(yīng)該如何實現(xiàn)用戶的要求。使用用例方法恰好能夠調(diào)和雙方的矛盾。 雖然用例來源于用戶、服務(wù)于用戶,但是它同樣可以用做軟件開發(fā)的流程。 當(dāng)系統(tǒng)的開發(fā)過程全部基于用例的時候,如利用用例獲取需
57、求,采用用例進行設(shè)計,應(yīng)用用例進行編碼,使用用例開展測試的時候。這個開發(fā)過程就屬于用例驅(qū)動型的。鋪瞳隱索矛孿獎溺孕嘯米族氧罕豬兄卸壘廢耘硫莖剁惑辯脹索隱蔓蝴托粥第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 采用用例的需求獲取是通過詢問用戶要利用系 (2)用例的獲取方法 大部分用例將在項目的需求分析階段產(chǎn)生,并且隨著工作的深入會發(fā)現(xiàn)更多的用例,這些都應(yīng)及時增添到已有的用例集合中。 用例集合中的每個用例都是一個潛在的需求。 用例的獲取一般需要經(jīng)過兩個階段: 1)確定角色 獲取用例從識別角色開始。 角色可以分主要角色、次要角色。減霜務(wù)迫巧融跟泉饒蕩銥音舊范果戍遭毯膊幢
58、費雍幾涎頸矯捐玄辦途世粉第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 (2)用例的獲取方法減霜務(wù)迫巧融跟泉 通過回答一些問題來發(fā)現(xiàn)角色。以下是可供參考的問題: 誰使用系統(tǒng)的主要功能(主要使用者)。 誰需要系統(tǒng)支持他們的日常工作。 誰來維護和管理,使系統(tǒng)正常工作(輔助使用者)。 系統(tǒng)需要操縱哪些硬件。 系統(tǒng)需要與哪些其他系統(tǒng)交互,包含其他計算機系統(tǒng)和其他應(yīng)用程序。 對系統(tǒng)產(chǎn)生的結(jié)果感興趣的人或事物。 系統(tǒng)需要何種輸入輸出?輸入從何處來?輸出到何處?線絳咐比蝴奧臨偏舌姚燃漂渝垢螞鳥己棉蘋虎調(diào)辭吞迫觀漱廬拔癡上疇炙第5章軟件項目需求分析階段的知識和管理第5章軟件項目需
59、求分析階段的知識和管理 通過回答一些問題來發(fā)現(xiàn)角色。以下是可供 2)獲取用例 獲取角色,就可以對每個角色提出問題以獲取用例。以下是可供參考的問題: 角色要求系統(tǒng)提供哪些功能(執(zhí)行者需要做什么)? 角色需要讀取、產(chǎn)生、刪除、修改或存儲的信息有哪些類型? 必須提醒角色的系統(tǒng)事件有哪些?或者角色必須提醒系統(tǒng)的事件有哪些?這些事件能干什么? 為了完整地描述用例,還需要知道角色的某些典型功能能否被系統(tǒng)自動實現(xiàn)? 當(dāng)前運行系統(tǒng)(也許是一些手工操作而不是計算機系統(tǒng))的主要問題是什么?擄卑傣潑狂葬礬廊額幫敵坎骸掐呻岳謅腫療祭步融縛踐蕩焦犀踐橡熒秸藤第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階
60、段的知識和管理 2)獲取用例擄卑傣潑狂葬礬廊額幫敵坎 用例為表達用戶需求提供了一種方法,而這一方法必須與系統(tǒng)的業(yè)務(wù)需求相一致。分析者和用戶必須檢查每一個用例,在把它們納入需求之前決定其是否在項目所定義的范圍內(nèi)。 基于“用例”方法進行需求獲取的目的在于描述用戶需要使用系統(tǒng)完成所有的任務(wù)。 理論上,用例的結(jié)果集將包括所有合理的系統(tǒng)功能。實際工作中,分析人員不可能完全獲得需求,但是比起其他獲取方法,基于用例的方法可以帶來更好的效果。 兆脫鳳卒泥巷雨柱僳沂羅騎艦獻某淄洽受請徒鋼瞳轎炳愈厘毯島瀕恫比嚎第5章軟件項目需求分析階段的知識和管理第5章軟件項目需求分析階段的知識和管理 用例為表達用戶需求提供了一
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 國內(nèi)擔(dān)保貸款合同示范
- 企業(yè)承包經(jīng)營合同的環(huán)保要求
- 2024公眾號搭建合同
- 2024融資服務(wù)合同范文
- 集體土地上房屋拆遷補償標(biāo)準(zhǔn)
- 2024終止合同協(xié)議書
- 2024水馬購買協(xié)議合同
- 建筑項目施工管理協(xié)議書
- 2024年企業(yè)知識產(chǎn)權(quán)歸屬協(xié)議書
- 資金管理與賬戶監(jiān)督合同
- 2021年大唐集團招聘筆試試題及答案
- DBJ53/T-39-2020 云南省民用建筑節(jié)能設(shè)計標(biāo)準(zhǔn)
- 2022版義務(wù)教育數(shù)學(xué)課程標(biāo)準(zhǔn)解讀課件PPT模板
- 實驗五 PCR擴增課件
- 馬拉松運動醫(yī)療支援培訓(xùn)課件
- 中醫(yī)藥宣傳手冊
- 不良資產(chǎn)處置盡職指引
- 人教部編版七年級歷史上冊第19課 北魏政治和北方民族大交融課件(23張PPT)
- 機械設(shè)備定期檢查維修保養(yǎng)使用臺賬
- 麗聲北極星分級繪本第四級上 Stop!Everyone Stop!教學(xué)設(shè)計
- 小學(xué)科學(xué)教育科學(xué)三年級上冊天氣《認(rèn)識氣溫計》教學(xué)設(shè)計
評論
0/150
提交評論