L-第三章軟件工程課件需求分析.ppt_第1頁(yè)
L-第三章軟件工程課件需求分析.ppt_第2頁(yè)
L-第三章軟件工程課件需求分析.ppt_第3頁(yè)
L-第三章軟件工程課件需求分析.ppt_第4頁(yè)
L-第三章軟件工程課件需求分析.ppt_第5頁(yè)
已閱讀5頁(yè),還剩119頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、軟件工程,03章 需求分析,2,引言1 用戶描述的可能不是他想要的。 對(duì)用戶的描述每個(gè)人有不同的理解,3,引言2開發(fā)人員和用戶之間的鴻溝,從前有一家汽車廠,想為年輕人設(shè)計(jì)一款新車型,企劃及設(shè)計(jì)部討論了許久始終找不到感覺,于是對(duì)25-35歲的年輕人進(jìn)行問券調(diào)查,大伙辛苦了三個(gè)月,完成了一萬(wàn)份的調(diào)查記錄。市場(chǎng)部門摘要了調(diào)查內(nèi)容反映給設(shè)計(jì)部門,重點(diǎn):省油、外型酷、顏色鮮艷、馬力足等。設(shè)計(jì)部門有了靈感開始設(shè)計(jì),半年過去了!設(shè)計(jì)部門很得意的把雛型車展示給大伙看,這個(gè)時(shí)候CEO、市場(chǎng)部、企劃部.都傻眼了。 CEO開口說(shuō): 為什么這車沒有”輪子” 設(shè)計(jì)部回答: 市場(chǎng)部給的調(diào)查報(bào)告里,沒說(shuō)要有輪子 市場(chǎng)部回說(shuō)

2、: 問卷調(diào)查中、顧客沒有提到要有輪子 企劃部生氣的說(shuō): 你們都是白癡啊,汽車要有輪子是基本常識(shí),你們都不知道嗎? 就這樣現(xiàn)場(chǎng)吵翻天了! 注:原文地址:,4,引言3做需求要很細(xì)、很專業(yè)、很有經(jīng)驗(yàn),男孩反問:“是無(wú)聲槍么?” 不是 “槍聲有多大?” 80100分貝 “那就是說(shuō)會(huì)震的耳朵疼?”是 “您確定那只鳥真的被打死啦?”確定 “鳥里有沒有聾子?”沒有 “沒有關(guān)在籠子里的?”沒有 “旁邊樹上還有其他鳥?”沒有 “有殘疾或餓的飛不動(dòng)的鳥?”沒有 “算不算懷孕肚子里的小鳥?”都是公的,“打鳥的人眼里有沒有花?”沒有 “有沒有傻的不怕死的?”都怕死 “會(huì)不會(huì)一槍打死兩只以上?”不會(huì) “所有的鳥都可以自

3、由活動(dòng)么?”完全可以 “它們受到驚嚇時(shí)不會(huì)互相撞上?”不會(huì) ”學(xué)生滿懷信心的回答,“打死的鳥要是掛在樹上沒掉下來(lái),那么就剩一只,如果掉下來(lái),就一只不剩。”,某日老師在課堂上想考考學(xué)生們的智商,就問一個(gè)男孩:“樹上有十只鳥,開槍打死一只,還剩幾只?,5,結(jié)論,需求具有主觀性、二義性、多變性、模糊性。 需求分析要求很專業(yè)、很仔細(xì)、很有經(jīng)驗(yàn)。 需求分析是確定系統(tǒng)應(yīng)具備的功能,是其他所有工作的基礎(chǔ),因此非常重要。 需求導(dǎo)致整個(gè)項(xiàng)目失敗占的比例非常大。,6,第三章 軟件需求分析,需求分析的任務(wù) 與用戶溝通獲取需求的方法 分析建模與規(guī)格說(shuō)明 實(shí)體一聯(lián)系圖 數(shù)據(jù)規(guī)范化 狀態(tài)轉(zhuǎn)換圖 其他圖形工具 驗(yàn)證軟件需求

4、 小結(jié) 習(xí)題,7,教學(xué)要求,教學(xué)目的:了解需求分析的任務(wù)和步驟、評(píng)審標(biāo)準(zhǔn)和過程;掌握基本技術(shù),理解需求規(guī)格說(shuō)明書的作用與組成。 教學(xué)重點(diǎn):基本技術(shù)、需求規(guī)格說(shuō)明書的作用與組成。 教學(xué)難點(diǎn):基本技術(shù)。,8,需求分折簡(jiǎn)介,軟件需求指用戶對(duì)所開發(fā)的軟件在功能、性能、環(huán)境、可靠性等各方面的要求。 需求分析主要回答待開發(fā)的系統(tǒng)必須“做什么”,并用 需求規(guī)格說(shuō)明書 的形式準(zhǔn)確、詳細(xì)、規(guī)范地表達(dá)出來(lái)。,9,注意,需求分析階段,系統(tǒng)分析員的主要關(guān)注點(diǎn)是“做什么( what ) ” ,不是“怎樣做( how)”; 需求分析階段,系統(tǒng)分析員應(yīng)該給出軟件求規(guī)格書。,10,3.1需求分析的任務(wù),四項(xiàng)主要任務(wù): 1 、

5、確定對(duì)系統(tǒng)的綜合要求 2 、分析系統(tǒng)的數(shù)據(jù)要求 3 、導(dǎo)出系統(tǒng)的邏輯模型 4 、修正系統(tǒng)開發(fā)計(jì)劃,11,提問并思考:,如果你是一個(gè)用戶,你會(huì)對(duì)將要開發(fā)的軟件有哪些要求?,12,3.1.1確定對(duì)系統(tǒng)的綜合要求, 功能需求。指定系統(tǒng)必須提供的服務(wù)。 性能需求。指定系統(tǒng)必須滿足的定時(shí)約束或容量約束等。 可靠性和可用性需求。應(yīng)定量指定。 出錯(cuò)處理需求。指環(huán)境錯(cuò)誤,非系統(tǒng)本身的錯(cuò)誤。 接口需求。常見的接口需求:用戶接口需求;硬件接口需求;軟件接口需求;通信接口需求。,13, 約束。常見的約束:精度;工具和語(yǔ)言約束;設(shè)計(jì)約束;應(yīng)該使用的標(biāo)準(zhǔn);應(yīng)該使用的硬件平臺(tái)。 逆向需求。指定系統(tǒng)不應(yīng)該做什么, 將來(lái)可能

6、提出的要求。,14,3.1.2分析系統(tǒng)的數(shù)據(jù)要求,提問并思考: 如果你是設(shè)計(jì)者,除了上述需求以外,你覺得還需要得到哪些要求? 答:軟件系統(tǒng)本質(zhì)上是信息處理系統(tǒng),要考慮數(shù)據(jù)和數(shù)據(jù)處理的問題。,15,對(duì)系統(tǒng)數(shù)據(jù)的分析,建立數(shù)據(jù)(3. 4 節(jié)) ; 描繪數(shù)據(jù)結(jié)構(gòu)(3. 7 節(jié)) ; 規(guī)范化( 3. 5 節(jié)),16,3 .1.3 導(dǎo)出系統(tǒng)的邏輯模型,用數(shù)據(jù)流圖、實(shí)體一聯(lián)系圖、狀態(tài)轉(zhuǎn)換圖、數(shù)據(jù)字典和主要的處理算法描述這個(gè)邏輯模型。 3. 1 . 4 修正系統(tǒng)開發(fā)計(jì)劃 根據(jù)在分析過程中獲得的對(duì)系統(tǒng)的更深入更具體的了解,可以比較準(zhǔn)確地估計(jì)系統(tǒng)的成本和進(jìn)度,修正以前制定的開發(fā)計(jì)劃。,17,圖:軟件需求分析的通

7、信途徑,分析小組成員主要包括領(lǐng)域?qū)<摇⑾到y(tǒng)分析員; 客戶訪談 問題分析與確認(rèn),18,與用戶溝通的方法,1、訪談 2、面向數(shù)據(jù)流自頂向下求精 3、簡(jiǎn)易的應(yīng)用規(guī)格說(shuō)明技術(shù) 4、快速建立軟件原型,19,3.2.1 訪談,分正式和非正式訪談。 可采用調(diào)查表形式 可使用情景分析技術(shù),20,例:某出版社系統(tǒng)調(diào)查表,21,3.2 面向數(shù)據(jù)流自頂向下求精,結(jié)構(gòu)化分析方法的實(shí)質(zhì)。 進(jìn)一步細(xì)化可行性研究階段獲得到高層數(shù)據(jù)流圖。包括建立: 詳細(xì)的數(shù)據(jù)流圖,描繪數(shù)據(jù)在軟件系統(tǒng)內(nèi)從輸入移動(dòng)到輸出的過程中所經(jīng)受到變換; 數(shù)據(jù)字典:定義數(shù)據(jù)流圖中包含的元素; 實(shí)體關(guān)系( ER )圖:從用戶角度描述數(shù)據(jù); IPO 圖:描述數(shù)

8、據(jù)流圖中處理框的功能和算法。,22,面向數(shù)據(jù)流自頂向下求精過程,23,3.2.3簡(jiǎn)易的應(yīng)用規(guī)格說(shuō)明技術(shù),一種面向團(tuán)隊(duì)的需求收集法,提倡用戶與開發(fā)者密切合作,共同標(biāo)識(shí)問題,提出解決方案要素,商討不同方案并指定基本需求。,24,3.2.4快速建立軟件原型,快速原形就是快速建立起來(lái)的旨在演示目標(biāo)系統(tǒng)主要功能的可運(yùn)行的程序。 要點(diǎn): 實(shí)現(xiàn)用戶看得見的功能,省略目標(biāo)系統(tǒng)“隱含”功能。,25,3.2.4快速建立軟件原型,建立和修改原型的方法和工具: (1)第四代技術(shù)。包括眾多數(shù)據(jù)庫(kù)查詢和報(bào)表語(yǔ)言、程序和應(yīng)用系統(tǒng)生成器以及其他非常高級(jí)的非過程語(yǔ)言。能快速生成可執(zhí)行的代碼。 (2)可重用的軟件構(gòu)件。使用一組已

9、有的軟件構(gòu)件(也稱為組件)來(lái)裝配(而不是從頭構(gòu)造)原型。 (3)形式化規(guī)格說(shuō)明和原型環(huán)境。在交互式環(huán)境下,用自動(dòng)工具把基于形式語(yǔ)言的規(guī)格說(shuō)明翻譯成可執(zhí)行的程序代碼。,26,3.3分析建模與規(guī)格說(shuō)明,3 . 3 . 1 分析建模 什么是模型? 為了理解事物而對(duì)事物做出的一種抽象,是對(duì)事物的一種無(wú)歧義的書面描述。 模型通常由一組圖形符號(hào)和組織這些符號(hào)的規(guī)則組成。,27,模型的作用,在建模過程中了解系統(tǒng)。 通過抽象降低復(fù)雜性。 有助于回憶所有的細(xì)節(jié)。 有助于開發(fā)小組間的交流。 有助于與用戶的交流。 為系統(tǒng)的維護(hù)提供文檔,28,例:結(jié)構(gòu)化分析方法建立的需求模型,結(jié)構(gòu)化分析( Structured An

10、alysis , SA )是面向數(shù)據(jù)流進(jìn)行分析的方法,主要建立以下幾種模型: 實(shí)體關(guān)系圖(Entity-Relationship Diagram,E-R圖)來(lái)創(chuàng)建數(shù)據(jù)模型,描述系統(tǒng)中所有重要的數(shù)據(jù)對(duì)象; 數(shù)據(jù)流圖(Data Flow Diagram,DFD) :用來(lái)創(chuàng)建功能模型,描述了信息流和數(shù)據(jù)轉(zhuǎn)換。 狀態(tài)轉(zhuǎn)換圖 (State-Transition Diagram,STD)用來(lái)創(chuàng)建行為模型,描述系統(tǒng)狀態(tài)如何響應(yīng)外部事件,而進(jìn)行轉(zhuǎn)換。,29,例:面向?qū)ο蠓制矸椒ǎ∣OA)所建立的摸型,對(duì)象模型(Object model):定義實(shí)體,描述系統(tǒng)的靜態(tài)結(jié)構(gòu),定義“對(duì)誰(shuí)做” 動(dòng)態(tài)模型(Dynamic

11、model):描述對(duì)象之間的交互過程,規(guī)定“何時(shí)做” 功能模型 (Functional model) :描述內(nèi)部數(shù)據(jù)的處理,指明系統(tǒng)應(yīng)“做什么”,30,軟件需求規(guī)格說(shuō)明, 軟件需求規(guī)格說(shuō)明書 是需求分析階段最主要的文檔。對(duì)目標(biāo)進(jìn)行完善和補(bǔ)充,并寫出完整的需求說(shuō)明。 為消除自然語(yǔ)言中可能存在的不一致、歧義、含糊、不完整及抽象層次混亂等問題,有主張用形式化方法描述用戶對(duì)軟件系統(tǒng)的需求。 例:GB 8567-88 計(jì)算機(jī)軟件產(chǎn)品開發(fā)文件編制指南,31,結(jié)構(gòu)化分析方法( Structured Analysis ,SA ),面向數(shù)據(jù)流進(jìn)行需求分析的方法 適合于數(shù)據(jù)處理類型軟件的需求分析,32,結(jié)構(gòu)化分折

12、模型的組成結(jié)構(gòu),33,3.4實(shí)體一聯(lián)系圖,實(shí)體一聯(lián)系圖( E 一 R 圖)描繪系統(tǒng)的數(shù)據(jù)關(guān)系。 分析實(shí)體一聯(lián)系有助于對(duì)業(yè)務(wù)或系統(tǒng)數(shù)據(jù)組成的理解和交互。 ER圖中包含了實(shí)體(數(shù)據(jù)對(duì)象)、關(guān)系和屬性三種基本成分 一、基本概念(1) 實(shí)體:客觀世界中存在的,可區(qū)分的事物。 屬性:實(shí)體或數(shù)據(jù)對(duì)象所具有的性質(zhì)。,34,數(shù)據(jù)對(duì)象(實(shí)體),對(duì)軟件必須理解的復(fù)合信息的表示。所謂復(fù)合信息是指具有一系列不同性質(zhì)或?qū)傩缘氖挛?,因此僅有單個(gè)值的事物(例如姓名)不是數(shù)據(jù)對(duì)象。 數(shù)據(jù)對(duì)象可能是: 一個(gè)外部實(shí)體,例如生產(chǎn)或消費(fèi)信息的任何事物; 一個(gè)事物,例如一份報(bào)告; 一次行為,例如一個(gè)電話呼叫; 一個(gè)事件,例如一次警報(bào);

13、 一個(gè)角色,例如教師; 一個(gè)組織,例如學(xué)校教務(wù)處; 一個(gè)地點(diǎn),例如圖書館; 一個(gè)結(jié)構(gòu),例如一個(gè)目錄。,35,一、基本概念(2),聯(lián)系:客觀事物之間的聯(lián)系。聯(lián)系分為三種: 一對(duì)一( 1 : 1 ) 班級(jí)和班長(zhǎng) 一對(duì)多聯(lián)系( 1 : N ) 班級(jí)和學(xué)生,系與教師,學(xué)生與宿舍 多對(duì)多聯(lián)系( M : N ) 課程與學(xué)生,教師和課程,學(xué)生和學(xué)會(huì) 二、 E 一 R 圖的結(jié)構(gòu) 三種基本元素:,36,例:教學(xué)E-R圖,37,例,倉(cāng)庫(kù),職工,零件和供應(yīng)商的ER圖,38,三、如何建立實(shí)體一聯(lián)系圖?,1 、在需求收集的過程中,列出應(yīng)用軟件或業(yè)務(wù)過程涉及到的所有“事物”,將其演化成數(shù)據(jù)對(duì)象; 2 、一次考慮一個(gè)對(duì)象,

14、定義這個(gè)對(duì)象和其他對(duì)象之間是否存在連接; 3 、如果存在連接,應(yīng)創(chuàng)建一個(gè)或多個(gè)關(guān)系; 4 、對(duì)每一個(gè)關(guān)系,確定其關(guān)聯(lián)類型; 5 、重復(fù)步驟( 2 )到步驟( 4 ) ,直到定義了所有關(guān)系。 6 、定義每個(gè)實(shí)體的屬性; 7 、形式化并復(fù)審實(shí)體關(guān)系圖; 8 、重復(fù)步驟( 1 )到( 7 ) ,直到數(shù)據(jù)建模完成。,39,2.4 數(shù)據(jù)流圖(DFD,Data Flow Diagram),描述數(shù)據(jù)處理過程的工具。 通過圖形的方法,從數(shù)據(jù)傳遞和數(shù)據(jù)處理的角度,刻畫數(shù)據(jù)流從輸入到輸出的移動(dòng)變換過程。 數(shù)據(jù)流三個(gè)重要屬性: 數(shù)據(jù)流名字 數(shù)據(jù)組成 流向,40,2 .4.1符號(hào)(1),說(shuō)明:用圖形符號(hào)以黑盒子形式描

15、繪組成系統(tǒng)的每個(gè)部件(程序,文檔,數(shù)據(jù)庫(kù),人工過程等),表達(dá)數(shù)據(jù)在系統(tǒng)各部件之間流動(dòng)的情況。,41,符號(hào)(2),42,例 1 :描述銀行取款過程的數(shù)據(jù)流圖,43,應(yīng)該注意的幾個(gè)問題,適當(dāng)?shù)孛?。(詳見教?p45) “數(shù)據(jù)存儲(chǔ)”代表數(shù)據(jù)靜止?fàn)顟B(tài),“數(shù)據(jù)流”代表數(shù)據(jù)的運(yùn)動(dòng)狀態(tài); 注意數(shù)據(jù)流與控制流的區(qū)別; 通常數(shù)據(jù)流圖中忽略出錯(cuò)處理、打開或關(guān)閉文件之類的事務(wù)處理。 若數(shù)據(jù)的源點(diǎn)和終點(diǎn)相同,則應(yīng)該有兩個(gè)箭頭和這個(gè)數(shù)據(jù)源(終)點(diǎn)相連;或重復(fù)畫一個(gè)源(終)點(diǎn)。,44,數(shù)據(jù)流圖的層次結(jié)構(gòu),對(duì)于大型系統(tǒng),往往采用自頂向下逐層分解的方法,用分層數(shù)據(jù)流圖表示所有數(shù)據(jù)流和加工。 對(duì)任何一個(gè)數(shù)據(jù)流圖來(lái)說(shuō),它的上層

16、圖為父圖,在它的下一層的圖為子圖。,45,分層數(shù)據(jù)流圖,46,說(shuō)明:,在多層數(shù)據(jù)流圖中,頂層流圖僅包含一個(gè)數(shù)據(jù)處理,它代表被開發(fā)系統(tǒng)。它的輸入流是該系統(tǒng)的輸入數(shù)據(jù),輸出流是系統(tǒng)所輸出數(shù)據(jù) 底層流圖是指其數(shù)據(jù)處理不需再做分解的數(shù)據(jù)流圖,它處在最底層 中間層流圖則表示對(duì)其上層父圖的細(xì)化。它的每一數(shù)據(jù)處理可能繼續(xù)細(xì)化,形成子圖。,47,注意的原則 ( 1 ),數(shù)據(jù)流圖上所有圖形符號(hào)只限于前述四種基本圖形元素; 數(shù)據(jù)流圖的主圖必須包括前述四種基本元素,缺一不可; 數(shù)據(jù)流圖的主圖上的數(shù)據(jù)流必須封閉在外部實(shí)體之間; 每個(gè)數(shù)據(jù)處理至少有一個(gè)輸入數(shù)據(jù)流和一個(gè)輸出數(shù)據(jù)流; 在數(shù)據(jù)流圖中,需按層給數(shù)據(jù)處理框編號(hào)。

17、編號(hào)表明該處理所處層次及上下層的親子關(guān)系;,48,注意的原則(2),規(guī)定任何一個(gè)數(shù)據(jù)流子圖必須與它上一層的一個(gè)數(shù)據(jù)加工對(duì)應(yīng),兩者的輸入數(shù)據(jù)流和輸出數(shù)據(jù)流必須一致。此即父 圖 與子圖的平衡; 可以在數(shù)據(jù)流圖中加入物質(zhì)流,幫助用戶理解數(shù)據(jù)流圖; 圖上每個(gè)元素都必須有名字; 數(shù)據(jù)流圖中不可夾帶控制流; 初畫時(shí)可以忽略瑣碎的細(xì)節(jié),以集中精力于主要數(shù)據(jù)流,49,例 2 :結(jié)構(gòu)化分析方法步驟示例,商場(chǎng)業(yè)務(wù)處理系統(tǒng) 假設(shè)某商場(chǎng)的經(jīng)營(yíng)業(yè)務(wù)。 商場(chǎng)進(jìn)貨時(shí),先發(fā)訂貨單給供應(yīng)商,供應(yīng)商收到訂貨單,將商品發(fā)給商場(chǎng),商場(chǎng)貨到付款,供應(yīng)商收款后,將收據(jù)發(fā)給商場(chǎng); 當(dāng)顧客到商場(chǎng)采購(gòu)商品時(shí),先下購(gòu)物訂單,商場(chǎng)查詢庫(kù)存中是否有

18、此種商品,若有則發(fā)貨給顧客;若沒有,則向供應(yīng)商訂貨,貨到之后再銷售給顧客;顧客收到貨物之后付款,商場(chǎng)開收據(jù)給顧客; 商場(chǎng)對(duì)貨物的管理方面要求知道每種貨物詳細(xì)的銷售情況。,50,分析業(yè)務(wù)流程:訂貨過程,51,分析業(yè)務(wù)流程:采購(gòu)過程,52,第一步:繪制頂層數(shù)據(jù)流圖( 1 ),基本思想,任何計(jì)算機(jī)系統(tǒng)都是有若干個(gè)數(shù)據(jù)源(終)點(diǎn)加上一個(gè)事務(wù)處理組成。 首先從問題的描述中提取數(shù)據(jù)流圖中的源(終)點(diǎn)、數(shù)據(jù)處理、數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ)四種成份。 分析源(終)點(diǎn) . 分析數(shù)據(jù)處理 分析數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ),53,分析數(shù)據(jù)源點(diǎn)和終點(diǎn):,如果將商場(chǎng)的購(gòu)、銷業(yè)務(wù)系統(tǒng)看成一個(gè)整體,則外部的與這個(gè)系統(tǒng)有交往的對(duì)象(機(jī)構(gòu)、人員、或

19、外部系統(tǒng))是“供應(yīng)商,和“顧客”,二者是商場(chǎng)購(gòu)銷系統(tǒng)源點(diǎn)和終點(diǎn)。,54,分析源點(diǎn)、終點(diǎn)與商場(chǎng)之間的數(shù)據(jù)流,數(shù)據(jù)流方向分別是: 供應(yīng)商方給商場(chǎng):發(fā)貨單、貨款收據(jù) 顧客給商場(chǎng):訂單、貨款 商場(chǎng)給供貨商:訂貨單、貨款 商場(chǎng)給顧客:貨物、收據(jù),55,分析數(shù)據(jù)存儲(chǔ):,需要存儲(chǔ)的數(shù)據(jù)分別是 庫(kù)存信息 暫存訂單(缺貨訂單) 采購(gòu)訂單 商品銷售歷史 資金帳目,56,第一步:繪制頂層數(shù)據(jù)流圖( 2),57,第一步:繪制頂層數(shù)據(jù)流圖( 3 ),第一步:繪制頂層數(shù)據(jù)流圖( 3 ),58,第二步:將頂層數(shù)據(jù)流圖細(xì)化,經(jīng)過分析,商店業(yè)務(wù)處理的主要數(shù)據(jù)處理是銷售、采購(gòu)、會(huì)計(jì)三大數(shù)據(jù)處理,三者之間的數(shù)據(jù)流:,59,需要存儲(chǔ)

20、的數(shù)據(jù)有:,60,61,DFD/L2.2(采購(gòu)細(xì)化),62,DFD/L2.1(銷售細(xì)化),63,數(shù)據(jù)詞典( DD ,data dictionary ),DD 是對(duì)數(shù)據(jù)流圖中包含的所有元素的定義的集合,使得每個(gè)圖形元素的名字都有一個(gè)精確的、嚴(yán)格的定義。 數(shù)據(jù)流圖和詞典結(jié)合在一起,能清楚地表達(dá)數(shù)據(jù)處理的要求,構(gòu)成 了“需求說(shuō)明書”,64,1數(shù)據(jù)字典的內(nèi)容,主要描述 數(shù)據(jù)流 數(shù)據(jù)元素 數(shù)據(jù)存儲(chǔ) 數(shù)據(jù)處理,65,2定義數(shù)據(jù)的方法,66,(1)定義數(shù)據(jù)流,數(shù)據(jù)流名: 說(shuō)明:簡(jiǎn)要介紹作用即它產(chǎn)生的原因和結(jié)果。 數(shù)據(jù)流來(lái)源:來(lái)自何方。 數(shù)據(jù)流去向:去向何處。 數(shù)據(jù)流組成:數(shù)據(jù)結(jié)構(gòu)。 數(shù)據(jù)量流通量:數(shù)據(jù)量,流

21、通量,67,舉例:,68,數(shù)據(jù)流定義:,69,(2)定義數(shù)據(jù)元素,數(shù)據(jù)元素(數(shù)據(jù)項(xiàng))指數(shù)據(jù)處理中最小的,不可再分的單位。描述包括: 數(shù)據(jù)元素名: 類型:數(shù)字(離散值,連續(xù)值),文字(編碼類型) 長(zhǎng)度: 取值范圍: 相關(guān)的數(shù)據(jù)元素及數(shù)據(jù)結(jié)構(gòu):,70,數(shù)據(jù)元素定義舉例( 1 ),71,數(shù)據(jù)元素定義舉例( 2 ),72,數(shù)據(jù)元素定義舉例( 3 ),73,數(shù)據(jù)元素定義舉例(4),74,(3)定義數(shù)據(jù)存儲(chǔ),數(shù)據(jù)文件名: 簡(jiǎn)述:存放的是什么數(shù)據(jù) 輸入數(shù)據(jù): 輸出數(shù)據(jù) : 數(shù)據(jù)文件組成:數(shù)據(jù)結(jié)構(gòu) 存儲(chǔ)方式:順序,直接,關(guān)鍵碼 存取頻率:,75,數(shù)據(jù)存儲(chǔ)定義舉例( 1 ),76,77,78,(4)定義數(shù)據(jù)處理

22、,數(shù)據(jù)處理定義舉例( 1 ),79,數(shù)據(jù)處理定義舉例( 2 ),80,加工邏輯詞條說(shuō)明舉例( 3 ),81, 源點(diǎn)及匯(終)點(diǎn)詞條描述,名稱:外部實(shí)體名 簡(jiǎn)要描述:什么外部實(shí)體 有關(guān)數(shù)據(jù)流: 數(shù)目:,82,數(shù)據(jù)規(guī)范化,1 、第一范式每個(gè)屬性值都必須是原子值。 2 、第二范式滿足第一范式條件,而且每個(gè)非關(guān)鍵字屬性都由整個(gè)關(guān)鍵字決定。 3 、第三范式符合第二范式的條件,每個(gè)非關(guān)鍵字屬性都僅由關(guān)鍵字決定,而且一個(gè)非關(guān)鍵字屬性不能僅僅是對(duì)另一個(gè)非關(guān)鍵字屬性的進(jìn)一步描述。 范式低,冗余大,范式高,分解得細(xì),冗余小,但處理過程復(fù)雜。,83,狀態(tài)轉(zhuǎn)換圖(STD ),為了直觀地分析系統(tǒng)的動(dòng)作,從特定的視點(diǎn)出發(fā)

23、描述系統(tǒng)的行為,需要采用動(dòng)態(tài)分析的方法。 狀態(tài)轉(zhuǎn)換圖是一種常用的動(dòng)態(tài)分析方法。 是描述系統(tǒng)的狀態(tài)如何響應(yīng)外部信號(hào),而進(jìn)行轉(zhuǎn)換的一種圖形表示。,84,(1) 狀態(tài),指任何可以被觀察到的系統(tǒng)行為模式,一個(gè)狀態(tài)代表系統(tǒng)的一種行為模式。 主要有:初態(tài)、終態(tài)和中間狀態(tài)。 一個(gè)狀態(tài)圖中,只能有一個(gè)初態(tài),但可以有 0 多個(gè)終態(tài)。,85,(2) 事件,某個(gè)特定時(shí)刻發(fā)生的事情,它是對(duì)引起系統(tǒng)做動(dòng)作或(和)從一個(gè)狀態(tài)轉(zhuǎn)換到另一個(gè)狀態(tài)的外界事情的抽象.,86,狀態(tài)轉(zhuǎn)換圖符號(hào),活動(dòng)表語(yǔ)法:事件名(參數(shù)表)動(dòng)作表達(dá)式常用事件名: Entry、Exit、Do 動(dòng)作表達(dá)式:應(yīng)做的具體動(dòng)作 事件表達(dá)式:觸發(fā)狀態(tài)轉(zhuǎn)換的事件。

24、語(yǔ)法:事件說(shuō)明 守衛(wèi)條件動(dòng)作表達(dá)式。 其中,事件說(shuō)明的語(yǔ)法:事件名(參數(shù)表)。,87,電話系統(tǒng)的狀態(tài)圖,電話系統(tǒng)的狀態(tài)圖,電話系統(tǒng)的狀態(tài)圖,88,其他圖形工具,層次方框圖,89,IPO圖,90,驗(yàn)證軟件需求,問:從哪些方面驗(yàn)證軟件需求的正確性?如何驗(yàn)證? 1 、一致性 自然語(yǔ)言書寫的需求說(shuō)明,只能用人工方法驗(yàn)證; 形式化方法定義的可以借助驗(yàn)證工具 2、完整性 需要用戶參與、合作;建立快速原型。 3 、現(xiàn)實(shí)性 參照以往類似系統(tǒng);進(jìn)行真或性能模擬 4 、有效性,91,比較完整的數(shù)據(jù)流圖例子,例:教務(wù)管理系統(tǒng) 某校準(zhǔn)備開發(fā)一個(gè)學(xué)生成績(jī)管理系統(tǒng)。在該系統(tǒng)中,教務(wù)人員錄入學(xué)生信息、課程信息和成績(jī)信息,學(xué)

25、生可以隨時(shí)查詢自己所選課程的成績(jī)。由于學(xué)生成績(jī)屬于敏感信息,系統(tǒng)必須提供必要的安全措施以防非法存取,92,0 層 DFD 分析:,源點(diǎn)終點(diǎn):教務(wù)人員(源點(diǎn));學(xué)生(終點(diǎn)) 數(shù)據(jù)處理:將系統(tǒng)當(dāng)成一個(gè)整體“學(xué)生成績(jī)管理” 數(shù)據(jù)流: 學(xué)生信息、課程信息和成績(jī);(教務(wù)人員錄入時(shí))查詢請(qǐng)求、查詢結(jié)果(學(xué)生查詢時(shí)) 數(shù)據(jù)文件:成績(jī)文件、學(xué)生文件、課程文件。,93,第 0 層 DFD 圖,教務(wù)人員維護(hù)學(xué)生信息和課程信息,并登錄學(xué)生的選課成績(jī);學(xué)生查詢自己的成績(jī)單。,94,第 1 層 DFD 說(shuō)明,“學(xué)生信息”是教務(wù)人員需要錄入的一個(gè)信息,因此加入一個(gè)加入“錄入學(xué)生信息” ; 同樣得到“錄入課程信息”、“登記

26、成績(jī)”兩個(gè)數(shù)據(jù)處理。 另外,數(shù)據(jù)流“查詢請(qǐng)求”和“查詢結(jié)果”應(yīng)該由數(shù)據(jù)處理“查詢成績(jī)”來(lái)完成。,95,第 1 層 DFD 說(shuō)明,對(duì)第 0 層 DFD 的加工“學(xué)生成績(jī)管理“進(jìn)行展開。 數(shù)據(jù)處理:錄入學(xué)生信息 錄入課程信息 登記學(xué)生成績(jī) 查詢學(xué)生成績(jī) 數(shù)據(jù)存儲(chǔ):增加這些數(shù)據(jù)流對(duì)應(yīng)的數(shù)據(jù)存儲(chǔ),即“學(xué)生”、“課程”和“成績(jī)” ,最后得到如圖所示的第 1 層 DFD 。,96,第 1 層 DFD 圖:對(duì)第0層 DFD 的一個(gè)“學(xué)生成績(jī)管理“進(jìn)行展開。,97,第 2 層 DFD 說(shuō)明,繼續(xù)分解第 1 層 DFD 中的加工“查詢學(xué)生成績(jī)” 數(shù)據(jù)處理:分解為“合法性檢查”和“查詢成績(jī)” 數(shù)據(jù)文件:合法的查詢

27、條件,98, 第2層DFD圖對(duì)第1層DFD圖中的一個(gè)加工“查詢學(xué)生成績(jī)”進(jìn)行展開。,99,部分?jǐn)?shù)據(jù)字典,100,101,實(shí)例,圖書館圖書信息管理系統(tǒng),102,需求,讀者來(lái)圖書館借書,可能先查詢館中的圖書信息。查詢可以按書名、作者、圖書編號(hào)、關(guān)鍵字查詢。如果查到則記下書號(hào),交給流通組工作人員,等候辦理借書手續(xù)。如果該書已經(jīng)被全部借出,可做預(yù)訂登記,等待有書時(shí)被通知。如果圖書館沒有該書的記錄,可進(jìn)行缺書登記。 辦理借書手續(xù)時(shí)先要出示圖書證,沒有圖書證則去圖書館辦公室申辦圖書證。如果借書數(shù)量超出規(guī)定,則不能繼續(xù)借閱。借書時(shí)流通組工作人員登記圖書證編號(hào)、圖書編號(hào)、借出時(shí)間和應(yīng)還書時(shí)間。,103,當(dāng)讀者

28、還書時(shí),流通組工作人員根據(jù)圖書證編號(hào),找到讀者的借書信息,查看是否超期,如果已經(jīng)超期,則處罰。如果圖書有破損、丟失,則進(jìn)行破損處罰。登記還書信息,做還書處理,同時(shí)查看是否有預(yù)訂登記,如果有則發(fā)出到書通知。 圖書采購(gòu)人員進(jìn)行圖書采購(gòu)時(shí),要注意合理采購(gòu)。如果有缺書登記則隨時(shí)進(jìn)行采購(gòu)。采購(gòu)到貨后,編目人員進(jìn)行驗(yàn)收,編目、上架,錄入圖書信息,發(fā)到書通知。如果圖書丟失或舊書淘汰,則將該書從書庫(kù)中清除,即圖書注銷。,需求(續(xù)),104,以上是圖書管理系統(tǒng)的基本需求。經(jīng)過與圖書館工作人員反復(fù)交流,他們提出了下列建議: 建議1:當(dāng)讀者借閱的圖書到期時(shí),希望能夠提前以一個(gè)短信息或電子郵件方式提示讀者。 建議2:

29、讀者希望能夠?qū)崿F(xiàn)網(wǎng)上查詢和預(yù)訂圖書。 建議3:應(yīng)用系統(tǒng)的各種參數(shù)設(shè)置最好是靈活的,由系統(tǒng)管理人員根據(jù)需要設(shè)定。例如:借閱量的上限,還書提示的時(shí)間,預(yù)訂圖書的保持時(shí)間等參數(shù)。,需求(續(xù)),105,用戶給出的上述需求式一個(gè)比較簡(jiǎn)單的需求,沒有向我們前面介紹的那樣給出業(yè)務(wù)需求、用戶需求。遇到這種情況我們要進(jìn)一步與用戶溝通,了解系統(tǒng)的目標(biāo)、規(guī)模、范圍,不能自己想當(dāng)然確定。 本例中用戶給出的系統(tǒng)目標(biāo)是實(shí)現(xiàn)讀者借還書的信息化,并且利用Internet網(wǎng)絡(luò)實(shí)現(xiàn)讀者與圖書館之間的互動(dòng)和圖書館的人性化管理。提高圖書的利用率。 系統(tǒng)的規(guī)模較小,只涉及圖書、讀者、借還書的管理,相關(guān)的部門有采編部、流通部、辦公室。,

30、需求(續(xù)),106,描繪系統(tǒng)流程圖,107,系統(tǒng)0層數(shù)據(jù)流程圖,108,描述,本例中的數(shù)據(jù)源/終點(diǎn)有讀者、采編部、辦公室、流通部。讀者提供的主要信息是讀者號(hào)、書號(hào);辦公室是為讀者分配讀者號(hào),定義處罰規(guī)則、借還書規(guī)則;采編部提供新書信息;流通部實(shí)現(xiàn)借還書操作,產(chǎn)生借還書信息。,109,讀者使用該系統(tǒng)進(jìn)行圖書信息查詢、讀者信息查詢、網(wǎng)上預(yù)訂圖書,所以應(yīng)該增加查詢功能和預(yù)訂圖書功能; 采購(gòu)部的人員使用本系統(tǒng)完成圖書編目、新書信息發(fā)布功能,為此增加圖書編目和新書發(fā)布處理; 流通部的工作人員使用本系統(tǒng)完成讀者借還書的事務(wù),應(yīng)該為他們?cè)O(shè)置借書、還書處理; 辦公室的人員負(fù)責(zé)讀者信息管理、罰款信息管理和系統(tǒng)的參數(shù)制定,為他們添加讀者信息管理、處罰信息管理、系統(tǒng)參數(shù)維護(hù)三個(gè)處理。,下面應(yīng)該對(duì)圖書館信息管理系統(tǒng)這個(gè)“黑盒子”進(jìn)行逐步分解,細(xì)化數(shù)據(jù)流程圖。,110,系統(tǒng)1層數(shù)據(jù)流程圖,111,三個(gè)問題,一個(gè)是圖形元素的編號(hào)問題,為了在進(jìn)行細(xì)化的過程中圖型元素保持原有的編號(hào),我們?cè)趯?duì)圖形元素編號(hào)時(shí)應(yīng)該有規(guī)劃,以保證在的細(xì)化過程中便于插入新的圖型元素。 另一個(gè)問

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論