一步步教你如何寫需求分析_第1頁
一步步教你如何寫需求分析_第2頁
一步步教你如何寫需求分析_第3頁
一步步教你如何寫需求分析_第4頁
一步步教你如何寫需求分析_第5頁
已閱讀5頁,還剩114頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第三章需求分析第三章需求分析3.1需求分析的任務(wù)及需求分析的過程3.2與用戶溝通獲取需求的方法3.3數(shù)據(jù)流圖3.4實(shí)體-聯(lián)系圖3.5狀態(tài)轉(zhuǎn)換圖3.6其他圖形工具3.7驗(yàn)證軟件需求

為了開發(fā)出真正滿足用戶需求的軟件產(chǎn)品,首先必須知道用戶的需求。對軟件需求的深入理解是軟件開發(fā)工作獲得成功的前提和關(guān)鍵,不論我們把設(shè)計(jì)和編碼工作做得如何出色,不能真正滿足用戶需求的程序只會給用戶帶來失望,給開發(fā)者帶來煩惱。

需求分析是軟件定義時期的最后一個階段,它的基本任務(wù)是準(zhǔn)確地回答“系統(tǒng)必須做什么?”這個問題。對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。在需求分析階段結(jié)束之前,系統(tǒng)分析員應(yīng)該寫出軟件需求規(guī)格說明書,以書面形式準(zhǔn)確地描述軟件需求。在需求分析的過程中,分析員和用戶都起著關(guān)鍵的、必不可少的作用。要建立分析所需要的通信途徑,以保證能順利地對問題進(jìn)行分析。用于需求分析的結(jié)構(gòu)話分析方法必須遵守的準(zhǔn)則:理解并描述問題的信息域,建立數(shù)據(jù)模型定義軟件必須完成的功能,建立功能模型描述作為外部事件結(jié)果的軟件行為,建立行為模型對三個模型進(jìn)行分解,用層次的方法展示細(xì)節(jié)3.1需求分析的任務(wù):確定對系統(tǒng)的綜合要求:1.功能需求:必須完成的所有功能。2.性能需求:必須滿足的定時約束或容量約束,通常包括速度(響應(yīng)時間)、磁盤容量、安全性等方面的需求。3.可靠性和可用性需求:量化了用戶可以使用系統(tǒng)的程度。4.出錯處理需求:這類需求說明系統(tǒng)對環(huán)境錯誤應(yīng)該怎樣響應(yīng)。確定對系統(tǒng)的綜合要求:5.接口需求:接口需求描述應(yīng)用系統(tǒng)與它的環(huán)境通信的格式。常見的接口需求有:用戶接口需求;硬件接口需求;軟件接口需求;通信接口需求。6.約束:說明用戶或環(huán)境強(qiáng)加給項(xiàng)目的限制條件。常見的約束有:精度;工具和語言約束;設(shè)計(jì)約束;應(yīng)該使用的標(biāo)準(zhǔn);應(yīng)該使用的硬件平臺。7.逆向需求:逆向需求說明軟件系統(tǒng)不應(yīng)該做什么。8.將來可能提出的要求:列出那些雖然不屬于當(dāng)前系統(tǒng)開發(fā)范疇,但是據(jù)分析將來很可能會提出來的要求。分析系統(tǒng)的數(shù)據(jù)要求軟件系統(tǒng)本質(zhì)上都是信息處理系統(tǒng),因此,必須分析系統(tǒng)的數(shù)據(jù)要求,這是軟件需求分析的一個重要任務(wù)。分析系統(tǒng)的數(shù)據(jù)要求通常采用建立數(shù)據(jù)模型的方法:實(shí)體——聯(lián)系圖(E-R圖)。復(fù)雜的數(shù)據(jù)由許多基本的數(shù)據(jù)元素組成,數(shù)據(jù)結(jié)構(gòu)表示數(shù)據(jù)元素之間的邏輯關(guān)系。利用數(shù)據(jù)字典全面的定義數(shù)據(jù)。利用圖形工具輔助描繪數(shù)據(jù)結(jié)構(gòu)。從數(shù)據(jù)流和數(shù)據(jù)結(jié)構(gòu)出發(fā),逐步細(xì)化軟件功能,找出各元素之間的聯(lián)系,接口特性和設(shè)計(jì)上的限制,給出目標(biāo)系統(tǒng)的詳細(xì)邏輯模型。導(dǎo)出系統(tǒng)的邏輯模型:數(shù)據(jù)流圖實(shí)體-聯(lián)系圖狀態(tài)轉(zhuǎn)換圖數(shù)據(jù)字典加工處理說明書等修正系統(tǒng)開發(fā)計(jì)劃開發(fā)原型系統(tǒng):使用戶對目標(biāo)系統(tǒng)有一個更直接、更具體的概念,從而能更準(zhǔn)確提出用戶需求。(關(guān)鍵的困難在于成本)編制需求分析文檔:《需求規(guī)格說明書》任務(wù)概述:系統(tǒng)目標(biāo),運(yùn)行環(huán)境,條件與限制數(shù)據(jù)描述:概念模型:E-R圖邏輯模型:數(shù)據(jù)流圖數(shù)據(jù)定義:數(shù)據(jù)字典,加工說明數(shù)據(jù)庫描述:名稱和類型功能描述:軟件功能要求性能描述:軟件性能要求(處理速度、響應(yīng)時間、安全限制等)。編制需求分析文檔:《需求規(guī)格說明書》(續(xù))運(yùn)行描述:用戶界面、硬件接口、軟件接口、故障處理等。質(zhì)量保證:闡明軟件在交付使用前需要進(jìn)行的功能測試和性能測試,并且規(guī)定源程序和文檔遵守的各種標(biāo)準(zhǔn)。技術(shù)審查和管理復(fù)審管理復(fù)審:在軟件生命周期的每個重要的里程碑(一般是每個階段計(jì)劃、需求分析、設(shè)計(jì)、編碼、維護(hù))對工程項(xiàng)目的成本、實(shí)際花費(fèi)、投資回報(bào)的前景等從管理的角度進(jìn)行審查。技術(shù)審查:在軟件生命周期的每個階段進(jìn)行正式而嚴(yán)格的技術(shù)審查,盡量發(fā)現(xiàn)隱藏的錯誤。正式技術(shù)評審是軟件工程實(shí)踐者實(shí)施的一項(xiàng)軟件質(zhì)量保證活動。評審的主要內(nèi)容系統(tǒng)定義的目標(biāo)是否與用戶的要求一致;系統(tǒng)需求分析階段提供的文檔資料是否齊全;文檔中的所有描述是否完整、清晰、準(zhǔn)確反映用戶要求;與所有其它系統(tǒng)成分的重要接口是否都已經(jīng)描述;被開發(fā)項(xiàng)目的數(shù)據(jù)流與數(shù)據(jù)結(jié)構(gòu)是否足夠,確定;所有圖表是否清楚,在不補(bǔ)充說明時能否理解;主要功能是否已包括在規(guī)定的軟件范圍之內(nèi),是否都已充分說明;軟件的行為和它必須處理的信息、必須完成的功能是否一致;設(shè)計(jì)的約束條件或限制條件是否符合實(shí)際;是否考慮了開發(fā)的技術(shù)風(fēng)險;是否考慮過軟件需求的其它方案;是否考慮過將來可能會提出的軟件需求;是否詳細(xì)制定了檢驗(yàn)標(biāo)準(zhǔn),它們能否對系統(tǒng)定義是否成功進(jìn)行確認(rèn);有沒有遺漏,重復(fù)或不一致的地方;用戶是否審查了初步的用戶手冊或原型;軟件開發(fā)計(jì)劃中的估算是否受到了影響。需求分析的原則必須能夠表達(dá)和理解問題的數(shù)據(jù)域和功能域數(shù)據(jù)域:數(shù)據(jù)流,數(shù)據(jù)內(nèi)容和數(shù)據(jù)結(jié)構(gòu)。功能域:加工變換。必須按自頂向下,逐層分解的方式對問題進(jìn)行分解和不斷細(xì)化。要給出系統(tǒng)的邏輯視圖和物理視圖。邏輯視圖:給出軟件要達(dá)到的功能和要處理的數(shù)據(jù)之間的關(guān)系。物理視圖:給出處理功能和數(shù)據(jù)結(jié)構(gòu)的實(shí)際表示形式。3.2與用戶溝通獲取需求的方法

1訪談訪談有兩種基本形式,分別是正式的和非正式的訪談。當(dāng)需要調(diào)查大量人員的意見時,向被調(diào)查人分發(fā)調(diào)查表是一個十分有效的做法。在訪問用戶的過程中使用情景分析技術(shù)往往非常有效。某出版社系統(tǒng)調(diào)查表編號提出問題1您在哪個部門工作?2出版業(yè)務(wù)流程是什么?3您每日都處理那些文件、數(shù)據(jù)、報(bào)表?4工作中手工處理特別麻煩的事情是什么?5工作中手工處理什么問題解決不了?影響效率的問題有哪些?6您認(rèn)為提高工作效率,節(jié)省工作時間,減輕工作強(qiáng)度可采取哪些辦法?7您的部門需要成本核算和統(tǒng)計(jì)的內(nèi)容有哪些?8您的部門采用計(jì)算機(jī)管理工作情況如何?9如何改進(jìn)業(yè)務(wù)流程使之更合理?10哪些問題是目前傳統(tǒng)手工方法根本無法解決的?11出版社計(jì)算機(jī)管理信息系統(tǒng)需要解決什么問題?2面向數(shù)據(jù)流自頂向下求精

軟件系統(tǒng)本質(zhì)上是信息處理系統(tǒng),而任何信息處理系統(tǒng)的基本功能都是把輸入數(shù)據(jù)轉(zhuǎn)變成需要的輸出信息。數(shù)據(jù)決定了需要的處理和算法,看來數(shù)據(jù)顯然是需求分析的出發(fā)點(diǎn)。結(jié)構(gòu)化分析方法就是面向數(shù)據(jù)流自頂向下逐步求精進(jìn)行需求分析的方法。通過可行性研究已經(jīng)得出了目標(biāo)系統(tǒng)的高層數(shù)據(jù)流圖,需求分析的目標(biāo)之一就是把數(shù)據(jù)流和數(shù)據(jù)存儲定義到元素級。為了達(dá)到這個目標(biāo),通常從數(shù)據(jù)流圖的輸出端著手分析,這是因?yàn)橄到y(tǒng)的基本功能是產(chǎn)生這些輸出,輸出數(shù)據(jù)決定了系統(tǒng)必須具有的最基本的組成元素。沿?cái)?shù)據(jù)流圖從輸出端往輸入端回溯,應(yīng)該能夠確定每個數(shù)據(jù)元素的來源,與此同時也就初步定義了有關(guān)的算法。為了得到某個目前還沒有的數(shù)據(jù)元素,或者得出這個數(shù)據(jù)元素需要用的算法尚不完全清楚。往往需要向用戶和其他有關(guān)人員請教,他們的回答使分析員對目標(biāo)系統(tǒng)的認(rèn)識更深入更具體了,系統(tǒng)中更多的數(shù)據(jù)元素被劃分出來了,更多的算法被搞清楚了。通常把分析過程中得到的有關(guān)數(shù)據(jù)元素的信息記錄在數(shù)據(jù)字典中,把對算法的簡明描述記錄在IPO圖(見3.7節(jié))中。通過分析而補(bǔ)充的數(shù)據(jù)流、數(shù)據(jù)存儲和處理,應(yīng)該添加到數(shù)據(jù)流圖的適當(dāng)位置上。圖3.1面向數(shù)據(jù)流自頂向下求精過程數(shù)據(jù)流圖是幫助復(fù)查的極好工具。反復(fù)進(jìn)行上述分析過程,把數(shù)據(jù)流圖擴(kuò)展到更低的層次。通過功能分解可以完成數(shù)據(jù)流圖的細(xì)化。經(jīng)過問題和解答的反復(fù)循環(huán),分析員越來越深入具體地定義了目標(biāo)系統(tǒng),最終得到對系統(tǒng)數(shù)據(jù)和功能要求的滿意了解。3簡易的應(yīng)用規(guī)格說明技術(shù)進(jìn)行初步的訪談,初步確定待解決的問題的范圍和解決方案。開發(fā)者和用戶分別寫出“產(chǎn)品需求”會議前準(zhǔn)備開會討論起草完整的軟件需求規(guī)格說明書4快速建立軟件原型快速原型應(yīng)該具備的第一個特性是“快速”??焖僭蛻?yīng)該具備的第二個特性是“容易修改”。為了快速地構(gòu)建和修改原型,通常使用下述3種方法和工具:(1)第四代技術(shù)(2)可重用的軟件構(gòu)件(3)形式化規(guī)格說明3.3分析建模結(jié)構(gòu)化分析實(shí)質(zhì)上是一種創(chuàng)建模型的活動。需求分析過程應(yīng)該建立3種模型,它們分別是數(shù)據(jù)模型、功能模型和行為模型。實(shí)體—關(guān)系圖(ERD)描述數(shù)據(jù)對象及數(shù)據(jù)對象之間的關(guān)系;是用于建立數(shù)據(jù)模型的圖形。數(shù)據(jù)流圖(DFD)描述數(shù)據(jù)在系統(tǒng)中如何被傳送或變換,以及描述如何對數(shù)據(jù)流進(jìn)行變換的功能(子功能);因此,數(shù)據(jù)流圖是建立功能模型的基礎(chǔ)。狀態(tài)—遷移圖(STD)描述系統(tǒng)對外部事件如何響應(yīng),如何動作。為此,狀態(tài)轉(zhuǎn)換圖描繪了系統(tǒng)的各種行為模式(稱為“狀態(tài)”)和在不同狀態(tài)間轉(zhuǎn)換的方式。狀態(tài)轉(zhuǎn)換圖是行為建模的基礎(chǔ)。結(jié)構(gòu)化分析的分析模型實(shí)體—關(guān)系圖狀態(tài)—遷移圖數(shù)據(jù)流圖數(shù)據(jù)對象描述加工規(guī)格說明數(shù)據(jù)字典控制規(guī)格說明分析建模通過需求分析而建立的模型必須達(dá)到下述的三個基本目標(biāo)。描述用戶的需求。為軟件設(shè)計(jì)工作奠定基礎(chǔ)。定義一組需求,一旦開發(fā)出軟件產(chǎn)品之后,就可以用這組需求為標(biāo)準(zhǔn)來驗(yàn)收該產(chǎn)品。為了達(dá)到上述這些目標(biāo),在結(jié)構(gòu)化分析過程中導(dǎo)出的分析模型的形式。3.3數(shù)據(jù)流圖(DFD)是軟件系統(tǒng)邏輯模型的一種圖形表示,是從數(shù)據(jù)傳遞和加工的角度,以圖形的方式刻畫數(shù)據(jù)流從輸入到輸出的移動變換過程的工具。3.3.1符號數(shù)據(jù)流圖中的主要圖形元素?cái)?shù)據(jù)流與加工之間的關(guān)系數(shù)據(jù)流與加工之間的關(guān)系----

系統(tǒng)邏輯模型數(shù)據(jù)的加工或變換輸入輸出軟件系統(tǒng)外部實(shí)體外部實(shí)體……外部實(shí)體外部實(shí)體……輸入數(shù)據(jù)流輸入數(shù)據(jù)流輸出數(shù)據(jù)流輸出數(shù)據(jù)流分層的數(shù)據(jù)流圖數(shù)據(jù)流圖的層次結(jié)構(gòu)分層的數(shù)據(jù)流圖2F0A0B0F1A0B0F2F3F4F5p1C1D1M1N1F4.1M1F4.2N1F4.3K2F4.4W2F4.5p1Y2X2第0層第1層第2層畫數(shù)據(jù)流圖的指導(dǎo)原則:所有圖形符號只限于前面四種基本符號。第一層DFD應(yīng)當(dāng)是基本系統(tǒng)模型每個加工至少有一個輸入數(shù)據(jù)流和一個輸出數(shù)據(jù)流。在數(shù)據(jù)流圖中,按層給加工框編號。注意父圖和子圖的平衡,維護(hù)信息的連續(xù)性圖中每個元素必須有名字。數(shù)據(jù)流圖中不可以夾帶控制流。3.3.2例子假設(shè)一家工廠的采購部每天需要一張定貨報(bào)表,報(bào)表按零件編號排序,表中列出所有需要再次定貨的零件。對于每個需要再次定貨的零件應(yīng)該列出下述數(shù)據(jù):零件編號,零件名稱,定貨數(shù)量,目前價格,主要供應(yīng)者,次要供應(yīng)者。零件入庫或出庫稱為事務(wù),通過放在倉庫中的CRT終端把事務(wù)報(bào)告給定貨系統(tǒng)。當(dāng)某種零件的庫存數(shù)量少于庫存量臨界值時就應(yīng)該再次定貨。圖2.5定貨系統(tǒng)的基本系統(tǒng)模型圖2.6定貨系統(tǒng)的功能級數(shù)據(jù)流圖圖2.7把處理事務(wù)的功能進(jìn)一步分解后的數(shù)據(jù)流圖例子2在教材的銷售過程中,首先學(xué)生拿著購書申請到會計(jì)處審查并開具購書發(fā)票,然后到出納處交款,并開具領(lǐng)書單,學(xué)生拿著領(lǐng)書單到書庫領(lǐng)書;在開具購書發(fā)票的過程中,若教材存量不夠,則需要進(jìn)行缺書統(tǒng)計(jì),然后書庫根據(jù)缺書情況去采購缺書,并通知學(xué)生補(bǔ)購教材。學(xué)生教材購銷系統(tǒng)購書單領(lǐng)書單缺書單進(jìn)書通知進(jìn)書通知保管員1銷售購書單領(lǐng)書單學(xué)生缺書單進(jìn)書通知2采購保管員第1層第2層教材存量表F1缺書登記表F2外部實(shí)體外部實(shí)體教材銷售子系統(tǒng)無效書單購書單1.3登記并開領(lǐng)書單1.2開發(fā)票1.1審查有效性1.4登記缺書1.5補(bǔ)售教材采購學(xué)生學(xué)生進(jìn)書通知有效書單發(fā)票領(lǐng)書單缺書信息1銷售購書單領(lǐng)書單缺書單進(jìn)書通知2采購進(jìn)書通知缺書登記表教材存量表學(xué)生保管員第2層補(bǔ)售書單第3層教材存量表F1缺書登記表F2各班用書表F3售書登記表F4外部項(xiàng)1銷售購書單領(lǐng)書單缺書單進(jìn)書通知2采購進(jìn)書通知缺書登記表教材存量表學(xué)生保管員采購子系統(tǒng)

第2層第3層缺書單2.3修改教材庫存和待購量銷售進(jìn)書通知進(jìn)書通知2.1按書號匯總?cè)睍?.2按出版社統(tǒng)計(jì)缺書保管員教材存量表F1待購教材表F5教材一覽表F6缺書登記表F23.3.3命名1.為數(shù)據(jù)流(或數(shù)據(jù)存儲)命名(1)名字應(yīng)代表整個數(shù)據(jù)流(或數(shù)據(jù)存儲)的內(nèi)容,而不是僅僅反映它的某些成分。(2)不要使用空洞的、缺乏具體含義的名字(如“數(shù)據(jù)”、“信息”、“輸入”之類)。(3)如果在為某個數(shù)據(jù)流(或數(shù)據(jù)存儲)起名字時遇到了困難,則很可能是因?yàn)閷?shù)據(jù)流圖分解不恰當(dāng)造成的,應(yīng)該試試重新分解,看是否能克服這個困難。2.為處理命名(1)通常先為數(shù)據(jù)流命名,然后再為與之相關(guān)聯(lián)的處理命名。這樣命名比較容易,而且體現(xiàn)了人類習(xí)慣的“由表及里”的思考過程。(2)名字應(yīng)該反映整個處理的功能,而不是它的一部分功能。(3)名字最好由一個具體的及物動詞加上一個具體的賓語組成。應(yīng)該盡量避免使用“加工”、“處理”等空洞籠統(tǒng)的動詞作名字。(4)通常名字中僅包括一個動詞,如果必須用兩個動詞才能描述整個處理的功能,則把這個處理再分解成兩個處理可能更恰當(dāng)些。(5)如果在為某個處理命名時遇到困難,則很可能是發(fā)現(xiàn)了分解不當(dāng)?shù)嫩E象,應(yīng)考慮重新分解。3.3.4用途畫數(shù)據(jù)流圖的基本目的是利用它作為交流信息的工具。數(shù)據(jù)流圖的另一個主要用途是作為分析和設(shè)計(jì)的工具。當(dāng)用數(shù)據(jù)流圖輔助物理系統(tǒng)的設(shè)計(jì)時,以圖中不同處理的定時要求為指南,能夠在數(shù)據(jù)流圖上畫出許多組自動化邊界,每組自動化邊界可能意味著一個不同的物理系統(tǒng),因此可以根據(jù)系統(tǒng)的邏輯模型考慮系統(tǒng)的物理實(shí)現(xiàn)。圖2.8這種劃分自動化邊界的方法暗示以批量方式更新庫存清單圖2.9另一種劃分自動化邊界的方法建議以聯(lián)機(jī)方式更新庫存清單3.3.5數(shù)據(jù)字典數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)流圖中包含的所有元素的定義的集合。對于數(shù)據(jù)流圖中出現(xiàn)的所有被命名的圖形元素在字典中作為一個詞條加以定義,使得每一個圖形元素的名字都有一個確切的解釋。數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型,沒有數(shù)據(jù)字典數(shù)據(jù)流圖就不嚴(yán)格,然而沒有數(shù)據(jù)流圖數(shù)據(jù)字典也難于發(fā)揮作用。只有數(shù)據(jù)流圖和對數(shù)據(jù)流圖中每個元素的精確定義放在一起,才能共同構(gòu)成系統(tǒng)的規(guī)格說明。數(shù)據(jù)字典的內(nèi)容一般說來,數(shù)據(jù)字典應(yīng)該由對下列4類元素的定義組成:(1)數(shù)據(jù)流(2)數(shù)據(jù)流分量(即數(shù)據(jù)元素)(3)數(shù)據(jù)存儲(4)處理(IPO)(5)外部實(shí)體內(nèi)容:名稱,別名,編號,分類,描述,定義,位置等1、數(shù)據(jù)字典的定義數(shù)據(jù)流名:說明:簡要介紹作用即它產(chǎn)生的原因和結(jié)果。數(shù)據(jù)流來源:即該數(shù)據(jù)流來自何方。數(shù)據(jù)流去向:去向何處。數(shù)據(jù)流組成:數(shù)據(jù)結(jié)構(gòu)。每個數(shù)據(jù)量流通量:數(shù)據(jù)量、流通量。(1)數(shù)據(jù)流詞條的描述舉例:購書單發(fā)票領(lǐng)書單審查并開發(fā)票開領(lǐng)書單無效書單學(xué)生12各班學(xué)生用書表學(xué)生教材存量表數(shù)據(jù)流名:發(fā)票說明:用作學(xué)生付書款的依據(jù)數(shù)據(jù)流來源:來自加工“審查并開發(fā)票”數(shù)據(jù)流去向:流向加工“開領(lǐng)書單”。數(shù)據(jù)流組成:學(xué)號+姓名+書號+單價總價+書費(fèi)合計(jì)數(shù)據(jù)流條目舉例:數(shù)據(jù)元素名:類型:數(shù)值(離散、連續(xù)),文字(編碼類型),…

長度:取值范圍:相關(guān)的數(shù)據(jù)元素及數(shù)據(jù)結(jié)構(gòu)(2)數(shù)據(jù)元素詞條的描述數(shù)據(jù)項(xiàng)名:貨物編號別名:G-No,G-num簡述:本公司的所有貨物的編號類型:字符串長度:10取值范圍及含義:第1位:[J|G](進(jìn)口/國產(chǎn))第2~4位:L01..L29(類別)第5~7位:“A00”..“A99”(規(guī)格)第8~10位:“001”..“999”(品名編號)數(shù)據(jù)元素條目舉例:(3)數(shù)據(jù)文件詞條的描述數(shù)據(jù)文件名:簡述:存放的是什么數(shù)據(jù)。 數(shù)據(jù)文件組成:數(shù)據(jù)結(jié)構(gòu)。存儲方式:順序,直接,關(guān)鍵碼。存取頻率:數(shù)據(jù)文件條目舉例:文件名:庫存記錄別名:無簡述:存放庫存所有可供貨物的信息組成:貨物名稱+編號+生產(chǎn)廠家+單價+庫存量組織方式:索引文件,以貨物編號為關(guān)鍵字查詢要求:要求能夠立即查詢加工名:加工編號:反映該加工的層次簡要描述:加工邏輯及功能簡述加工邏輯:簡述加工程序,加工順序執(zhí)行頻率:(4)加工邏輯詞條的描述加工邏輯條目舉例:加工邏輯名:登記報(bào)名單編號:1激活條件:收到報(bào)名單加工邏輯:{1.1檢查報(bào)名單+1.2編準(zhǔn)考證號+1.3登記考生}執(zhí)行頻率:2000次/日名稱:外部實(shí)體名簡要描述:什么外部實(shí)體有關(guān)數(shù)據(jù)流:數(shù)目:(5)外部實(shí)體詞條描述(源點(diǎn)及終點(diǎn)詞條描述)數(shù)據(jù)字典定義符號例子:某程序設(shè)計(jì)語言規(guī)定,用戶說明的標(biāo)識符是長度不超過8個字符的字符串,其中第一個字符必須是字母字符,隨后的字符既可以是字母字符也可以是數(shù)字字符。標(biāo)識符=字母字符+字母數(shù)字串字母數(shù)字串=0{字母或數(shù)字}7字母或數(shù)字=[字母字符|數(shù)字字符]存折格式存折=戶名+所號+帳號+開戶日期+性質(zhì)+(印密)+1{存取行}50戶名=2{字母}24所號=“001”..“999”(注:儲蓄所編碼,規(guī)定三位數(shù)字)帳號=“00000001”..“99999999”

(注:帳號規(guī)定由八位數(shù)字組成)開戶日期=年+月+日性質(zhì)=“1”..“6”

(注:“1”表示普通戶,“5”表示工資戶等)印密=“0”

(注:印密在存折上不顯示)存取行=日期+(摘要)+支出+存入+余額+操作+復(fù)核年=[2003|2004|2005|2006|2007]月=“01”..“12”日=“01”..“31”摘要=1{字母}4

(注:表明該存取是存?是???還是換?)支出=金額

(注:金額規(guī)定不超過9999999.99元)金額=“0000000.01”..“9999999.99”操作=“00001”..“99999”復(fù)核=“00001”..“99999”加工邏輯說明對數(shù)據(jù)流圖的每一個基本加工,必須有一個基本加工邏輯說明闡明把輸入數(shù)據(jù)轉(zhuǎn)換為輸出數(shù)據(jù)的策略,是加工說明的主體,在需求分析階段,僅需要指出要加工“做什么”。而不是“怎樣去做”,加工邏輯說明的工具:結(jié)構(gòu)化英語,判定表,判定樹。結(jié)構(gòu)化英語(PDL)又稱過程設(shè)計(jì)語言,偽碼;它是一種介于自然語言與程序設(shè)計(jì)語言之間的語言。語言的正文用基本控制結(jié)構(gòu)進(jìn)行分割,加工中的操作用自然語言短語來表示其基本控制結(jié)構(gòu)有三種:簡單陳述句結(jié)構(gòu):避免復(fù)合語句;重復(fù)結(jié)構(gòu):while_do或repeat_until結(jié)構(gòu)。判定結(jié)構(gòu):if_then_else或

case_of結(jié)構(gòu);商店業(yè)務(wù)處理系統(tǒng)中“檢查發(fā)貨單”if發(fā)貨單金額超過$500then

if欠款超過了60天then在償還欠款前不予批準(zhǔn)

else

(欠款未超期)發(fā)批準(zhǔn)書,發(fā)貨單

else

(發(fā)貨單金額未超過$500)

if欠款超過60天then發(fā)批準(zhǔn)書,發(fā)貨單及賒欠報(bào)告else

(欠款未超期)發(fā)批準(zhǔn)書,發(fā)貨單

(2)判定表如果數(shù)據(jù)流圖的加工需要依賴于多個邏輯條件的取值,使用判定表來描述比較合適以“檢查發(fā)貨單”為例(3)判定樹判定樹也是用來表達(dá)加工邏輯的一種工具。有時侯它比判定表更直觀。檢查發(fā)貨單金額>$500金額

$500欠款>60天不發(fā)出批準(zhǔn)書欠款

60天發(fā)貨單發(fā)出批準(zhǔn)書、欠款>60天發(fā)出批準(zhǔn)書、發(fā)貨單及賒欠報(bào)告欠款

60天發(fā)出批準(zhǔn)書、發(fā)貨單3.4數(shù)據(jù)模型的表示方法:實(shí)體-聯(lián)系圖在數(shù)據(jù)處理中用數(shù)據(jù)模型描述客觀世界中的事物及其聯(lián)系。

數(shù)據(jù)模型中包含3種相互關(guān)聯(lián)的信息:數(shù)據(jù)對象(實(shí)體),數(shù)據(jù)對象的屬性,數(shù)據(jù)對象間相互連接的關(guān)系。數(shù)據(jù)對象(實(shí)體):是需被目標(biāo)系統(tǒng)所理解的復(fù)合信息的表示。所謂復(fù)合信息是具有若干不同特征或?qū)傩缘男畔?。?shù)據(jù)對象可以是外部實(shí)體(如顯示器),事物(如報(bào)表或顯示),角色(如教師或?qū)W生),行為(如一個電話呼叫)或事件(如單擊鼠標(biāo)左鍵),組織單位(如研究生院),地點(diǎn)(如注冊室)或結(jié)構(gòu)(如文件)。數(shù)據(jù)對象只封裝了數(shù)據(jù),沒有包含作用于這些數(shù)據(jù)上的操作。這與面向?qū)ο蠓缎椭械念惡蛯ο蟛煌>哂邢嗤卣鞯臄?shù)據(jù)對象組成的集合仍然稱為數(shù)據(jù)對象,其中的某一個對象叫做該數(shù)據(jù)對象的一個實(shí)例。

屬性:定義了數(shù)據(jù)對象的特征。它可用來:①為數(shù)據(jù)對象的實(shí)例命名;②描述這個實(shí)例;③建立對另一個數(shù)據(jù)對象的另一個實(shí)例的引用。如學(xué)生數(shù)據(jù)對象的屬性可以有學(xué)號、姓名、性別、出生年月、籍貫等。為了唯一地標(biāo)識數(shù)據(jù)對象的某一個實(shí)例,定義數(shù)據(jù)對象中的一個屬性或幾個屬性為關(guān)鍵碼(key),書寫為_id,例如在“學(xué)生”數(shù)據(jù)對象中用“學(xué)號”做關(guān)鍵碼,它可唯一地標(biāo)識一個“學(xué)生”數(shù)據(jù)對象中的實(shí)例。關(guān)系:各個數(shù)據(jù)對象的實(shí)例之間有關(guān)聯(lián)。 如一個學(xué)生“張鵬”選修兩門課程“軟件工程”與“計(jì)算機(jī)網(wǎng)絡(luò)”,學(xué)生與課程的實(shí)例通過“選修”關(guān)聯(lián)起來。實(shí)例的關(guān)聯(lián)有三種:①一對一(1:1);②一對多(1:m);③多對多(n:m)。

3.4.4實(shí)體聯(lián)系類型符號表示用長方形表示實(shí)體型,在框內(nèi)寫上實(shí)體名。用橢圓形表示實(shí)體的屬性,并用無向邊把實(shí)體與其屬性連接起來。用菱形表示實(shí)體間的聯(lián)系,菱形框內(nèi)寫上聯(lián)系名。用無向邊把菱形分別與有關(guān)實(shí)體相連接,在無向邊旁標(biāo)上聯(lián)系的類型。若實(shí)體之間的聯(lián)系也具有屬性,則把屬性和菱形也用無向邊連接上。3.4.4實(shí)體聯(lián)系類型符號表示圖3.2某校教學(xué)管理ER圖舉例:用E-R圖表示某個工廠的物資管理涉及的實(shí)體:倉庫:倉庫號,倉庫面積,電話號碼零件:零件號,名稱,規(guī)格,單價,描述職工:職工號,姓名,年齡,職稱實(shí)體間的聯(lián)系:一個倉庫可以存放多種零件,一種零件可以存放在多個倉庫中一個倉庫有多個職工當(dāng)倉庫保管員,一個職工只能在一個倉庫工作職工之間具有領(lǐng)導(dǎo)和被領(lǐng)導(dǎo)關(guān)系,即倉庫主任領(lǐng)導(dǎo)若干保管員E-R圖表示3.5數(shù)據(jù)規(guī)范化軟件系統(tǒng)經(jīng)常使用的信息,通常按一定方式組織并存放在數(shù)據(jù)庫或文件中。通常用“范式(normalform)”定義消除數(shù)據(jù)冗余的程度。常用的范式分為第一范式(1NF)、第二范式(2NF)和第三范式(3NF)。判斷規(guī)范化程度的條件是:1、關(guān)系中所有屬性都是“單純域”,即不出現(xiàn)“表中有表”2、非主屬性完全函數(shù)依賴于關(guān)鍵字3、非主屬性相互獨(dú)立,即任何非主屬性間不存在函數(shù)依賴。如果一個關(guān)系連條件

1都不滿足,則這個關(guān)系是非規(guī)范化的。如果一個關(guān)系僅滿足條件

1,則這個關(guān)系滿足第一范式(1NF)。如果一個關(guān)系滿足條件1、2,但不滿足3,則這個關(guān)系滿足第二范式(2NF)。如果一個關(guān)系同時滿足條件

1、2和3,則這個關(guān)系表滿足第三范式(3NF)。當(dāng)數(shù)據(jù)模型達(dá)到3NF,一般情況下就能滿足數(shù)據(jù)庫應(yīng)用的需要。3.6狀態(tài)轉(zhuǎn)換圖狀態(tài)轉(zhuǎn)換圖(簡稱為狀態(tài)圖)通過描繪系統(tǒng)的狀態(tài)及引起系統(tǒng)狀態(tài)轉(zhuǎn)換的事件,來表示系統(tǒng)的行為。此外,狀態(tài)圖

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論