軟件工程概論第三章需求分析課件_第1頁
軟件工程概論第三章需求分析課件_第2頁
軟件工程概論第三章需求分析課件_第3頁
軟件工程概論第三章需求分析課件_第4頁
軟件工程概論第三章需求分析課件_第5頁
已閱讀5頁,還剩84頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第三章 需求分析3.1 需求分析概述3.2 結(jié)構(gòu)化分析方法3.3數(shù)據(jù)流圖的繪制3.4編制數(shù)據(jù)字典3.5 加工邏輯的分析與表達(dá)3.6 原型技術(shù)3.7 需求驗證與評審第1頁,共89頁。意義:軟件需求的深入理解是軟件開發(fā)工作獲得成功的前提條件,不論我們把設(shè)計和編碼做得如何出色,不能真正滿足用戶需求的程序只會令用戶失望,給開發(fā)帶來煩惱。第2頁,共89頁。 需求分析是軟件定義時期的最后一個階段,它的基本任務(wù)不是確定系統(tǒng)怎樣完成它的工作,而是確定系統(tǒng)必須完成哪些工作,也就是對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。并在在需求分析階段結(jié)束之前,由系統(tǒng)分析員寫出軟件需求規(guī)格說明書,以書面形式準(zhǔn)確地描述軟件需

2、求。即: - 準(zhǔn)確地回答“系統(tǒng)必須做什么?”。第3頁,共89頁。學(xué)習(xí)目標(biāo)明確需求分析的概念和任務(wù),能夠正確把握在軟件定義方面,可行性研究和需求分析兩階段對問題域理解和描述問題的粒度可行性研究和需求分析兩個階段對問題域的角度和描述問題的粒度第4頁,共89頁。1 需求分析的概述需求分析的任務(wù):用戶和分析師雙方進一步理解用戶的需求,就待開發(fā)的軟件系統(tǒng)必須具備的業(yè)務(wù)處理邏輯進行分析和描述,將雙方的共同理解達(dá)成都能接受的需求規(guī)約,又稱“需求規(guī)格說明書”第5頁,共89頁。需求分析的任務(wù)就是借助于當(dāng)前系統(tǒng)的邏輯模型導(dǎo)出目標(biāo)系統(tǒng)的邏輯模型,解決目標(biāo)系統(tǒng)的 “做什么” 的問題。第6頁,共89頁。需求分析的任務(wù)并

3、不是確定系統(tǒng)怎樣完成它的工作,而僅僅是確定系統(tǒng)必須完成哪些工作,也就是對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。需求規(guī)格說明書的主要部分是詳細(xì)的數(shù)據(jù)流圖,數(shù)據(jù)字典和主要功能的算法描述。通過驗收的需求規(guī)格說明書是今后軟件設(shè)計和項目驗收的依據(jù)。第7頁,共89頁。軟件的需求包括:功能需求性能需求環(huán)境需求可靠性需求安全保密要求用戶界面需求資源使用需求成本消耗需求開發(fā)進度需求預(yù)先估計以后系統(tǒng)可能達(dá)到的目標(biāo)第8頁,共89頁。發(fā)現(xiàn):對用戶需求的發(fā)現(xiàn)和挖掘求精:對用戶提出的模糊的開發(fā)要求逐步明確、精化建模:對用戶業(yè)務(wù)系統(tǒng)進行分析和優(yōu)化的基礎(chǔ)上,對未來系統(tǒng)的邏輯成分進行模型建模規(guī)約:對用戶需求進行邏輯分析的最

4、終產(chǎn)物第9頁,共89頁。人員組織 企業(yè)負(fù)責(zé)人、各部門負(fù)責(zé)人、具體工作人員第10頁,共89頁。分析師的角色 熟悉計算機技術(shù)了解用戶業(yè)務(wù)領(lǐng)域的相關(guān)知識能在用戶和開發(fā)人員之間借助數(shù)據(jù)概念進行交流第11頁,共89頁。需求分析的活動和原則需求獲取分析建模需求評審第12頁,共89頁。需求獲取1.進行調(diào)查研究,獲取用戶需求(問題識別)。這些需求包括:功能需求:所開發(fā)的軟件必需具備什么功能(最重要)。性能需求:指待開發(fā)的軟件應(yīng)具備的性能指標(biāo),如存儲容量,運行時間等。環(huán)境需求:指軟件運行時的軟件、硬件要求。用戶界面需求:指人機交互方式、輸入輸出的數(shù)據(jù)格式等是否友好、便捷等。此外還有:可靠性需求、安全保密要求、用

5、戶界面需求、可移值性、可維護性等方面需求。調(diào)查時可采用以下幾種方式:第13頁,共89頁。 與用戶交談,向用戶提出問題。 參觀用戶的工作流程,觀察用戶的操作。 向用戶群體發(fā)放調(diào)查問卷表。 與同行、專家交談,聽取他們的意見。 分析已經(jīng)存在的同類軟件產(chǎn)品,提取需求。 從行業(yè)標(biāo)準(zhǔn)、規(guī)則中提取需求。 從Internet上搜索相關(guān)資料。 分析員協(xié)同程序員通過調(diào)查分析,同時可以參考該項目的可行性報告和項目開發(fā)計劃書,來獲取當(dāng)前系統(tǒng)的物理模型,可以采用系統(tǒng)流程圖(是用來描述系統(tǒng)物理模型的一種傳統(tǒng)工具)表示。 例如:計算機售書的系統(tǒng)流程圖如下頁所示。第14頁,共89頁。需求獲取中的困難通信渠道不暢,數(shù)據(jù)管理不嚴(yán)

6、與用戶溝通存在障礙對分析活動沒有系統(tǒng)的工作方法第15頁,共89頁。需求建模從當(dāng)前系統(tǒng)的物理模型中去掉非本質(zhì)因素,如地點、人物等,抽象出當(dāng)前系統(tǒng)的邏輯模型,可以用數(shù)據(jù)流圖表示。第16頁,共89頁。需求評審需求分析的最后一個環(huán)節(jié)第17頁,共89頁。常見的需求分析方法有: 結(jié)構(gòu)化分析方法。 面向?qū)ο蟮姆治龇椒ā? 結(jié)構(gòu)化分析方法第18頁,共89頁。概念 用一組標(biāo)準(zhǔn)的工具和策略從事系統(tǒng)分析與設(shè)計目的:撇開物理因素,在綜合分析用戶對系統(tǒng)各項要求的基礎(chǔ)上,最終導(dǎo)出新系統(tǒng)的邏輯模型分析過程:細(xì)化數(shù)據(jù)流圖(DFD)/控制流圖(CFD)、編制數(shù)據(jù)字典、用戶復(fù)查、修正開發(fā)計劃、整理文檔、審查和復(fù)審第19頁,共89

7、頁。結(jié)構(gòu)化分析方法:結(jié)構(gòu)化分析方法的實質(zhì)是著眼于數(shù)據(jù)流,自頂向下,逐層分解,建立系統(tǒng)的處理流程,以數(shù)據(jù)流圖和數(shù)據(jù)字典為主要工具,建立系統(tǒng)的邏輯模型。 結(jié)構(gòu)化分析的步驟如下:通過對用戶的調(diào)查,以軟件的需求為線索,獲得當(dāng)前系統(tǒng)的具體模型:去掉具體模型中非本質(zhì)因素,抽象出當(dāng)前系統(tǒng)的邏輯模型:根據(jù)計算機的特點分析當(dāng)前系統(tǒng)與目標(biāo)系統(tǒng)的差別,建立目標(biāo)系統(tǒng)的邏輯模型完善目標(biāo)系統(tǒng)并補充細(xì)節(jié),寫出目標(biāo)系統(tǒng)的軟件需求規(guī)格說明;評審直到確認(rèn)完全符合用戶對軟件的需求。第20頁,共89頁。3 數(shù)據(jù)流圖的繪制數(shù)據(jù)流圖(Data Flow Diagram,簡稱DFD)描繪系統(tǒng)的邏輯模型,是結(jié)構(gòu)化系統(tǒng)分析的主要工具。數(shù)據(jù)流圖

8、(DFD)是描述軟件系統(tǒng)中數(shù)據(jù)處理過程的一種有力的圖形工具。第21頁,共89頁。畫數(shù)據(jù)流圖步驟1、首先畫系統(tǒng)的輸入輸出,即先畫頂層數(shù)據(jù)流圖。頂層流圖只包含一個加工,用以表示被開發(fā)的系統(tǒng),然后考慮該系統(tǒng)有哪些輸入數(shù)據(jù),這些輸入數(shù)據(jù)從哪里來;有哪些輸出數(shù)據(jù),輸出到哪里去。 2、畫系統(tǒng)內(nèi)部,即畫下層數(shù)據(jù)流圖。一般將層號從開始編號,采用自頂向下,由外向內(nèi)的原則。 第22頁,共89頁。注意事項1、命名。不論數(shù)據(jù)流、數(shù)據(jù)存儲還是加工,合適的命名使人們易于理解其含義。 2、一般不畫物質(zhì)流。數(shù)據(jù)流反映能用計算機處理的數(shù)據(jù),并不是實物,因此對目標(biāo)系統(tǒng)的數(shù)據(jù)流圖一般不要畫物質(zhì)流 3、父圖與子圖的平衡。子圖的輸入輸

9、出數(shù)據(jù)流同父圖相應(yīng)加工的輸入輸出數(shù)據(jù)必須一致,此即父圖與子圖的平衡。 第23頁,共89頁。3、局部數(shù)據(jù)存儲。當(dāng)某層數(shù)據(jù)流圖中的數(shù)據(jù)存儲不是由圖中相應(yīng)加工的外部接口,而只是本圖中某些加工之間的數(shù)據(jù)接口,則稱這些數(shù)據(jù)存儲為局部數(shù)據(jù)存儲。 4、提高數(shù)據(jù)流圖的易理解性。注意合理分解,要把一個加工分解成幾個功能相對獨立的子加工,這樣可以減少加工之間輸入、輸出數(shù)據(jù)流的數(shù)目,增加數(shù)據(jù)流圖的可理解性。 第24頁,共89頁。描述銀行取款過程的數(shù)據(jù)流圖第25頁,共89頁。數(shù)據(jù)流圖的層次結(jié)構(gòu)為了表達(dá)數(shù)據(jù)處理過程的數(shù)據(jù)加工情況,需要采用層次結(jié)構(gòu)的數(shù)據(jù)流圖。按照系統(tǒng)的層次結(jié)構(gòu)進行逐步分解,并以分層的數(shù)據(jù)流圖反映這種結(jié)構(gòu)

10、關(guān)系,能清楚地表達(dá)和容易理解整個系統(tǒng)第26頁,共89頁。分層的數(shù)據(jù)流圖第27頁,共89頁。在多層數(shù)據(jù)流圖中,頂層流圖僅包含一個加工,它代表被開發(fā)系統(tǒng)。它的輸入流是該系統(tǒng)的輸入數(shù)據(jù),輸出流是系統(tǒng)所輸出數(shù)據(jù)底層流圖是指其加工不需再做分解的數(shù)據(jù)流圖,它處在最底層中間層流圖則表示對其上層父圖的細(xì)化。它的每一加工可能繼續(xù)細(xì)化,形成子圖。第28頁,共89頁。結(jié)構(gòu)化分析方法步驟示例 商店業(yè)務(wù)處理系統(tǒng)第29頁,共89頁。這個數(shù)據(jù)流圖只是一個高層的系統(tǒng)邏輯模型,它反映了目標(biāo)系統(tǒng)要實現(xiàn)的功能數(shù)據(jù)流圖繪制步驟 首先確定系統(tǒng)的輸入和輸出 根據(jù)商店業(yè)務(wù),畫出頂層數(shù)據(jù)流圖,以反映最主要業(yè)務(wù)處理流程第30頁,共89頁。 經(jīng)

11、過分析,商店業(yè)務(wù)處理的主要功能應(yīng)當(dāng)有銷售、采購、會計三大項。主要數(shù)據(jù)流輸入的源點和輸出終點是顧客和供應(yīng)商。 然后從輸入端開始,根據(jù)商店業(yè)務(wù)工作流程,畫出數(shù)據(jù)流流經(jīng)的各加工框,逐步畫到輸出端,得到第一層數(shù)據(jù)流圖第31頁,共89頁。第一層數(shù)據(jù)流圖第32頁,共89頁。加細(xì)每一個加工框 銷售細(xì)化第33頁,共89頁。采購細(xì)化第34頁,共89頁。檢查和修改數(shù)據(jù)流圖的原則數(shù)據(jù)流圖上所有圖形符號只限于前述四種基本圖形元素數(shù)據(jù)流圖的主圖必須包括前述四種基本元素,缺一不可數(shù)據(jù)流圖的主圖上的數(shù)據(jù)流必須封閉在外部實體之間每個加工至少有一個輸入數(shù)據(jù)流和一個輸出數(shù)據(jù)流第35頁,共89頁。在數(shù)據(jù)流圖中,需按層給加工框編號。

12、編號表明該加工所處層次及上下層的親子關(guān)系規(guī)定任何一個數(shù)據(jù)流子圖必須與它上一層的一個加工對應(yīng),兩者的輸入數(shù)據(jù)流和輸出數(shù)據(jù)流必須一致。此即父圖與子圖的平衡可以在數(shù)據(jù)流圖中加入物質(zhì)流,幫助用戶理解數(shù)據(jù)流圖第36頁,共89頁。圖上每個元素都必須有名字?jǐn)?shù)據(jù)流圖中不可夾帶控制流初畫時可以忽略瑣碎的細(xì)節(jié),以集中精力于主要數(shù)據(jù)流第37頁,共89頁。4 數(shù)據(jù)詞典數(shù)據(jù)字典(Data Dictionary)是關(guān)于數(shù)據(jù)的信息的集合,通過數(shù)據(jù)字典對數(shù)據(jù)流程圖中的各個元素作精確的定義與說明。它是數(shù)據(jù)流圖的補充工具。數(shù)據(jù)詞典與數(shù)據(jù)流圖配合,能清楚地表達(dá)數(shù)據(jù)處理的要求。二者構(gòu)成需求規(guī)格說明書的主要部分。詞條描述 對于在數(shù)據(jù)流

13、圖中每一個被命名的圖形元素,均加以定義,其內(nèi)容有: 名字,別名或編號,分類,描述,定義,位置,其它等。第38頁,共89頁。數(shù)據(jù)字典的內(nèi)容及格式數(shù)據(jù)字典是為分析人員和用戶查找數(shù)據(jù)流圖中有關(guān)名字的詳細(xì)定義而服務(wù)的,因此也像其他任何字典一樣,要把所有條目按一定次序排列起來,以便查閱。數(shù)據(jù)字典有以下四類條目:數(shù)據(jù)流、數(shù)據(jù)項、數(shù)據(jù)存儲、基本加工。其中,數(shù)據(jù)項是組成數(shù)據(jù)流和數(shù)據(jù)存儲的最小元素。1)數(shù)據(jù)流條目給出了DFD中數(shù)據(jù)流的定義,主要部分是列出該數(shù)據(jù)流的各組成數(shù)據(jù)項。在定義數(shù)據(jù)流及數(shù)據(jù)存儲組成時,通常要用到表2.4給出的符號。 第39頁,共89頁。第40頁,共89頁。2)數(shù)據(jù)存儲條目是對數(shù)據(jù)文件內(nèi)容的

14、定義,主要內(nèi)容舉例如下:數(shù)據(jù)存儲名稱:學(xué)生成績庫別名:無組成:學(xué)生學(xué)號+課程編碼+成績+備注組織方式:以學(xué)號為記錄關(guān)鍵字升序排列。第41頁,共89頁。3)數(shù)據(jù)項條目給出某個數(shù)據(jù)單項的定義,內(nèi)容通常為數(shù)據(jù)項的值類型、允許取值范圍等,其定義結(jié)構(gòu)與數(shù)據(jù)流條目類似。4)加工條目是用來說明DFD中基本加工的處理邏輯,對其他非基本加工則不必進行加工說明。加工條目主要由輸入數(shù)據(jù)、加工邏輯和輸出數(shù)據(jù)等部分組成,加工邏輯描述把輸入數(shù)據(jù)轉(zhuǎn)換為輸出數(shù)據(jù)的過程,是加工條目的主體。為了使加工邏輯直觀易讀,有幾種常用的描述方法,它們是結(jié)構(gòu)化語言、判定表和判定樹。加工條目內(nèi)容舉例如下:加工名稱:查閱庫存編 號:1.2輸 入

15、:合格訂單輸 出:供貨訂單或缺貨訂單第42頁,共89頁。加工邏輯:根據(jù)庫存記錄IF 訂單項目數(shù)量該項目庫存量的臨界值THEN 可供貨處理ELSE 此訂單缺貨,登記,待進貨后再處理ENDIF(3)數(shù)據(jù)字典的實現(xiàn)數(shù)據(jù)字典的建立可以用手工和自動兩種方式實現(xiàn)。手工方式是指把每一個字典條目寫在卡片上,由專人管理和維護。自動方式是借助數(shù)據(jù)字典處理程序,把字典條目輸入到計算機中,用計算機對它進行檢索和維護。第43頁,共89頁。數(shù)據(jù)字典DD(Data Dictionary)用于描述DFD中各種數(shù)據(jù),是一種描述數(shù)據(jù)的數(shù)據(jù).DD中的內(nèi)容:數(shù)據(jù)項數(shù)據(jù)存儲數(shù)據(jù)流處理DD中常用的符號:= : 等價于 + : 和(連接兩

16、個分量) : 或a b : 重復(fù)從a到b次( ) : 可選 第44頁,共89頁。1. 數(shù)據(jù)項數(shù)據(jù)項是不可再分割的最小數(shù)據(jù)單位. 數(shù)據(jù)項描述=數(shù)據(jù)項名, 別名, 含義說明, 數(shù)據(jù)類型, 定義, 取值范圍, 取值含義, 位置, 與其他數(shù)據(jù)項之間的關(guān)系第45頁,共89頁。例:學(xué)生成績管理系統(tǒng)的數(shù)據(jù)項.數(shù)據(jù)項編號: 101001數(shù)據(jù)項名:學(xué)號別名:學(xué)生號,學(xué)生編號含義說明:描述學(xué)生的唯一編號數(shù)據(jù)類型:字符型 定義:學(xué)號=10數(shù)字10 結(jié)構(gòu):a1a2a3a4a5a6a7a8a9a10 其中:a1=學(xué)區(qū)號, a2a3=入學(xué)年份,a4a5=系號, a6=專業(yè)號,a7a8=班號,a9a10=序號位置: 學(xué)生,

17、成績單,補考名單,重修名單第46頁,共89頁。數(shù)據(jù)項編號: 101002數(shù)據(jù)項名:姓名別名:無含義說明:學(xué)生的姓名 數(shù)據(jù)類型:字符型 定義:2漢字4 位置:學(xué)生,成績單,補考名單,重修名單數(shù)據(jù)項編號: 101003數(shù)據(jù)項名:性別別名:無含義說明:學(xué)生的性別數(shù)據(jù)類型:字符型 定義:2漢字2 取值范圍:男,女位置:學(xué)生第47頁,共89頁。2.數(shù)據(jù)存儲描述處理過程中存儲的數(shù)據(jù),可以是手工憑證、手工文檔或計算機文件.數(shù)據(jù)存儲=數(shù)據(jù)存儲名, 含義說明, 輸入數(shù)據(jù)流, 輸出數(shù)據(jù)流, 定義, 數(shù)據(jù)量, 存取頻度, 存取方式第48頁,共89頁。例:學(xué)生成績管理系統(tǒng)的數(shù)據(jù)存儲.數(shù)據(jù)存儲編號:201001數(shù)據(jù)存儲

18、名:學(xué)生 含義說明:學(xué)生的自然情況數(shù)據(jù)輸入數(shù)據(jù)流: 無輸出數(shù)據(jù)流: 學(xué)生數(shù)據(jù)定義: 學(xué)生=學(xué)號+姓名+性別+出生日期+院系號數(shù)據(jù)量: 最多為50000個學(xué)生第49頁,共89頁。數(shù)據(jù)存儲編號: 201002數(shù)據(jù)存儲名:課程含義說明: 關(guān)于課程的數(shù)據(jù)輸入數(shù)據(jù)流: 無輸出數(shù)據(jù)流: 課程數(shù)據(jù)定義: 課程=課號+課名+學(xué)時數(shù)+學(xué)分+考核性質(zhì)數(shù)據(jù)量: 最多為6000門課程第50頁,共89頁。3. 數(shù)據(jù)流表示某一過程的輸入或輸出. 數(shù)據(jù)流=數(shù)據(jù)流名, 含義說明, 流入過程, 流出過程, 定義, 平均流量, 高峰期流量流入/流出過程指從哪個過程來,到哪個過程去.平均流量指單位時間信息傳輸量.第51頁,共89頁

19、。例:學(xué)生成績管理系統(tǒng)的數(shù)據(jù)流.數(shù)據(jù)流編號: 301001數(shù)據(jù)流名:考試成績含義說明:考試原始成績單流出過程:教務(wù)部門流入過程:成績核對定義: 考試成績=學(xué)號+姓名 +課號+課程名+分?jǐn)?shù)數(shù)據(jù)流編號:301002數(shù)據(jù)流名:成績無效含義說明:原始成績合法性判定流出過程:成績核對流入過程:教務(wù)部門定義: 成績無效=學(xué)號+姓名+ 課號+課程名+分?jǐn)?shù)+ 合格標(biāo)志第52頁,共89頁。4. 處理描述處理或加工的過程. 處理=處理名, 含義說明, 輸入數(shù)據(jù)流, 輸出數(shù)據(jù)流, 簡要說明 第53頁,共89頁。例:學(xué)生成績管理系統(tǒng)的處理.處理編號: 401001處理名:成績核對 含義說明:根據(jù)原始成績,核對成績是否

20、合格,考生是否存在 輸入數(shù)據(jù)流:考試成績,學(xué)生數(shù)據(jù),課程數(shù)據(jù) 輸出數(shù)據(jù)流:成績無效,合格成績 處理簡要說明:處理編號: 401002處理名:成績處理 含義說明:對考生進行處理 輸入數(shù)據(jù)流:合格成績 輸出數(shù)據(jù)流:成績單 處理簡要說明:第54頁,共89頁。5 加工邏輯的分析與表達(dá)用于表示層次結(jié)構(gòu)關(guān)系的工具:層次方框圖 、Warnier圖用于描述處理過程的有:IPO圖用于描述條件判斷的有:結(jié)構(gòu)式語言、判斷樹和判斷表第55頁,共89頁。結(jié)構(gòu)式語言 結(jié)構(gòu)式語言是介于自然語言和形式語言之間的一種半形式語言外層:描述控制結(jié)構(gòu),包括:順序結(jié)構(gòu)、判斷結(jié)構(gòu)和循環(huán)結(jié)構(gòu)內(nèi)層:采用祈使語句第56頁,共89頁。判定表判定

21、表是一種文本化的加工說明的流行格式,它特別適用于帶有一組測試條件的說明。 條 件分 類1234金 額1000100010001000動 作賬目狀況未過期已過期未過期已過期押下批準(zhǔn)單發(fā)出批準(zhǔn)單發(fā)出提貨單發(fā)出通知單第57頁,共89頁。判定樹判定樹也是用來表達(dá)加工邏輯的一種工具。第58頁,共89頁。層次方框圖層次方框圖用樹形結(jié)構(gòu)的一系列多層次的矩形框描繪數(shù)據(jù)的層次結(jié)構(gòu)。樹形結(jié)構(gòu)的頂層是一個單獨的矩形框,它代表完整的數(shù)據(jù)結(jié)構(gòu),下面的各層矩形框代表這個數(shù)據(jù)的子集,最底層的各個框代表組成這個數(shù)據(jù)的實際數(shù)據(jù)元素(不能再分割的元素)。隨著結(jié)構(gòu)的精細(xì)化,層次方框圖對數(shù)據(jù)結(jié)構(gòu)也描繪得越來越詳細(xì),這種模式非常適合于

22、需求分析階段的需要。系統(tǒng)分析員從對頂層信息的分類開始,沿圖中每條路徑反復(fù)細(xì)化,直到確定了數(shù)據(jù)結(jié)構(gòu)的全部細(xì)節(jié)時為止。第59頁,共89頁。舉 例第60頁,共89頁。領(lǐng)導(dǎo)層輔助決策系統(tǒng)查詢輔助決策物資信息重點供料信息商情信息人員狀況合同監(jiān)視財務(wù)信息計劃執(zhí)行情況工程進展情況超儲低儲情況經(jīng)營指標(biāo)歷年對比價格預(yù)測物資用量預(yù)測庫存定額核定庫存結(jié)構(gòu)分析經(jīng)濟采購批量保本保利分析第61頁,共89頁。Warnier圖法國計算機科學(xué)家Warnier提出了表示信息層次結(jié)構(gòu)的另外一種圖形工具。Warnier圖也用樹形結(jié)構(gòu)描繪信息,但是這種圖形工具比層次方框圖提供了更豐富的描繪手段。用Warnier圖可以表明信息的邏輯組織

23、。 它可以指出一類信息或一個信息元素是重復(fù)出現(xiàn)的,也可以表示特定信息在某一類信息中是有條件地出現(xiàn)的。重復(fù)和條件約束是說明軟件處理過程的基礎(chǔ),所以很容易把Warnier圖轉(zhuǎn)變成軟件設(shè)計的工具。第62頁,共89頁。舉 例圖中表示一種軟件產(chǎn)品要么是系統(tǒng)軟件要么是應(yīng)用軟件。系統(tǒng)軟件中有P1種操作系統(tǒng),P2種編譯程序,此外還有軟件工具。軟件工具是系統(tǒng)軟件的一種,它又可以進一步細(xì)分為編輯程序、測試驅(qū)動程序和設(shè)計輔助工具,圖中標(biāo)出了每種軟件工具的數(shù)量。第63頁,共89頁。IPO圖左邊的框中列出有關(guān)的輸入數(shù)據(jù)。中間的框內(nèi)列出主要的處理,處理框中列出處理的次序暗示了執(zhí)行的順序,但是用這些基本符號還不足以精確描述

24、執(zhí)行處理的詳細(xì)情況。在右邊的框內(nèi)列出產(chǎn)生的輸出數(shù)據(jù)。在IPO圖中還用類似向量符號的粗大箭頭清楚地指出數(shù)據(jù)通信的情況。第64頁,共89頁。一種改進的IPO圖(也稱為IPO表)在需求分析階段可以使用IPO表簡略地描述系統(tǒng)的主要算法(即數(shù)據(jù)流圖中各個處理的基本算法)。需求分析階段,IPO表中的許多附加信息暫時還不具備,但在設(shè)計階段可以進一步補充修正這些圖,作為設(shè)計階段的文檔。這正是在需求分析階段用IPO表作為描述算法的工具的重要優(yōu)點。第65頁,共89頁。6 原型技術(shù)1 用戶需求和應(yīng)用比較穩(wěn)定而且 可以通過調(diào)研分析預(yù)先獲得2 開發(fā)項目要求模糊、應(yīng)用環(huán)境多變,因此在調(diào)研和分析中,用戶提出的要求往往具有片

25、面性、模糊性、不一致性,甚至隨著項目的進展,對軟件系統(tǒng)認(rèn)識的逐步加深,需求也在變化和增加。第66頁,共89頁。一個軟件原型是所提出的新產(chǎn)品的部分實現(xiàn),它比開發(fā)人員常用的技術(shù)術(shù)語更易于理解。建立原型的主要原因是為了解決在產(chǎn)品開發(fā)的早期階段需求不確定的問題,用戶、經(jīng)理和其他非技術(shù)項目風(fēng)險承擔(dān)者發(fā)現(xiàn)在確定和開發(fā)產(chǎn)品時,原型可以使他們的想象更具體化。第67頁,共89頁。原型在軟件開發(fā)過程中可以起到以下主要作用:* 明確并完善需求原型作為一種需求工具,它初步實現(xiàn)所理解的系統(tǒng)的一部分。用戶對原型的評價可以指出需求中的許多問題,在你開發(fā)真正產(chǎn)品之前,可以最低的費用來解決這些問題。* 探索設(shè)計選擇方案原型作為

26、一種設(shè)計工具,用它可以探索不同的用戶界面技術(shù),使系統(tǒng)達(dá)到最佳的可用性,并且可以評價可能的技術(shù)方案。* 發(fā)展為最終的產(chǎn)品原型作為一種構(gòu)造工具,是產(chǎn)品最初子集的完整功能實現(xiàn),通過一系列小規(guī)模的開發(fā)循環(huán),你可以完成整個產(chǎn)品的開發(fā)。 第68頁,共89頁。雖然我們完成了需求獲取、分析和編寫規(guī)格說明,客戶或開發(fā)人員依然對需求中的一部分感到不明確或不清晰,那么在用戶和開發(fā)人員之間對于產(chǎn)品的理解必然會存在期望差距。通過閱讀文本需求或研究分析模型,很難想象軟件產(chǎn)品在特定的環(huán)境中如何運行。解決這個問題的一個有效方法就是建立軟件原型,它可以使新產(chǎn)品實在化,并消除不同的人在需求理解上的差異。比起閱讀一份冗長無味的軟件

27、需求規(guī)格說明,用戶通常更愿意嘗試建立有趣的原型。第69頁,共89頁。在軟件開發(fā)過程中,原型是軟件的一個早期可運行版本,它反映最終系統(tǒng)的部分重要特性。與飛機模型或汽車模型不同,軟件原型只是真實系統(tǒng)的一部分或者一個模型,它不能實現(xiàn)任何功能,因此,切記不能把它和最終系統(tǒng)等同起來。 第70頁,共89頁。建立軟件原型的目的是為了降低軟件項目的風(fēng)險,但這種方法本身有產(chǎn)生了新的風(fēng)險。當(dāng)用戶看到正在運行的原型時,往往會錯誤地認(rèn)為產(chǎn)品很快能完成,他們會說:這看起來真不錯,希望繼續(xù)把它做完交付。如果你正在演示或評價一個拋棄型原型,無論它與真正的產(chǎn)品是多么相像,也決不會達(dá)到產(chǎn)品的使用程度。因此,減少這種風(fēng)險的關(guān)鍵在

28、于讓人們明白原型是什么和為什么,并且充分認(rèn)識到交付原型后患無窮。 第71頁,共89頁。7 需求驗證與評審驗證軟件需求的正確性驗證軟件需求的方法用于需求分析的軟件工程工具第72頁,共89頁。軟件需求規(guī)格說明是需求開發(fā)的最終結(jié)果,它精確地闡述一個軟件系統(tǒng)必須提供的功能和性能以及它所要考慮的限制條件。軟件需求規(guī)格說明不僅是系統(tǒng)測試和用戶文檔的基礎(chǔ),也是所有子系列項目規(guī)劃、設(shè)計和編碼的基礎(chǔ)。 軟件需求規(guī)格說明是用戶、分析人員和設(shè)計人員之間進行理解和交流的手段; 測試人員可以根據(jù)軟件需求規(guī)格說明中對產(chǎn)品行為的描述,制定測試計劃、測試用例和測試過程。 文檔人員根據(jù)軟件需求規(guī)格說明和用戶界面設(shè)計,編寫用戶手

29、冊等; 軟件需求規(guī)格說明指導(dǎo)著整個系統(tǒng)的開發(fā)過程,評審過的需求規(guī)格說明需要進行變更控制。第73頁,共89頁。軟件需求規(guī)格說明書的內(nèi)容概述;數(shù)據(jù)描述;功能描述;性能描述;參考文獻(xiàn);附錄。第74頁,共89頁。模板在軟件項目中,開發(fā)組織應(yīng)該采用一種標(biāo)準(zhǔn)的軟件需求規(guī)格說明的模板。現(xiàn)在有許多推薦的軟件需求規(guī)格說明模板可以使用,這里介紹一種由IEEE標(biāo)準(zhǔn)830-1998改寫并擴充的模板。 第75頁,共89頁。a. 引言概要敘述軟件需求規(guī)格說明,便于讀者理解文檔如何編寫以及如何閱讀和解釋。a.1 目的對產(chǎn)品進行定義,在該文檔中詳盡說明了這個產(chǎn)品的軟件需求,包括修正或發(fā)行版本號。如果這個軟件需求規(guī)格說明只與整

30、個系統(tǒng)的一部分有關(guān)系,那么就只定義文檔中說明的部分或子系統(tǒng)。a.2 文檔約定描述編寫文檔時所采用的標(biāo)準(zhǔn)或排版約定,包括正文風(fēng)格、提示區(qū)或重要符號。a.3 預(yù)期的讀者和閱讀建議列舉了軟件需求規(guī)格說明所針對的不同讀者,例如開發(fā)人員、項目經(jīng)理、營銷人員、用戶、測試人員或文檔的編寫人員。描述了文檔中剩余部分的內(nèi)容及其組織結(jié)構(gòu),提出了最適合于每一類型讀者閱讀文檔的建議。第76頁,共89頁。a.4 產(chǎn)品范圍提供了對指定的軟件及其目的的簡短描述,包括利益和目標(biāo)。a.5 參考文獻(xiàn)列舉了編寫軟件需求規(guī)格說明時所參考的資料或其它資源,可能包括用戶界面風(fēng)格指導(dǎo)、合同、標(biāo)準(zhǔn)、系統(tǒng)需求規(guī)格說明、使用實例文檔,或相關(guān)產(chǎn)品

31、的軟件需求規(guī)格說明。在這里應(yīng)該給出詳細(xì)的信息,包括標(biāo)題名稱、作者、版本號、日期、出版單位或資料來源,以方便讀者查閱這些文獻(xiàn)。第77頁,共89頁。b. 綜合描述這一部分概述了正在定義的產(chǎn)品以及它所運行的環(huán)境、使用產(chǎn)品的用戶和已知的限制、假設(shè)和依賴。b.1 產(chǎn)品的前景描述了軟件需求規(guī)格說明中所定義的產(chǎn)品的背景和起源。說明了該產(chǎn)品是否是產(chǎn)品系列中的下一成員,是否是成熟產(chǎn)品所改進的下一代產(chǎn)品、是否是現(xiàn)有應(yīng)用程序的替代品,或者是否是一個新型的、自含型產(chǎn)品。如果軟件需求規(guī)格說明定義了大系統(tǒng)的一個組成部分,那么就要說明這部分軟件是怎樣與整個系統(tǒng)相關(guān)聯(lián)的,并且要定義出兩者之間的接口。第78頁,共89頁。b.2

32、 產(chǎn)品的功能概述了產(chǎn)品所具有的主要功能。其詳細(xì)內(nèi)容將在d中描述,所以在此只需要概略地總結(jié),例如用列表的方法給出。很好地組織產(chǎn)品的功能,使每個讀者都易于理解。用圖形表示主要的需求分組以及它們之間的聯(lián)系,例如數(shù)據(jù)流程圖的頂層圖或類圖,都是有用的。b.3 用戶類和特征確定你覺得可能使用該產(chǎn)品的不同用戶類并描述它們相關(guān)的特征。有一些需求可能只與特定的用戶類相關(guān),將該產(chǎn)品的重要用戶類與那些不太重要的用戶類區(qū)分開。b.4 運行環(huán)境描述了軟件的運行環(huán)境,包括硬件平臺、操作系統(tǒng)和版本,還有其它的軟件組件或與其共存的應(yīng)用程序。第79頁,共89頁。b.5 設(shè)計和實現(xiàn)上的限制確定影響開發(fā)人員自由選擇的問題,并說明這

33、些問題為什么成為一種限制??赡艿南拗瓢ㄈ缦聝?nèi)容:o 必須使用或者避免的特定技術(shù)、工具、編程語言和數(shù)據(jù)庫。o 所要求的開發(fā)規(guī)范或標(biāo)準(zhǔn)。o 企業(yè)策略、政府法規(guī)或工業(yè)標(biāo)準(zhǔn)。o 硬件限制,例如定時需求或存儲器限制。o 數(shù)據(jù)轉(zhuǎn)換格式標(biāo)準(zhǔn)。b.6 假設(shè)和依賴列舉出在對軟件需求規(guī)格說明中影響需求陳述的假設(shè)因素,以及項目對外部因素存在的依賴。第80頁,共89頁。c. 外部接口需求利用本節(jié)來確定可以保證新產(chǎn)品與外部組件正確連接的需求。c.1 用戶界面陳述所需要的用戶界面的軟件組件。描述每個用戶界面的邏輯特征。以下是可能要包括的一些特征:o 將要采用的圖形用戶界面( G U I)標(biāo)準(zhǔn)或產(chǎn)品系列的風(fēng)格。o 屏幕布

34、局或解決方案的限制。o 將出現(xiàn)在每個屏幕的標(biāo)準(zhǔn)按鈕、功能或?qū)Ш芥溄樱ɡ缫粋€幫助按鈕)。o 快捷鍵。o 錯誤信息顯示標(biāo)準(zhǔn)。對于用戶界面的細(xì)節(jié),例如特定對話框的布局,應(yīng)該寫入一個獨立的用戶界面規(guī)格說明中,而不能寫入軟件需求規(guī)格說明中 第81頁,共89頁。c.2 硬件接口描述系統(tǒng)中軟件和硬件每一接口的特征。這種描述可能包括支持的硬件類型、軟硬件之間交流的數(shù)據(jù)和控制信息的性質(zhì)以及所使用的通信協(xié)議。c.3 軟件接口描述該產(chǎn)品與其它外部組件(由名字和版本識別)的連接,包括數(shù)據(jù)庫、操作系統(tǒng)、工具、庫和集成的商業(yè)組件。明確并描述在軟件組件之間交換數(shù)據(jù)或消息的目的。描述所需要的服務(wù)以及內(nèi)部組件通信的性質(zhì),確定將在組件之間共享的數(shù)據(jù)。 c.4 通信接口描述與產(chǎn)品所使用的通信功能相關(guān)的需求,包括電子郵件、Web瀏覽器、網(wǎng)絡(luò)通信標(biāo)準(zhǔn)或協(xié)議及電子表格等等。定義了相關(guān)的消息格式,規(guī)定通信安全或加密問題、數(shù)據(jù)傳輸速率和同步通信機制。第8

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論