




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第三章軟件需求分析主要內(nèi)容v3.1 需求分析的任務(wù)需求分析的任務(wù) v3.2 結(jié)構(gòu)化分析方法結(jié)構(gòu)化分析方法v3.3 數(shù)據(jù)流圖數(shù)據(jù)流圖(dfd)v3.4 數(shù)據(jù)字典數(shù)據(jù)字典(dd)v3.5 加工邏輯的描述加工邏輯的描述 v3.6 idef方法方法 3.1.1 需求分析的概念需求分析的概念 v 開發(fā)人員要準確理解用戶的要求,進行細致的調(diào)查分析,將用戶非形式的需求陳述轉(zhuǎn)化為完整的需求定義,再由需求定義轉(zhuǎn)化到相應(yīng)的形式功能規(guī)約(需求規(guī)格說明)的過程。 v 1.需求分析的難點 (1)問題的復(fù)雜性。用戶需求所涉及的因素很多,如系統(tǒng)功能和運行環(huán)境。 (2)交流障礙。需求分析涉及人員較多,分別具備不同的背景知識,
2、處于不同的出發(fā)點,造成了相互之間交流的困難。 (3)不完備性和不一致性。用戶對問題的陳述往往是不完備的,其各方面的需求還可能存在著矛盾,需求分析要消除其矛盾,形成完備及一致的定義。 (4)需求易變性。用戶需求的變動往往會影響到需求分析,導(dǎo)致系統(tǒng)的不一致性和不完備性。 v 2.需求分析的基本原則2006.10 (1)必須能夠表達和理解問題的數(shù)據(jù)域和功能域。數(shù)據(jù)域包括數(shù)據(jù)流、數(shù)據(jù)內(nèi)容和數(shù)據(jù)結(jié)構(gòu),而功能域反映數(shù)據(jù)域三方面的控制信息。 (2)可以把一個復(fù)雜問題按功能進行分解并可逐層細化。 (3) 建模。建立模型可以幫助分析人員更好地理解軟件系統(tǒng)的信息、功能、行為,這些模型也是軟件設(shè)計的基礎(chǔ)。3.1.2
3、 需求分析的基本任務(wù)需求分析的基本任務(wù) v 1.問題識別 2008.10 (1) 功能需求:明確所開發(fā)的軟件必須具備什么樣的功能。 (2) 性能需求:明確待開發(fā)的軟件的技術(shù)性能指標。 (3) 環(huán)境需求:明確軟件運行時所需要的軟、硬件的要求。 (4) 用戶界面需求:明確人機交互方式、輸入輸出數(shù)據(jù)格式。 v 2. 分析與綜合,導(dǎo)出軟件的邏輯模型 分析人員對獲取的需求,進行一致性的分析檢查,在分析、綜合中逐步細化軟件功能,劃分成各個子功能。用圖文結(jié)合的形式,建立起新系統(tǒng)的邏輯模型。v3. 編寫文檔 (1) 編寫“需求規(guī)格說明書”,把雙方共同的理解與分析結(jié)果用規(guī)范的方式描述出來,作為今后各項工作的基礎(chǔ)
4、。 (2) 編寫初步用戶使用手冊,著重反映被開發(fā)軟件的用戶功能界面和用戶使用的具體要求,用戶手冊能強制分析人員從用戶使用的觀點考慮軟件。 (3) 編寫確認測試計劃,作為今后確認和驗收的依據(jù)。 (4) 修改完善軟件開發(fā)計劃。在需求分析階段對待開發(fā)的系統(tǒng)有了更進一步的了解,所以能更準確地估計開發(fā)成本、進度及資源要求,因此對原計劃要進行適當修正。 3.2 結(jié)構(gòu)化分析方法結(jié)構(gòu)化分析方法 v 結(jié)構(gòu)化分析(structured analysis,簡稱sa),是面向數(shù)據(jù)流進行需求分析的方法。sa也是一種建?;顒?,該方法使用簡單易讀符號,根據(jù)軟件內(nèi)部數(shù)據(jù)傳遞、變換的關(guān)系,自頂向下逐層分解,描繪出滿足功能要求的
5、軟件模型。 2008.103.2.1 自頂向下逐層分解的分析策略自頂向下逐層分解的分析策略 v 面對一個復(fù)雜的問題,分析人員不可能一開始就考慮到問題的所有方面以及全部細節(jié),采用的策略往往是分解,把一個復(fù)雜的問題劃分成若干小問題,然后再分別解決,將問題的復(fù)雜性降低到人可以掌握的程度。 3.2.2 描述工具描述工具v sa方法利用圖形等半形式化的描述方式表達需求,簡明易懂,用它們形成需求說明書中的主要部分。描述工具是: (1)數(shù)據(jù)流圖:描述系統(tǒng)由哪幾部分組成,各部分之間有什么聯(lián)系等等。 (2)數(shù)據(jù)字典:定義了數(shù)據(jù)流圖中每一個圖形元素。 (3)描述加工邏輯的結(jié)構(gòu)化語言、判定表、判定樹:詳細描述數(shù)據(jù)流
6、圖中不能被再分解的每一個加工。 3.2.3 sa分析步驟分析步驟 sa方法利用圖形等半形式化的描述方式表達需求,簡明易懂,用它們形成需求說明書中的主要部分。描述工具是: (1)了解當前系統(tǒng)的工作流程,獲得當前系統(tǒng)的物理模型。通過對當前系統(tǒng)的詳細調(diào)查,了解當前系統(tǒng)的工作過程,同時收集資料、文件、數(shù)據(jù)、報表等,將看到的、聽到的、收集到的信息和情況用圖形描述出來。也就是用一個模型來反映自己對當前系統(tǒng)的理解,如畫系統(tǒng)流程圖。 (2)抽象出當前系統(tǒng)的邏輯模型。物理模型反映了系統(tǒng)“怎么做”的具體實現(xiàn),去掉物理模型中非本質(zhì)的因素,抽取出本質(zhì)的因素,構(gòu)造出當前系統(tǒng)的邏輯模型,反映了當前系統(tǒng)“做什么”的功能。
7、(3)建立目標系統(tǒng)的邏輯模型。分析、比較目標系統(tǒng)與當前系統(tǒng)邏輯上的差別,明確目標系統(tǒng)到底要“做什么”,從而從當前系統(tǒng)的邏輯模型導(dǎo)出目標系統(tǒng)的邏輯模型。 (4)作進一步補充和優(yōu)化。為了對目標系統(tǒng)做完整的描述,還需要對得到的邏輯模型做一些補充。 3.3 數(shù)據(jù)流圖數(shù)據(jù)流圖(dfd)v 數(shù)據(jù)流圖,簡稱dfd,是sa方法中用于表示系統(tǒng)邏輯模型的一種工具,它以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動和處理的過程,由于它只反映系統(tǒng)必須完成的邏輯功能,所以它是一種功能模型。 2009.13.3.1 基本圖形符號基本圖形符號v數(shù)據(jù)流圖有四種基本圖形符號: :箭頭,表示數(shù)據(jù)流; :圓或橢圓,表示加工; = :雙杠,表示數(shù)據(jù)
8、存儲; :方框,表示數(shù)據(jù)的源點或終點。 v (1) 數(shù)據(jù)流。數(shù)據(jù)流是數(shù)據(jù)在系統(tǒng)內(nèi)傳播的路徑,因此由一組成分固定的數(shù)據(jù)組成。如訂票單由旅客姓名、年齡、單位、身份證號、日期、目的地等數(shù)據(jù)項組成。由于數(shù)據(jù)流是流動中的數(shù)據(jù),所以必須有流向,除了與數(shù)據(jù)存儲之間的數(shù)據(jù)流不用命名外,數(shù)據(jù)流應(yīng)該用名詞或名詞短語命名。 (2)加工(又稱為數(shù)據(jù)處理)。對數(shù)據(jù)流進行某些操作或變換。每個加工也要有名字,通常是動詞短語,簡明地描述完成什么加工。在分層的數(shù)據(jù)流圖中,加工還應(yīng)編號。 (3)數(shù)據(jù)存儲(又稱為文件),指暫時保存的數(shù)據(jù),它可以是數(shù)據(jù)庫文件或任何形式的數(shù)據(jù)組織。 (4)數(shù)據(jù)源點或終點,是本軟件系統(tǒng)外部環(huán)境中的實體(
9、包括人員、組織或其他軟件系統(tǒng)),統(tǒng)稱外部實體。一般只出現(xiàn)在數(shù)據(jù)流圖的頂層圖。 3.3.2畫數(shù)據(jù)流圖的步驟畫數(shù)據(jù)流圖的步驟 v (1)首先畫系統(tǒng)的輸入輸出,即先畫頂層數(shù)據(jù)流圖。 v (2)畫系統(tǒng)內(nèi)部,即畫下層數(shù)據(jù)流圖。不再分解的加工稱為基本加工。 v (3)注意事項。注意事項 命名。不論數(shù)據(jù)流、數(shù)據(jù)存儲還是加工,合適的命名使人們易于理解其含義。 畫數(shù)據(jù)流而不是控制流。數(shù)據(jù)流反映系統(tǒng)“做什么”,不反映“如何做”,因此箭頭上的數(shù)據(jù)流名稱只能是名詞或名詞短語,整個圖中不反映加工的執(zhí)行順序。 一般不畫物質(zhì)流。數(shù)據(jù)流反映能用計算機處理的數(shù)據(jù),并不是實物,因此對目標系統(tǒng)的數(shù)據(jù)流圖一般不要畫物質(zhì)流。 每個加工
10、至少有一個輸入數(shù)據(jù)流和一個輸出數(shù)據(jù)流,反映出此加工數(shù)據(jù)的來源與加工的結(jié)果。 編號。如果一張數(shù)據(jù)流圖中的某個加工分解成另一張數(shù)據(jù)流圖時,則上層圖為父圖,直接下層圖為子圖。子圖及其所有的加工都應(yīng)編號。 3.4 數(shù)據(jù)字典數(shù)據(jù)字典(dd)v數(shù)據(jù)字典(data dictionary,簡稱dd)就是用來定義數(shù)據(jù)流圖中的各個成分的具體含義的,它以一種準確的、無二義性的說明方式為系統(tǒng)的分析、設(shè)計及維護提供了有關(guān)元素的一致的定義和詳細的描述。它和數(shù)據(jù)流圖共同構(gòu)成了系統(tǒng)的邏輯模型,是需求規(guī)格說明書的主要組成部分。 3.4.1數(shù)據(jù)字典的內(nèi)容以及格式 v 數(shù)據(jù)字典的任務(wù)是對于數(shù)據(jù)流圖中出現(xiàn)的所有被命名的圖形元素在數(shù)據(jù)
11、詞典中作為一個詞條加以定義,使得每一個圖形元素的名字都有一個確切的解釋。v數(shù)據(jù)字典有以下四類條目:數(shù)據(jù)流、數(shù)據(jù)項、數(shù)據(jù)流、數(shù)據(jù)項、數(shù)據(jù)存儲、基本加工。數(shù)據(jù)存儲、基本加工。2007.10v數(shù)據(jù)詞典中所有的定義應(yīng)是嚴密的、精確的,不可有半點含混,不可有二義性。 v1.數(shù)據(jù)流條目 數(shù)據(jù)流條目給出了dfd中數(shù)據(jù)流的定義,通常列出該數(shù)據(jù)流的各組成數(shù)據(jù)項。在定義數(shù)據(jù)流或數(shù)據(jù)存儲組成時,使用的符號如3-1表 v 2.數(shù)據(jù)存儲條目:是對數(shù)據(jù)存儲的定義 v 3.數(shù)據(jù)項條目:是不可再分解的數(shù)據(jù)單位 v 4.加工條目 加工條目是用來說明dfd中基本加工的處理邏輯的,由于上層的加工是由下層的基本加工分解而來,只要有了
12、基本加工的說明,就可理解其他加工。 3.4.2 數(shù)據(jù)字典的實現(xiàn)v1、手工建立:數(shù)據(jù)字典的內(nèi)容用卡片形式存放v2、利用計算機輔助建立并維護3.5 加工邏輯的描述加工邏輯的描述 v加工邏輯也稱為“小說明”,描述加工邏輯一般用以下三種工具:結(jié)構(gòu)化語言、判定表、判定樹。 3.5.1結(jié)構(gòu)化語言結(jié)構(gòu)化語言v 結(jié)構(gòu)化語言是介于自然語言和形式語言之間的一種半形式語言。結(jié)構(gòu)化語言是在自然語言基礎(chǔ)上加了一些限定,使用有限的詞匯和有限的語句來描述加工邏輯,它的結(jié)構(gòu)可分成外層和內(nèi)層兩層:v (1)外層:用來描述控制結(jié)構(gòu),采用順序、選擇、順序、選擇、重復(fù)重復(fù)三種基本結(jié)構(gòu)。2008.10v (2)內(nèi)層:一般是采用祈使語句
13、的自然語言短語,使用數(shù)據(jù)字典中的名詞和有限的自定義詞,其動詞含義要具體,盡量不用形容詞和副詞來修飾。 3.5.2判定表判定表v 在有些情況下,數(shù)據(jù)流圖中的某些加工的一組動作信賴于多個邏輯條件的取值。用自然語言或結(jié)構(gòu)化語言都不易清楚地描述出來。而用判定表就能夠清楚地表示復(fù)雜的條件組合與應(yīng)做的動作之間的對應(yīng)關(guān)系。v判定表由四個部分組成,如下3-2表所示,構(gòu)造一張判定表,可采用以下步驟:v (1)提取問題中的條件。v (2)標出條件的取值。v (3)計算所有條件的組合數(shù)n。v (4)提取可能采用的動作或措施。v (5)制作判定表。v (6)完善判定表。 3.5.3 判定樹判定樹v 判定樹是判定表的變
14、形,一般情況下它比判定表更直觀,且易于理解和使用。v 這三種描述加工邏輯的工具各有優(yōu)缺點,對于順序執(zhí)行和循環(huán)執(zhí)行的動作,用結(jié)構(gòu)語言描述。對于存在多個條件復(fù)雜組合的判斷問題,用判定表和判定樹。判定樹較判定表直觀易讀,判定表進行邏輯驗證較嚴格,能把所有的可能性全部都考慮到??蓪煞N工具結(jié)合起來,先用判定表底稿,在經(jīng)基礎(chǔ)上產(chǎn)生判定樹。 3.6 idef方法方法 idef方法是美國空軍在1981年針對集成化計算機輔助制造(integrated computer aided manufacturing,簡稱icam)工程項目中用于進行復(fù)雜系統(tǒng)分析和設(shè)計的方法,是在結(jié)構(gòu)化分析與設(shè)計技術(shù)的基礎(chǔ)上提出來的。i
15、def是icam definition的縮寫。idef方法分為三部分。 idef0: 用來描述系統(tǒng)的功能活動及其聯(lián)系,建立系統(tǒng)的功能模型。 idef1: 用來描述系統(tǒng)的信息以及其聯(lián)系,建立系統(tǒng)的信息模型。 idef2: 用來進行系統(tǒng)模擬,建立系統(tǒng)的動態(tài)模型。 3.6.1 idef0的圖形表示的圖形表示 v idef0方法采用簡單的圖形符號和簡潔的文字說明,描述系統(tǒng)在不同層次上的功能。在該方法中,將系統(tǒng)功能稱為活動,將表示系統(tǒng)功能的圖形稱為活動圖形。在活動圖形中,用方框和箭頭表示系統(tǒng)的各種活動及相互間的關(guān)系。 3.6.2建立功能模型的基本方法建立功能模型的基本方法 v 1.確定建模的范圍、觀點及
16、目的v 2.建立系統(tǒng)的內(nèi)外關(guān)系圖-a-0圖 v 3.建立頂層圖-a-0圖 v 4.建立低層次的圖形 名稱解釋1需求分析 2當前系統(tǒng)3目標系統(tǒng) 4sa 5dfd 填空題 v1需求分析階段產(chǎn)生的最重要的文檔是_。2為解決一個復(fù)雜問題,往往采取的策略是_。3sa方法中使用半形式化的描述方式表達需求,采用的主要描述工具是_。4數(shù)據(jù)流圖中有四種符號元素,它們是_。5數(shù)據(jù)字典中有四類條目,分別是_。6在idef0圖中,表示系統(tǒng)功能的圖形稱為_圖形。7在畫分層的dfd時,父圖與子圖的輸入輸出數(shù)據(jù)流要_。8用于描述基本加工的小說明的三種描述工具是_。9idef0是建立系統(tǒng)_模型的有效方法。10在idef0方法
17、中,被標志為a0的圖稱為系統(tǒng)的_圖。 選擇題 1分層dfd是一種比較嚴格又易于理解的描述方式,它的頂層圖描述了系統(tǒng)的( )。 a細節(jié) b輸入與輸出 c軟件的作者 d繪制的時間2需求規(guī)格說明書的內(nèi)容還應(yīng)包括對( )的描述。 a主要功能 b算法的詳細過程 c用戶界面及運行環(huán)境 d軟件的性能3需求規(guī)格說明書的作用不應(yīng)包括( )。 a軟件設(shè)計的依據(jù) b用戶與開發(fā)人員對軟件要做什么的共同理解 c軟件驗收的依據(jù) d軟件可行性研究的依據(jù)4sa方法用dfd描述( ) a系統(tǒng)的控制流程 b系統(tǒng)的數(shù)據(jù)結(jié)構(gòu) c系統(tǒng)的基本加工 d系統(tǒng)的功能v5一個局部數(shù)據(jù)存儲只有當它作為( )時,就把它畫出來。 a某些加工的數(shù)據(jù)接口
18、 b某個加工的特定輸入 c某個加工的特定輸出 d某些加工的數(shù)據(jù)接口或某個加工的特定輸入/輸出 v6對于分層的dfd,父圖與子圖的平衡指子圖的輸入、輸出數(shù)據(jù)流同父圖相應(yīng)加工的輸入、輸出數(shù)據(jù)流( )。 a必須一致 b數(shù)目必須相等 c名字必須相同 d數(shù)目必須不等7需求分析階段不適用于描述加工邏輯的工具是( )。 a結(jié)構(gòu)化語言 b判定表 c判定樹 d流程圖v8sa方法的分析步驟是首先調(diào)查了解當前系統(tǒng)的工作流程,然后( )。a獲得當前系統(tǒng)的物理模型,抽象出當前系統(tǒng)的邏輯模型,建立目標系統(tǒng)的邏輯模型b獲得當前系統(tǒng)的物理模型,抽象出目標系統(tǒng)的邏輯模型,建立目標系統(tǒng)的物理模型c獲得當前系統(tǒng)的物理模型,建立當前系統(tǒng)的物理模型,抽象出目標系統(tǒng)的邏輯模型d獲得當前系統(tǒng)的物理模型,建立當前系統(tǒng)的物理模型,建立目標系統(tǒng)的物理模型9sa方法的基本思想是( )a自底向上逐步抽象b自底向上逐步分解c自頂向下逐步分解d自頂向下逐步抽象 10初步用戶手冊在( )階段編寫。a.可行性研究b需求分析c軟件
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- T-ZSA 271-2024 高強度高彈性高導(dǎo)電率鈦銅合金
- 二零二五年度私募股權(quán)基金股權(quán)轉(zhuǎn)讓及代持管理協(xié)議
- 二零二五年度農(nóng)副產(chǎn)品電商平臺用戶增長合作合同
- 二零二五年度體育場館委托代理出租服務(wù)合同
- 二零二五年度海洋工程電焊工勞動合同(海洋平臺焊接)
- 二零二五年度臨時工兼職合同
- 二零二五年度全屋定制家居裝修合同
- 二零二五年度科研實驗室租賃合同轉(zhuǎn)讓及設(shè)備維護協(xié)議
- 二零二五年度音樂節(jié)現(xiàn)場安全員聘請合同
- 二零二五年度鄉(xiāng)村民宿房東與游客租賃合同
- 肺部感染臨床路徑
- 電商平臺定價策略優(yōu)化
- 人美版美術(shù) 二年級下冊全冊教學(xué)設(shè)計(表格式)
- 保險經(jīng)紀人考試題庫含答案
- 2024-2030年中國骨傳導(dǎo)耳機行業(yè)銷售渠道及供需前景預(yù)測報告
- 2024年導(dǎo)游服務(wù)技能大賽《導(dǎo)游綜合知識測試》題庫及答案
- 專項訓(xùn)練-解決問題訓(xùn)練(專項訓(xùn)練) 六年級下冊數(shù)學(xué)人教版
- 心肺復(fù)蘇技能操作考核表
- SHT 3060-2013 石油化工企業(yè)供電系統(tǒng)設(shè)計規(guī)范
- 2024年俄羅斯高空作業(yè)平臺車行業(yè)應(yīng)用與市場潛力評估
- 蕪湖2024年安徽蕪湖傳媒中心招聘編外工作人員5人筆試歷年典型考題及考點附答案解析
評論
0/150
提交評論