




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第二章第二章 軟件分析與設(shè)計基礎(chǔ)軟件分析與設(shè)計基礎(chǔ) 本章包含的內(nèi)容:本章包含的內(nèi)容: 1)面向過程分析與設(shè)計)面向過程分析與設(shè)計 2)面向?qū)ο蠓治雠c設(shè)計)面向?qū)ο蠓治雠c設(shè)計 3)數(shù)據(jù)庫建模與設(shè)計)數(shù)據(jù)庫建模與設(shè)計本章重點(diǎn):本章重點(diǎn): 1)掌握面向過程分析與設(shè)計的思想與方法;)掌握面向過程分析與設(shè)計的思想與方法; 2)熟練掌握面向?qū)ο蠓治雠c設(shè)計的思想與方法;)熟練掌握面向?qū)ο蠓治雠c設(shè)計的思想與方法; 3)熟練掌握數(shù)據(jù)庫設(shè)計的思想與方法。)熟練掌握數(shù)據(jù)庫設(shè)計的思想與方法。經(jīng)驗(yàn)和教訓(xùn)表明經(jīng)驗(yàn)和教訓(xùn)表明:1)軟件開發(fā)需要遵循軟件工程方法論的指導(dǎo),軟件分軟件開發(fā)需要遵循軟件工程方法論的指導(dǎo),軟件分析與設(shè)
2、計質(zhì)量決定軟件產(chǎn)品的質(zhì)量析與設(shè)計質(zhì)量決定軟件產(chǎn)品的質(zhì)量2)合理的軟件分析與設(shè)計建立在對軟件需求正確理解合理的軟件分析與設(shè)計建立在對軟件需求正確理解的基礎(chǔ)上,對軟件需求的深入理解是軟件開發(fā)工作的基礎(chǔ)上,對軟件需求的深入理解是軟件開發(fā)工作獲得成功的前提和關(guān)鍵獲得成功的前提和關(guān)鍵3)要開發(fā)出好的軟件產(chǎn)品,首先必須知道用戶的需求,要開發(fā)出好的軟件產(chǎn)品,首先必須知道用戶的需求,并在充分了解用戶需求的基礎(chǔ)上,對用戶的業(yè)務(wù)需并在充分了解用戶需求的基礎(chǔ)上,對用戶的業(yè)務(wù)需求建模,并進(jìn)行相應(yīng)的分析與設(shè)計,才能生產(chǎn)出真求建模,并進(jìn)行相應(yīng)的分析與設(shè)計,才能生產(chǎn)出真正符合用戶要求且生命周期長的軟件產(chǎn)品。正符合用戶要求且
3、生命周期長的軟件產(chǎn)品。 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 傳統(tǒng)的軟件工程方法:傳統(tǒng)的軟件工程方法: 結(jié)構(gòu)化分析(結(jié)構(gòu)化分析(structruedstructrued analysis analysis, sasa) 結(jié)構(gòu)化設(shè)計(結(jié)構(gòu)化設(shè)計(structruedstructrued design design, sdsd)。)。 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 2.1.12.1.1結(jié)構(gòu)化分析結(jié)構(gòu)化分析 結(jié)構(gòu)化分析是結(jié)構(gòu)化分析是20世紀(jì)世紀(jì)70年代后期提出的,是一種基于年代后期提出的,是一種基于功能分解的需求分析方法,適用于分析大型數(shù)據(jù)處理系統(tǒng)。功能分解的需求分析方法,適用于
4、分析大型數(shù)據(jù)處理系統(tǒng)。與結(jié)構(gòu)化設(shè)計與結(jié)構(gòu)化設(shè)計(sd)一起聯(lián)合使用,能較好地實(shí)現(xiàn)一個軟件一起聯(lián)合使用,能較好地實(shí)現(xiàn)一個軟件系統(tǒng)的研制。系統(tǒng)的研制。 它是一種面向數(shù)據(jù)流,自頂向下、逐步求精進(jìn)行需求分它是一種面向數(shù)據(jù)流,自頂向下、逐步求精進(jìn)行需求分析的方法。析的方法。 它通常用它通常用數(shù)據(jù)流圖數(shù)據(jù)流圖表達(dá)需求表達(dá)需求,以以數(shù)據(jù)字典數(shù)據(jù)字典表示數(shù)據(jù)的邏表示數(shù)據(jù)的邏輯定義。輯定義。 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 sasa方法的特點(diǎn):方法的特點(diǎn):n核心思想是自頂向下、逐步求精核心思想是自頂向下、逐步求精n基本手段是分解和抽象基本手段是分解和抽象 所謂分解就是把大問題分割成若干小問題,把復(fù)雜
5、度降所謂分解就是把大問題分割成若干小問題,把復(fù)雜度降低到人們可以掌握的程度,然后分別解決。低到人們可以掌握的程度,然后分別解決。 所謂抽象就是把細(xì)節(jié)略去,先考慮最本質(zhì)的東西。所謂抽象就是把細(xì)節(jié)略去,先考慮最本質(zhì)的東西。 使用數(shù)據(jù)流圖、數(shù)據(jù)字典等規(guī)范化工具描述需求。使用數(shù)據(jù)流圖、數(shù)據(jù)字典等規(guī)范化工具描述需求。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計使用使用sasa方法進(jìn)行軟件需求分析的步驟:方法進(jìn)行軟件需求分析的步驟:(1)(1)建立當(dāng)前系統(tǒng)的具體模型建立當(dāng)前系統(tǒng)的具體模型 分析當(dāng)前系統(tǒng)和現(xiàn)實(shí)環(huán)境,描述當(dāng)前系統(tǒng)的工作方式,分析當(dāng)前系統(tǒng)和現(xiàn)實(shí)環(huán)境,描述當(dāng)前系統(tǒng)的工作方式,客觀地反映現(xiàn)實(shí)世界的實(shí)際
6、情況。客觀地反映現(xiàn)實(shí)世界的實(shí)際情況。(2)(2)抽象出當(dāng)前系統(tǒng)的邏輯模型抽象出當(dāng)前系統(tǒng)的邏輯模型 就是在理解當(dāng)前系統(tǒng)就是在理解當(dāng)前系統(tǒng)“怎么做怎么做”的基礎(chǔ)上,抽取出的基礎(chǔ)上,抽取出“做什么做什么”的本質(zhì),從當(dāng)前系統(tǒng)的具體模型抽象出當(dāng)前系的本質(zhì),從當(dāng)前系統(tǒng)的具體模型抽象出當(dāng)前系統(tǒng)的邏輯模型。統(tǒng)的邏輯模型。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計(3)(3)建立目標(biāo)系統(tǒng)的邏輯模型建立目標(biāo)系統(tǒng)的邏輯模型 所謂目標(biāo)系統(tǒng)是指將要開發(fā)的由計算機(jī)處理的系統(tǒng)。方所謂目標(biāo)系統(tǒng)是指將要開發(fā)的由計算機(jī)處理的系統(tǒng)。方法如下:法如下: 在數(shù)據(jù)流圖上把目標(biāo)系統(tǒng)與當(dāng)前系統(tǒng)在邏輯上不同的部在數(shù)據(jù)流圖上把目標(biāo)系統(tǒng)與當(dāng)前系統(tǒng)
7、在邏輯上不同的部分找出來,這部分就是要改變的部分。將要改變部分抽象為分找出來,這部分就是要改變的部分。將要改變部分抽象為一個加工,再進(jìn)行逐步分解,最后就可獲得目標(biāo)系統(tǒng)的邏輯一個加工,再進(jìn)行逐步分解,最后就可獲得目標(biāo)系統(tǒng)的邏輯模型。模型。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計1. 1. 數(shù)據(jù)流圖數(shù)據(jù)流圖 數(shù)據(jù)流是數(shù)據(jù)在系統(tǒng)內(nèi)的傳輸途徑,數(shù)據(jù)流圖從數(shù)據(jù)數(shù)據(jù)流是數(shù)據(jù)在系統(tǒng)內(nèi)的傳輸途徑,數(shù)據(jù)流圖從數(shù)據(jù)傳遞和加工的角度,以圖形的方式刻畫數(shù)據(jù)流從輸入到輸傳遞和加工的角度,以圖形的方式刻畫數(shù)據(jù)流從輸入到輸出的變換過程。出的變換過程。 數(shù)據(jù)流圖是結(jié)構(gòu)化系統(tǒng)分析的主要工具,它去掉了具數(shù)據(jù)流圖是結(jié)構(gòu)化系統(tǒng)分析
8、的主要工具,它去掉了具體的組織機(jī)構(gòu)、工作場所、物質(zhì)流等,僅反映信息和數(shù)據(jù)體的組織機(jī)構(gòu)、工作場所、物質(zhì)流等,僅反映信息和數(shù)據(jù)存儲、流動、使用以及加工的情況。存儲、流動、使用以及加工的情況。 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 數(shù)據(jù)流圖的基本元素數(shù)據(jù)流圖的基本元素 包括數(shù)據(jù)流、加工、數(shù)據(jù)存取文件、輸入數(shù)據(jù)的源點(diǎn)和輸包括數(shù)據(jù)流、加工、數(shù)據(jù)存取文件、輸入數(shù)據(jù)的源點(diǎn)和輸出數(shù)據(jù)的匯點(diǎn)出數(shù)據(jù)的匯點(diǎn)4類。常采用如圖類。常采用如圖2-1所示的圖形符號:所示的圖形符號:圖2-1 數(shù)據(jù)流圖基本圖形符號2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 繪制數(shù)據(jù)流圖時,應(yīng)先找出系統(tǒng)的數(shù)據(jù)源點(diǎn)與匯點(diǎn)及繪制數(shù)據(jù)流圖時,應(yīng)
9、先找出系統(tǒng)的數(shù)據(jù)源點(diǎn)與匯點(diǎn)及對應(yīng)的輸入數(shù)據(jù)流與輸出數(shù)據(jù)流,然后從輸入數(shù)據(jù)流對應(yīng)的輸入數(shù)據(jù)流與輸出數(shù)據(jù)流,然后從輸入數(shù)據(jù)流(即系即系統(tǒng)的源點(diǎn)統(tǒng)的源點(diǎn))出發(fā),按照系統(tǒng)的邏輯需要,逐步畫出系列邏輯出發(fā),按照系統(tǒng)的邏輯需要,逐步畫出系列邏輯加工,直到所需的輸出數(shù)據(jù)流加工,直到所需的輸出數(shù)據(jù)流(即系統(tǒng)的匯點(diǎn)即系統(tǒng)的匯點(diǎn))。 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 數(shù)據(jù)流在傳遞過程中,需要一些加工處理。常見的數(shù)據(jù)流在傳遞過程中,需要一些加工處理。常見的加工關(guān)系及對應(yīng)的圖形符號如圖加工關(guān)系及對應(yīng)的圖形符號如圖2-2所示。所示。 圖2-2 數(shù)據(jù)流圖加工關(guān)系2.1面向過程分析與設(shè)計面向過程分析與設(shè)計數(shù)據(jù)流圖
10、應(yīng)用舉例:數(shù)據(jù)流圖應(yīng)用舉例:取款單信息付款儲戶核查登錄賬卡存折存折信息取款信息 銀行取款過程的數(shù)據(jù)流圖反饋信息付款信息可取款信息2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 分層數(shù)據(jù)流圖分層數(shù)據(jù)流圖 較復(fù)雜的實(shí)際問題中,僅用一個數(shù)據(jù)流圖很難表達(dá)數(shù)較復(fù)雜的實(shí)際問題中,僅用一個數(shù)據(jù)流圖很難表達(dá)數(shù)據(jù)處理過程和數(shù)據(jù)加工情況,需要采用據(jù)處理過程和數(shù)據(jù)加工情況,需要采用“先全局后局部,先全局后局部,先整體后細(xì)節(jié),先抽象后具體先整體后細(xì)節(jié),先抽象后具體”的逐步求精原則,按照問的逐步求精原則,按照問題的層次結(jié)構(gòu)逐步分解。題的層次結(jié)構(gòu)逐步分解。 首先確定頂層數(shù)據(jù)流圖,把整個數(shù)據(jù)處理過程抽象為首先確定頂層數(shù)據(jù)流圖,
11、把整個數(shù)據(jù)處理過程抽象為一個加工,它的輸人數(shù)據(jù)和輸出數(shù)據(jù)實(shí)際上反映了系統(tǒng)與一個加工,它的輸人數(shù)據(jù)和輸出數(shù)據(jù)實(shí)際上反映了系統(tǒng)與外界環(huán)境的接口,這就是頂層數(shù)據(jù)流圖。外界環(huán)境的接口,這就是頂層數(shù)據(jù)流圖。 然后在上一層數(shù)據(jù)流圖的基礎(chǔ)上進(jìn)一步細(xì)化,直到數(shù)然后在上一層數(shù)據(jù)流圖的基礎(chǔ)上進(jìn)一步細(xì)化,直到數(shù)據(jù)流圖的加工不能再分解為止。據(jù)流圖的加工不能再分解為止。 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 畫數(shù)據(jù)流圖的步驟和原則畫數(shù)據(jù)流圖的步驟和原則 畫數(shù)據(jù)流圖的基本步驟是畫數(shù)據(jù)流圖的基本步驟是自外向內(nèi),自頂向下,逐層細(xì)自外向內(nèi),自頂向下,逐層細(xì)化,完善求精化,完善求
12、精,并且需要遵循以下基本原則:,并且需要遵循以下基本原則:n頂層數(shù)據(jù)流圖上的數(shù)據(jù)流必須封閉在外部實(shí)體之間。頂層數(shù)據(jù)流圖上的數(shù)據(jù)流必須封閉在外部實(shí)體之間。n每個加工至少有一個輸入數(shù)據(jù)流和一個輸出數(shù)據(jù)流。每個加工至少有一個輸入數(shù)據(jù)流和一個輸出數(shù)據(jù)流。n在數(shù)據(jù)流圖中,需按層給加工進(jìn)行編號。編號應(yīng)表明該加工在數(shù)據(jù)流圖中,需按層給加工進(jìn)行編號。編號應(yīng)表明該加工處在哪一層,以及與上下層的父圖與子圖的對應(yīng)關(guān)系。處在哪一層,以及與上下層的父圖與子圖的對應(yīng)關(guān)系。n任何一個數(shù)據(jù)流子圖必須與它上一層的一個加工對應(yīng),兩者任何一個數(shù)據(jù)流子圖必須與它上一層的一個加工對應(yīng),兩者的輸入數(shù)據(jù)流和輸出數(shù)據(jù)流必須一致,即父圖與子圖
13、的平衡。的輸入數(shù)據(jù)流和輸出數(shù)據(jù)流必須一致,即父圖與子圖的平衡。n圖上每個元素都必須有名字,加工的名字應(yīng)當(dāng)表明做什么事圖上每個元素都必須有名字,加工的名字應(yīng)當(dāng)表明做什么事情。情。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 數(shù)據(jù)流圖畫法舉例:數(shù)據(jù)流圖畫法舉例:(培訓(xùn)中心管理系統(tǒng)數(shù)據(jù)流圖)培訓(xùn)中心管理系統(tǒng)數(shù)據(jù)流圖)2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計2. 2. 數(shù)據(jù)字典數(shù)據(jù)字典 數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合。數(shù)據(jù)字典是各類數(shù)據(jù)描述的集合。 它通過對數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)
14、的定義來描述數(shù)據(jù)它通過對數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)的定義來描述數(shù)據(jù)流、數(shù)據(jù)存儲的邏輯內(nèi)容。流、數(shù)據(jù)存儲的邏輯內(nèi)容。 通常包括數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存通常包括數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲、處理過程和外部實(shí)體等儲、處理過程和外部實(shí)體等6個部分。個部分。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 數(shù)據(jù)項(xiàng)數(shù)據(jù)項(xiàng) 數(shù)據(jù)項(xiàng)是數(shù)據(jù)的最小組成單位,若干個數(shù)據(jù)項(xiàng)可數(shù)據(jù)項(xiàng)是數(shù)據(jù)的最小組成單位,若干個數(shù)據(jù)項(xiàng)可以組成一個數(shù)據(jù)結(jié)構(gòu)。對數(shù)據(jù)項(xiàng)的描述通常包括以下以組成一個數(shù)據(jù)結(jié)構(gòu)。對數(shù)據(jù)項(xiàng)的描述通常包括以下內(nèi)容。內(nèi)容。 數(shù)據(jù)項(xiàng)描述數(shù)據(jù)項(xiàng)描述數(shù)據(jù)項(xiàng)名,數(shù)據(jù)項(xiàng)含義說明,別名,數(shù)據(jù)項(xiàng)名,數(shù)據(jù)項(xiàng)含義說明,別名,數(shù)據(jù)類型,長度,
15、取值范圍,取值含義,與其他數(shù)據(jù)數(shù)據(jù)類型,長度,取值范圍,取值含義,與其他數(shù)據(jù)項(xiàng)的邏輯關(guān)系項(xiàng)的邏輯關(guān)系2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu) 數(shù)據(jù)結(jié)構(gòu)反映了數(shù)據(jù)之間的組合關(guān)系。一個數(shù)據(jù)數(shù)據(jù)結(jié)構(gòu)反映了數(shù)據(jù)之間的組合關(guān)系。一個數(shù)據(jù)結(jié)構(gòu)可以由若干個數(shù)據(jù)項(xiàng)組成,也可以由若干個數(shù)據(jù)結(jié)構(gòu)可以由若干個數(shù)據(jù)項(xiàng)組成,也可以由若干個數(shù)據(jù)結(jié)構(gòu)組成(嵌套數(shù)據(jù)結(jié)構(gòu)),或由若干個數(shù)據(jù)項(xiàng)和數(shù)結(jié)構(gòu)組成(嵌套數(shù)據(jù)結(jié)構(gòu)),或由若干個數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)混合組成。對數(shù)據(jù)結(jié)構(gòu)的描述通常包括以下內(nèi)據(jù)結(jié)構(gòu)混合組成。對數(shù)據(jù)結(jié)構(gòu)的描述通常包括以下內(nèi)容。容。 數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)名,含義說明,組成:數(shù)據(jù)結(jié)構(gòu)名,含義說明,組
16、成:數(shù)數(shù)據(jù)項(xiàng)或數(shù)據(jù)結(jié)構(gòu)據(jù)項(xiàng)或數(shù)據(jù)結(jié)構(gòu)2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 數(shù)據(jù)流數(shù)據(jù)流 數(shù)據(jù)流是數(shù)據(jù)結(jié)構(gòu)在系統(tǒng)內(nèi)的傳輸路徑。對數(shù)據(jù)數(shù)據(jù)流是數(shù)據(jù)結(jié)構(gòu)在系統(tǒng)內(nèi)的傳輸路徑。對數(shù)據(jù)流的描述通常包括以下內(nèi)容。流的描述通常包括以下內(nèi)容。 數(shù)據(jù)流描述數(shù)據(jù)流描述數(shù)據(jù)流名,說明,數(shù)據(jù)流來源,數(shù)數(shù)據(jù)流名,說明,數(shù)據(jù)流來源,數(shù)據(jù)流去向,組成:據(jù)流去向,組成:數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu),平均流量,高峰期流,平均流量,高峰期流量量 數(shù)據(jù)存儲數(shù)據(jù)存儲 數(shù)據(jù)存儲是數(shù)據(jù)結(jié)構(gòu)停留或保存的地方。數(shù)據(jù)存儲數(shù)據(jù)存儲是數(shù)據(jù)結(jié)構(gòu)停留或保存的地方。數(shù)據(jù)存儲的描述通常包括以下內(nèi)容。的描述通常包括以下內(nèi)容。 數(shù)據(jù)存儲數(shù)據(jù)存儲數(shù)據(jù)存儲名,說明,編號
17、,流入的數(shù)數(shù)據(jù)存儲名,說明,編號,流入的數(shù)據(jù)流,流出的數(shù)據(jù)流,組成:據(jù)流,流出的數(shù)據(jù)流,組成:數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)量,數(shù)據(jù)量,存取方式存取方式 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 處理過程處理過程 處理過程應(yīng)描述處理邏輯的功能,詳細(xì)地描述其輸入輸處理過程應(yīng)描述處理邏輯的功能,詳細(xì)地描述其輸入輸出的數(shù)據(jù)流以及這些數(shù)據(jù)的基本轉(zhuǎn)換路徑和策略說明性信息,出的數(shù)據(jù)流以及這些數(shù)據(jù)的基本轉(zhuǎn)換路徑和策略說明性信息,對處理過程的描述通常包括以下內(nèi)容。對處理過程的描述通常包括以下內(nèi)容。 處理過程處理過程處理過程名,編號,說明,輸入:處理過程名,編號,說明,輸入:數(shù)據(jù)數(shù)據(jù)流流,輸出:,輸出:數(shù)據(jù)流數(shù)據(jù)流,
18、處理:,處理:簡要說明簡要說明 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 外部實(shí)體外部實(shí)體 外部實(shí)體是系統(tǒng)的外部實(shí)體是系統(tǒng)的“人人-機(jī)機(jī)”界面,系統(tǒng)的數(shù)據(jù)流由界面,系統(tǒng)的數(shù)據(jù)流由外部實(shí)體流入,經(jīng)過加工處理之后,向外部實(shí)體流出。外外部實(shí)體流入,經(jīng)過加工處理之后,向外部實(shí)體流出。外部實(shí)體的描述如下。部實(shí)體的描述如下。 外部實(shí)體外部實(shí)體=外部實(shí)體的名稱,編號,輸入:外部實(shí)體的名稱,編號,輸入:數(shù)據(jù)數(shù)據(jù)流流,輸出:,輸出:數(shù)據(jù)流數(shù)據(jù)流2.1面向過程分析與設(shè)計面向過程分析與設(shè)計3. 3. 實(shí)例實(shí)例-學(xué)籍管理分析學(xué)籍管理分析 學(xué)籍管理涉及的內(nèi)容比較多,業(yè)務(wù)邏輯也較復(fù)雜。在不學(xué)籍管理涉及的內(nèi)容比較多,業(yè)務(wù)
19、邏輯也較復(fù)雜。在不失一般性的基礎(chǔ)上,本實(shí)例簡化了學(xué)籍管理的業(yè)務(wù)邏輯失一般性的基礎(chǔ)上,本實(shí)例簡化了學(xué)籍管理的業(yè)務(wù)邏輯. (1)需求描述)需求描述 工作內(nèi)容:工作內(nèi)容: 建立學(xué)生的學(xué)籍建立學(xué)生的學(xué)籍 匯總每學(xué)期學(xué)生的學(xué)分匯總每學(xué)期學(xué)生的學(xué)分 學(xué)生每門課程的的考試成績學(xué)生每門課程的的考試成績 學(xué)生的平均成績學(xué)生的平均成績 匯總各分?jǐn)?shù)段的人數(shù)匯總各分?jǐn)?shù)段的人數(shù) 各種查詢各種查詢2.1面向過程分析與設(shè)計面向過程分析與設(shè)計涉及人員:涉及人員:管理人員管理人員班主任班主任任課教師任課教師學(xué)生學(xué)生 系統(tǒng)初步:系統(tǒng)初步:n 系統(tǒng)性質(zhì):系統(tǒng)性質(zhì):mis軟件。軟件。n 系統(tǒng)使用者:管理人員、班主任、教師、學(xué)生等。系
20、統(tǒng)使用者:管理人員、班主任、教師、學(xué)生等。n 系統(tǒng)運(yùn)行環(huán)境:網(wǎng)絡(luò)運(yùn)行。系統(tǒng)運(yùn)行環(huán)境:網(wǎng)絡(luò)運(yùn)行。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 表表2-1 學(xué)籍管理主要功能表學(xué)籍管理主要功能表功能名稱功能名稱 功能說明功能說明 學(xué)生管理學(xué)生管理 登記學(xué)生的基本信息(姓名、性別、班級等),并提供查詢功能。登記學(xué)生的基本信息(姓名、性別、班級等),并提供查詢功能。 課程管理課程管理 登記課程基本情況(課程名稱、開課學(xué)期、課程類型、學(xué)分等),登記課程基本情況(課程名稱、開課學(xué)期、課程類型、學(xué)分等),提供查詢提供查詢 教師管理教師管理 登記教師基本情況(姓名、年齡、性別、學(xué)歷等),提供查詢統(tǒng)登記教師基本情況
21、(姓名、年齡、性別、學(xué)歷等),提供查詢統(tǒng)計計 成績管理成績管理 登記學(xué)生各門課程的考試成績、提供查詢、統(tǒng)計功能登記學(xué)生各門課程的考試成績、提供查詢、統(tǒng)計功能 授課管理授課管理 登記教師講授課程、授課地點(diǎn)、授課學(xué)期,提供查詢功能登記教師講授課程、授課地點(diǎn)、授課學(xué)期,提供查詢功能 編碼維護(hù)編碼維護(hù) 維護(hù)系統(tǒng)中使用的編碼(如職稱編碼、學(xué)院編碼、班級編碼等)維護(hù)系統(tǒng)中使用的編碼(如職稱編碼、學(xué)院編碼、班級編碼等) 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計(2)分析設(shè)計頂)分析設(shè)計頂層數(shù)據(jù)流圖層數(shù)據(jù)流圖 管理人員、管理人員、教師、班主任、教師、班主任、學(xué)生等是數(shù)據(jù)學(xué)生等是數(shù)據(jù)輸入的源點(diǎn)和輸入的源點(diǎn)和數(shù)
22、據(jù)輸出的匯數(shù)據(jù)輸出的匯點(diǎn)。點(diǎn)。 學(xué)生基本學(xué)生基本信息、教師信信息、教師信息、課程信息、息、課程信息、教學(xué)計劃、考教學(xué)計劃、考試成績等是數(shù)試成績等是數(shù)據(jù)存儲文件。據(jù)存儲文件。 圖2-4 學(xué)籍管理頂層數(shù)據(jù)流圖2.1面向過程分析與設(shè)計面向過程分析與設(shè)計(3)逐步細(xì)化數(shù))逐步細(xì)化數(shù)據(jù)流圖據(jù)流圖 根據(jù)表根據(jù)表2-1中中列出的學(xué)籍管列出的學(xué)籍管理的主要功能,理的主要功能,將學(xué)籍管理加將學(xué)籍管理加工細(xì)化分解為工細(xì)化分解為學(xué)生管理、課學(xué)生管理、課程管理、教師程管理、教師管理、成績管管理、成績管理、授課管理理、授課管理和編碼維護(hù)等和編碼維護(hù)等子加工。子加工。圖2-5 學(xué)籍管理1層數(shù)據(jù)流圖2.1面向過程分析與設(shè)計
23、面向過程分析與設(shè)計 根據(jù)實(shí)際根據(jù)實(shí)際業(yè)務(wù),分析各處業(yè)務(wù),分析各處理流程,直到數(shù)理流程,直到數(shù)據(jù)流圖中出現(xiàn)的據(jù)流圖中出現(xiàn)的每個加工處理都每個加工處理都不能再分解為止。不能再分解為止。 成績管理管成績管理管理可以繼續(xù)細(xì)化理可以繼續(xù)細(xì)化為如圖為如圖2-6所示所示的成績管理數(shù)據(jù)的成績管理數(shù)據(jù)流圖。流圖。圖2-6 成績管理數(shù)據(jù)流圖2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 圖圖2-62-6所示的成所示的成績錄入和成績查詢都績錄入和成績查詢都可以繼續(xù)分解。例如:可以繼續(xù)分解。例如:成績錄入加工可以繼成績錄入加工可以繼續(xù)細(xì)化為增加成績、續(xù)細(xì)化為增加成績、修改成績、刪除成績修改成績、刪除成績等子加工,為了方便
24、等子加工,為了方便成績錄入,還需要班成績錄入,還需要班級學(xué)生名單查詢子過級學(xué)生名單查詢子過程,因此圖程,因此圖2-62-6所示所示的成績管理的的成績管理的2 2層數(shù)層數(shù)據(jù)流圖的成績錄入加據(jù)流圖的成績錄入加工可以繼續(xù)細(xì)化分解工可以繼續(xù)細(xì)化分解為圖為圖2-72-7所示成績錄所示成績錄入的入的3 3層數(shù)據(jù)流圖。層數(shù)據(jù)流圖。 圖2-7 細(xì)化后的成績錄入數(shù)據(jù)流圖2.1面向過程分析與設(shè)計面向過程分析與設(shè)計(4)制定整理數(shù)據(jù)字典)制定整理數(shù)據(jù)字典 數(shù)據(jù)字典是系統(tǒng)中各類數(shù)據(jù)描述的集合。通常包括數(shù)據(jù)字典是系統(tǒng)中各類數(shù)據(jù)描述的集合。通常包括數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流數(shù)據(jù)流、數(shù)據(jù)存儲、數(shù)據(jù)存儲、處理
25、過程和、處理過程和外部實(shí)體等外部實(shí)體等6個部分。個部分。 數(shù)據(jù)項(xiàng)的描述數(shù)據(jù)項(xiàng)的描述 以圖以圖2-7中的中的“學(xué)號學(xué)號”數(shù)據(jù)項(xiàng)為例說明:數(shù)據(jù)項(xiàng)為例說明: 數(shù)據(jù)項(xiàng)名稱:學(xué)號數(shù)據(jù)項(xiàng)名稱:學(xué)號 含義:唯一標(biāo)識每個學(xué)生含義:唯一標(biāo)識每個學(xué)生 別名:別名: 類型:類型: 字符型字符型 長度:長度: 5 取值范圍:取值范圍:00000至至99999 取值含義:前取值含義:前2位標(biāo)別該學(xué)生所在年級,后位標(biāo)別該學(xué)生所在年級,后3位為位為順序編號。順序編號。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 數(shù)據(jù)流的描述數(shù)據(jù)流的描述 以以 “學(xué)生名單學(xué)生名單”數(shù)據(jù)流為例。數(shù)據(jù)流為例。 數(shù)據(jù)流名稱:學(xué)生名單數(shù)據(jù)流名稱:學(xué)生
26、名單 說明:某班全部學(xué)生的名單說明:某班全部學(xué)生的名單 數(shù)據(jù)流來源:班級學(xué)生名單查詢數(shù)據(jù)流來源:班級學(xué)生名單查詢 數(shù)據(jù)流去向:班級學(xué)生名單顯示數(shù)據(jù)流去向:班級學(xué)生名單顯示 組成(包含的數(shù)據(jù)項(xiàng)):班級、學(xué)號、姓名組成(包含的數(shù)據(jù)項(xiàng)):班級、學(xué)號、姓名 平均流量:平均流量: 高峰期流量:高峰期流量:2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 數(shù)據(jù)存儲的描述數(shù)據(jù)存儲的描述 以數(shù)據(jù)存儲以數(shù)據(jù)存儲“考試成績考試成績”為例。為例。 數(shù)據(jù)存儲:考試成績數(shù)據(jù)存儲:考試成績 說明:保存學(xué)生各門課的考試成績說明:保存學(xué)生各門課的考試成績 流入數(shù)據(jù)流:新增的成績、修改后的成績流入數(shù)據(jù)流:新增的成績、修改后的成績 流
27、出數(shù)據(jù)流:原成績流出數(shù)據(jù)流:原成績 組成:學(xué)號、姓名、成績組成:學(xué)號、姓名、成績 數(shù)據(jù)量:數(shù)據(jù)量:3000(學(xué)生)(學(xué)生)*15(課程)(課程) 存取方式:隨機(jī)存取存取方式:隨機(jī)存取2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 處理過程的描述處理過程的描述以處理過程以處理過程“增加成績增加成績”為例。為例。處理過程:增加成績處理過程:增加成績說明:錄入一個或一批學(xué)生某門課程的考試成績說明:錄入一個或一批學(xué)生某門課程的考試成績輸入:添加成績要求輸入:添加成績要求輸出:新增的成績輸出:新增的成績處理:在考試成績數(shù)據(jù)存儲中增加一個或一批學(xué)生的處理:在考試成績數(shù)據(jù)存儲中增加一個或一批學(xué)生的考試成績??荚?/p>
28、成績。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計2.1.22.1.2結(jié)構(gòu)化設(shè)計結(jié)構(gòu)化設(shè)計 通常把設(shè)計工作劃分為通常把設(shè)計工作劃分為概要設(shè)計和詳細(xì)設(shè)計概要設(shè)計和詳細(xì)設(shè)計兩個階段。兩個階段。 概要設(shè)計階段的主要任務(wù)是,通過仔細(xì)分析需求規(guī)格說明,概要設(shè)計階段的主要任務(wù)是,通過仔細(xì)分析需求規(guī)格說明,對軟件進(jìn)行功能分解,從而把軟件劃分為模塊,并且設(shè)計出對軟件進(jìn)行功能分解,從而把軟件劃分為模塊,并且設(shè)計出完成預(yù)定功能的模塊結(jié)構(gòu)。完成預(yù)定功能的模塊結(jié)構(gòu)。 詳細(xì)設(shè)計階段的主要任務(wù)是,詳細(xì)地設(shè)計每個模塊,確定詳細(xì)設(shè)計階段的主要任務(wù)是,詳細(xì)地設(shè)計每個模塊,確定完成每個模塊功能所需要的算法和數(shù)據(jù)結(jié)構(gòu)。完成每個模塊功
29、能所需要的算法和數(shù)據(jù)結(jié)構(gòu)。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計結(jié)構(gòu)化設(shè)計的主要原則如下:結(jié)構(gòu)化設(shè)計的主要原則如下:n抽象抽象 就是把事物本質(zhì)的共同特性提取出來而不考慮其他就是把事物本質(zhì)的共同特性提取出來而不考慮其他細(xì)節(jié)。軟件設(shè)計中考慮模塊化解決方案時,可以定出多個細(xì)節(jié)。軟件設(shè)計中考慮模塊化解決方案時,可以定出多個抽象級別。抽象的層次從概要設(shè)計到詳細(xì)設(shè)計逐步降低。抽象級別。抽象的層次從概要設(shè)計到詳細(xì)設(shè)計逐步降低。n模塊化模塊化 模塊是指把一個待開發(fā)的軟件分解成若干小的簡單的模塊是指把一個待開發(fā)的軟件分解成若干小的簡單的部分。每個模塊可以完成一個特定的子功能,各個模塊可部分。每個模塊可以完成
30、一個特定的子功能,各個模塊可以按一定的方法組裝起來成為一個整體,從而實(shí)現(xiàn)整個系以按一定的方法組裝起來成為一個整體,從而實(shí)現(xiàn)整個系統(tǒng)的功能。統(tǒng)的功能。 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計n信息隱蔽信息隱蔽 指在一個模塊內(nèi)包含的信息(過程或數(shù)據(jù)),對于不指在一個模塊內(nèi)包含的信息(過程或數(shù)據(jù)),對于不需要這些信息的其他模塊來說是不能訪問的。需要這些信息的其他模塊來說是不能訪問的。n模塊獨(dú)立性模塊獨(dú)立性 模塊獨(dú)立性是指每個模塊只完成系統(tǒng)要求的獨(dú)立的子模塊獨(dú)立性是指每個模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其他模塊的聯(lián)系最少且接口簡單。衡量軟件功能,并且與其他模塊的聯(lián)系最少且接口簡單。衡量軟件
31、的模塊獨(dú)立性使用耦合性和內(nèi)聚性兩個定性的度量標(biāo)準(zhǔn)。的模塊獨(dú)立性使用耦合性和內(nèi)聚性兩個定性的度量標(biāo)準(zhǔn)。 2.1 結(jié)構(gòu)化開發(fā)方法結(jié)構(gòu)化開發(fā)方法 內(nèi)聚性是一個模塊內(nèi)部各個元素間彼此結(jié)合的緊密內(nèi)聚性是一個模塊內(nèi)部各個元素間彼此結(jié)合的緊密程度的度量。按照內(nèi)聚性由弱到強(qiáng)的順序可分為:程度的度量。按照內(nèi)聚性由弱到強(qiáng)的順序可分為:偶然內(nèi)偶然內(nèi)聚、邏輯內(nèi)聚、時間內(nèi)聚、過程內(nèi)聚、通信內(nèi)聚、順序內(nèi)聚、邏輯內(nèi)聚、時間內(nèi)聚、過程內(nèi)聚、通信內(nèi)聚、順序內(nèi)聚、功能內(nèi)聚聚、功能內(nèi)聚。 耦合性是模塊間互相連接緊密程度的度量。按照耦耦合性是模塊間互相連接緊密程度的度量。按照耦合性由弱到強(qiáng)的順序可分為:合性由弱到強(qiáng)的順序可分為:非直
32、接耦合、數(shù)據(jù)耦合、標(biāo)非直接耦合、數(shù)據(jù)耦合、標(biāo)記耦合、記耦合、控制耦合、外部耦合、控制耦合、外部耦合、公共耦合、公共耦合、內(nèi)容耦合內(nèi)容耦合。一。一般來說,設(shè)計軟件時應(yīng)盡量使用數(shù)據(jù)耦合,減少控制耦合,般來說,設(shè)計軟件時應(yīng)盡量使用數(shù)據(jù)耦合,減少控制耦合,限制外部環(huán)境耦合和公共耦合,杜絕內(nèi)容耦合。限制外部環(huán)境耦合和公共耦合,杜絕內(nèi)容耦合。n耦合性與內(nèi)聚性是模塊獨(dú)立性的兩個定性標(biāo)準(zhǔn),耦合與內(nèi)耦合性與內(nèi)聚性是模塊獨(dú)立性的兩個定性標(biāo)準(zhǔn),耦合與內(nèi)聚是相互關(guān)聯(lián)的。在程序結(jié)構(gòu)中,各模塊的內(nèi)聚性越強(qiáng),聚是相互關(guān)聯(lián)的。在程序結(jié)構(gòu)中,各模塊的內(nèi)聚性越強(qiáng),則耦合性越弱。一般較優(yōu)秀的軟件設(shè)計,應(yīng)盡量做到高內(nèi)則耦合性越弱。一
33、般較優(yōu)秀的軟件設(shè)計,應(yīng)盡量做到高內(nèi)聚,低耦合。聚,低耦合。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 1)1)非直接耦合非直接耦合。 如果兩個模塊之間沒有直接關(guān)系,它們之間的聯(lián)系完全是通過主模塊的控制和調(diào)用來實(shí)現(xiàn)的,這就是非直接耦合。 2)2)數(shù)據(jù)耦合。數(shù)據(jù)耦合。 如果一個模塊訪問另一個模塊時,彼此之間是通過簡單數(shù)據(jù)參數(shù)(不是控制參數(shù)、公共數(shù)據(jù)結(jié)構(gòu)或外部變量)來交換 輸入、輸出信息的,則稱這種耦合為數(shù)據(jù)耦合。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 3)3)標(biāo)記耦合。標(biāo)記耦合。 如果一組模塊通過參數(shù)表傳遞記錄信息,就是標(biāo)記耦合。這個記錄是某一數(shù)據(jù)結(jié)構(gòu)的子結(jié)構(gòu),而不是簡單變量。 4)控制耦合。
34、控制耦合。 如果一個模塊通過傳送開關(guān)、標(biāo)志、名字等控制信息,明顯地控制選擇另一模塊的功能,就是控制耦合。 5)外部耦合。外部耦合。 一組模塊都訪問同一全局簡單變量而不是同一全局?jǐn)?shù)據(jù)結(jié)構(gòu),而且不是通過參數(shù)表傳遞該全局變量的信息,則稱之為外部耦合。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 6)公共耦合。 若一組模塊都訪問同一個公共數(shù)據(jù)環(huán)境,則它們之間的耦合就稱為公共耦合。 7) 7)內(nèi)容耦合。內(nèi)容耦合。 當(dāng)一個模塊直接修改或操作另一個模塊的數(shù)據(jù),或者直接轉(zhuǎn)入另一個模塊時,就發(fā)生了內(nèi)容耦合。 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 1) 1)偶然性內(nèi)聚。偶然性內(nèi)聚。 偶然性內(nèi)聚又稱為巧合性內(nèi)聚
35、。當(dāng)模塊內(nèi)各部分之間沒有聯(lián)系,或者即使有聯(lián)系,這種聯(lián)系也很松散,則稱這種模塊為巧合內(nèi)聚模塊。 2)2)邏輯性內(nèi)聚。邏輯性內(nèi)聚。 這種模塊把幾種相關(guān)的功能組合在一起,每次被調(diào)用時,由傳送給模塊的判定參數(shù)來確定該模塊應(yīng)執(zhí)行哪一種功能。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 3)3)時間性內(nèi)聚。時間性內(nèi)聚。 如果一個模塊內(nèi)的幾個功能必須在同一時間內(nèi)執(zhí)行,但這些功能只是因?yàn)闀r間因素關(guān)聯(lián)在一起,則稱為時間性內(nèi)聚。 4) 4)過程性內(nèi)聚。過程性內(nèi)聚。 如果一個模塊內(nèi)部的處理成分是相關(guān)的,而且這些處理必須以特定的次序執(zhí)行,則稱為過程性內(nèi)聚。 5)5)通信性內(nèi)聚。通信性內(nèi)聚。 如果一個模塊內(nèi)各功能部分都使
36、用了相同的輸入數(shù)據(jù),或產(chǎn)生了相同的輸出數(shù)據(jù),則稱之為通信內(nèi)聚模塊。 6)信息性內(nèi)聚。 如果一個模塊內(nèi)完成許多功能,每個功能都有各自的入口點(diǎn),并且代碼相對獨(dú)立,但所有功能都在相同的數(shù)據(jù)結(jié)構(gòu)上完成,則該模塊具有信息性內(nèi)聚。 7) 7)功能性內(nèi)聚。功能性內(nèi)聚。 一個模塊中各個部分都是完成某一具體功能必不可少的組成部分,或者說該模塊中所有部分都是為了完成一項(xiàng)具體功能而協(xié)同工作,緊密聯(lián)系,不可分割,則稱該模塊為功能內(nèi)聚模塊。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計1. 概要設(shè)計概要設(shè)計 概要設(shè)計的基本任務(wù)是:概要設(shè)計的基本任務(wù)是: (1)設(shè)計軟件系統(tǒng)結(jié)構(gòu))設(shè)計軟件系統(tǒng)結(jié)構(gòu) 在需求分析階段,已經(jīng)把系統(tǒng)分
37、解成層次結(jié)構(gòu),而在需求分析階段,已經(jīng)把系統(tǒng)分解成層次結(jié)構(gòu),而在概要設(shè)計階段,需要進(jìn)一步分解,劃分為模塊以及模在概要設(shè)計階段,需要進(jìn)一步分解,劃分為模塊以及模塊的層次結(jié)構(gòu)。劃分的具體過程是:塊的層次結(jié)構(gòu)。劃分的具體過程是: 將一個復(fù)雜的系統(tǒng)按功能劃分成模塊;將一個復(fù)雜的系統(tǒng)按功能劃分成模塊; 確定每個模塊的功能;確定每個模塊的功能; 確定模塊之間的調(diào)用關(guān)系;確定模塊之間的調(diào)用關(guān)系; 確定模塊之間的接口,即模塊之間傳遞的信息;確定模塊之間的接口,即模塊之間傳遞的信息; 評價模塊結(jié)構(gòu)的質(zhì)量。評價模塊結(jié)構(gòu)的質(zhì)量。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計(2) 數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)設(shè)計數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)設(shè)計 數(shù)
38、據(jù)設(shè)計是實(shí)現(xiàn)需求定義和規(guī)格說明過程中提出的數(shù)數(shù)據(jù)設(shè)計是實(shí)現(xiàn)需求定義和規(guī)格說明過程中提出的數(shù)據(jù)對象的邏輯表示。據(jù)對象的邏輯表示。 數(shù)據(jù)設(shè)計的具體任務(wù)是:數(shù)據(jù)設(shè)計的具體任務(wù)是: 確定輸入、輸出文件的詳細(xì)數(shù)據(jù)結(jié)構(gòu);確定輸入、輸出文件的詳細(xì)數(shù)據(jù)結(jié)構(gòu); 結(jié)合算法設(shè)計,確定算法所必需的邏輯數(shù)據(jù)結(jié)構(gòu)及結(jié)合算法設(shè)計,確定算法所必需的邏輯數(shù)據(jù)結(jié)構(gòu)及其操作;其操作; 確定對邏輯數(shù)據(jù)結(jié)構(gòu)所必須的那些操作的程序模塊,確定對邏輯數(shù)據(jù)結(jié)構(gòu)所必須的那些操作的程序模塊,限制和確定各個數(shù)據(jù)設(shè)計決策的影響范圍;限制和確定各個數(shù)據(jù)設(shè)計決策的影響范圍; 需要與操作系統(tǒng)或調(diào)度程序接口所必需的控制表進(jìn)需要與操作系統(tǒng)或調(diào)度程序接口所必需的
39、控制表進(jìn)行數(shù)據(jù)交換時,確定其詳細(xì)的數(shù)據(jù)結(jié)構(gòu)和使用規(guī)則;行數(shù)據(jù)交換時,確定其詳細(xì)的數(shù)據(jù)結(jié)構(gòu)和使用規(guī)則; 數(shù)據(jù)的保護(hù)性設(shè)計;數(shù)據(jù)的保護(hù)性設(shè)計; 防衛(wèi)性、一致性、冗余性設(shè)計。防衛(wèi)性、一致性、冗余性設(shè)計。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計(3)編寫概要設(shè)計文檔。)編寫概要設(shè)計文檔。 概要設(shè)計說明書概要設(shè)計說明書 數(shù)據(jù)庫設(shè)計說明書數(shù)據(jù)庫設(shè)計說明書 集成測試計劃等。集成測試計劃等。(4)概要設(shè)計文檔評審。)概要設(shè)計文檔評審。 對設(shè)計部分是否完整地實(shí)現(xiàn)了需求中規(guī)定的功能、性對設(shè)計部分是否完整地實(shí)現(xiàn)了需求中規(guī)定的功能、性能等要求,設(shè)計方案的可行性,關(guān)鍵的處理及內(nèi)外部接口能等要求,設(shè)計方案的可行性,關(guān)鍵
40、的處理及內(nèi)外部接口定義正確性、有效性,各部分之間的一致性等都要進(jìn)行評定義正確性、有效性,各部分之間的一致性等都要進(jìn)行評審。審。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 概要設(shè)計的設(shè)計過程為:概要設(shè)計的設(shè)計過程為: (1)(1)分析數(shù)據(jù)流圖,弄清楚數(shù)據(jù)流加工的過程;分析數(shù)據(jù)流圖,弄清楚數(shù)據(jù)流加工的過程; (2)(2)根據(jù)數(shù)據(jù)流圖確定數(shù)據(jù)流圖的類型;根據(jù)數(shù)據(jù)流圖確定數(shù)據(jù)流圖的類型; (3)(3)從數(shù)據(jù)流圖導(dǎo)出系統(tǒng)的初始軟件結(jié)構(gòu)圖;從數(shù)據(jù)流圖導(dǎo)出系統(tǒng)的初始軟件結(jié)構(gòu)圖; (4)(4)改進(jìn)軟件結(jié)構(gòu)圖,直到符合要求為止;改進(jìn)軟件結(jié)構(gòu)圖,直到符合要求為止; (5)(5)復(fù)查。復(fù)查。2.1面向過程分析與設(shè)計
41、面向過程分析與設(shè)計n數(shù)據(jù)流圖的類型數(shù)據(jù)流圖的類型 轉(zhuǎn)換處理型轉(zhuǎn)換處理型 是對輸入數(shù)據(jù)流進(jìn)行轉(zhuǎn)換而得到輸出數(shù)據(jù)流的處理。是對輸入數(shù)據(jù)流進(jìn)行轉(zhuǎn)換而得到輸出數(shù)據(jù)流的處理。 處理過程由輸入數(shù)據(jù)流、變換數(shù)據(jù)流和輸出數(shù)據(jù)流處理過程由輸入數(shù)據(jù)流、變換數(shù)據(jù)流和輸出數(shù)據(jù)流3 3步組步組成。成。輸入加工輸入信息輸入信息轉(zhuǎn)換加工內(nèi)部輸入內(nèi)部輸入輸入加工內(nèi)部結(jié)果內(nèi)部結(jié)果輸出信息輸出信息2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 事務(wù)處理型事務(wù)處理型 是對輸入數(shù)據(jù)流進(jìn)行某種加工后,按加工的結(jié)果選擇一是對輸入數(shù)據(jù)流進(jìn)行某種加工后,按加工的結(jié)果選擇一個輸出數(shù)據(jù)流繼續(xù)執(zhí)行的處理。個輸出數(shù)據(jù)流繼續(xù)執(zhí)行的處理。 事務(wù)處理中,輸入
42、數(shù)據(jù)流稱為事務(wù)流,加工稱為事務(wù)中事務(wù)處理中,輸入數(shù)據(jù)流稱為事務(wù)流,加工稱為事務(wù)中心,若干平行數(shù)據(jù)流稱為事務(wù)路徑。心,若干平行數(shù)據(jù)流稱為事務(wù)路徑。事務(wù)中心事務(wù)流事務(wù)流p2事務(wù)路徑事務(wù)路徑2p1事務(wù)路徑事務(wù)路徑1p3事務(wù)路徑事務(wù)路徑32.1面向過程分析與設(shè)計面向過程分析與設(shè)計 常用的軟件結(jié)構(gòu)設(shè)計工具是結(jié)構(gòu)圖(常用的軟件結(jié)構(gòu)設(shè)計工具是結(jié)構(gòu)圖(sc,structurechart),也稱程序結(jié)構(gòu)圖。使用結(jié)構(gòu)圖描述),也稱程序結(jié)構(gòu)圖。使用結(jié)構(gòu)圖描述軟件系統(tǒng)的層次和分塊結(jié)構(gòu)關(guān)系,它反映了整個系統(tǒng)的功軟件系統(tǒng)的層次和分塊結(jié)構(gòu)關(guān)系,它反映了整個系統(tǒng)的功能實(shí)現(xiàn)以及模塊與模塊之間的聯(lián)系與通訊。能實(shí)現(xiàn)以及模塊與模塊之
43、間的聯(lián)系與通訊。 表示模塊,框內(nèi)用文字標(biāo)記模塊名。表示模塊,框內(nèi)用文字標(biāo)記模塊名。箭頭表示模塊間的調(diào)用關(guān)系;邊上的小箭頭表示調(diào)用時模塊箭頭表示模塊間的調(diào)用關(guān)系;邊上的小箭頭表示調(diào)用時模塊間傳送的數(shù)據(jù),小箭頭的方向表示傳送信息的方向。間傳送的數(shù)據(jù),小箭頭的方向表示傳送信息的方向。表示上屬模塊有條件地調(diào)用下屬模塊。表示上屬模塊有條件地調(diào)用下屬模塊。表示上屬模塊重復(fù)調(diào)用下屬模塊。表示上屬模塊重復(fù)調(diào)用下屬模塊。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計n轉(zhuǎn)換分析轉(zhuǎn)換分析 使用轉(zhuǎn)換分析技術(shù)可以把轉(zhuǎn)換型處理數(shù)據(jù)流圖轉(zhuǎn)換為標(biāo)準(zhǔn)使用轉(zhuǎn)換分析技術(shù)可以把轉(zhuǎn)換型處理數(shù)據(jù)流
44、圖轉(zhuǎn)換為標(biāo)準(zhǔn)結(jié)構(gòu)。(有了標(biāo)準(zhǔn)結(jié)構(gòu)就可根據(jù)軟件結(jié)構(gòu)的度量準(zhǔn)則、模塊化結(jié)構(gòu)。(有了標(biāo)準(zhǔn)結(jié)構(gòu)就可根據(jù)軟件結(jié)構(gòu)的度量準(zhǔn)則、模塊化準(zhǔn)則、模塊獨(dú)立性準(zhǔn)則完善軟件結(jié)構(gòu),從而得到結(jié)構(gòu)良好的最準(zhǔn)則、模塊獨(dú)立性準(zhǔn)則完善軟件結(jié)構(gòu),從而得到結(jié)構(gòu)良好的最終結(jié)構(gòu)圖)。終結(jié)構(gòu)圖)。 轉(zhuǎn)換分析步驟為:確定數(shù)據(jù)流圖的類型;確定輸入流、轉(zhuǎn)轉(zhuǎn)換分析步驟為:確定數(shù)據(jù)流圖的類型;確定輸入流、轉(zhuǎn)換流、輸出流的流界;進(jìn)行一級分解,設(shè)計上層模塊;進(jìn)行二換流、輸出流的流界;進(jìn)行一級分解,設(shè)計上層模塊;進(jìn)行二級分解,設(shè)計中下層模塊;進(jìn)一步細(xì)化。級分解,設(shè)計中下層模塊;進(jìn)一步細(xì)化。 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 (1 1)確定數(shù)據(jù)流
45、圖的類型)確定數(shù)據(jù)流圖的類型 (2 2)確立流界)確立流界 主要確定輸入流和輸出流的邊界,獨(dú)立出中心流。主要確定輸入流和輸出流的邊界,獨(dú)立出中心流。 找出輸入流的終點(diǎn)找出輸入流的終點(diǎn) 找出輸出流的起點(diǎn)找出輸出流的起點(diǎn) 找出中心加工找出中心加工 4號加工1號加工a2號加工b中心加工c3號加工def輸入輸入輸出輸出轉(zhuǎn)換流轉(zhuǎn)換流2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 (3)(3)進(jìn)行一級分解,設(shè)計上層模塊。進(jìn)行一級分解,設(shè)計上層模塊。 在中心加工位置設(shè)計一個主模塊,命名為在中心加工位置設(shè)計一個主模塊,命名為m m,其功能是控制,其功能是控制整個軟件結(jié)構(gòu),完成系統(tǒng)所要做的各項(xiàng)工作,整個軟件結(jié)構(gòu),完
46、成系統(tǒng)所要做的各項(xiàng)工作, 為輸人流設(shè)計一個輸入控制模塊,功能是為主模塊提供輸入為輸人流設(shè)計一個輸入控制模塊,功能是為主模塊提供輸入信息。信息。 為輸出流設(shè)計一個輸出控制模塊為輸出流設(shè)計一個輸出控制模塊coco,功能是為主模塊提供數(shù),功能是為主模塊提供數(shù)據(jù)輸出。據(jù)輸出。 為中心設(shè)計一個轉(zhuǎn)換控制模塊為中心設(shè)計一個轉(zhuǎn)換控制模塊ctct,功能是控制所有內(nèi)部數(shù)據(jù),功能是控制所有內(nèi)部數(shù)據(jù)的操作。的操作。mctcicoccdd2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 (4)(4)進(jìn)行二級分解,設(shè)計中下層模塊。進(jìn)行二級分解,設(shè)計中下層模塊。 自頂向下,逐步細(xì)化,為第一自頂向下,逐步細(xì)化,為第一層的每一個輸入
47、模塊、輸出模塊、層的每一個輸入模塊、輸出模塊、轉(zhuǎn)換模塊設(shè)計從屬模塊轉(zhuǎn)換模塊設(shè)計從屬模塊. . 為輸入流加工設(shè)計一個輸入模為輸入流加工設(shè)計一個輸入模塊,向上屬模塊提供輸入信息,而塊,向上屬模塊提供輸入信息,而這個模塊又需要兩個下屬模塊,一這個模塊又需要兩個下屬模塊,一個為此模塊輸入信息,另一個將接個為此模塊輸入信息,另一個將接收的信息轉(zhuǎn)換為上屬模塊所需的信收的信息轉(zhuǎn)換為上屬模塊所需的信息。如果輸入模塊還有輸入模塊時,息。如果輸入模塊還有輸入模塊時,又要重復(fù)上屬過程,若輸入模塊是又要重復(fù)上屬過程,若輸入模塊是物理輸入端時,則細(xì)化工作停止。物理輸入端時,則細(xì)化工作停止。 cic取bb轉(zhuǎn)換bbca取a
48、轉(zhuǎn)化aab2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 為輸出流加工設(shè)計為輸出流加工設(shè)計一個輸出模塊,接收中一個輸出模塊,接收中心加工的輸出信息,而心加工的輸出信息,而這個模塊又需要兩個下這個模塊又需要兩個下屬模塊,一個將接收的屬模塊,一個將接收的信息轉(zhuǎn)換為輸出的形式,信息轉(zhuǎn)換為輸出的形式,另一個將它們輸出。如另一個將它們輸出。如果輸出模塊還有輸出模果輸出模塊還有輸出模塊時,又要重復(fù)上屬過塊時,又要重復(fù)上屬過程,若輸出模塊是物理程,若輸出模塊是物理輸出端時,則細(xì)化工作輸出端時,則細(xì)化工作停止。停止。cod轉(zhuǎn)換dd送eee轉(zhuǎn)換e送fff2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 為中心加工為中心加
49、工設(shè)計轉(zhuǎn)換模塊。設(shè)計轉(zhuǎn)換模塊。 (5)(5)進(jìn)一步細(xì)化進(jìn)一步細(xì)化 對上述采用對上述采用轉(zhuǎn)換分解技術(shù)方轉(zhuǎn)換分解技術(shù)方法得到的結(jié)構(gòu)圖法得到的結(jié)構(gòu)圖按照設(shè)計標(biāo)準(zhǔn)進(jìn)按照設(shè)計標(biāo)準(zhǔn)進(jìn)一步細(xì)化。一步細(xì)化。ct處理ccdcd2.1面向過程分析與設(shè)計面向過程分析與設(shè)計n事務(wù)分析事務(wù)分析 (1 1)確定數(shù)據(jù)流圖的類型)確定數(shù)據(jù)流圖的類型 (2 2)確立流界)確立流界 從數(shù)據(jù)流圖中找出事務(wù)中心從數(shù)據(jù)流圖中找出事務(wù)中心 確定事務(wù)流確定事務(wù)流 確定事務(wù)路徑確定事務(wù)路徑 1事務(wù)流事務(wù)流p2p1p3事務(wù)中心事務(wù)中心事務(wù)路經(jīng)事務(wù)路經(jīng)2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 (3)進(jìn)行一級分析,設(shè)計上層模塊。進(jìn)行一級分析,設(shè)
50、計上層模塊。 事務(wù)分析的任務(wù)是從數(shù)據(jù)流圖中導(dǎo)出具有接受分支和發(fā)送事務(wù)分析的任務(wù)是從數(shù)據(jù)流圖中導(dǎo)出具有接受分支和發(fā)送分支的軟件結(jié)構(gòu)。對事務(wù)中心設(shè)計分支的軟件結(jié)構(gòu)。對事務(wù)中心設(shè)計“事務(wù)控制事務(wù)控制”模塊;對事務(wù)模塊;對事務(wù)流設(shè)計流設(shè)計“接受事務(wù)接受事務(wù)模塊;對事務(wù)路徑,設(shè)計模塊;對事務(wù)路徑,設(shè)計“發(fā)送事務(wù)發(fā)送事務(wù)模塊。模塊。事務(wù)控制事務(wù)控制接受事務(wù)接受事務(wù)發(fā)送事務(wù)發(fā)送事務(wù)2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 (4)(4)進(jìn)行二級分解,設(shè)計中下進(jìn)行二級分解,設(shè)計中下層模塊層模塊。 對于接受分支,可用類似對于接受分支,可用類似于轉(zhuǎn)換處理型數(shù)據(jù)流圖中對輸于轉(zhuǎn)換處理型數(shù)據(jù)流圖中對輸人數(shù)據(jù)流的分析方法
51、設(shè)計中下人數(shù)據(jù)流的分析方法設(shè)計中下層模塊。層模塊。 對于發(fā)送分支,在發(fā)送事對于發(fā)送分支,在發(fā)送事務(wù)模塊下為每個事務(wù)路徑設(shè)計務(wù)模塊下為每個事務(wù)路徑設(shè)計一個事務(wù)處理模塊。這一層稱一個事務(wù)處理模塊。這一層稱為事務(wù)層。在事務(wù)層模塊下,為事務(wù)層。在事務(wù)層模塊下,沿各事務(wù)路徑進(jìn)行分析,進(jìn)一沿各事務(wù)路徑進(jìn)行分析,進(jìn)一步細(xì)化,設(shè)計動作層模塊及細(xì)步細(xì)化,設(shè)計動作層模塊及細(xì)節(jié)層模塊等。節(jié)層模塊等。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計 好的設(shè)計準(zhǔn)則:好的設(shè)計準(zhǔn)則:模塊獨(dú)立性高。模塊獨(dú)立性高。 模塊規(guī)模適中。模塊規(guī)模適中。 深度、寬度適度深度、寬度適度 作用域在控制域內(nèi)。作用域在控制域內(nèi)。 接口和界面簡單。接口
52、和界面簡單。模塊的出口、入口為單入口、單出口。模塊的出口、入口為單入口、單出口。 功能可預(yù)測。功能可預(yù)測。 2.1面向過程分析與設(shè)計面向過程分析與設(shè)計2. 詳細(xì)設(shè)計詳細(xì)設(shè)計 詳細(xì)設(shè)計的任務(wù)是為軟件結(jié)構(gòu)圖中的每個模塊確定詳細(xì)設(shè)計的任務(wù)是為軟件結(jié)構(gòu)圖中的每個模塊確定實(shí)現(xiàn)算法和局部數(shù)據(jù)結(jié)構(gòu),用某種選定的表達(dá)工具表示實(shí)現(xiàn)算法和局部數(shù)據(jù)結(jié)構(gòu),用某種選定的表達(dá)工具表示算法和數(shù)據(jù)結(jié)構(gòu)的細(xì)節(jié)。算法和數(shù)據(jù)結(jié)構(gòu)的細(xì)節(jié)。 常見設(shè)計工具有:常見設(shè)計工具有: 圖形工具:程序流程圖,圖形工具:程序流程圖,n-s(方框圖),(方框圖),pad(問題分析圖);(問題分析圖); 表格工具:判定表;表格工具:判定表; 語言工具:
53、語言工具:pdl(偽碼)。(偽碼)。 2.1 結(jié)構(gòu)化開發(fā)方法結(jié)構(gòu)化開發(fā)方法n方框圖(方框圖(n-s圖)。圖)。2.1面向過程分析與設(shè)計面向過程分析與設(shè)計2.1面向過程分析與設(shè)計面向過程分析與設(shè)計2.2 面向?qū)ο蠓治雠c設(shè)計面向?qū)ο蠓治雠c設(shè)計 面向?qū)ο蠓椒ê图夹g(shù)是自面向?qū)ο蠓椒ê图夹g(shù)是自20世紀(jì)世紀(jì)80年代以來逐漸形年代以來逐漸形成的一種分析問題和解決問題的新方法,它的基本出發(fā)成的一種分析問題和解決問題的新方法,它的基本出發(fā)點(diǎn)是盡可能按照人類認(rèn)識世界的方法和思維方式來分析點(diǎn)是盡可能按照人類認(rèn)識世界的方法和思維方式來分析和解決問題。和解決問題。 面向?qū)ο蠓椒ú话殉绦蚩醋魇敲嫦驅(qū)ο蠓椒ú话殉绦蚩醋魇枪?/p>
54、作在數(shù)據(jù)上的一系工作在數(shù)據(jù)上的一系列過程或函數(shù)的集合列過程或函數(shù)的集合,而是把程序看作是,而是把程序看作是相互協(xié)作而又相互協(xié)作而又彼此獨(dú)立的對象的集合彼此獨(dú)立的對象的集合。2.2 面向?qū)ο蠓治雠c設(shè)計面向?qū)ο蠓治雠c設(shè)計 面向?qū)ο筌浖_發(fā)方法又稱為面向?qū)ο筌浖_發(fā)方法又稱為oosd(object-oriented software development)。)。 oosd包括面向?qū)ο蠓治觯ò嫦驅(qū)ο蠓治觯╫oa)、面向?qū)ο笤O(shè)計)、面向?qū)ο笤O(shè)計(ood)和面向?qū)ο蟪绦蛟O(shè)計()和面向?qū)ο蟪绦蛟O(shè)計(oop)3個方面。個方面。 oop是基礎(chǔ),是基礎(chǔ),ooa和和ood是應(yīng)用是應(yīng)用oop的機(jī)制。所的機(jī)制。所
55、以應(yīng)用以應(yīng)用oosd時,必須使用面向?qū)ο蟪绦蛟O(shè)計語言。時,必須使用面向?qū)ο蟪绦蛟O(shè)計語言。2.2 面向?qū)ο蠓治雠c設(shè)計面向?qū)ο蠓治雠c設(shè)計2.2.12.2.1傳統(tǒng)軟件分析設(shè)計的問題傳統(tǒng)軟件分析設(shè)計的問題 (1) 傳統(tǒng)的軟件分析技術(shù)難以應(yīng)對需求的不斷變化傳統(tǒng)的軟件分析技術(shù)難以應(yīng)對需求的不斷變化 (2) 傳統(tǒng)軟件開發(fā)方法無法實(shí)現(xiàn)高效的軟件復(fù)用傳統(tǒng)軟件開發(fā)方法無法實(shí)現(xiàn)高效的軟件復(fù)用 (3) 傳統(tǒng)軟件設(shè)計方法難以實(shí)現(xiàn)從分析到設(shè)計的直接過渡傳統(tǒng)軟件設(shè)計方法難以實(shí)現(xiàn)從分析到設(shè)計的直接過渡 2.2 面向?qū)ο蠓治雠c設(shè)計面向?qū)ο蠓治雠c設(shè)計2.2.22.2.2面向?qū)ο蠓治雠c設(shè)計的主要特點(diǎn)面向?qū)ο蠓治雠c設(shè)計的主要特點(diǎn) (
56、1) 按照人類習(xí)慣的思維方法,對軟件開發(fā)過程所有階段進(jìn)按照人類習(xí)慣的思維方法,對軟件開發(fā)過程所有階段進(jìn)行綜合考慮行綜合考慮 傳統(tǒng)的面向過程的設(shè)計方法以算法為核心,將傳統(tǒng)的面向過程的設(shè)計方法以算法為核心,將數(shù)據(jù)和數(shù)據(jù)和過程過程作為相互獨(dú)立的部分,程序代碼用于處理這些數(shù)據(jù)作為相互獨(dú)立的部分,程序代碼用于處理這些數(shù)據(jù) 面向?qū)ο蟮姆椒ㄒ詫ο鬄楹诵?,?qiáng)調(diào)模擬現(xiàn)實(shí)世界中面向?qū)ο蟮姆椒ㄒ詫ο鬄楹诵?,?qiáng)調(diào)模擬現(xiàn)實(shí)世界中的概念而不是算法,盡量用符合的概念而不是算法,盡量用符合人類認(rèn)識世界的思維方式人類認(rèn)識世界的思維方式來漸進(jìn)地分析、解決問題來漸進(jìn)地分析、解決問題 2.2 面向?qū)ο蠓治雠c設(shè)計面向?qū)ο蠓治雠c設(shè)計(2
57、)軟件生存期各階段所使用的方法、技術(shù)具有高度的連續(xù)性)軟件生存期各階段所使用的方法、技術(shù)具有高度的連續(xù)性 傳統(tǒng)的軟件開發(fā)過程把一個充滿回溯的軟件開發(fā)過程傳統(tǒng)的軟件開發(fā)過程把一個充滿回溯的軟件開發(fā)過程硬性地分割為幾個階段,而且各個階段所使用的模型、描硬性地分割為幾個階段,而且各個階段所使用的模型、描述方法不相同。述方法不相同。 面向?qū)ο蟮姆椒ㄊ褂脟娙P妥鳛槠涔ぷ髂P?,軟件面向?qū)ο蟮姆椒ㄊ褂脟娙P妥鳛槠涔ぷ髂P?,軟件生存期各階段沒有明顯的界限,開發(fā)過程回溯重疊,使用生存期各階段沒有明顯的界限,開發(fā)過程回溯重疊,使用相同的描述方法和模型,使得軟件生存期各階段所使用的相同的描述方法和模型,使得軟件
58、生存期各階段所使用的方法、技術(shù)具有高度的連續(xù)性。方法、技術(shù)具有高度的連續(xù)性。2.2 面向?qū)ο蠓治雠c設(shè)計面向?qū)ο蠓治雠c設(shè)計(3) 軟件開發(fā)各階段有機(jī)集成,有利于系統(tǒng)的穩(wěn)定性軟件開發(fā)各階段有機(jī)集成,有利于系統(tǒng)的穩(wěn)定性 ooa、ood與與oop有機(jī)地集成在一起,使開發(fā)過程有機(jī)地集成在一起,使開發(fā)過程始終圍繞著建立問題領(lǐng)域的對象始終圍繞著建立問題領(lǐng)域的對象(類類)模型進(jìn)行,且各階段模型進(jìn)行,且各階段解決的問題又各有側(cè)重。解決的問題又各有側(cè)重。(4) 具有良好的重用性具有良好的重用性 由于對象具有的封裝性和信息隱蔽,使得對象的內(nèi)部由于對象具有的封裝性和信息隱蔽,使得對象的內(nèi)部實(shí)現(xiàn)與外界隔離,具有較強(qiáng)的獨(dú)
59、立性,因此,對象類提供實(shí)現(xiàn)與外界隔離,具有較強(qiáng)的獨(dú)立性,因此,對象類提供了較理想的可重用的軟件成分。了較理想的可重用的軟件成分。 2.2 面向?qū)ο蠓治雠c設(shè)計面向?qū)ο蠓治雠c設(shè)計2.2.3 2.2.3 面向?qū)ο蠼C嫦驅(qū)ο蠼?面向?qū)ο蠓治雠c設(shè)計從面向?qū)ο蠓治雠c設(shè)計從3種角度建立模型:種角度建立模型: 1)使用對象模型描述系統(tǒng)數(shù)據(jù)結(jié)構(gòu)使用對象模型描述系統(tǒng)數(shù)據(jù)結(jié)構(gòu) 定義了做事情的實(shí)體定義了做事情的實(shí)體 2)使用動態(tài)模型描述系統(tǒng)動態(tài)的協(xié)作及控制結(jié)構(gòu)使用動態(tài)模型描述系統(tǒng)動態(tài)的協(xié)作及控制結(jié)構(gòu) 規(guī)定了什么時候做規(guī)定了什么時候做 3)使用功能模型描述系統(tǒng)功能使用功能模型描述系統(tǒng)功能 系統(tǒng)應(yīng)該系統(tǒng)應(yīng)該“做什么做
60、什么” 2.2 面向?qū)ο蠓治雠c設(shè)計面向?qū)ο蠓治雠c設(shè)計準(zhǔn)備知識:準(zhǔn)備知識: (1)對象。對象。 對象是人們要進(jìn)行研究的任何事物,從最簡單的整數(shù)對象是人們要進(jìn)行研究的任何事物,從最簡單的整數(shù)到復(fù)雜的飛機(jī)等均可看作對象,它不僅能表示具體的事物,到復(fù)雜的飛機(jī)等均可看作對象,它不僅能表示具體的事物,還能表示抽象的規(guī)則、計劃或事件。還能表示抽象的規(guī)則、計劃或事件。(2)對象的狀態(tài)和行為。對象的狀態(tài)和行為。 對象具有狀態(tài),一個對象用數(shù)據(jù)值來描述它的狀態(tài)。對象具有狀態(tài),一個對象用數(shù)據(jù)值來描述它的狀態(tài)。 對象還有操作,用于改變對象的狀態(tài),對象及其操作對象還有操作,用于改變對象的狀態(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人力資源咨詢顧問合同書
- 產(chǎn)品售后服務(wù)情況說明表
- 制造業(yè)企業(yè)知識產(chǎn)權(quán)保護(hù)策略研究
- 光纜遷移施工方案范本
- 橡膠跑道施工方案
- 涼山道路施工方案
- TCSMT YB011-2024 天然氣發(fā)熱量測量裝置測試技術(shù)規(guī)范
- 建筑工程人工費(fèi)承包合同-@-1
- 物業(yè)地面處理方案
- 透水砼路面施工方案
- 2025年安徽衛(wèi)生健康職業(yè)學(xué)院單招職業(yè)適應(yīng)性考試題庫學(xué)生專用
- 英語-山東省日照市2022級(2025屆)高三校際聯(lián)合考試(日照一模)試題和答案
- 《莫奈《睡蓮》主題課件》
- 課件:2025春季開學(xué)第一課:哪吒精神點(diǎn)燃斗志
- 2025年02月麗江師范學(xué)院(麗江師范高等??茖W(xué)校)第一批人員20人筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- DBJ41T 189-2017 地下連續(xù)墻檢測技術(shù)規(guī)程
- 中央2025年中國作家協(xié)會所屬單位招聘11人筆試歷年參考題庫附帶答案詳解
- 2025年1月浙江省高考生物試卷(含答案)
- 2025年安徽醫(yī)學(xué)高等??茖W(xué)校高職單招職業(yè)適應(yīng)性測試近5年常考版參考題庫含答案解析
- 《Oracle EBS 基礎(chǔ)理解》教學(xué)課件
- 《餐飲業(yè)發(fā)展》課件 - 探索美食世界的奧秘
評論
0/150
提交評論