軟件系統(tǒng)開發(fā)技術(shù)講義_第1頁
軟件系統(tǒng)開發(fā)技術(shù)講義_第2頁
軟件系統(tǒng)開發(fā)技術(shù)講義_第3頁
軟件系統(tǒng)開發(fā)技術(shù)講義_第4頁
軟件系統(tǒng)開發(fā)技術(shù)講義_第5頁
已閱讀5頁,還剩506頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

課名:軟件工程主講:謝明志Email:tommyshell@163.com使用教材:軟件系統(tǒng)開發(fā)技術(shù)(修訂版) 潘錦平施小英姚天昉西安電子科技大學(xué)出版社1/16/20231第一章軟件工程概述1/16/20232§1.1軟件工程的背景和歷史1968年由NATO(北大西洋公約組織)在德國Garmish召開的學(xué)術(shù)會(huì)議上,F(xiàn)eitzBauer首先提出了“軟件工程”概念。1/16/20233軟件工程與編程前者是一門學(xué)科,一種科學(xué)理論來指導(dǎo)軟件系統(tǒng)開發(fā),標(biāo)準(zhǔn)化,自動(dòng)化的過程考慮如何分解一個(gè)系統(tǒng),以便各人分工開發(fā);考慮如何說明每個(gè)部分的規(guī)格要求;怎樣才能易于維護(hù)單純的代碼編寫是軟件工程發(fā)展的前身是軟件工程中占據(jù)很少時(shí)間和空間的一部分1/16/20234計(jì)算機(jī)學(xué)科的發(fā)展計(jì)算機(jī)科學(xué)(CS)計(jì)算機(jī)科學(xué)(CS)計(jì)算機(jī)工程(CE)軟件工程(SE)信息系統(tǒng)(IS)計(jì)算學(xué)科(computingdiscipline)1/16/2023560年代以來工廠管理病人監(jiān)護(hù)工資統(tǒng)發(fā)圖書館管理機(jī)票預(yù)定學(xué)籍管理1/16/20236

早期

第二階段第三階段第四階段面向批處理

多用戶

分布式系統(tǒng)

強(qiáng)大的桌面系統(tǒng)有限的分布

實(shí)時(shí)

嵌入“智能”面向?qū)ο蠹夹g(shù)自定義軟件

數(shù)據(jù)庫

低成本硬件

專家系統(tǒng)

軟件產(chǎn)品消費(fèi)者的影響

人工神經(jīng)網(wǎng)絡(luò)

并行計(jì)算

網(wǎng)絡(luò)計(jì)算機(jī)195019601970198019902000Evolutionofsoftware#1/16/20237為什么發(fā)展如此之快不準(zhǔn)確的時(shí)間和金錢的估算軟件質(zhì)量的低下相對(duì)硬件產(chǎn)品開發(fā)軟件開發(fā)費(fèi)用的增加維護(hù)、增強(qiáng)軟件系統(tǒng)的必要性硬件價(jià)格大幅度下降1/16/20238軟件技術(shù)面臨的問題規(guī)模復(fù)雜性生產(chǎn)率

1/16/20239Windows95有1000萬行代碼Windows2000有5000萬行代碼例:Exchange2000和Windows2000開發(fā)人員結(jié)構(gòu)Exchange2000Windows2000項(xiàng)目經(jīng)理25人約250人開發(fā)人員140人約1700人測(cè)試人員350人約3200人1/16/202310《人人月月神神話話》》焦油油坑坑史前前史史中中,,沒沒有有別別的的場(chǎng)場(chǎng)景景比比巨巨獸獸在在焦焦油油坑坑中中垂垂死死掙掙扎扎的的場(chǎng)場(chǎng)面面更更令令人人震震撼撼。。上上帝帝見見證證著著恐恐龍龍、、猛猛犸犸象象、、劍劍齒齒虎虎在在焦焦油油中中掙掙扎扎。。它它們們掙掙扎扎得得越越是是猛猛烈烈,,焦焦油油糾糾纏纏得得越越緊緊,,沒沒有有任任何何猛猛獸獸足足夠夠強(qiáng)強(qiáng)壯壯或或具具有有足足夠夠的的技技巧巧,,能能夠夠掙掙脫脫束束縛縛,,它它們們最最后后都都沉沉到到了了坑坑底底。。12/29/202211軟件危機(jī)機(jī)的主要要特征軟件開發(fā)發(fā)周期大大大超過過規(guī)定日期;軟件開發(fā)成本本嚴(yán)重超標(biāo);軟件質(zhì)量難于于保證。12/29/202212軟件工程的定定義FritzBauer在NATO會(huì)議上給出的的定義:“軟件工程是是為了經(jīng)濟(jì)地地獲得可靠的的和能在實(shí)際際機(jī)器上高效效運(yùn)行的軟件件而確立和使使用的健全的的工程原理((方法)?!薄?2/29/202213軟件工程的的定義(2)IEEE【IEE83】給出的軟件件工程定義義:“軟件工程程是開發(fā)、、運(yùn)行、維維護(hù)和修復(fù)復(fù)軟件的系系統(tǒng)方法。?!?2/29/202214軟件工程的的定義(3)IEEE【IEE93】】給出出了了一一個(gè)個(gè)更更加加綜綜合合的的定定義義::“將系系統(tǒng)統(tǒng)化化的的、、規(guī)規(guī)范范的的、、可可度度量量的的方方法法應(yīng)應(yīng)用用于于軟軟件件的的開開發(fā)發(fā)、、運(yùn)運(yùn)行行和和維維護(hù)護(hù)的的過過程程,,即即將將工工程程化化應(yīng)應(yīng)用用于于軟軟件件中中。?!薄?2/29/202215軟件件工工程程是是一一門門交交叉叉學(xué)學(xué)科科軟件工程的主主要研究?jī)?nèi)容容軟件開發(fā)技術(shù)術(shù):軟件開發(fā)方法法學(xué)軟件開發(fā)過程程軟件工工具和和軟件件工程程環(huán)境境軟件工程程管理:軟件管理理學(xué)軟件經(jīng)濟(jì)濟(jì)學(xué)軟件心理理學(xué)軟件工程程所包含含的內(nèi)容容不是一一成不變變的,隨著人們們對(duì)軟件件系統(tǒng)的的研制開開發(fā)和生生產(chǎn)的理理解。應(yīng)用發(fā)展展的眼光光看待它它。12/29/202216軟件工程程——一種層次次化技術(shù)術(shù)工具方法過程質(zhì)量焦點(diǎn)點(diǎn)Softwareengineeringlayers軟件工程程三個(gè)要要素:方法、工工具、過過程12/29/202217軟件工程程與一般般工程的的差異軟件是邏邏輯產(chǎn)品品而不是是實(shí)物產(chǎn)產(chǎn)品軟件的功功能依賴賴于硬件件和軟件件的運(yùn)行行環(huán)境以以及人們們對(duì)它的的操作軟件設(shè)計(jì)計(jì)的復(fù)雜雜性軟件特征征:功能的多多樣性實(shí)現(xiàn)的多多樣性能見度低低軟件結(jié)構(gòu)構(gòu)合理性性差智力密集集及知識(shí)識(shí)產(chǎn)權(quán)保保護(hù)12/29/202218軟件工程知知識(shí)結(jié)構(gòu)2001年年5月ISO/IECJTC1((ISO和和IEC的的第一聯(lián)合合技術(shù)委員員會(huì))發(fā)布布了《SWEBOK指南V0.95(試試用版)》》SWEBOK把軟件件工程學(xué)科科的主體知知識(shí)分為10個(gè)知識(shí)識(shí)領(lǐng)域。12/29/202219軟件件工工程程知知識(shí)識(shí)結(jié)結(jié)構(gòu)構(gòu)軟件件需需求求軟件件設(shè)設(shè)計(jì)計(jì)軟件件構(gòu)構(gòu)造造軟件件測(cè)測(cè)試試軟件件維維護(hù)護(hù)軟件件配配置置管管理理軟件件工工程程管管理理軟件件工工程程過過程程軟件件工工程程工工具具和和方方法法軟件件質(zhì)質(zhì)量量12/29/202220“軟件工程””課程與其它軟件專專業(yè)課的區(qū)別別(1)立足足于系統(tǒng)的整整體。(2)講授授系統(tǒng)分析、、系統(tǒng)設(shè)計(jì)、、測(cè)試及維護(hù)的的理論和方法法。(3)構(gòu)筑筑一個(gè)軟件系系統(tǒng),實(shí)踐軟件開發(fā)全過過程。12/29/202221“軟件件工程程”課課程教教學(xué)的的目標(biāo)標(biāo)轉(zhuǎn)變對(duì)對(duì)軟件件的認(rèn)認(rèn)識(shí)::上升程序系系統(tǒng)統(tǒng)轉(zhuǎn)變思思維定定式::上升程序員員系系統(tǒng)工工程師師(系統(tǒng)統(tǒng)分析析員)12/29/202222軟件件產(chǎn)產(chǎn)品品的的標(biāo)標(biāo)準(zhǔn)準(zhǔn)化化軟件件開開發(fā)發(fā)過過程程的的標(biāo)標(biāo)準(zhǔn)準(zhǔn)化化12/29/202223軟件的工工業(yè)化生生產(chǎn)過程程應(yīng)具備備的特點(diǎn)點(diǎn):明確的工工作步驟驟詳細(xì)具體體的規(guī)范范化文檔檔明確的質(zhì)質(zhì)量評(píng)價(jià)價(jià)標(biāo)準(zhǔn)“一個(gè)好的工工業(yè),應(yīng)有一一套

良好的的標(biāo)準(zhǔn)來配套套”12/29/202224軟件工程技術(shù)術(shù)的兩個(gè)特點(diǎn)點(diǎn)強(qiáng)調(diào)規(guī)范化強(qiáng)調(diào)文檔化12/29/202225§1.2軟軟件和軟件生生命期模型(SoftwareLifeCycle)軟件產(chǎn)品或軟軟件系統(tǒng)從設(shè)設(shè)計(jì)、投入使使用到被淘汰汰的全過程。。12/29/202226軟件生存期的的階段劃分(1)可行性性研究與計(jì)劃劃(2)需求分分析(3)總體設(shè)設(shè)計(jì)(4)詳細(xì)設(shè)設(shè)計(jì)(5)實(shí)現(xiàn)(6)集成測(cè)測(cè)試(7)確認(rèn)測(cè)測(cè)試(8)使用和和維護(hù)成長(zhǎng)期(開發(fā)發(fā)期)懷孕期(計(jì)劃劃期)成年期(運(yùn)行行期)12/29/202227新的國際標(biāo)標(biāo)準(zhǔn)定義的的軟件生存存過程(1995ISO/IEC12207)軟件生存期期過程支持過程組織過程主要過程獲取過程供應(yīng)過程開發(fā)過程運(yùn)行過程維護(hù)過程文檔編制過程配置管理過程質(zhì)量保證過程驗(yàn)證過程確認(rèn)過程聯(lián)合評(píng)審過程審核過程問題解決過程管理過程基礎(chǔ)設(shè)施過程改進(jìn)過程培訓(xùn)過程12/29/202228軟件工作的的范圍只考慮編寫程序涉及整個(gè)軟件生存周期擴(kuò)展到12/29/202229軟件件開開發(fā)發(fā)模模型型是是軟軟件件開開發(fā)發(fā)全全部部過過程程、、活活動(dòng)動(dòng)和和任任務(wù)務(wù)的的結(jié)構(gòu)構(gòu)框框架架。它它能能直直觀觀表表達(dá)達(dá)軟軟件件開開發(fā)發(fā)全全過過程程,,明明確確規(guī)規(guī)定定要要完完成成的的主主要要活活動(dòng)動(dòng)、、任任務(wù)務(wù)和和開開發(fā)發(fā)策策略略。。軟軟件件開開發(fā)發(fā)模模型型也也常常稱稱為為::軟件件過過程程模模型型軟件件生生存存周周期期模模型型軟件件工工程程范范型型軟件件開開發(fā)發(fā)模模型型12/29/202230可行行性性研研究究與與計(jì)計(jì)劃劃需求求分分析析設(shè)計(jì)計(jì)編碼碼運(yùn)行行維維護(hù)護(hù)測(cè)試試定義義階段段開發(fā)階段維護(hù)護(hù)階階段段瀑布布模模型型(WaterfallModel)12/29/202231開發(fā)發(fā)軟軟件件不不僅僅僅僅是是編編程程12/29/202232按照照傳傳統(tǒng)統(tǒng)瀑瀑布布模模型型開開發(fā)發(fā)軟軟件件的的特特點(diǎn)點(diǎn)1.階段段間具有有順序性性和依賴賴性。2.推遲遲實(shí)現(xiàn)的的觀點(diǎn)。。3.每個(gè)個(gè)階段必必須完成成規(guī)定的的文檔;每個(gè)階段段結(jié)束前前完成文文檔審查查,及早改正正錯(cuò)誤。。12/29/202233原型模型型(快速原原型模型型)原型范型型用戶測(cè)試試運(yùn)行原型型建造/修修改原型聽取用戶意見12/29/202234采用原型型模型的的軟件生生存周期期分析定義義系統(tǒng)需求求生成原型系統(tǒng)設(shè)計(jì)程序設(shè)計(jì)編碼測(cè)試運(yùn)行和維護(hù)原型化含原型化化的軟件生存存期12/29/202235§1.3軟件件質(zhì)量的的評(píng)價(jià)成功的標(biāo)標(biāo)準(zhǔn):用戶在用用戶可很很容易做做完要做做的事失敗的根根本原因因:開發(fā)人員員寫出的的東西達(dá)達(dá)不到用戶要求求(人的的問題.技術(shù)問問題)12/29/202236質(zhì)量與生產(chǎn)產(chǎn)率質(zhì)量是軟件件需求方最最關(guān)心的問問題,用戶戶即使不圖圖物美價(jià)廉廉,也要求求個(gè)貨真價(jià)價(jià)實(shí)質(zhì)量與生產(chǎn)產(chǎn)率之間有有著內(nèi)在的的聯(lián)系,高高生產(chǎn)率必必須以質(zhì)量量合格為前前提質(zhì)量與生產(chǎn)產(chǎn)率的提高高就指望程程序員與程程序經(jīng)理非得在質(zhì)量量與生產(chǎn)率率之間分個(gè)個(gè)主次不可可,那么應(yīng)應(yīng)該是質(zhì)量量第一,生生產(chǎn)率第二二12/29/202237質(zhì)量與生產(chǎn)產(chǎn)率(2))質(zhì)量直接體體現(xiàn)在軟件件的每段程程序中,高高質(zhì)量自然然是開發(fā)人人員的技術(shù)術(shù)追求,也也是職業(yè)道道德的要求求高質(zhì)量對(duì)所所有的用戶戶都有價(jià)值值,而高生生產(chǎn)率只對(duì)對(duì)開發(fā)方有有意義如果一開始始就追求高高生產(chǎn)率,,容易使人人急功近利利,留下隱隱患12/29/202238不貪污的官官就是好官官嗎“運(yùn)行正確確”的程序序就是高質(zhì)質(zhì)量的程序序嗎?也許運(yùn)行速速度很低并并且浪費(fèi)內(nèi)內(nèi)存;也許許代碼寫得得一塌糊涂涂12/29/202239軟件的質(zhì)質(zhì)量因素素軟件的質(zhì)質(zhì)量因素素很多,,如正確確性、精精確性、、可靠性性、容錯(cuò)錯(cuò)性、性性能、效效率、易易用性、、可理解解性、簡(jiǎn)簡(jiǎn)潔性、、可復(fù)用用性、可可擴(kuò)充性性、兼容容性等等等(還可可以列出出十幾個(gè)個(gè))一般說來來傾向于于可維護(hù)護(hù)性、可可靠性、、可理解解性和效效率12/29/202240軟件質(zhì)量量因素分分類和武武學(xué)分類類正確性與精確性易用性可理解性與簡(jiǎn)潔性性能與效率可復(fù)用性與可擴(kuò)充性少林派、武當(dāng)派華山派昆侖派峨嵋派崆峒派12/29/202241正確性與與精確性性機(jī)器不會(huì)會(huì)主動(dòng)欺欺騙人,,軟件運(yùn)運(yùn)行不正正確或者者不精確確一般都都是人造造成的需求分析析錯(cuò)了,,那么對(duì)對(duì)客戶而而言這個(gè)個(gè)軟件也也存在錯(cuò)錯(cuò)誤如果軟件件沒有100%地按需求求規(guī)格執(zhí)執(zhí)行,那那么這個(gè)個(gè)軟件也也存在錯(cuò)錯(cuò)誤程序員要要為“正正確”、、“精確確”四個(gè)個(gè)字竭盡盡全力12/29/202242性能與效率用戶都希望軟軟件的運(yùn)行速速度高些(高高性能),并并且占用資源源少些(高效效率)舊社會(huì)地主就就是這么對(duì)待待長(zhǎng)工的:干干活要快點(diǎn),,吃得要少點(diǎn)點(diǎn)通過優(yōu)化算法法、數(shù)據(jù)結(jié)構(gòu)構(gòu)和代碼組織織來提高軟件件系統(tǒng)的性能能與效率優(yōu)化化的關(guān)鍵工作是找出限限制性能與效效率的“瓶頸頸”12/29/202243易用用性性導(dǎo)致致軟軟件件易易用用性性差差的的根根本本原原因因是是開開發(fā)發(fā)人人員員犯犯了了““錯(cuò)錯(cuò)位位””的的毛毛病?。海核砸詾闉橹恢灰宰约杭河糜闷鹌饋韥矸椒奖惚悖?,用用戶戶也也一一定定會(huì)會(huì)滿滿意意當(dāng)用戶真的的感到軟件件很好用時(shí)時(shí),一股溫溫暖的感覺覺油然而生生,于是就就用“友好好”來評(píng)價(jià)價(jià)易用性12/29/202244可理解性與簡(jiǎn)簡(jiǎn)潔性(Note1)開發(fā)人員只有有在自己思路路清晰時(shí)才可可能寫出讓別別人能理解的的程序編程時(shí)還要注注意不可濫用用技巧,應(yīng)該該用自然的方方式編程簡(jiǎn)潔是一種美美如果把學(xué)術(shù)文文章寫得很簡(jiǎn)簡(jiǎn)潔,讓人很很容易理解,,它往往中不不了12/29/202245可復(fù)用性與可可擴(kuò)充性一種方式是原原封不動(dòng)地使使用現(xiàn)成的軟軟件構(gòu)件一種方式是對(duì)對(duì)現(xiàn)成的軟構(gòu)構(gòu)件進(jìn)行必要要的擴(kuò)充后再再使用可復(fù)用性好的的程序一般也也具有良好的的可擴(kuò)充性12/29/202246可行性研究與計(jì)劃需求分析設(shè)計(jì)編碼運(yùn)行維護(hù)測(cè)試測(cè)試已經(jīng)開始始返回上級(jí),再再…..瀑布模型的質(zhì)質(zhì)量保障體系系12/29/202247小結(jié)(Note2)軟件的高質(zhì)量量主要是設(shè)計(jì)計(jì)出來的不是“管”出出來的更不能依賴質(zhì)質(zhì)量檢查。12/29/202248第二章可可行行性研究與與計(jì)劃12/29/202249系統(tǒng)流程圖圖(Note3)輸入單據(jù)磁盤文件處理輸出單據(jù)12/29/202250數(shù)據(jù)流程圖圖數(shù)據(jù)源點(diǎn)和和終點(diǎn)變換數(shù)據(jù)的的加工文件數(shù)據(jù)邏輯關(guān)系符符號(hào):與、、或、異或或12/29/202251§2.1可行行性研究基基本概念可行性研究究的任務(wù):可行性研究究的主要任任務(wù)是“了了解客戶的的要求及現(xiàn)現(xiàn)實(shí)環(huán)境,,從技術(shù)、、經(jīng)濟(jì)和社社會(huì)因素等等三方面研研究并論證證本軟件項(xiàng)項(xiàng)目的可行行性,編寫寫可行性研研究報(bào)告,,制定初步步項(xiàng)目開發(fā)發(fā)計(jì)劃?!薄?2/29/202252可行行性性研研究究的的內(nèi)內(nèi)容容(1)技技術(shù)術(shù)可可行行性性(2)經(jīng)經(jīng)濟(jì)濟(jì)可可行行性性(3)操操作作可可行行性性(4)社社會(huì)會(huì)可可行行性性(法法律律可可行行性性)(5)抉抉擇擇12/29/202253技術(shù)可行行性(Note4)度量一個(gè)個(gè)特定技技術(shù)信息息系統(tǒng)解解決方案案的實(shí)用用性及技技術(shù)資源源的可用用性考慮的問問題開發(fā)風(fēng)險(xiǎn)險(xiǎn)分析資源分析析相關(guān)技術(shù)術(shù)的發(fā)展展(現(xiàn)有有技術(shù)能能否實(shí)現(xiàn)現(xiàn)新系統(tǒng)統(tǒng),技術(shù)術(shù)難點(diǎn)、、建議采采用技術(shù)術(shù)的先進(jìn)進(jìn)性)12/29/202254經(jīng)濟(jì)可行行性度量系統(tǒng)統(tǒng)解決方方案的性性能價(jià)格格比考慮的問問題成本/效效益分析析有形成本本、效益益無形成本本、效益益價(jià)值和成成本的關(guān)關(guān)系質(zhì)量與價(jià)價(jià)值、成成本的關(guān)關(guān)系價(jià)值/成成本的均均衡12/29/202255經(jīng)濟(jì)可可行性性考慮慮的問問題(Note5)成本和和效益益的估估算開發(fā)成成本的的估算算開發(fā)效效益的的估算算運(yùn)行成成本的的估算算運(yùn)行效效益的的估算算12/29/202256成本分析代碼行技術(shù)術(shù)(page19))任務(wù)估算技技術(shù)(page20))總成本、總總?cè)肆ο鄬?duì)對(duì)誤差在內(nèi)內(nèi)Putnam估算模模型(page21))COCOMO模型比比較復(fù)雜12/29/202257效益分析系統(tǒng)的經(jīng)濟(jì)濟(jì)效益=使使用新系統(tǒng)統(tǒng)增加收入入+使用心心系統(tǒng)可以以節(jié)省的運(yùn)運(yùn)行費(fèi)用總的效益和和軟件生存存周期有關(guān)關(guān)貨幣的時(shí)間間價(jià)值(page23)投資回收期期(page23))投資回收率率(page23))純收入(page23)投資回收率率12/29/202258系統(tǒng)開發(fā)和和每年運(yùn)行行費(fèi)用舉例例1.系統(tǒng)開開發(fā)費(fèi)用((一次).2名系統(tǒng)分分析員(450小時(shí)時(shí)/名,45美元/小時(shí))$40,500.5名系統(tǒng)開開發(fā)人員(275小小時(shí)/名,36美元元/小時(shí))$49,500.1名數(shù)據(jù)庫庫管理員(30小時(shí)時(shí)/名,42美元/小時(shí))$1,260.2名技術(shù)寫寫作者(120小時(shí)時(shí)/名,25美元/小時(shí))$6,000.1名秘書(160小時(shí)/名,15美美元/小時(shí))$2,40012/29/202259系統(tǒng)開發(fā)和每每年運(yùn)行費(fèi)用用舉例.1名數(shù)據(jù)通訊訊專家(60小時(shí)/名,42美元/小時(shí))$2,4002名在轉(zhuǎn)換期期間數(shù)據(jù)輸入入人員$49,500(40小時(shí)/名,12美美元/小時(shí))12/29/202260系統(tǒng)開發(fā)和每每年運(yùn)行費(fèi)用用舉例培訓(xùn):三天的開發(fā)人人員內(nèi)部培訓(xùn)訓(xùn)課程$7,00030個(gè)用戶,,三天的內(nèi)部部培訓(xùn)課程$10,000物資:復(fù)印$500磁盤、紙張等等消耗品$65012/29/202261系統(tǒng)開開發(fā)和和每年年運(yùn)行行費(fèi)用用舉例例購買硬硬件、、軟件件:20臺(tái)臺(tái)工作作站W(wǎng)indows軟件件$1,00020臺(tái)臺(tái)工作作站內(nèi)內(nèi)存升升級(jí)$8,000網(wǎng)絡(luò)軟軟件$17,50020臺(tái)臺(tái)工作作站辦辦公軟軟件產(chǎn)產(chǎn)品$20,000系統(tǒng)開開發(fā)總總費(fèi)用用$161,67012/29/202262系統(tǒng)統(tǒng)開開發(fā)發(fā)和和每每年年運(yùn)運(yùn)行行費(fèi)費(fèi)用用舉舉例例2.年年運(yùn)運(yùn)行行費(fèi)費(fèi)用用((每每年年))人員員::維護(hù)護(hù)程程序序員員/分分析析員員(250小小時(shí)時(shí)/年年,42美美元元/小小時(shí)時(shí))$10,500網(wǎng)絡(luò)絡(luò)管管理理員員(300小小時(shí)時(shí)/年年,50美美元元/小小時(shí)時(shí))$15,000購買買硬硬件件、、軟軟件件升升級(jí)級(jí)::硬件件$5,000軟件件$6,000物資資和和雜雜項(xiàng)項(xiàng)$3,500每年年總總運(yùn)運(yùn)行行費(fèi)費(fèi)用用$40,00012/29/202263操作可行行性用戶使用用可能性性時(shí)間進(jìn)度度可行性性組織和文文化上的的可行性性12/29/202264社會(huì)可行性性(法律可可行性)開發(fā)項(xiàng)目是是否會(huì)在社社會(huì)上或政政治上引起起侵權(quán)、破破壞或其它它責(zé)任問題題12/29/202265可行性研究究計(jì)劃的完完成可行性研究究計(jì)劃12/29/202266§2.3可可行性研研究的步驟驟(page15)(1)復(fù)查查確認(rèn)系統(tǒng)統(tǒng)目標(biāo)、規(guī)規(guī)模(2)研究究正使用系系統(tǒng)工作流流程(3)導(dǎo)出出新系統(tǒng)高高層邏輯模模型(4)重新新定義問題題(5)導(dǎo)出出和評(píng)價(jià)供供選擇的方方案(6)推薦薦可行的方方案(7)草擬擬開發(fā)計(jì)劃劃(8)編寫寫可行性研研究報(bào)告,,送審12/29/202267第三章需需求分析和和規(guī)格說明明12/29/202268§3.1為什么需要要需求分析析開發(fā)人員往往往急于求求成希望對(duì)開發(fā)發(fā)進(jìn)行指導(dǎo)導(dǎo)希望開發(fā)人人員對(duì)用戶戶的要求理理解希望用戶理理解開發(fā)人人員測(cè)試部門有有理可依12/29/202269需求分析的任任務(wù)準(zhǔn)確地定義未來系統(tǒng)的目目標(biāo),確定為為了滿足用戶戶的需求系統(tǒng)統(tǒng)必須做什么么。用<需需求規(guī)格說明明書>規(guī)范范的形式準(zhǔn)確確地表達(dá)用戶戶的需求。12/29/202270什么是用戶需需求思考、涉及的的幾個(gè)問題如何識(shí)別、獲獲取需求?你能夠采取何何種手段與用用戶進(jìn)行交流流溝通?何為需求建模模?你如何理解模模型與建模?12/29/202271軟件需求分析析的幾個(gè)階段段問題分析問題評(píng)估和方方案綜合建模規(guī)約復(fù)審系統(tǒng)分析員的的主要焦點(diǎn)是“做什么么(what)”,不不是“怎樣樣做(how)”12/29/202272需求獲獲取面面臨的的挑戰(zhàn)戰(zhàn)(Note6)客戶說不不清楚需需求需求易變變性問題的復(fù)復(fù)雜性和和對(duì)問題題空間理解的不不完備性性與不一一致性12/29/202273§3.2需求獲取取的常用用方法(Note7)建立分析析小組領(lǐng)域?qū)<壹遥褐髦鹘窍到y(tǒng)分析析員:導(dǎo)導(dǎo)演客戶訪談?wù)剢栴}分析析與確認(rèn)認(rèn)12/29/202274某出版版社系系統(tǒng)調(diào)調(diào)查表表編號(hào)提出問題1您在哪個(gè)部門工作?2出版業(yè)務(wù)流程是什么?3您每日都處理那些文件、數(shù)據(jù)、報(bào)表?4工作中手工處理特別麻煩的事情是什么?5工作中手工處理什么問題解決不了?影響效率的問題有哪些?6您認(rèn)為提高工作效率,節(jié)省工作時(shí)間,減輕工作強(qiáng)度可采取哪些辦法?12/29/202275某出版版社系系統(tǒng)調(diào)調(diào)查表表編號(hào)提出問題7您的部門需要成本核算和統(tǒng)計(jì)的內(nèi)容有哪些?8您的部門采用計(jì)算機(jī)管理工作情況如何?9如何改進(jìn)業(yè)務(wù)流程使之更合理?10哪些問題是目前傳統(tǒng)手工方法根本無法解決的?11出版社計(jì)算機(jī)管理信息系統(tǒng)需要解決什么問題?12/29/202276聽一一個(gè)個(gè)故故事事(Note8))主人人公公::Contoso制制藥藥公公司司的的高高級(jí)級(jí)管管理理長(zhǎng)長(zhǎng)官官GerhardContoso公公司司的的信信息息系系統(tǒng)統(tǒng)開開發(fā)發(fā)小小組組的的新新管管理理員員Cynthia內(nèi)容容::客戶戶的的需需求求觀觀12/29/202277誰是是客客戶戶客戶戶是是指指直直接接或或間間接接從從產(chǎn)產(chǎn)品品中中獲獲得得利利益益的的個(gè)個(gè)人人或或組組織織軟件件客客戶戶包包括括提提出出要要求求、、支支付付款款項(xiàng)項(xiàng)、、選選擇擇、、具具體體說說明明或或使使用用軟軟件件產(chǎn)產(chǎn)品品的的項(xiàng)項(xiàng)目目風(fēng)風(fēng)險(xiǎn)險(xiǎn)承承擔(dān)擔(dān)者者(stakeholder)或或是是獲獲得得產(chǎn)產(chǎn)品品所所產(chǎn)產(chǎn)生生的的結(jié)結(jié)果果的的人人。。12/29/202278客戶與與開發(fā)發(fā)人員員之間間的合合作關(guān)關(guān)系(Note10))高質(zhì)量量的需需求來來源于于客戶戶與開開發(fā)人人員之之間有有效的的交流流與合合作通常,,開發(fā)發(fā)人員員與客客戶或或客戶戶代理理人成成為一一種對(duì)對(duì)立關(guān)關(guān)系12/29/202279軟件客戶需需求權(quán)利書書(1)(Note11))客戶有如下下權(quán)利:1.要求求分析人員員使用符合合客戶語言言習(xí)慣的表表達(dá)。2.要求求分析人員員了解客戶戶系統(tǒng)的業(yè)業(yè)務(wù)及目標(biāo)標(biāo)。3.要求求分析人員員組織需求求獲取期間間所介紹的的信息,并并編寫軟件件需求規(guī)格格說明。4.要求求開發(fā)人員員對(duì)需求過過程中所產(chǎn)產(chǎn)生的工作作結(jié)果進(jìn)行行解釋說明明。5.要求求開發(fā)人員員在整個(gè)交交流過程中中保持和維維護(hù)一種合合作的職業(yè)業(yè)態(tài)度。12/29/202280軟件客戶戶需求權(quán)權(quán)利書((2)(Note12)6.要要求開發(fā)發(fā)人員對(duì)對(duì)產(chǎn)品的的實(shí)現(xiàn)及及需求都都要提供供建議,,拿出主主意。7.描描述產(chǎn)品品使其具具有易用用、好用用的特性性。8.可可以調(diào)整整需求,,允許重重用已有有的軟件件組件。。9.當(dāng)當(dāng)需要對(duì)對(duì)需求進(jìn)進(jìn)行變更更時(shí),對(duì)對(duì)成本、、影響、、得失((trade-off))有個(gè)真真實(shí)可信信的評(píng)估估。10.獲獲得滿滿足客戶戶功能和和質(zhì)量要要求的系系統(tǒng),并并且這些些要求是是開發(fā)人人員同意意的。12/29/202281軟件客戶戶需求義義務(wù)書(1)(Note13)客戶有下下列義務(wù)務(wù):1.給給分析人人員講解解業(yè)務(wù)及及說明業(yè)業(yè)務(wù)方面面的術(shù)語語等專業(yè)業(yè)問題。。2.抽抽出時(shí)間間清楚地地說明需需求并不不斷完善善。3.當(dāng)當(dāng)說明系系統(tǒng)需求求時(shí),力力求準(zhǔn)確確詳細(xì)。。4.需需要時(shí)要要及時(shí)對(duì)對(duì)需求做做出決策策。5.要要尊重開開發(fā)人員員的成本本估算和和對(duì)需求求的可行行性分析析。12/29/202282軟件客戶戶需求義義務(wù)書((2)(Note14)6.對(duì)對(duì)單項(xiàng)需需求、系系統(tǒng)特性性或使用用實(shí)例劃劃分優(yōu)先先級(jí)。7.評(píng)評(píng)審需求求文檔和和原型。。8.一一旦知道道要對(duì)項(xiàng)項(xiàng)目需求求進(jìn)行變變更,要要馬上與與開發(fā)人人員聯(lián)系系。9.在在要求需需求變更更時(shí),應(yīng)應(yīng)遵照開開發(fā)組織織確定的的工作過過程來處處理。10.尊尊重需需求工程程中開發(fā)發(fā)人員采采用的流流程(過過程)。。12/29/202283“簽約”意味味著什么(Note15)客戶與開發(fā)人人員關(guān)系中的的重要部分客戶代表經(jīng)常常把“簽約””看作是毫無無意義的更為重要的是是簽名是建立立在一個(gè)需求求協(xié)議的基線線上與你的重要客客戶一起討論論權(quán)利書和義義務(wù)書,以達(dá)達(dá)成協(xié)議,并并付諸實(shí)踐12/29/202284高質(zhì)量的需求求過程帶來的的好處(Note16)開發(fā)后期和整整個(gè)維護(hù)階段段的重做的工工作大大減少少強(qiáng)調(diào)需求質(zhì)量量并不能引起起某些人的重重視,他們錯(cuò)錯(cuò)誤地認(rèn)為在在需求上消耗耗多少時(shí)間就就會(huì)導(dǎo)致產(chǎn)品品開發(fā)推遲多多少時(shí)間將選定系統(tǒng)的的需求明確地地分配到各軟軟件子系統(tǒng),,強(qiáng)調(diào)采用產(chǎn)產(chǎn)品工程的系系統(tǒng)方法。這這樣能簡(jiǎn)化硬硬軟件的集成成12/29/202285優(yōu)秀需求具有有的特性(Note17)1.完整性性2.正確性性3.可行性性4.必要性性5.劃分優(yōu)優(yōu)先級(jí)6.無二義義性7.可驗(yàn)證證性12/29/202286§3.3需求獲取的內(nèi)內(nèi)容1.用戶需求求分類(1)功能性性需求:定義了系統(tǒng)做做什么(描述述系統(tǒng)必須支支持的功能和過程程)(2)非功能能性需求(技技術(shù)需求):定義了系統(tǒng)工工作時(shí)的特性性(描述操作環(huán)環(huán)境和性能目目標(biāo))12/29/202287兩類需求包包括的內(nèi)容容(1)功功能(2)性性能(3)環(huán)環(huán)境(4)界界面(5)用用戶或人的的因素(6)文文檔(7)數(shù)數(shù)據(jù)(8)資資源(9)安安全保密(10)軟軟件成本消消耗 與開開發(fā)進(jìn)度(11)質(zhì)質(zhì)量保證12/29/202288(1)功功能能需需求求系統(tǒng)統(tǒng)做做什什么么??系統(tǒng)統(tǒng)何何時(shí)時(shí)做做什什么么??系統(tǒng)統(tǒng)何何時(shí)時(shí)及及如如何何修修改改或升升級(jí)級(jí)??12/29/202289(2)性性能能需求求軟件開開發(fā)的的技術(shù)術(shù)性指指標(biāo)例如::存儲(chǔ)容容量限限制執(zhí)行速速度、、相應(yīng)應(yīng)時(shí)間間吞吐量量12/29/202290(3)環(huán)環(huán)境境需求求硬件設(shè)設(shè)備::機(jī)型、、外設(shè)設(shè)、接接口、、地點(diǎn)、、分布布、溫溫度、、濕度、、磁場(chǎng)場(chǎng)干擾擾等軟件::操作系系統(tǒng)網(wǎng)絡(luò)數(shù)據(jù)庫庫12/29/202291(4)界界面面需求有來自其其它系統(tǒng)統(tǒng)的輸入入嗎?到自其它它系統(tǒng)的的輸出嗎嗎?對(duì)數(shù)據(jù)格格式有規(guī)規(guī)定嗎??對(duì)數(shù)據(jù)存存儲(chǔ)介質(zhì)質(zhì)有規(guī)定定嗎?12/29/202292(5)用戶戶或人的因素素用戶類型?各種用戶熟練練程度?需受何種訓(xùn)練練?用戶理解、使使用系統(tǒng)的難難度?用戶錯(cuò)誤操作作系統(tǒng)的可能能性?12/29/202293(6)文文檔需求求需哪些文檔檔?文檔針對(duì)哪哪些讀者?12/29/202294(7)數(shù)數(shù)據(jù)需求求輸入、輸出出數(shù)據(jù)的格格式?接收、發(fā)送送數(shù)據(jù)的頻頻率?數(shù)據(jù)的準(zhǔn)確確性和精度度?數(shù)據(jù)流量??數(shù)據(jù)需保持持的時(shí)間??12/29/202295(8)資資源源需需求求軟件件運(yùn)運(yùn)行行時(shí)時(shí)所所需需的的數(shù)數(shù)據(jù)據(jù)、、軟軟件件。。內(nèi)存存空空間間等等資資源源。。軟件件開開發(fā)發(fā)、、維維護(hù)護(hù)所所需需的的人人力力、、支撐撐軟軟件件、、開開發(fā)發(fā)設(shè)設(shè)備備等等。。12/29/202296(9)安安全全保保密密要要求求需對(duì)對(duì)訪訪問問系系統(tǒng)統(tǒng)或或系系統(tǒng)統(tǒng)信信息息加加以以控控制制嗎嗎??如何何隔隔離離用用戶戶之之間間的的數(shù)數(shù)據(jù)據(jù)??用戶戶程程序序如如何何與與其其它它程程序序和和操操作作系系統(tǒng)統(tǒng)隔隔離離??系統(tǒng)統(tǒng)備備份份要要求求??12/29/202297(10)軟軟件件成成本本消消耗耗與與開開發(fā)發(fā)進(jìn)進(jìn)度度需需求求開發(fā)發(fā)有有規(guī)規(guī)定定的的時(shí)時(shí)間間表表嗎嗎??軟硬硬件件投投資資有有無無限限制制?12/29/202298(11)質(zhì)質(zhì)量量保保證證系統(tǒng)統(tǒng)的的可可靠靠性性要要求求??系統(tǒng)統(tǒng)必必須須監(jiān)監(jiān)測(cè)測(cè)和和隔隔離離錯(cuò)錯(cuò)誤誤嗎嗎??規(guī)定定系系統(tǒng)統(tǒng)平平均均出出錯(cuò)錯(cuò)時(shí)時(shí)間間??出錯(cuò)錯(cuò)后后,,重重啟啟系系統(tǒng)統(tǒng)允允許許的的時(shí)時(shí)間間??系統(tǒng)統(tǒng)變變化化如如何何反反映映到到設(shè)設(shè)計(jì)計(jì)中中??維護(hù)護(hù)是是否否包包括括對(duì)對(duì)系系統(tǒng)統(tǒng)的的改改進(jìn)進(jìn)??系統(tǒng)統(tǒng)的的可可移移植植性性??12/29/202299怎樣樣寫寫需需求求分分析析報(bào)報(bào)告告作報(bào)報(bào)告告時(shí)時(shí)要要先先從從宏宏觀觀上上講講一一、、二二、、三三、、四四、、五五,,再再從從細(xì)細(xì)節(jié)節(jié)上上講講A、、B、、C、、D、、E。。需需求求分分析析不不象象偵偵探探推推理理那那樣樣從從蛛蛛絲絲馬馬跡跡著著手手。。應(yīng)應(yīng)該該先先了了解解宏宏觀觀的的問問題題,,再再了了解解細(xì)細(xì)節(jié)節(jié)的的問問題題如圖S={D1,D2,D3,…Dn}Di={P1,P2,P3,…Pm}Pj={F1,F(xiàn)2,F(xiàn)3,…Fk}12/29/2022100怎樣寫需求求分析報(bào)告告12/29/2022101§3.4需求的開發(fā)發(fā)和管理整個(gè)軟件需需求工程研研究領(lǐng)域劃劃分為需求求開發(fā)和需需求管理兩兩部分更合合適需求工程域域的層次分分解示意圖圖12/29/2022102需求開發(fā)(Note18)問題獲?。ǎ╡licitation)分析(analysis)編寫規(guī)格說說明(specification))驗(yàn)證(verification)12/29/2022103知識(shí)技能(Note19)絕大部分的的軟件開發(fā)發(fā)人員都沒沒有接受過過高效需求求工程所需需技能的正正規(guī)培訓(xùn)培訓(xùn)需求分分析人員所所有的開發(fā)發(fā)人員都應(yīng)應(yīng)接受一個(gè)個(gè)基本的需需求工程培培訓(xùn)培訓(xùn)軟件需需求的用戶戶代表和管管理人員參參與軟件開開發(fā)的用戶戶代表應(yīng)接接受為期一一天左右,關(guān)于需求求工程的培培訓(xùn),開發(fā)發(fā)管理者和和客戶管理理者也應(yīng)參參加讓開發(fā)人員員了解應(yīng)用用領(lǐng)域的基基本概念組組織一些簡(jiǎn)簡(jiǎn)短的關(guān)于于客戶業(yè)務(wù)務(wù)活動(dòng)、術(shù)術(shù)語、目標(biāo)等方面的的討論會(huì)以以幫助開發(fā)發(fā)人員對(duì)應(yīng)應(yīng)用領(lǐng)域有有個(gè)基本了了解12/29/2022104需求獲取取(1)(Note20)確定需求求開發(fā)過過程編寫項(xiàng)目目視圖和和范圍文文檔項(xiàng)目目視圖將用戶群群分類并并歸納各各自特點(diǎn)點(diǎn)選擇每類類用戶的的產(chǎn)品代代表建立起典典型用戶戶的核心心隊(duì)伍把把同類產(chǎn)產(chǎn)品或你你的產(chǎn)品品的先前前版本用用戶代表表召集起起來,從從他們那那里收集集目前產(chǎn)產(chǎn)品的功功能需求求和非功功能需求求12/29/2022105需求獲取取(2)(Note21)讓用戶代代表確定定使用實(shí)實(shí)例召開應(yīng)用用程序開開發(fā)聯(lián)系系會(huì)議分析用戶戶工作流流程觀察察用戶執(zhí)執(zhí)行業(yè)務(wù)務(wù)任務(wù)的的過程確定質(zhì)量量屬性和和其它非非功能需需求在功功能需求求之外再再考慮一一下非功功能的質(zhì)質(zhì)量特點(diǎn)點(diǎn)通過檢查當(dāng)前前系統(tǒng)的問題題報(bào)告來進(jìn)一一步完善可查看需求是是否有足夠的的靈活性以允允許重用一些些已有的軟件件組件12/29/2022106需求分析(Note22)繪制系統(tǒng)關(guān)聯(lián)聯(lián)圖。建立數(shù)據(jù)字典典。為需求建立模模型。建立用戶接口口原型。確定需求優(yōu)先先級(jí)。12/29/2022107需求規(guī)規(guī)格說說明((SRS))(Note23))采用原原始模模板在在你的的組織織中要要為編編寫軟軟件需需求文文檔定定義一一種標(biāo)標(biāo)準(zhǔn)模模板指明需需求的的來源源為每項(xiàng)項(xiàng)需求求注上上標(biāo)號(hào)號(hào)制定定一種種慣例例來為為每項(xiàng)項(xiàng)需求求提供供一個(gè)個(gè)獨(dú)立立的可可識(shí)別別的標(biāo)標(biāo)號(hào)或或記號(hào)號(hào)記錄錄業(yè)業(yè)務(wù)務(wù)規(guī)規(guī)范范業(yè)業(yè)務(wù)務(wù)規(guī)規(guī)范范創(chuàng)建需求求跟蹤能能力矩陣陣12/29/2022108需求驗(yàn)證(Note24))對(duì)需求文檔檔進(jìn)行正式式審查以需求為依依據(jù)編寫測(cè)測(cè)試用例編寫用戶手手冊(cè)在需求求開發(fā)早期期即可起草草一份用戶戶手冊(cè)確定合格的的標(biāo)準(zhǔn)讓用用戶描述什什么樣的產(chǎn)產(chǎn)品才算滿滿足他們的的要求和適適合他們使使用的12/29/2022109需求管理(Note25)確定一個(gè)選選擇、分析析和決策需需求變更的的過程建立變更控控制委員會(huì)會(huì)評(píng)估每項(xiàng)選選擇的需求求變更跟蹤所有受受需求變更更影響的工工作產(chǎn)品建立需求基基準(zhǔn)版本和和需求控制制版本文檔檔維護(hù)需求變變更的歷史史記錄記錄錄跟蹤每項(xiàng)需需求的狀態(tài)態(tài)建立一個(gè)個(gè)數(shù)據(jù)庫衡量需求穩(wěn)穩(wěn)定性記錄錄基準(zhǔn)需求求的數(shù)量和和變更數(shù)量量使用需求管管理工具商商業(yè)化的需需求管理工工具12/29/2022110項(xiàng)目管理(Note26)選擇一種合適適的軟件開發(fā)發(fā)方法生存周周期項(xiàng)目開發(fā)計(jì)劃劃的進(jìn)度安排排將會(huì)不斷改改變發(fā)生需求變更更時(shí)協(xié)商項(xiàng)目目約定編寫文檔和管管理與需求相相關(guān)的風(fēng)險(xiǎn)跟蹤需求工程程所耗的工作作量12/29/2022111分析編寫文檔評(píng)審,商議基準(zhǔn)需求說明需求變更過程管理客戶需求市場(chǎng)當(dāng)前基線修正后基線市場(chǎng),客戶,管理項(xiàng)目環(huán)境需求開發(fā)與需需求管理之間間的界限(Note27)12/29/2022112§3.5改進(jìn)需求過程程(Note28)軟件開發(fā)過程程的改進(jìn)有以以下兩個(gè)主要要目標(biāo):解決在以前項(xiàng)項(xiàng)目或目前項(xiàng)項(xiàng)目中遇到的的問題。防止和避免你你可能在將來來的項(xiàng)目中要要遇到的問題題。12/29/2022113四條改進(jìn)軟件件的原則(Note29)改進(jìn)過程應(yīng)該該是革命性的的、徹底的、、連續(xù)的、反反復(fù)的人們和組織機(jī)機(jī)構(gòu)都只有在在他們獲得激激勵(lì)時(shí)才愿意意變更過程變更是面面向目標(biāo)的將改進(jìn)活動(dòng)看看作一些小項(xiàng)項(xiàng)目12/29/2022114過程改進(jìn)周期期(Note30)評(píng)價(jià)當(dāng)前采用用的方法指定活動(dòng)改進(jìn)進(jìn)計(jì)劃創(chuàng)建、實(shí)驗(yàn)和和實(shí)施新過程程評(píng)價(jià)結(jié)果圖:軟件開發(fā)發(fā)過程改進(jìn)的的周期發(fā)現(xiàn)和建議活動(dòng)計(jì)劃新的過程,實(shí)實(shí)驗(yàn)結(jié)果,獲獲得經(jīng)驗(yàn)實(shí)施情況怎樣樣活動(dòng)計(jì)劃的效效果如何新過程是否達(dá)達(dá)到預(yù)期目標(biāo)標(biāo)?計(jì)劃下一步的的改進(jìn)周期12/29/2022115§3.6軟件需求與風(fēng)風(fēng)險(xiǎn)管理(Note31)聽一個(gè)故事::同樣在Contoso制藥公司主人公“化學(xué)制品跟跟蹤系統(tǒng)”的的項(xiàng)目管理人人員Dave首席程序員Helen首席測(cè)試員Ramesh內(nèi)容需求工程的風(fēng)風(fēng)險(xiǎn)為何物?12/29/2022116軟件件風(fēng)風(fēng)險(xiǎn)險(xiǎn)管管理理的的要要素素(Note32))風(fēng)險(xiǎn)管管理就是使使用某某些工工具和和步驟驟把項(xiàng)項(xiàng)目風(fēng)風(fēng)險(xiǎn)限限制在在一個(gè)個(gè)可接接受的的范圍圍內(nèi)。。風(fēng)險(xiǎn)險(xiǎn)管理理提供供了一一種標(biāo)標(biāo)準(zhǔn)的的方法法來指指出風(fēng)風(fēng)險(xiǎn)并并把風(fēng)風(fēng)險(xiǎn)因因素編編成文文檔,,評(píng)估估其潛潛在的的威脅脅,以以及確確定減減少這這些風(fēng)險(xiǎn)評(píng)評(píng)價(jià)((riskassessment))風(fēng)險(xiǎn)避避免((riskavoidance))風(fēng)險(xiǎn)控控制((riskcontrol))12/29/2022117編寫項(xiàng)項(xiàng)目風(fēng)風(fēng)險(xiǎn)文文檔(Note33)12/29/2022118與需求有關(guān)關(guān)的風(fēng)險(xiǎn)下面介紹的的風(fēng)險(xiǎn)因素素是按需求求工程中獲獲取、分析析、編寫規(guī)規(guī)格說明、、驗(yàn)證和管管理匯總起起來的,并并推薦了一一些方法用用于降低風(fēng)風(fēng)險(xiǎn)發(fā)生的的可能性或或減輕風(fēng)險(xiǎn)險(xiǎn)發(fā)生給項(xiàng)項(xiàng)目帶來的的影響。這張清單僅僅僅是一個(gè)個(gè)起點(diǎn),在在你做項(xiàng)目目逐漸積累累經(jīng)驗(yàn)過程程中,加入入你的風(fēng)險(xiǎn)險(xiǎn)因素清單單和減輕風(fēng)風(fēng)險(xiǎn)的策略略。使用這這里提供的的條目來幫幫助你識(shí)別別需求風(fēng)險(xiǎn)險(xiǎn)并采用條條件—結(jié)果果的格式來來書寫風(fēng)險(xiǎn)險(xiǎn)說明。12/29/2022119需求獲取(Note34))1)產(chǎn)品品視圖與范范圍2)需求求開發(fā)所需需時(shí)間3)需求求規(guī)格說明明的完整性性和正確性性4)對(duì)革革新產(chǎn)品的的需求5)明確確非功能需需求6)客戶戶贊同產(chǎn)品品需求7)未加加說明的需需求8)把已已有的產(chǎn)品品作為需求求基線9)給出出期望的解解決辦法12/29/2022120需求分析(Note35))1)劃分分需求優(yōu)先先級(jí)2)帶來來技術(shù)困難難的特性3)不熟熟悉的技術(shù)術(shù)、方法、、語言、工工具或硬件件平臺(tái)12/29/2022121需求規(guī)格說說明(Note36))1)需求求理解2)時(shí)間間壓力對(duì)TBD的影響3)具有有二義性的的術(shù)語4)需求求說明中包包括了設(shè)計(jì)計(jì)12/29/2022122需求驗(yàn)證證(Note37)1)未未經(jīng)驗(yàn)證證的需求求2)審審查的有有效性12/29/2022123需求管理(Note38)1)變更需需求2)需求變變更過程3)未實(shí)現(xiàn)現(xiàn)的需求4)擴(kuò)充項(xiàng)項(xiàng)目范圍12/29/2022124建立項(xiàng)目視圖圖與范圍(Note39)一個(gè)項(xiàng)目可能能包括一些與與軟件沒有直直接關(guān)系的需需求,例如::硬件的購買買、產(chǎn)品的安安裝、維護(hù)或或廣告。但在在此,我們只只關(guān)心與軟件件產(chǎn)品有關(guān)系系的業(yè)務(wù)需求求。12/29/2022125通過業(yè)務(wù)需求求確定項(xiàng)目視視圖(Note40)項(xiàng)目視圖可以以把項(xiàng)目參與與者定位到一一個(gè)共同和明明確的方向上上項(xiàng)目視圖描述述了產(chǎn)品所涉涉及的各個(gè)方方面和在一個(gè)個(gè)完美環(huán)境中中最終所具有有的功能市場(chǎng)需求文檔檔&視圖和范圍的的文檔來自各個(gè)渠道道的業(yè)務(wù)需求求可能會(huì)發(fā)生生沖突12/29/2022126項(xiàng)目視視圖和和范圍圍文檔檔的模模板(Note41)a.業(yè)務(wù)需需求a.1背景a.2業(yè)務(wù)機(jī)機(jī)遇a.3業(yè)務(wù)目目標(biāo)a.4客戶或或市場(chǎng)場(chǎng)需求求a.5提供給給客戶戶的價(jià)價(jià)值a.6業(yè)務(wù)風(fēng)風(fēng)險(xiǎn)b.項(xiàng)目視視圖的的解決決方案案b.1項(xiàng)目視視圖陳陳述b.2主要特特性b.3假設(shè)和和依賴賴環(huán)境境c.范圍和和局限限性c.1首次發(fā)發(fā)行的的范圍圍c.2隨后發(fā)發(fā)行的的范圍圍c.3局限性性和專專用性性d.業(yè)務(wù)環(huán)環(huán)境d.1客戶概概貌d.2項(xiàng)目?jī)?yōu)優(yōu)先級(jí)級(jí)e.產(chǎn)品成成功的的因素素12/29/2022127計(jì)算機(jī)機(jī)學(xué)科科的發(fā)發(fā)展計(jì)算機(jī)科學(xué)(CS)計(jì)算機(jī)科學(xué)(CS)計(jì)算機(jī)工程(CE)軟件工程(SE)信息系統(tǒng)(IS)計(jì)算學(xué)科(computingdiscipline)計(jì)算學(xué)學(xué)科是是研究究通過過在計(jì)計(jì)算機(jī)機(jī)上建建立模模型并并模擬擬物理理過程程來進(jìn)進(jìn)行科科學(xué)調(diào)調(diào)查和和研究究的學(xué)學(xué)科.12/29/2022128學(xué)科科的的3個(gè)個(gè)形形態(tài)態(tài)理論論抽象象(模模型型化化)設(shè)計(jì)計(jì)重復(fù)復(fù)出出現(xiàn)現(xiàn)的的概概念念綁定定(binding)概念念與與形形式式模模型型一致致性性和和完完備備性性抽象象層層次次重用用………典型型的的學(xué)學(xué)科科方方法法::數(shù)學(xué)方法系統(tǒng)科學(xué)方法法……計(jì)算中抽象的的本質(zhì)和使用用。在處理復(fù)復(fù)雜事務(wù)、構(gòu)構(gòu)造系統(tǒng)、隱隱藏細(xì)節(jié)和獲獲取重復(fù)模式式方面使用抽抽象,通過具具有不同層次次的細(xì)節(jié)和指指標(biāo)的抽象,,能夠表達(dá)一一個(gè)實(shí)體和系系統(tǒng)計(jì)算機(jī)科學(xué)與與技術(shù)學(xué)科的的方法論12/29/2022129模型(model)模型:現(xiàn)實(shí)實(shí)世界某些重重要方面的表表示。有時(shí)我們使用用術(shù)語“抽象”來表示模型型,因?yàn)槲覀儌儚默F(xiàn)實(shí)世界界中抽象出對(duì)我們特別別有用的東西西。12/29/2022130抽象(模型型化)源于實(shí)驗(yàn)科科學(xué),主要要要素為數(shù)數(shù)據(jù)采集方方法和假設(shè)設(shè)的形式說說明,模型型的構(gòu)造與與預(yù)測(cè)實(shí)驗(yàn)驗(yàn)分析結(jié)果果分析.在為可能的的算法數(shù)據(jù)據(jù)結(jié)構(gòu)和系系統(tǒng)結(jié)構(gòu)等等構(gòu)造模型型時(shí)使用此此過程.抽象的結(jié)果果是概念符符號(hào)模型12/29/2022131§3.4需求分析的的步驟當(dāng)前系統(tǒng)目標(biāo)系統(tǒng)物理模型邏輯模型邏輯模型物理模型模型化抽象化具體化實(shí)例化怎么做做什么當(dāng)前系統(tǒng)目標(biāo)系統(tǒng)需求定義12/29/2022132邏輯模型和和物理模型型模型是對(duì)對(duì)對(duì)象系統(tǒng)的的形式化的的特征抽象,概括括性或近似似地表示構(gòu)造模型的的過程是一一個(gè)抽象、、分析的過程。。對(duì)象系統(tǒng)模型系統(tǒng)抽象(映射)模型應(yīng)用模型構(gòu)造的過程12/29/2022133邏輯輯模模型型物物理理模模型型(本本質(zhì)質(zhì)模模型型、、概概念念模模型型)(實(shí)實(shí)施施模模型型、、技技術(shù)術(shù)模模型型)現(xiàn)行系統(tǒng)目標(biāo)系統(tǒng)描述述重重要要的的業(yè)業(yè)務(wù)務(wù)功功能能,,無無論論系系統(tǒng)統(tǒng)是是如如何何實(shí)實(shí)施施的的。。描述現(xiàn)實(shí)系統(tǒng)統(tǒng)是如何在物物理上實(shí)現(xiàn)的的。描述新系統(tǒng)的的主要業(yè)務(wù)功功能和用戶新新的需求,無無論系統(tǒng)應(yīng)如如何實(shí)施。描述新系統(tǒng)是是如何實(shí)施的的(包括技術(shù)術(shù))。12/29/2022134分析階階段中中常用用的模模型((邏邏輯模模型))數(shù)據(jù)流流圖((DFD)實(shí)體――聯(lián)系系圖((ERD)類圖實(shí)例圖圖時(shí)序圖圖狀態(tài)圖圖協(xié)作圖圖事件列列表數(shù)據(jù)流流定義義數(shù)據(jù)元元素定定義……12/29/2022135數(shù)據(jù)流流圖(DFD,DataFlowDiagram)(Note42)描述邏邏輯模模型的的圖形形工具具,表表示示數(shù)據(jù)據(jù)在系系統(tǒng)內(nèi)內(nèi)的變變化。。DFD可以以用來來表示示一個(gè)個(gè)系統(tǒng)統(tǒng)或軟軟件在在任何何層次次上的的抽象象。較較大大型軟軟件系系統(tǒng)DFD分成成多層層(子子圖、、父圖圖概念念),可以以表示示數(shù)據(jù)據(jù)流和和功能能的進(jìn)進(jìn)一步步的細(xì)細(xì)節(jié)。。12/29/2022136數(shù)據(jù)流流程圖圖的表表示(32)數(shù)據(jù)源源點(diǎn)和和終點(diǎn)點(diǎn)變換數(shù)數(shù)據(jù)的的加工工文件數(shù)據(jù)邏輯關(guān)關(guān)系符符號(hào)::與、、或、、異或或12/29/2022137畫數(shù)據(jù)據(jù)流圖圖(page32--33)規(guī)則::由外外向里里畫畫系統(tǒng)統(tǒng)的輸輸出、、輸入入化系統(tǒng)統(tǒng)的內(nèi)內(nèi)部畫加工工的內(nèi)內(nèi)部12/29/2022138應(yīng)該注意的的幾個(gè)問題題(34)適當(dāng)?shù)孛嫈?shù)據(jù)流而而不是控制制流先考慮穩(wěn)定定狀態(tài)忽略瑣碎的的枝節(jié)隨時(shí)準(zhǔn)備重重畫12/29/2022139分層數(shù)據(jù)流流圖對(duì)于大型系系統(tǒng),往往往使用一張張數(shù)據(jù)流圖圖畫出所有有數(shù)據(jù)流和和加工是不不可能的自頂向下下逐層分分解不要一下下子引入入過多細(xì)細(xì)節(jié),應(yīng)應(yīng)該逐步步增加細(xì)細(xì)節(jié)例子(page35):圖3.13(a)畫出出了…..。圖圖3說明明“產(chǎn)生生新文件件”………。顯然然……。。12/29/2022140由頂向下畫畫分層數(shù)據(jù)據(jù)流圖(page37))描繪中應(yīng)該該注意的問問題:編號(hào)父圖和子圖圖的平衡局部文件分解的程度度12/29/2022141實(shí)例——運(yùn)運(yùn)動(dòng)會(huì)管理理系統(tǒng)自學(xué)3.3.5節(jié)((Page40))12/29/2022142數(shù)據(jù)據(jù)流流圖圖的的改改進(jìn)進(jìn)檢查查數(shù)數(shù)據(jù)據(jù)流流圖圖的的正正確確性性數(shù)據(jù)據(jù)守守恒恒(42))文件件的的使使用用(page42))父圖圖和和子子圖圖的的平平衡衡(43))提高高數(shù)數(shù)據(jù)據(jù)流流圖圖的的易易理理解解性性簡(jiǎn)化化加加工工間間的的聯(lián)聯(lián)系系(page43))分解解的的均均勻勻(page43))適當(dāng)?shù)孛?4)重新分解(page44)12/29/2022143數(shù)據(jù)實(shí)實(shí)體關(guān)關(guān)聯(lián)圖圖(Note43)與數(shù)據(jù)據(jù)流圖圖描繪繪了系系統(tǒng)中中發(fā)生生的過過程一一樣,,實(shí)體體聯(lián)系系圖((entity-relationshipdiagram,ERD)描描繪了了系統(tǒng)統(tǒng)的數(shù)數(shù)據(jù)關(guān)關(guān)系分析實(shí)實(shí)體聯(lián)聯(lián)系圖圖有助助于對(duì)對(duì)業(yè)務(wù)務(wù)或系系統(tǒng)數(shù)數(shù)據(jù)組組成的的理解解和交交互,,并暗暗示產(chǎn)產(chǎn)品將將有必必要包包含一一個(gè)數(shù)數(shù)據(jù)庫庫。實(shí)體體((entity))是是物物理理數(shù)數(shù)據(jù)據(jù)項(xiàng)項(xiàng)((包包括括人人))或或者者數(shù)數(shù)據(jù)據(jù)項(xiàng)項(xiàng)的的集集合合,,這這對(duì)對(duì)所所分分析析的的業(yè)業(yè)務(wù)務(wù)或或所所要要構(gòu)構(gòu)造造的的系系統(tǒng)統(tǒng)是是很很重重要要的的12/29/2022144化學(xué)制品倉庫存貨清單化學(xué)制品容器存儲(chǔ)執(zhí)行化學(xué)制品請(qǐng)求1MM1“化學(xué)制制品跟蹤蹤系統(tǒng)””的實(shí)體體聯(lián)系圖圖12/29/2022145需求建模實(shí)例例酒店管理系統(tǒng)統(tǒng)的局部DFD已預(yù)訂的入住預(yù)訂請(qǐng)求預(yù)訂預(yù)訂確認(rèn)未預(yù)訂的入住已預(yù)訂的入住請(qǐng)求未預(yù)訂的入住請(qǐng)求客人數(shù)據(jù)客房數(shù)據(jù)預(yù)訂確認(rèn)信息息客人信息夜審結(jié)算信息財(cái)務(wù)系統(tǒng)時(shí)鐘12/29/2022146需求建模實(shí)例例:某金融貿(mào)易系系統(tǒng)用例圖(UML)風(fēng)險(xiǎn)分析交易估計(jì)進(jìn)行交易進(jìn)行交易接待員酒店系統(tǒng)財(cái)務(wù)系統(tǒng)12/29/2022147需求建模實(shí)例例:用例圖舉例((UML)簽定一份保險(xiǎn)單客戶保險(xiǎn)銷售人員銷售統(tǒng)計(jì)客戶統(tǒng)計(jì)12/29/2022148需求建模實(shí)實(shí)例:UML類圖實(shí)例(Note44)客人姓名地址身份證號(hào)碼護(hù)照號(hào)碼……預(yù)訂……入住住宿編號(hào)付款方式……退房……客房狀態(tài)日期人數(shù)……設(shè)置狀態(tài)……客房……服務(wù)日期數(shù)量設(shè)置……讀取……服務(wù)類別名稱價(jià)格設(shè)置……10..*10..*0..*0..11..*10..*1*12/29/2022149需求求建建模模實(shí)實(shí)例例::描述述客房房狀狀態(tài)態(tài)的的狀狀態(tài)態(tài)圖圖(Note45)取消消預(yù)定定入住住已預(yù)預(yù)訂訂空閑閑占用用維修修維修修完成成退房房換房房入住住事件件創(chuàng)建建12/29/2022150需求求建建模模實(shí)實(shí)例例::接電電話話的的順順序序圖圖(UML))受話者交換機(jī)遠(yuǎn)程交換機(jī)受話者拿起話筒聽通話聲撥號(hào)碼鈴響信號(hào)鈴響鈴響停止信號(hào)拿起話筒鈴響停止<10deabc{b-a<1}{e-d<5}{c-b<10}路徑12/29/2022151需求建模模實(shí)例::

UML協(xié)作圖舉舉例計(jì)算機(jī)隊(duì)列打印服務(wù)器打印機(jī)打印文件打印機(jī)忙保存打印文件打印機(jī)空閑打印文件12/29/2022152§3.5數(shù)數(shù)據(jù)據(jù)詞典典(DD,DataDictionary)DD是是對(duì)所所有與與系統(tǒng)統(tǒng)相關(guān)關(guān)的數(shù)數(shù)據(jù)元元素的的一個(gè)個(gè)有組組織的的列表表,以以及精確的的、嚴(yán)嚴(yán)格的的定義義,使得得用戶戶和系系統(tǒng)分分析員員對(duì)于于輸入入、輸輸出、、存儲(chǔ)儲(chǔ)成分分和中中間計(jì)計(jì)算有有共同同的理理解12/29/2022153詞典與與數(shù)據(jù)據(jù)流圖圖之間間關(guān)系系(page44))數(shù)據(jù)流流圖描描述了了系統(tǒng)統(tǒng)的““分解解”;;依靠““詞典典”來來說明明各個(gè)個(gè)成分分的含含義;;數(shù)據(jù)流流圖中中所有有名字字的定定義就就構(gòu)成成一本本詞典典;數(shù)據(jù)流流圖和和詞典典結(jié)合合在一一起構(gòu)構(gòu)成了了“需需求說說明書書”數(shù)據(jù)流流圖中中出現(xiàn)現(xiàn)的每每一個(gè)個(gè)數(shù)據(jù)據(jù)流名名、每每一個(gè)個(gè)文件件名和和每一一個(gè)加加工名名在詞詞典中中都應(yīng)應(yīng)該有有一個(gè)個(gè)條目目給出出這個(gè)個(gè)名字字的定定義。。12/29/2022154詞典條條目的的各種種類型型(page.45))四個(gè)類類型條條目數(shù)據(jù)流流文件數(shù)據(jù)項(xiàng)項(xiàng)(指指不在在分解解的數(shù)數(shù)據(jù)單單位))加工詞典條條目的的實(shí)例例(page46--47)結(jié)合上上次自自習(xí)的的內(nèi)容容自行行學(xué)習(xí)習(xí)本節(jié)節(jié)12/29/2022155需求建建模實(shí)實(shí)例::數(shù)據(jù)字字典條條目的的定義義預(yù)訂請(qǐng)請(qǐng)求==客人人數(shù)據(jù)據(jù)+住住宿期期限+客房房類別別客人數(shù)數(shù)據(jù)==客人人姓名名+地地址+身份份證號(hào)號(hào)碼+[護(hù)護(hù)照號(hào)號(hào)碼]+支付付方式式身份證證號(hào)碼碼=十十進(jìn)制制15{數(shù)數(shù)字}18護(hù)照號(hào)號(hào)碼==字母母+8{數(shù)數(shù)字}8字母==“A”……“Z”十進(jìn)制制數(shù)字字=““0””…““9””12/29/2022156需求建建模實(shí)實(shí)例::數(shù)據(jù)字字典條條目的的定義義F1:航班班信息息文件件={航航空公公司名名稱++航班班號(hào)+起點(diǎn)點(diǎn)+終終點(diǎn)++日期期++起飛飛時(shí)間間+降降落時(shí)時(shí)間}航空公公司名名稱==2{字母母}4航班號(hào)號(hào)=3{十十進(jìn)制制數(shù)字字}3字母==“A”……“Z”十進(jìn)制制數(shù)字字=““0””…““9””起點(diǎn)==終點(diǎn)點(diǎn)=1{漢漢字}10起飛時(shí)時(shí)間==降落落時(shí)間間=時(shí)時(shí)+分分12/29/2022157需求建模實(shí)實(shí)例:數(shù)據(jù)字典條條目的定義義時(shí)=“00”…“23”分=“00”…“59”日期=年++月+日年=[2000|2001||2002|2004]月=“01”…“12”日=“01”…“31”12/29/2022158§3.6小說說明數(shù)據(jù)流圖圖中每一一個(gè)基本本加工((即不再再進(jìn)一步步被分解解的加工工)都必必須有一一個(gè)“小小說明””小說明中應(yīng)精精確描述用戶戶要求一個(gè)加加工“做什么么”加工的激發(fā)條條件加工邏輯加工優(yōu)先級(jí)加工執(zhí)行頻率率出錯(cuò)處理

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論