




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、12第第3 3章章 需求分析需求分析意義:意義: 軟件需求的深入理解是軟件開發(fā)工作獲軟件需求的深入理解是軟件開發(fā)工作獲得成功的前提條件,不論我們把設(shè)計(jì)和得成功的前提條件,不論我們把設(shè)計(jì)和編碼做得如何出色,不能真正滿足用戶編碼做得如何出色,不能真正滿足用戶需求的程序只會(huì)令用戶失望,給開發(fā)帶需求的程序只會(huì)令用戶失望,給開發(fā)帶來煩惱。來煩惱。3 需求分析是軟件定義時(shí)期的最后一個(gè)階段,需求分析是軟件定義時(shí)期的最后一個(gè)階段,它的基本任務(wù)它的基本任務(wù)不是確定系統(tǒng)怎樣完成不是確定系統(tǒng)怎樣完成它的工它的工作,作,而是確定系統(tǒng)必須完成而是確定系統(tǒng)必須完成哪些工作,也就哪些工作,也就是對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清
2、晰、具體是對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。并在在需求分析階段結(jié)束之前,由的要求。并在在需求分析階段結(jié)束之前,由系統(tǒng)分析員寫出軟件需求規(guī)格說明書,以書系統(tǒng)分析員寫出軟件需求規(guī)格說明書,以書面形式準(zhǔn)確地描述軟件需求。即:面形式準(zhǔn)確地描述軟件需求。即: - - 準(zhǔn)確地回答準(zhǔn)確地回答“系統(tǒng)必須做什么系統(tǒng)必須做什么? ?”。4 在分析軟件需求和書寫軟件需求規(guī)格說明在分析軟件需求和書寫軟件需求規(guī)格說明書的過程中,分析員和用戶都起著關(guān)鍵的、書的過程中,分析員和用戶都起著關(guān)鍵的、必不可少的作用。必不可少的作用。 5需求分析的結(jié)構(gòu)化方法都遵守下述準(zhǔn)則:需求分析的結(jié)構(gòu)化方法都遵守下述準(zhǔn)則:(3) (3
3、) 必須描述作為外部事件結(jié)果的軟件行為,這必須描述作為外部事件結(jié)果的軟件行為,這條準(zhǔn)則要求建立行為模型。條準(zhǔn)則要求建立行為模型。(2) (2) 必須定義軟件應(yīng)完成的功能,這條準(zhǔn)則要求必須定義軟件應(yīng)完成的功能,這條準(zhǔn)則要求建立功能模型。建立功能模型。(1) (1) 必須理解并描述問題的信息域,根據(jù)這條必須理解并描述問題的信息域,根據(jù)這條準(zhǔn)則應(yīng)該建立數(shù)據(jù)模型。準(zhǔn)則應(yīng)該建立數(shù)據(jù)模型。(4) (4) 必須對(duì)描述信息、功能和行為的模型進(jìn)行分必須對(duì)描述信息、功能和行為的模型進(jìn)行分解,用層次的方式展示細(xì)節(jié)。解,用層次的方式展示細(xì)節(jié)。6軟件的需求包括:軟件的需求包括:783.1 3.1 需求分析的任務(wù)需求分析
4、的任務(wù)9確定對(duì)系統(tǒng)的綜合要求確定對(duì)系統(tǒng)的綜合要求 -功能需求、性能需求、可靠性和可用性功能需求、性能需求、可靠性和可用性需求、出錯(cuò)處理需求、接口需求、約束、需求、出錯(cuò)處理需求、接口需求、約束、 逆向需求、將來可能提出的要求。逆向需求、將來可能提出的要求。3.1 3.1 需求分析的具體任務(wù)需求分析的具體任務(wù) 分析系統(tǒng)的數(shù)據(jù)要求分析系統(tǒng)的數(shù)據(jù)要求3 導(dǎo)出系統(tǒng)的邏輯模型導(dǎo)出系統(tǒng)的邏輯模型4 修正系統(tǒng)開發(fā)計(jì)劃修正系統(tǒng)開發(fā)計(jì)劃103.2 3.2 與用戶溝通獲取需求的方法與用戶溝通獲取需求的方法 訪談訪談 面向數(shù)據(jù)流自頂向下求精面向數(shù)據(jù)流自頂向下求精 簡(jiǎn)易的應(yīng)用規(guī)格說明技術(shù)簡(jiǎn)易的應(yīng)用規(guī)格說明技術(shù) 快速建立
5、軟件原型快速建立軟件原型11(1).(1). 訪訪 談?wù)?正式的訪談?wù)降脑L談 - 系統(tǒng)分析員將提出一些事先準(zhǔn)備好的具體問題。系統(tǒng)分析員將提出一些事先準(zhǔn)備好的具體問題。 非正式的訪談非正式的訪談 - 分析員將提出一些用戶可以自由回答的開放性問分析員將提出一些用戶可以自由回答的開放性問題,以鼓勵(lì)被訪問人員說出自己的想法。題,以鼓勵(lì)被訪問人員說出自己的想法。 當(dāng)需要調(diào)查大量人員的意見時(shí),向被調(diào)查人分發(fā)當(dāng)需要調(diào)查大量人員的意見時(shí),向被調(diào)查人分發(fā)調(diào)查表是一個(gè)十分有效的做法。調(diào)查表是一個(gè)十分有效的做法。 在訪問用戶的過程中使用情景分析技術(shù)往往非常在訪問用戶的過程中使用情景分析技術(shù)往往非常有效。有效。12
6、所謂情景分析就是對(duì)用戶將來使用目標(biāo)系統(tǒng)解所謂情景分析就是對(duì)用戶將來使用目標(biāo)系統(tǒng)解決某個(gè)具體問題的方法和結(jié)果進(jìn)行分析。決某個(gè)具體問題的方法和結(jié)果進(jìn)行分析。情景分析技術(shù)的用處主要體現(xiàn)在下述兩個(gè)方面:情景分析技術(shù)的用處主要體現(xiàn)在下述兩個(gè)方面:(1) (1) 它能在某種程度上演示目標(biāo)系統(tǒng)的行為,從而便它能在某種程度上演示目標(biāo)系統(tǒng)的行為,從而便于用戶理解,而且還可能進(jìn)一步揭示出一些分析于用戶理解,而且還可能進(jìn)一步揭示出一些分析員目前還不知道的需求。員目前還不知道的需求。(2) (2) 由于情景分析較易為用戶所理解,使用這種技術(shù)由于情景分析較易為用戶所理解,使用這種技術(shù)能保證用戶在需求分析過程中始終扮演一
7、個(gè)積極能保證用戶在需求分析過程中始終扮演一個(gè)積極主動(dòng)的角色。需求分析的目標(biāo)是獲知用戶的真實(shí)主動(dòng)的角色。需求分析的目標(biāo)是獲知用戶的真實(shí)需求,而這一信息的惟一來源是用戶,因此,需求,而這一信息的惟一來源是用戶,因此,讓讓用戶起積極主動(dòng)的作用對(duì)需求分析工作獲得成功用戶起積極主動(dòng)的作用對(duì)需求分析工作獲得成功是至關(guān)重要的。是至關(guān)重要的。13(2).(2). 面向數(shù)據(jù)流自頂向下求精面向數(shù)據(jù)流自頂向下求精 數(shù)據(jù)決定了需要的處理和算法,它是需求分析的出發(fā)點(diǎn)。數(shù)據(jù)決定了需要的處理和算法,它是需求分析的出發(fā)點(diǎn)。 可行性研究階段產(chǎn)生的是高層數(shù)據(jù)流圖,許多具體的細(xì)可行性研究階段產(chǎn)生的是高層數(shù)據(jù)流圖,許多具體的細(xì)節(jié)沒有
8、包括,許多實(shí)際的數(shù)據(jù)元素被忽略,當(dāng)時(shí)分析員節(jié)沒有包括,許多實(shí)際的數(shù)據(jù)元素被忽略,當(dāng)時(shí)分析員還不需要考慮這些細(xì)節(jié),現(xiàn)在是定義這些數(shù)據(jù)元素的時(shí)還不需要考慮這些細(xì)節(jié),現(xiàn)在是定義這些數(shù)據(jù)元素的時(shí)候了。候了。自頂向下求精過程自頂向下求精過程14 使用傳統(tǒng)的訪談或面向數(shù)據(jù)流自頂向下求精使用傳統(tǒng)的訪談或面向數(shù)據(jù)流自頂向下求精方法定義需求時(shí),用戶處于被動(dòng)地位而且往方法定義需求時(shí),用戶處于被動(dòng)地位而且往往有意無意地與開發(fā)者區(qū)分往有意無意地與開發(fā)者區(qū)分“彼此彼此”。由于。由于不能像同一個(gè)團(tuán)隊(duì)的人那樣齊心協(xié)力地識(shí)別不能像同一個(gè)團(tuán)隊(duì)的人那樣齊心協(xié)力地識(shí)別和精化需求,這兩種方法的效果有時(shí)并不理和精化需求,這兩種方法的效
9、果有時(shí)并不理想。想。 問題:?jiǎn)栴}:15 這種方法提倡用戶與開發(fā)者密切合作,這種方法提倡用戶與開發(fā)者密切合作,共同標(biāo)識(shí)問題,提出解決方案要素,商共同標(biāo)識(shí)問題,提出解決方案要素,商討不同方案并指定基本需求。討不同方案并指定基本需求。(3). 簡(jiǎn)易的應(yīng)用規(guī)格說明技術(shù)簡(jiǎn)易的應(yīng)用規(guī)格說明技術(shù) - 一種面向團(tuán)隊(duì)的需求收集法一種面向團(tuán)隊(duì)的需求收集法16使用簡(jiǎn)易的應(yīng)用規(guī)格說明技術(shù)使用簡(jiǎn)易的應(yīng)用規(guī)格說明技術(shù)分析需求的典型過程分析需求的典型過程1. 1. 初步的訪談,通過用戶對(duì)基本問題的回答,初步確初步的訪談,通過用戶對(duì)基本問題的回答,初步確定待解決的問題的范圍和解決方案。定待解決的問題的范圍和解決方案。2. 2
10、. 開發(fā)者和用戶分別寫出開發(fā)者和用戶分別寫出“產(chǎn)品需求產(chǎn)品需求”。3. 3. 開發(fā)者和用戶開會(huì)討論,共同創(chuàng)建一張意見一致的開發(fā)者和用戶開會(huì)討論,共同創(chuàng)建一張意見一致的組合列表。組合列表。4. 4. 把與會(huì)者分成更小的小組,每個(gè)小組的工作目標(biāo)是把與會(huì)者分成更小的小組,每個(gè)小組的工作目標(biāo)是為每張列表中的項(xiàng)目制定小型規(guī)格說明。小型規(guī)格為每張列表中的項(xiàng)目制定小型規(guī)格說明。小型規(guī)格說明是對(duì)列表中包含的單詞或短語的準(zhǔn)確說明。說明是對(duì)列表中包含的單詞或短語的準(zhǔn)確說明。5. 5. 每個(gè)小組向全體與會(huì)者展示他們制定的小型規(guī)格說每個(gè)小組向全體與會(huì)者展示他們制定的小型規(guī)格說明,討論,以創(chuàng)建出意見一致的確認(rèn)標(biāo)準(zhǔn)。明,
11、討論,以創(chuàng)建出意見一致的確認(rèn)標(biāo)準(zhǔn)。6. 6. 由一名或多名與會(huì)者根據(jù)會(huì)議成果起草完整的軟件由一名或多名與會(huì)者根據(jù)會(huì)議成果起草完整的軟件需求規(guī)格說明書。需求規(guī)格說明書。17(4).(4). 快速建立軟件原型快速建立軟件原型 正如第正如第1 1章已經(jīng)講過的,快速原型就是章已經(jīng)講過的,快速原型就是快速建立起來的旨在演示目標(biāo)系統(tǒng)主快速建立起來的旨在演示目標(biāo)系統(tǒng)主要功能的可運(yùn)行的程序。要功能的可運(yùn)行的程序。 快速建立軟件原型是最準(zhǔn)確、最有效、快速建立軟件原型是最準(zhǔn)確、最有效、最強(qiáng)大的需求分析技術(shù)。最強(qiáng)大的需求分析技術(shù)。 快速原型應(yīng)具備的特性是快速原型應(yīng)具備的特性是“快速快速”、 “容易修改容易修改”。1
12、8快速構(gòu)建和修改原型,快速構(gòu)建和修改原型,通常使用下述通常使用下述3 3種方法和工具:種方法和工具: 第四代技術(shù)第四代技術(shù)(2) (2) 可重用的軟件構(gòu)件可重用的軟件構(gòu)件(3) (3) 形式化規(guī)格說明和原型環(huán)境形式化規(guī)格說明和原型環(huán)境193.33.3 分析建模與規(guī)格說明分析建模與規(guī)格說明 1).1). 分析建模分析建模 模型模型-就是為了理解事物而對(duì)事物做出的一就是為了理解事物而對(duì)事物做出的一種抽象,是對(duì)事物的一種無歧義的書面描述。種抽象,是對(duì)事物的一種無歧義的書面描述。通常,由一組圖形符號(hào)和組織這些符號(hào)的規(guī)通常,由一組圖形符號(hào)和組織這些符號(hào)的規(guī)則組成。則組成。 需求分析過程應(yīng)該建立需求分析過
13、程應(yīng)該建立3 3種模型種模型: : 數(shù)據(jù)模型數(shù)據(jù)模型 - - 實(shí)體實(shí)體- -聯(lián)系圖聯(lián)系圖 功能模型功能模型 - - 數(shù)據(jù)流圖數(shù)據(jù)流圖 行為模型行為模型 -狀態(tài)轉(zhuǎn)換圖狀態(tài)轉(zhuǎn)換圖203.33.3 分析建模與規(guī)格說明分析建模與規(guī)格說明2). 2). 軟件需求規(guī)格說明軟件需求規(guī)格說明(SRS)(SRS) Software Requirement Specification 通常用自然語言通常用自然語言+ +模型,完整、準(zhǔn)確、模型,完整、準(zhǔn)確、具體地描述系統(tǒng)的數(shù)據(jù)要求、功能需求、具體地描述系統(tǒng)的數(shù)據(jù)要求、功能需求、性能需求、可靠性和可用性要求、出錯(cuò)性能需求、可靠性和可用性要求、出錯(cuò)處理需求、接口需求、約
14、束、逆向需求處理需求、接口需求、約束、逆向需求以及將來可能提出的要求。以及將來可能提出的要求。 軟件需求規(guī)格說明書,是需求分析階段軟件需求規(guī)格說明書,是需求分析階段得出的最主要的文檔。得出的最主要的文檔。21軟件需求說明書的編寫提示軟件需求說明書的編寫提示(GB856TGB856T8888)22軟件需求說明書的編寫提示軟件需求說明書的編寫提示 1 1 引言引言 1.1 1.1 編寫目的編寫目的 1.2 1.2 背景背景 1.3 1.3 定義定義 1.4 1.4 參考資料參考資料 2 2 任務(wù)概述任務(wù)概述 2.1 2.1 目標(biāo)目標(biāo) 2.2 2.2 用戶的特點(diǎn)用戶的特點(diǎn) 2.3 2.3 假定和約束
15、假定和約束23軟件需求說明書的編寫提示軟件需求說明書的編寫提示 3 3 需求規(guī)定需求規(guī)定 3.1 3.1 對(duì)功能的規(guī)定對(duì)功能的規(guī)定 3.2 3.2 對(duì)性能的規(guī)定對(duì)性能的規(guī)定 3.2.1 3.2.1 精度精度 3.2.2 3.2.2 時(shí)間特性要求時(shí)間特性要求 3.2.3 3.2.3 靈活性靈活性 3.3 3.3 輸人輸出要求輸人輸出要求 3.4 3.4 數(shù)據(jù)管理能力要求數(shù)據(jù)管理能力要求 3.5 3.5 故障處理要求故障處理要求 3.6 3.6 其他專門要求其他專門要求 4 4 運(yùn)行環(huán)境規(guī)定運(yùn)行環(huán)境規(guī)定 4.1 4.1 設(shè)備設(shè)備 4.2 4.2 支持軟件支持軟件 4.3 4.3 接口接口 4.4
16、4.4 控制控制24 軟件工程思想軟件工程思想( (林銳林銳 P38P38P48P48) ) 需求分析為什么困難?需求分析為什么困難? 如何進(jìn)行需求分析?如何進(jìn)行需求分析? 253.4 3.4 實(shí)體實(shí)體- -聯(lián)系圖聯(lián)系圖(ER)(ER) Entity Relationship Diagram ERER圖圖 - - 是用來建立數(shù)據(jù)模型的工具。是用來建立數(shù)據(jù)模型的工具。 數(shù)據(jù)模型數(shù)據(jù)模型 - - 是一種面向問題的數(shù)據(jù)模型,是按是一種面向問題的數(shù)據(jù)模型,是按照用戶的觀點(diǎn)對(duì)數(shù)據(jù)建立的模型。它描述了從用照用戶的觀點(diǎn)對(duì)數(shù)據(jù)建立的模型。它描述了從用戶角度看到的數(shù)據(jù),反映了用戶的現(xiàn)實(shí)環(huán)境,而戶角度看到的數(shù)據(jù),
17、反映了用戶的現(xiàn)實(shí)環(huán)境,而且與在軟件系統(tǒng)中的實(shí)現(xiàn)方法無關(guān)。且與在軟件系統(tǒng)中的實(shí)現(xiàn)方法無關(guān)。 數(shù)據(jù)模型中包含數(shù)據(jù)模型中包含3 3種相互關(guān)聯(lián)的信息:數(shù)據(jù)對(duì)象種相互關(guān)聯(lián)的信息:數(shù)據(jù)對(duì)象(實(shí)體)、數(shù)據(jù)對(duì)象的屬性及數(shù)據(jù)對(duì)象彼此間相(實(shí)體)、數(shù)據(jù)對(duì)象的屬性及數(shù)據(jù)對(duì)象彼此間相互連接的關(guān)系?;ミB接的關(guān)系。26(1).(1). 數(shù)據(jù)對(duì)象數(shù)據(jù)對(duì)象 數(shù)據(jù)對(duì)象數(shù)據(jù)對(duì)象: : 是對(duì)軟件必須理解的復(fù)合信息的是對(duì)軟件必須理解的復(fù)合信息的抽象。抽象。 復(fù)合信息復(fù)合信息: : 是指是指具有一系列不同性質(zhì)或?qū)傩跃哂幸幌盗胁煌再|(zhì)或?qū)傩缘氖挛锏氖挛铮瑑H有單個(gè)值的事物,僅有單個(gè)值的事物( (例如,寬度例如,寬度) )不不是數(shù)據(jù)對(duì)象。是
18、數(shù)據(jù)對(duì)象。 可以由可以由一組屬性來定義的實(shí)體一組屬性來定義的實(shí)體都可以被認(rèn)為都可以被認(rèn)為是數(shù)據(jù)對(duì)象。是數(shù)據(jù)對(duì)象。 如:外部實(shí)體、事物、行為、事件、角色、單位、如:外部實(shí)體、事物、行為、事件、角色、單位、地點(diǎn)或結(jié)構(gòu)等。地點(diǎn)或結(jié)構(gòu)等。 數(shù)據(jù)對(duì)象彼此間是有關(guān)聯(lián)的。數(shù)據(jù)對(duì)象彼此間是有關(guān)聯(lián)的。27(2).(2). 屬屬 性性 屬性定義了數(shù)據(jù)對(duì)象的屬性定義了數(shù)據(jù)對(duì)象的性質(zhì)性質(zhì)。 必須把一個(gè)或多個(gè)屬性定義為必須把一個(gè)或多個(gè)屬性定義為“標(biāo)識(shí)符標(biāo)識(shí)符”,也就是,也就是說,當(dāng)我們希望找到數(shù)據(jù)對(duì)象的一個(gè)實(shí)例時(shí),用標(biāo)說,當(dāng)我們希望找到數(shù)據(jù)對(duì)象的一個(gè)實(shí)例時(shí),用標(biāo)識(shí)符屬性作為識(shí)符屬性作為“關(guān)鍵字關(guān)鍵字”( (通常簡(jiǎn)稱為通
19、常簡(jiǎn)稱為“鍵鍵”) )。 應(yīng)該根據(jù)對(duì)所要解決的問題的理解,來確定特定數(shù)應(yīng)該根據(jù)對(duì)所要解決的問題的理解,來確定特定數(shù)據(jù)對(duì)象的一組合適的屬性。據(jù)對(duì)象的一組合適的屬性。如:如:28(3).(3). 聯(lián)聯(lián) 系系 數(shù)據(jù)對(duì)象數(shù)據(jù)對(duì)象彼此之間相互連接的方式彼此之間相互連接的方式稱為聯(lián)系,也稱為關(guān)系。稱為聯(lián)系,也稱為關(guān)系。 聯(lián)系可分為以下聯(lián)系可分為以下3 3種類型種類型: a. a. 一對(duì)一聯(lián)系一對(duì)一聯(lián)系(11)(11) 如:一個(gè)部門有一個(gè)經(jīng)理,而每個(gè)經(jīng)理只在一個(gè)部門任職,則部門與經(jīng)理的聯(lián)系如:一個(gè)部門有一個(gè)經(jīng)理,而每個(gè)經(jīng)理只在一個(gè)部門任職,則部門與經(jīng)理的聯(lián)系是一對(duì)一的。是一對(duì)一的。 b. b. 一對(duì)多聯(lián)系一
20、對(duì)多聯(lián)系(1N)(1N) 如:某校教師與課程之間存在一對(duì)多的聯(lián)系如:某校教師與課程之間存在一對(duì)多的聯(lián)系“教教”,即每位教師可以教多門課程,即每位教師可以教多門課程,但是每門課程只能由一位教師來教。但是每門課程只能由一位教師來教。 c. c. 多對(duì)多聯(lián)系多對(duì)多聯(lián)系(MN)(MN) 如:學(xué)生與課程間的聯(lián)系如:學(xué)生與課程間的聯(lián)系( (“學(xué)學(xué)”) )是多對(duì)多的,即一個(gè)學(xué)生可以學(xué)多門課程,而每是多對(duì)多的,即一個(gè)學(xué)生可以學(xué)多門課程,而每門課程可以有多個(gè)學(xué)生來學(xué)。門課程可以有多個(gè)學(xué)生來學(xué)。 聯(lián)系也可能有屬性。聯(lián)系也可能有屬性。 如:學(xué)生如:學(xué)生“學(xué)學(xué)”某門課程所取得的成績(jī),既不是學(xué)生的屬性也不是課程的屬性。
21、某門課程所取得的成績(jī),既不是學(xué)生的屬性也不是課程的屬性。由于由于“成績(jī)成績(jī)”既依賴于某名特定的學(xué)生又依賴于某門特定的課程,所以它是學(xué)生既依賴于某名特定的學(xué)生又依賴于某門特定的課程,所以它是學(xué)生與課程之間的聯(lián)系與課程之間的聯(lián)系“學(xué)學(xué)”的屬性。的屬性。29(4). (4). 實(shí)體實(shí)體- -聯(lián)系圖的符號(hào)聯(lián)系圖的符號(hào) ERER圖圖中包含了中包含了實(shí)體實(shí)體( (即數(shù)據(jù)對(duì)象即數(shù)據(jù)對(duì)象) )、關(guān)關(guān)系系和和屬性屬性等等3 3種基本成分。種基本成分。 通常用通常用矩形框矩形框代表實(shí)體;代表實(shí)體; 用連接相關(guān)實(shí)體的用連接相關(guān)實(shí)體的菱形框菱形框表示關(guān)系;表示關(guān)系; 用用橢圓形或圓角矩形橢圓形或圓角矩形表示實(shí)體表示實(shí)
22、體( (或關(guān)或關(guān)系系) )的屬性;的屬性; 并用并用直線直線把實(shí)體把實(shí)體( (或關(guān)系或關(guān)系) )與其屬性連與其屬性連接起來。接起來。30舉舉 例例對(duì)象對(duì)象教師屬性教師屬性學(xué)生屬性學(xué)生屬性課程屬性課程屬性聯(lián)系屬性聯(lián)系屬性關(guān)系關(guān)系313.53.5 數(shù)據(jù)規(guī)范化數(shù)據(jù)規(guī)范化3233如如 何何 規(guī)規(guī) 范范 化?化? 1. 2. 教工號(hào)教工號(hào)姓名姓名性別性別職稱職稱職務(wù)職務(wù)001張毅坤張毅坤男男教授教授院長(zhǎng)院長(zhǎng)002李李 林林女女講師講師343536 通常用通常用“范式范式(Normal Forms)(Normal Forms)”定義消除數(shù)據(jù)冗余的定義消除數(shù)據(jù)冗余的程度。第一范式程度。第一范式(1 NF)(
23、1 NF)數(shù)據(jù)冗余程度最大,第五范數(shù)據(jù)冗余程度最大,第五范式式(5 NF)(5 NF)數(shù)據(jù)冗余程度最小。數(shù)據(jù)冗余程度最小。但是:但是:1 1、范式級(jí)別越高,存儲(chǔ)同樣數(shù)據(jù)就需要分解成更多張、范式級(jí)別越高,存儲(chǔ)同樣數(shù)據(jù)就需要分解成更多張表,因此,表,因此,“存儲(chǔ)自身存儲(chǔ)自身”的過程也就越復(fù)雜。的過程也就越復(fù)雜。2 2、隨著范式級(jí)別的提高,數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)與基于問題、隨著范式級(jí)別的提高,數(shù)據(jù)的存儲(chǔ)結(jié)構(gòu)與基于問題域的結(jié)構(gòu)間的匹配程度也隨之下降,因此,在需求變域的結(jié)構(gòu)間的匹配程度也隨之下降,因此,在需求變化時(shí)數(shù)據(jù)的穩(wěn)定性較差。化時(shí)數(shù)據(jù)的穩(wěn)定性較差。3 3、范式級(jí)別提高則需要訪問的表增多,因此性能、范式級(jí)別
24、提高則需要訪問的表增多,因此性能( (速速度度) )將下降。從實(shí)用角度看來,在大多數(shù)場(chǎng)合選用第三將下降。從實(shí)用角度看來,在大多數(shù)場(chǎng)合選用第三范式都比較恰當(dāng)。范式都比較恰當(dāng)。所以,從實(shí)用角度看來,在大多數(shù)所以,從實(shí)用角度看來,在大多數(shù)場(chǎng)合選用第三范式都比較恰當(dāng)。場(chǎng)合選用第三范式都比較恰當(dāng)。37第第 一一 范范 式式 每個(gè)屬性值都必須是原子值,即僅僅是一個(gè)每個(gè)屬性值都必須是原子值,即僅僅是一個(gè)簡(jiǎn)單值而不含內(nèi)部結(jié)構(gòu)。簡(jiǎn)單值而不含內(nèi)部結(jié)構(gòu)。 如:如:38第第 二二 范范 式式 滿足第一范式條件,而且每個(gè)非關(guān)鍵字屬性滿足第一范式條件,而且每個(gè)非關(guān)鍵字屬性都由整個(gè)關(guān)鍵字決定都由整個(gè)關(guān)鍵字決定( (而不是由
25、關(guān)鍵字的一而不是由關(guān)鍵字的一部分來決定部分來決定) )。 如:如:39第第 三三 范范 式式 符合第二范式的條件,每個(gè)非關(guān)鍵字屬性都僅由符合第二范式的條件,每個(gè)非關(guān)鍵字屬性都僅由關(guān)鍵字決定,而且一個(gè)非關(guān)鍵字屬性不能僅僅是關(guān)鍵字決定,而且一個(gè)非關(guān)鍵字屬性不能僅僅是對(duì)另一個(gè)非關(guān)鍵字屬性的進(jìn)一步描述對(duì)另一個(gè)非關(guān)鍵字屬性的進(jìn)一步描述( (即一個(gè)非關(guān)即一個(gè)非關(guān)鍵字屬性值不依賴于另一個(gè)非關(guān)鍵字屬性值鍵字屬性值不依賴于另一個(gè)非關(guān)鍵字屬性值) )。 如:如:403.63.6 狀態(tài)轉(zhuǎn)換圖狀態(tài)轉(zhuǎn)換圖 狀態(tài)轉(zhuǎn)換圖狀態(tài)轉(zhuǎn)換圖( (簡(jiǎn)稱為狀態(tài)圖簡(jiǎn)稱為狀態(tài)圖) ) 通過描繪系統(tǒng)的通過描繪系統(tǒng)的狀態(tài)狀態(tài)及引起系統(tǒng)狀態(tài)轉(zhuǎn)換的
26、及引起系統(tǒng)狀態(tài)轉(zhuǎn)換的事件事件,來表示系統(tǒng)的,來表示系統(tǒng)的行為行為。此外,狀態(tài)圖還。此外,狀態(tài)圖還指明了作為特定事件的結(jié)果系統(tǒng)將做哪些動(dòng)指明了作為特定事件的結(jié)果系統(tǒng)將做哪些動(dòng)作作( (例如,處理數(shù)據(jù)例如,處理數(shù)據(jù)) )。411). 1). 狀狀 態(tài)態(tài) 狀態(tài)是任何可以被觀察到的系統(tǒng)行為模式,一個(gè)狀態(tài)代表系統(tǒng)的一種行為模式。狀態(tài)規(guī)定了系統(tǒng)對(duì)事件的響應(yīng)方式。系統(tǒng)對(duì)事件的響應(yīng),既可以是做一個(gè)(或一系列)動(dòng)作,也可以是僅僅改變系統(tǒng)本身的狀態(tài),還可以是既改變狀態(tài)又做動(dòng)作。 初態(tài)初態(tài) ( (即初始狀態(tài)即初始狀態(tài)) ) 狀態(tài)狀態(tài) 終態(tài)終態(tài) ( (即最終狀態(tài)即最終狀態(tài)) ) 中間狀態(tài)中間狀態(tài)一張狀態(tài)圖中只能有一個(gè)
27、初態(tài),而終態(tài)則可以有一張狀態(tài)圖中只能有一個(gè)初態(tài),而終態(tài)則可以有0 0至多個(gè)。至多個(gè)。422). 2). 事事 件件 事件是在某個(gè)特定時(shí)刻發(fā)生的事情,它事件是在某個(gè)特定時(shí)刻發(fā)生的事情,它是對(duì)引起系統(tǒng)做動(dòng)作或是對(duì)引起系統(tǒng)做動(dòng)作或( (和和) )從一個(gè)狀態(tài)從一個(gè)狀態(tài)轉(zhuǎn)換到另一個(gè)狀態(tài)的外界事件的抽象。轉(zhuǎn)換到另一個(gè)狀態(tài)的外界事件的抽象。 例如,內(nèi)部時(shí)鐘表明某個(gè)規(guī)定的時(shí)間段例如,內(nèi)部時(shí)鐘表明某個(gè)規(guī)定的時(shí)間段已經(jīng)過去,用戶移動(dòng)或點(diǎn)擊鼠標(biāo)等都是已經(jīng)過去,用戶移動(dòng)或點(diǎn)擊鼠標(biāo)等都是事件。事件。 簡(jiǎn)而言之,簡(jiǎn)而言之,事件就是引起系統(tǒng)做動(dòng)作或事件就是引起系統(tǒng)做動(dòng)作或( (和和) )轉(zhuǎn)換狀態(tài)的控制信息。轉(zhuǎn)換狀態(tài)的控制信
28、息。43 初態(tài)用實(shí)心圓初態(tài)用實(shí)心圓表示,表示,終態(tài)用一對(duì)同心圓終態(tài)用一對(duì)同心圓( (內(nèi)圓為內(nèi)圓為實(shí)心圓實(shí)心圓) )表示。表示。 中間狀態(tài)用圓角矩形表示中間狀態(tài)用圓角矩形表示,可以用兩條水平橫,可以用兩條水平橫線把它分成線把它分成上、中、下上、中、下3 3個(gè)部分。個(gè)部分。上面部分為狀上面部分為狀態(tài)的名稱態(tài)的名稱,這部分是必須有的;,這部分是必須有的;中間部分為狀中間部分為狀態(tài)變量的名字和值態(tài)變量的名字和值,這部分是可選的;,這部分是可選的;下面部下面部分是活動(dòng)表分是活動(dòng)表,這部分也是可選的。,這部分也是可選的。3)3)符符號(hào)號(hào)44 活動(dòng)表的語法格式:事件名活動(dòng)表的語法格式:事件名( (參數(shù)表參數(shù)
29、表)/ )/動(dòng)作表達(dá)式動(dòng)作表達(dá)式 其中,其中,“事件名事件名”可以是任何事件的名稱。在活動(dòng)可以是任何事件的名稱。在活動(dòng)表中經(jīng)常使用下述表中經(jīng)常使用下述3 3種標(biāo)準(zhǔn)事件:種標(biāo)準(zhǔn)事件:entryentry,exitexit和和dodo。entryentry事件指定進(jìn)入該狀態(tài)的動(dòng)作,事件指定進(jìn)入該狀態(tài)的動(dòng)作,exitexit事件指定退事件指定退出該狀態(tài)的動(dòng)作,而出該狀態(tài)的動(dòng)作,而dodo事件則指定在該狀態(tài)下的動(dòng)事件則指定在該狀態(tài)下的動(dòng)作。需要時(shí)可以為事件指定參數(shù)表?;顒?dòng)表中的動(dòng)作。需要時(shí)可以為事件指定參數(shù)表。活動(dòng)表中的動(dòng)作表達(dá)式描述應(yīng)做的具體動(dòng)作。作表達(dá)式描述應(yīng)做的具體動(dòng)作。3)3)符符號(hào)號(hào)45狀態(tài)
30、圖中兩個(gè)狀態(tài)之狀態(tài)圖中兩個(gè)狀態(tài)之間帶箭頭的連線稱為狀態(tài)轉(zhuǎn)換間帶箭頭的連線稱為狀態(tài)轉(zhuǎn)換,箭頭指明了轉(zhuǎn)換方向。,箭頭指明了轉(zhuǎn)換方向。狀態(tài)變遷通常是由事件觸發(fā)的,在這種情況下應(yīng)在表示狀態(tài)轉(zhuǎn)換的狀態(tài)變遷通常是由事件觸發(fā)的,在這種情況下應(yīng)在表示狀態(tài)轉(zhuǎn)換的箭頭線箭頭線上標(biāo)出觸發(fā)轉(zhuǎn)換的事件表達(dá)式上標(biāo)出觸發(fā)轉(zhuǎn)換的事件表達(dá)式;如果在箭頭線上未標(biāo)明事件,則表示在源;如果在箭頭線上未標(biāo)明事件,則表示在源狀態(tài)的內(nèi)部活動(dòng)執(zhí)行完之后自動(dòng)觸發(fā)轉(zhuǎn)換。狀態(tài)的內(nèi)部活動(dòng)執(zhí)行完之后自動(dòng)觸發(fā)轉(zhuǎn)換。事件表達(dá)式的語法事件表達(dá)式的語法: 事件說明守衛(wèi)條件動(dòng)作表達(dá)式事件說明守衛(wèi)條件動(dòng)作表達(dá)式事件說明事件說明的語法為:事件名的語法為:事件名(
31、(參數(shù)表參數(shù)表) )。守衛(wèi)條件守衛(wèi)條件是一個(gè)布爾表達(dá)式。如果同時(shí)使用事件說明和守衛(wèi)條件,則當(dāng)且是一個(gè)布爾表達(dá)式。如果同時(shí)使用事件說明和守衛(wèi)條件,則當(dāng)且僅當(dāng)事件發(fā)生且布爾表達(dá)式為真時(shí),狀態(tài)轉(zhuǎn)換才發(fā)生。如果只有守衛(wèi)條件僅當(dāng)事件發(fā)生且布爾表達(dá)式為真時(shí),狀態(tài)轉(zhuǎn)換才發(fā)生。如果只有守衛(wèi)條件沒有事件說明,則只要守衛(wèi)條件為真狀態(tài)轉(zhuǎn)換就發(fā)生。沒有事件說明,則只要守衛(wèi)條件為真狀態(tài)轉(zhuǎn)換就發(fā)生。動(dòng)作表達(dá)式是一個(gè)過程表達(dá)式,當(dāng)狀態(tài)轉(zhuǎn)換開始時(shí)執(zhí)行該表達(dá)式。動(dòng)作表達(dá)式是一個(gè)過程表達(dá)式,當(dāng)狀態(tài)轉(zhuǎn)換開始時(shí)執(zhí)行該表達(dá)式。3)3)符符號(hào)號(hào)464). 4). 舉舉 例例473.73.7 其他圖形工具其他圖形工具 層次方框圖層次方框圖
32、 Warnier Warnier圖圖 IPO IPO圖圖483.7.13.7.1 層次方框圖層次方框圖 層次方框圖用層次方框圖用樹形結(jié)構(gòu)的一系列多層次的矩形框樹形結(jié)構(gòu)的一系列多層次的矩形框描繪數(shù)據(jù)的層次結(jié)構(gòu)。描繪數(shù)據(jù)的層次結(jié)構(gòu)。 樹形結(jié)構(gòu)的樹形結(jié)構(gòu)的頂層是一個(gè)單獨(dú)的矩形框頂層是一個(gè)單獨(dú)的矩形框,它代表完,它代表完整的數(shù)據(jù)結(jié)構(gòu),整的數(shù)據(jù)結(jié)構(gòu),下面的各層矩形框代表這個(gè)數(shù)據(jù)下面的各層矩形框代表這個(gè)數(shù)據(jù)的子集的子集,最底層最底層的各個(gè)框代表組成這個(gè)數(shù)據(jù)的的各個(gè)框代表組成這個(gè)數(shù)據(jù)的實(shí)實(shí)際數(shù)據(jù)元素際數(shù)據(jù)元素( (不能再分割的元素不能再分割的元素) )。 隨著結(jié)構(gòu)的精細(xì)化,層次方框圖對(duì)數(shù)據(jù)結(jié)構(gòu)也描隨著結(jié)構(gòu)的
33、精細(xì)化,層次方框圖對(duì)數(shù)據(jù)結(jié)構(gòu)也描繪得越來越詳細(xì),繪得越來越詳細(xì),這種模式非常適合于需求分析這種模式非常適合于需求分析階段的需要階段的需要。系統(tǒng)分析員從對(duì)頂層信息的分類開。系統(tǒng)分析員從對(duì)頂層信息的分類開始,沿圖中每條路徑反復(fù)細(xì)化,直到確定了數(shù)據(jù)始,沿圖中每條路徑反復(fù)細(xì)化,直到確定了數(shù)據(jù)結(jié)構(gòu)的全部細(xì)節(jié)時(shí)為止。結(jié)構(gòu)的全部細(xì)節(jié)時(shí)為止。49舉舉 例例50領(lǐng)導(dǎo)層輔助決策系統(tǒng)領(lǐng)導(dǎo)層輔助決策系統(tǒng)查詢查詢輔助決策輔助決策物物資資信信息息重重點(diǎn)點(diǎn)供供料料信信息息商商情情信信息息人人員員狀狀況況合合同同監(jiān)監(jiān)視視財(cái)財(cái)務(wù)務(wù)信信息息計(jì)計(jì)劃劃執(zhí)執(zhí)行行情情況況工工程程進(jìn)進(jìn)展展情情況況超超儲(chǔ)儲(chǔ)低低儲(chǔ)儲(chǔ)情情況況經(jīng)經(jīng)營(yíng)營(yíng)指指標(biāo)標(biāo)歷
34、歷年年對(duì)對(duì)比比價(jià)價(jià)格格預(yù)預(yù)測(cè)測(cè)物物資資用用量量預(yù)預(yù)測(cè)測(cè)庫庫存存定定額額核核定定庫庫存存結(jié)結(jié)構(gòu)構(gòu)分分析析經(jīng)經(jīng)濟(jì)濟(jì)采采購購批批量量保保本本保保利利分分析析513.7.23.7.2 Warnier Warnier圖圖 法國計(jì)算機(jī)科學(xué)家法國計(jì)算機(jī)科學(xué)家WarnierWarnier提出了表示信息層次結(jié)提出了表示信息層次結(jié)構(gòu)的另外一種圖形工具。構(gòu)的另外一種圖形工具。 WarnierWarnier圖也用樹形結(jié)構(gòu)描繪信息,但是這種圖形圖也用樹形結(jié)構(gòu)描繪信息,但是這種圖形工具比層次方框圖提供了更豐富的描繪手段。工具比層次方框圖提供了更豐富的描繪手段。 用用WarnierWarnier圖可以圖可以表明信息的邏輯組
35、織表明信息的邏輯組織。 它可以指出一類信息或一個(gè)信息元素是它可以指出一類信息或一個(gè)信息元素是重復(fù)出現(xiàn)重復(fù)出現(xiàn)的,的,也可以表示特定信息在某一類信息中是也可以表示特定信息在某一類信息中是有條件地有條件地出現(xiàn)出現(xiàn)的。的。 重復(fù)和條件約束是說明軟件處理過程的基礎(chǔ),所重復(fù)和條件約束是說明軟件處理過程的基礎(chǔ),所以很容易把以很容易把WarnierWarnier圖轉(zhuǎn)變成軟件設(shè)計(jì)的工具。圖轉(zhuǎn)變成軟件設(shè)計(jì)的工具。52舉舉 例例 圖中表示一種軟件產(chǎn)品圖中表示一種軟件產(chǎn)品要么要么是系統(tǒng)軟件是系統(tǒng)軟件要么要么是應(yīng)是應(yīng)用軟件。系統(tǒng)軟件中有用軟件。系統(tǒng)軟件中有P1P1種操作系統(tǒng),種操作系統(tǒng),P2P2種編譯種編譯程序,此外還有軟件工具。軟件工具是系統(tǒng)軟件程序
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 個(gè)人裝修委托書
- 雙方設(shè)備合作合同范本
- 南瓜訂貨合同范例
- 斷層解剖復(fù)習(xí)題+答案
- 合伙買車合作協(xié)議合同范例
- 七年級(jí)下學(xué)期語文總結(jié)
- 兼職游泳教練合同范本
- 保潔合同范本(完美版)
- 廠里員工租房合同范本
- 《贈(zèng)劉景文》和《山行》古詩的教學(xué)反思
- 寶寶相冊(cè)生日祝福可愛卡通電子相冊(cè)PPT模板
- T∕CACM 1232-2019 中醫(yī)內(nèi)科臨床診療指南 真心痛(PCI術(shù)后)
- 《XX醫(yī)院安寧療護(hù)建設(shè)實(shí)施方案》
- 教科版科學(xué)五年級(jí)下冊(cè)《熱》單元教材解讀分析
- 安脈學(xué)生信息化管理系統(tǒng)(課堂PPT)
- 化學(xué)實(shí)驗(yàn)室安全培訓(xùn)課件課件
- 渤海灣盆地構(gòu)造演化及其油氣意義
- word公章模板
- 中西醫(yī)結(jié)合腫瘤學(xué)試卷(含答案)
- 開學(xué)第一課我們開學(xué)啦主題班會(huì)PPT課件(帶內(nèi)容)
- 體育訓(xùn)練隊(duì)隊(duì)規(guī)
評(píng)論
0/150
提交評(píng)論