軟件制造工程-程序設(shè)計(jì)概述_第1頁
軟件制造工程-程序設(shè)計(jì)概述_第2頁
軟件制造工程-程序設(shè)計(jì)概述_第3頁
軟件制造工程-程序設(shè)計(jì)概述_第4頁
軟件制造工程-程序設(shè)計(jì)概述_第5頁
已閱讀5頁,還剩62頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

軟件制造工程第二章程序設(shè)計(jì)本章授課內(nèi)容基礎(chǔ)

程序設(shè)計(jì)概述程序設(shè)計(jì)原理程序設(shè)計(jì)的啟發(fā)式原則程序設(shè)計(jì)方法面向?qū)ο蟪绦蛟O(shè)計(jì)

團(tuán)隊(duì)

程序設(shè)計(jì)書的構(gòu)成和理解程序設(shè)計(jì)概述

__程序設(shè)計(jì)在軟件開發(fā)中的位置軟件工程管理規(guī)劃階段需求分析a開發(fā)階段內(nèi)部設(shè)計(jì)b外部設(shè)計(jì)移植、安裝、維護(hù)移植安裝維護(hù)hd程序設(shè)計(jì)·制造e組合測試f系統(tǒng)測試g運(yùn)行測試以內(nèi)部設(shè)計(jì)書為基礎(chǔ),對程序單元內(nèi)的功能模塊進(jìn)行分割和功能模塊的功能處理給予說明,作出程序設(shè)計(jì)書。按照程序設(shè)計(jì)書進(jìn)行程序編碼。按照程序設(shè)計(jì)書進(jìn)行程序單元測試。c程序設(shè)計(jì)概述_概念程序設(shè)計(jì)概要設(shè)計(jì)又稱為總體設(shè)計(jì)或外部設(shè)計(jì),詳細(xì)設(shè)計(jì)又稱為過程設(shè)計(jì)或內(nèi)部設(shè)計(jì)。程序設(shè)計(jì)是以詳細(xì)設(shè)計(jì)為基礎(chǔ),對程序單元內(nèi)的功能模塊進(jìn)行細(xì)化,對功能模塊的功能處理要求和實(shí)現(xiàn)方法給予說明,并作出程序設(shè)計(jì)書。程序設(shè)計(jì)的結(jié)果將是編程工程和測試工程的主要依據(jù)。近年來,由于很多應(yīng)用系統(tǒng)在開發(fā)周期短、開發(fā)成本低的條件下進(jìn)行設(shè)計(jì),常常把詳細(xì)設(shè)計(jì)和程序設(shè)計(jì)的階段合為一體。程序設(shè)計(jì)概述_作業(yè)流程及描述d1開發(fā)準(zhǔn)備工作d1.1詳細(xì)設(shè)計(jì)成果物的確認(rèn)d1.1.1確認(rèn)詳細(xì)設(shè)計(jì)成果物d1.2制定工作計(jì)劃d1.2.1制定工作計(jì)劃d1.3檢查工作計(jì)劃d1.3.1檢查工作計(jì)劃在進(jìn)行程序設(shè)計(jì)·制造作業(yè)之前,要確認(rèn)詳細(xì)設(shè)計(jì)的成果物。為了進(jìn)行程序設(shè)計(jì)·制造的進(jìn)度管理和項(xiàng)目運(yùn)營管理,要作出項(xiàng)目開發(fā)體制表和詳細(xì)的日程計(jì)劃表(中、小日程表)

對于制定的工作計(jì)劃,要進(jìn)行檢查,確認(rèn)作業(yè)內(nèi)容。程序設(shè)計(jì)概述_作業(yè)流程及描述d2程序設(shè)計(jì)d2.1程序設(shè)計(jì)d2.1.1模塊劃分d2.1.2模塊功能設(shè)計(jì)工作區(qū)變量定義d2.1.3模塊邏輯設(shè)計(jì)d2.1.4d2.2程序設(shè)計(jì)檢查d2.2.1程序設(shè)計(jì)檢查以詳細(xì)設(shè)計(jì)中確認(rèn)的程序單元為基礎(chǔ),對程序單元內(nèi)的功能模塊進(jìn)行分割處理。對程序功能結(jié)構(gòu)圖中的功能處理給與說明。

定義程序中使用的公用變量和重要變量。設(shè)計(jì)各個模塊的處理內(nèi)容及其算法。對程序設(shè)計(jì)說明書進(jìn)行檢查,作出程序設(shè)計(jì)檢查結(jié)果報告。程序設(shè)計(jì)概述_工作用表質(zhì)量數(shù)據(jù)匯總表d5開發(fā)結(jié)束工作問題處理票(b票)簡單問題處理票質(zhì)量數(shù)據(jù)匯總表(程序單元)程序單元測試項(xiàng)目表(矩陣型)程序單元測試項(xiàng)目表d4程序單元測試問題記錄一覽表檢查記錄表模塊功能的定義說明書工作緩沖區(qū)格式定義表程序追加處理說明書程序功能結(jié)構(gòu)圖d2程序設(shè)計(jì)問題記錄一覽表檢查記錄表開發(fā)體制表工作計(jì)劃表(小日程表)工作計(jì)劃表(中日程表)基本/詳細(xì)設(shè)計(jì)作業(yè)內(nèi)容檢查表(確認(rèn)基本/詳細(xì)設(shè)計(jì)的成果物)d1`開發(fā)準(zhǔn)備工作工作用表名稱作業(yè)階段程序設(shè)計(jì)的一個重要課題就是模塊劃分和模塊設(shè)計(jì),把開發(fā)的軟件系統(tǒng)按功能逐次分割成層次結(jié)構(gòu),使每一部分完成簡單的功能且各個部分之間又保持一定的聯(lián)系,這種功能設(shè)計(jì)所包括的內(nèi)容有:采用某種設(shè)計(jì)原理和方法,將一個復(fù)雜的系統(tǒng)按功能劃分為成模塊的層次結(jié)構(gòu);確定每個模塊的功能,建立與已確定的軟件需求的對應(yīng)關(guān)系;確定模塊間的調(diào)用關(guān)系;確定模塊間的接口,設(shè)計(jì)接口的信息結(jié)構(gòu);評估模塊劃分的質(zhì)量及導(dǎo)出模塊結(jié)構(gòu)的規(guī)則。程序設(shè)計(jì)原理模塊的概念在軟件的體系結(jié)構(gòu)中,模塊是可組合、分解和更換的單元。程序設(shè)計(jì)單元都被看成為“模塊”,所謂模塊就是程序?qū)ο蟮挠忻值募?,例如,過程、函數(shù)、子程序、宏等。模塊具有以下幾種基本屬性:接口:指模塊的輸入與輸出;功能:指模塊實(shí)現(xiàn)什么功能;邏輯:描述內(nèi)部如何實(shí)現(xiàn)要求的功能所需的數(shù)據(jù)和處理流程;狀態(tài):指該模塊的運(yùn)行環(huán)境,即模塊的調(diào)用與被調(diào)用關(guān)系。程序設(shè)計(jì)原理程序設(shè)計(jì)原理設(shè)計(jì)的原則:

(l)分解—協(xié)調(diào)的原則。

(2)信息隱蔽,抽象的原則,即上層模塊只規(guī)定下層模塊做什么和所屬模塊間的協(xié)調(diào)關(guān)系,但不規(guī)定怎么做,以保證模塊的相對獨(dú)立性和內(nèi)部結(jié)構(gòu)的合理性,使得模塊與模塊之間層次分明,易于理解,易于實(shí)施,易于維護(hù)。

(3)自頂向下原則:首先抓住總的功能目標(biāo),然后逐層分解,即先確定上層模塊的功能,再確定下層模塊的功能。

(4)一致性原則:要保證整個軟件設(shè)計(jì)過程中具有統(tǒng)一的規(guī)范,統(tǒng)一的標(biāo)準(zhǔn),統(tǒng)一的文件模式等等。

(5)面向用戶的原則,每個模塊必須功能明確,接口明確,堅(jiān)決消除多重功能和無用接口。模塊的概念一個模塊的規(guī)模應(yīng)當(dāng)取決于它的功能和用途。

應(yīng)減少接口的代價,提高模塊的獨(dú)立性。

模塊的獨(dú)立性可以由兩個定性標(biāo)準(zhǔn)度量,這兩個標(biāo)準(zhǔn)分別稱為聚合和耦合。成本(工作量)軟件成本接口成本最小區(qū)域成本/模塊模塊數(shù)m程序設(shè)計(jì)原理抽象是認(rèn)識復(fù)雜現(xiàn)象過程中使用的思維工具,即抽出事物本質(zhì)的共同的特性而暫不考慮它的細(xì)節(jié),不考慮其他因素。通過抽象,可以確定組成軟件的過程實(shí)體。逐步求精是一種先總體,后局部的思維原則,先抓住主要問題并給予解決,然后分階段逐步深入考慮問題的細(xì)節(jié),也就是逐層分解,分而治之的方法。程序設(shè)計(jì)原理在一節(jié)不和諧的課堂里,老師嘆氣道:“要是坐在后排聊天的同學(xué)能象中間打牌的同學(xué)那么安靜,就不會影響到前排睡覺的同學(xué)?!?。這個故事告訴我們,如果不想讓壞事傳播開來,就應(yīng)該把壞事隱藏起來,“家丑不可外揚(yáng)”就是這個道理。為了盡量避免某個模塊的行為去干擾同一系統(tǒng)中的其它模塊,在設(shè)計(jì)模塊時就要注意信息隱藏。應(yīng)該讓模塊僅僅公開必須要讓外界知道的內(nèi)容,而隱藏其它一切內(nèi)容。信息隱蔽指在設(shè)計(jì)和確定模塊時,使得一個模塊內(nèi)部包含的信息(過程或數(shù)據(jù)),對于不需要這些信息的其他模塊來說,是不能訪問的。通過信息隱蔽,可以定義和實(shí)施對模塊的過程細(xì)節(jié)和局部數(shù)據(jù)結(jié)構(gòu)的存取限制。程序設(shè)計(jì)原理模塊獨(dú)立性指每個模塊只完成系統(tǒng)要求的獨(dú)立子功能,并且與其他模塊的聯(lián)系最少且接口簡單,用兩個定性的度量標(biāo)準(zhǔn)耦合性(coupling)和內(nèi)聚性(cohesion)來衡量模塊的獨(dú)立性。程序設(shè)計(jì)原理耦合性也稱塊間聯(lián)系。指軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互聯(lián)系緊密程度的一種度量。模塊之間聯(lián)系越緊密,其耦合性就越強(qiáng),模塊的獨(dú)立性則越差。模塊間耦合高低取決于模塊間接口的復(fù)雜性、調(diào)用的方式及傳遞的信息。耦合按從弱到強(qiáng)的順序可分為以下七種類型:非直接耦合、數(shù)據(jù)耦合、數(shù)據(jù)結(jié)構(gòu)耦合、控制耦合、共通耦合、外部耦合、內(nèi)容耦合。按上述順序,耦合性逐漸升高,模塊獨(dú)立性逐漸降低。程序設(shè)計(jì)原理內(nèi)聚性又稱塊內(nèi)聯(lián)系。指模塊的功能強(qiáng)度的度量,即一個模塊內(nèi)部各個元素彼此結(jié)合的緊密程度的度量。若一個模塊內(nèi)各元素(語名之間、程序段之間)聯(lián)系的越緊密,則它的內(nèi)聚性就越高。內(nèi)聚按強(qiáng)度從低到高共分七級:偶然內(nèi)聚、邏輯內(nèi)聚、時間內(nèi)聚、過程內(nèi)聚、通信內(nèi)聚、信息內(nèi)聚、功能內(nèi)聚。內(nèi)聚性逐漸加強(qiáng),功能趨于單一,模塊獨(dú)立性也逐漸加強(qiáng)。程序設(shè)計(jì)原理模塊化的設(shè)計(jì)原則改進(jìn)軟件結(jié)構(gòu)提高模塊獨(dú)立性

模塊規(guī)模應(yīng)該適中

保持適當(dāng)?shù)纳热牒蜕瘸?/p>

模塊的作用范圍應(yīng)在控制范圍之內(nèi)

力爭降低模塊接口的復(fù)雜程度

設(shè)計(jì)單入口單出口的模塊

模塊功能應(yīng)該可以預(yù)測

以上啟發(fā)式規(guī)則多數(shù)是經(jīng)驗(yàn)數(shù)據(jù),對改進(jìn)設(shè)計(jì),提高軟件質(zhì)量,有重要的參考價值

程序設(shè)計(jì)的啟發(fā)式原則abcdefabcde′f′e′f′程序設(shè)計(jì)的啟發(fā)式原則改進(jìn)軟件結(jié)構(gòu)提高模塊獨(dú)立性經(jīng)驗(yàn)表明,模塊的規(guī)模要在一頁以內(nèi),模塊的總行數(shù)最好在30~60行,這種規(guī)模易于閱讀和理解。過長的模塊往往是分解不充分的表現(xiàn),會增加閱讀理解的難度;但小模塊太多也會使模塊之間聯(lián)系變得復(fù)雜,增大系統(tǒng)在模塊調(diào)用時傳遞信息所花費(fèi)的開銷,不值得單獨(dú)存在,可以把它合并到上級模塊中去。由于種種原因如功能和用途的約束,一個模塊可能會大于一頁,要以不影響程序的清晰為前提。程序設(shè)計(jì)的啟發(fā)式原則一個模塊的扇入表示有多少個模塊直接調(diào)用它,一個模塊的扇出表該模塊控制的其它模塊的數(shù)量,深度表示軟件結(jié)構(gòu)中控制的層數(shù)。經(jīng)驗(yàn)表明,一個設(shè)計(jì)得好的典型系統(tǒng)平均扇出通常是3或4(扇出的上限通常是5~9)。扇出扇入深度程序設(shè)計(jì)的啟發(fā)式原則

_保持適當(dāng)?shù)纳热牒蜕瘸鲆粋€模塊的作用范圍(或稱影響范圍)指受該模塊內(nèi)一個判定影響的所有模塊的集合。一個模塊的控制范圍指模塊本身以及其所有下屬模塊(直接或間接從屬于它的模塊)的集合。一個模塊的作用范圍應(yīng)在其控制范圍之內(nèi),且判定所在的模塊應(yīng)在其影響的模塊在層次上盡量靠近。程序設(shè)計(jì)的啟發(fā)式原則

_模塊的作用范圍應(yīng)在控制范圍之內(nèi)

模塊接口復(fù)雜是軟件發(fā)生錯誤的一個主要原因,應(yīng)該仔細(xì)設(shè)計(jì)模塊接口,使得信息傳遞簡單并且和模塊的功能一致。接口復(fù)雜或不一致(即看起來傳遞的數(shù)據(jù)之間沒有聯(lián)系)是低內(nèi)聚的表現(xiàn),應(yīng)該重新分析這個模塊的獨(dú)立性。程序設(shè)計(jì)的啟發(fā)式原則

_力爭降低模塊接口的復(fù)雜程度

不要使模塊間出現(xiàn)內(nèi)容耦合從頂部進(jìn)入模塊并且從底部退出,軟件比較容易理解,因此也比較容易維護(hù)程序設(shè)計(jì)的啟發(fā)式原則

_設(shè)計(jì)單入口單出口的模塊

程序設(shè)計(jì)的啟發(fā)式原則

_模塊功能應(yīng)該可以預(yù)測

如果將一個模塊看做黑盒子,就是說,只要輸入的數(shù)據(jù)相同就產(chǎn)生同樣的輸出,這個模塊的功能就是可以預(yù)測的。具有內(nèi)部狀態(tài)的模塊,其輸出不僅與輸入有關(guān),而且還取決于模塊的當(dāng)前狀態(tài),其功能是不可預(yù)測的,這就增加了模塊的測試和維護(hù)難度,這條原則不是絕對的,如對于實(shí)時系統(tǒng)來說,針對不定時的輸入,系統(tǒng)狀態(tài)要不斷發(fā)生變化,這種變化又直接影響下一個輸入引起的輸出。對于這種不可避免的情況,要引起充分注意,要將相應(yīng)模塊做特殊處理。無論測試還是維護(hù)都把模塊狀態(tài)作為一個重要影響因素來考慮程序設(shè)計(jì)方法_結(jié)構(gòu)化方法結(jié)構(gòu)化程序設(shè)計(jì)的內(nèi)容使用三種控制結(jié)構(gòu)逐步求精的設(shè)計(jì)方法

fgcfgcf(c)(a)(b)i=?f1f2f3fn123n(d)fct(e)程序設(shè)計(jì)方法_結(jié)構(gòu)化工具流程圖盒圖(n-s圖)pad圖hipo圖判定表判定樹過程設(shè)計(jì)語言

程序設(shè)計(jì)方法_結(jié)構(gòu)化工具流程圖處理用四方形圖表示條件判斷用菱形圖表示用連接線把這些圖形連接起來表示處理的流程

程序設(shè)計(jì)方法_結(jié)構(gòu)化工具盒圖(n-s圖)

盒圖是nassi和shneiderman提出來的,又稱n-s圖,沒有箭頭,不允許隨意轉(zhuǎn)移。在ns圖中,每個“處理步驟”是用一個盒子表示的,所謂“處理步驟”可以是語句或語句序列。需要時,盒子中還可以嵌套另一個盒子,嵌套深度一般沒有限制,只要整張圖在一頁紙上能容納得下,由于只能從上邊進(jìn)入盒子然后從下邊走出,除此之外沒有其他的入口和出口,所以,ns圖限制了隨意的控制轉(zhuǎn)移,

保證了程序的良好結(jié)構(gòu)。程序設(shè)計(jì)方法_結(jié)構(gòu)化工具pad圖

pad圖是日本日立公司于1973年發(fā)明的,指問題分析圖(problemanalysisdiagram),它是一種自左往右展開的二維樹型結(jié)構(gòu)??刂屏鞒虨樽陨隙?、從左到右的執(zhí)行。由機(jī)器自動通過走樹的辦法生成相應(yīng)的源代碼,大大提高了軟件的生產(chǎn)率。程序設(shè)計(jì)方法_結(jié)構(gòu)化工具

程序設(shè)計(jì)方法_結(jié)構(gòu)化工具例:1求a、b、c三個數(shù)中的最大值。例:2猴子吃桃問題:有一堆桃子不知數(shù)目,猴子第一天吃掉一半,覺得不過癮,又多吃了一只,第二天照此辦理,吃掉剩下桃子的一半另加一個,天天如此,到第十天早上,猴子發(fā)現(xiàn)只剩一只桃子了,問這堆桃子原來有多少個?程序設(shè)計(jì)方法_結(jié)構(gòu)化工具例:1程序設(shè)計(jì)方法_結(jié)構(gòu)化工具例:2程序設(shè)計(jì)方法_結(jié)構(gòu)化工具h(yuǎn)ipo圖(層次圖加輸入/處理/輸出圖)

hipo圖由下面三部分組成:h(分層)圖。即以方框形式表示程序的主要功能、次要功能及其與模塊間的關(guān)系??傆[ipo圖。為h圖提供輸入變量表、處理功能表和輸出變量表。詳細(xì)ipo圖。為底層模塊提供輸入變量表、處理功能表和輸出變量表。

hipo圖是一種圖解式設(shè)計(jì)工具。在概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、程序設(shè)計(jì)、測試和維護(hù)的不同階段,都可以使用hipo圖對設(shè)計(jì)進(jìn)行描述

程序設(shè)計(jì)方法_結(jié)構(gòu)化工具班級號、學(xué)號學(xué)生姓名語、數(shù)、外成績輸入顯示處理db存在檢查處理輸出db顯示處理顯示處理輸入數(shù)據(jù)檢查db登錄學(xué)生基本成績表班級號、學(xué)號學(xué)生姓名語、數(shù)、外成績錯誤信息不存在存在正確不正確hipo圖(層次圖加輸入/處理/輸出圖)程序設(shè)計(jì)方法_結(jié)構(gòu)化工具判定表在許多軟件設(shè)計(jì)中,常常需要設(shè)計(jì)一個模塊,根據(jù)多種條件的復(fù)雜組合,選擇執(zhí)行相應(yīng)的動作,這種設(shè)計(jì)過程用判定表表示比較合適。判定表可作為輸入數(shù)據(jù),被直接讀入機(jī)器,由“表驅(qū)動”算法程序自動處理,判定表的第一行是規(guī)則號,每一列對應(yīng)一條處理規(guī)則,它根據(jù)不同的條件組合選擇執(zhí)行相應(yīng)的動作。為了能表示出總的控制流程,單單用這個工具是不行的,還需加上其他信息。通常,判定表可以有效地用來作為其他詳細(xì)設(shè)計(jì)工具的補(bǔ)充。判定表采用以下步驟進(jìn)行處理:列出與一個具體過程(或)有關(guān)的所有處理;列出過程執(zhí)行期間的所有條件(或所有判斷);將特定條件取值組合與特定的處理相匹配,消去不可能發(fā)生的條件取值組合;將右部每一縱列規(guī)定為一個處理規(guī)則。程序設(shè)計(jì)方法_結(jié)構(gòu)化工具判定表舉例1程序設(shè)計(jì)方法_結(jié)構(gòu)化工具判定表舉例2

某航空公司規(guī)定,乘客可以免費(fèi)托運(yùn)重量不超過30公斤的行李。當(dāng)行李重量超過30公斤時,對頭等艙的乘客超重部分每公斤收費(fèi)4元,對其他艙的乘客超重部分每公斤收費(fèi)6元,對外國乘客超重部分每公斤收費(fèi)比國內(nèi)乘客多一倍,對殘疾乘客每公斤收費(fèi)比正常乘客少一半。程序設(shè)計(jì)方法_結(jié)構(gòu)化工具判定樹判定樹是判定表的變種,能清晰地表示復(fù)雜的條件組合與應(yīng)做的動作之間的對應(yīng)關(guān)系。判定樹的優(yōu)點(diǎn)是:由于是一種圖形表示,形式簡單,不需任何說明,易看出含義,易于掌握和使用。缺點(diǎn)是:簡潔性不如判定表,相同的數(shù)據(jù)元素往往要重復(fù)寫多遍,而且越接近樹的葉端重復(fù)次數(shù)越多。

程序設(shè)計(jì)方法_結(jié)構(gòu)化工具判定樹舉例思考:將行李重量作為最后一個分支,將會是幾片葉子

答案:16片葉子

程序設(shè)計(jì)方法_結(jié)構(gòu)化工具過程設(shè)計(jì)語言(pdl,processdesignlanguage)是一個籠統(tǒng)的名字,由許多種不同的過程設(shè)計(jì)語言。過程設(shè)計(jì)語言用于描述模塊中算法和加工的具體細(xì)節(jié),以便在開發(fā)人員之間比較精確的進(jìn)行交流。過程設(shè)計(jì)語言的外層語法描述結(jié)構(gòu),采用與一般編程語言類似的確定的關(guān)鍵字,內(nèi)層語法描述操作,可以采用任意的自然語句(如:英語、漢語)由于過程設(shè)計(jì)語言與程序很相似,也稱為偽程序,或偽碼(pseudocode)。但它僅僅是對算法的一種描述,是不可執(zhí)行的。程序設(shè)計(jì)方法_結(jié)構(gòu)化工具過程設(shè)計(jì)語言(pdl,processdesignlanguage)pdl的優(yōu)點(diǎn):

(1)可以作為注釋直接插在源程序中間。這樣做能促使維護(hù)人員在修改程序代碼的同時也相應(yīng)地修改pdl注釋,因此有助于保持文檔和程序的一致性,提高了文檔的質(zhì)量。

(2)可以使用普通的正文編輯程序或文字處理系統(tǒng),很方便地完成pdl的書寫和編輯工作。

(3)已經(jīng)有自動處理程序存在,而且可以自動由pdl生成程序代碼。pdl的缺點(diǎn)是不如圖形工具形象直觀,描述復(fù)雜的條件組合與動作間的對應(yīng)關(guān)系時,不如判定表清晰簡單。

程序設(shè)計(jì)方法_結(jié)構(gòu)化工具過程設(shè)計(jì)語言(pdl,processdesignlanguage)例:統(tǒng)計(jì)空格seq打開文件讀入字符串totalsum=0程序體iteruntil文件結(jié)束……程序體end打印總數(shù)seq打印出空格總數(shù)打印總數(shù)end關(guān)閉文件停止統(tǒng)計(jì)空格end

順序結(jié)構(gòu):aseqblock1block2block3aend選擇結(jié)構(gòu):aselectcond1block1aorcond2block2aorcond3block3aend重復(fù)結(jié)構(gòu):aiteruntilcondblock1aendaiterwhilecondblock1aend

程序設(shè)計(jì)方法_面向?qū)ο蟮某绦蛟O(shè)計(jì)

面向?qū)ο蟮姆椒ㄩ_始也只是著眼于編程,后來才形成了從分析、設(shè)計(jì)到編程、測試與維護(hù)一整套的軟件工程體系,即產(chǎn)生了面向?qū)ο蠓治觯╫oa)、面向?qū)ο笤O(shè)計(jì)(ood)、面向?qū)ο缶幊蹋╫op)、面向?qū)ο鬁y試(oot)

程序設(shè)計(jì)方法_面向?qū)ο蟮某绦蛟O(shè)計(jì)面向?qū)ο蟪绦蛟O(shè)計(jì)的特征面向?qū)ο蟮某绦蛟O(shè)計(jì)將計(jì)算看作是一個系統(tǒng)的開發(fā)過程,系統(tǒng)由對象組成,經(jīng)歷一連串的狀態(tài)變化以完成計(jì)算任務(wù)。面向?qū)ο蟪绦虻幕A(chǔ)構(gòu)件是對象和類,從程序設(shè)計(jì)角度來看,對象是一種不信賴于外界的模塊,對應(yīng)著存儲器的一塊被劃分的區(qū)域。它包含數(shù)據(jù),在邏輯上包含作用于這些數(shù)據(jù)的過程,這些過程稱為方法。

面向?qū)ο蟪绦蛟O(shè)計(jì)的基本機(jī)制是繼承性、消息和方法,還有在特定方面提供更為專門的、靈活的機(jī)制,如重置、多態(tài)等。程序設(shè)計(jì)方法_面向?qū)ο蟮某绦蛟O(shè)計(jì)結(jié)構(gòu)化程序設(shè)計(jì)就是把內(nèi)部設(shè)計(jì)中的功能模塊的設(shè)計(jì)、功能模塊間接口的設(shè)計(jì)、數(shù)據(jù)庫的定義等詳細(xì)化的設(shè)計(jì)過程。而面向?qū)ο箝_發(fā)時,在ood階段已把各個類直到接口(方法)都已定義,程序設(shè)計(jì)的對象就如同結(jié)構(gòu)化程序設(shè)計(jì)一樣就是進(jìn)行類內(nèi)部處理的詳細(xì)化設(shè)計(jì)。程序設(shè)計(jì)書的構(gòu)成和理解《程序設(shè)計(jì)書主要內(nèi)容》(交互式處理)○程序處理概要圖○程序概要說明書○程序功能結(jié)構(gòu)圖○程序追加處理說明書○工作緩沖區(qū)格式定義表○模塊功能定義書○模塊功能定義書(補(bǔ)充)○輸入數(shù)據(jù)檢查處理說明書〈參照以下基本設(shè)計(jì)資料〉○屏幕設(shè)計(jì)說明書○報表/文件輸出編輯說明書○db設(shè)計(jì)說明書○共通處理設(shè)計(jì)說明書○公共子程序設(shè)計(jì)說明書程序設(shè)計(jì)書程序設(shè)計(jì)書的構(gòu)成和理解程序處理概要圖是內(nèi)部設(shè)計(jì)階段的成果文檔,是程序設(shè)計(jì)階段的輸入,他是程序設(shè)計(jì)書的重要內(nèi)容,主要描述該程序單元的處理概要,輸入輸出文件和屏幕、報表的關(guān)連圖,給出了與該程序相關(guān)的文件id、文件名稱、屏幕id、名稱、報表名稱等。程序處理概要說明書也是內(nèi)部設(shè)計(jì)階段的成果文檔,是程序設(shè)計(jì)階段的輸入,是程序設(shè)計(jì)書的重要內(nèi)容,它對于程序處理概要圖中的程序處理概要進(jìn)行展開,給出了程序的各個功能模塊的處理概要說明,小型的或簡單的程序可以從程序功能概要說明書入手編寫代碼。程序設(shè)計(jì)書的構(gòu)成和理解程序功能結(jié)構(gòu)圖是程序設(shè)計(jì)階段的成果文檔,它是程序結(jié)構(gòu)設(shè)計(jì)的圖形結(jié)果,在開發(fā)周期短,程序設(shè)計(jì)時間不足的情況下,程序功能結(jié)構(gòu)圖可以省略。有程序功能結(jié)構(gòu)圖的情況下,要注意編寫的程序結(jié)構(gòu)是否實(shí)現(xiàn)了程序功能結(jié)構(gòu)圖的要求。程序追加處理說明書是在程序概要說明書的基礎(chǔ)上,對程序設(shè)計(jì)階段所增加的功能進(jìn)行補(bǔ)充說明。在程序編碼之前,一定要注意確認(rèn)程序追加處理說明書的功能是否能夠?qū)崿F(xiàn),有無設(shè)計(jì)上的問題或文字上的疏漏。程序設(shè)計(jì)書的構(gòu)成和理解

工作緩沖區(qū)格式定義表給出了程序中使用的主要工作緩沖區(qū)和變量的命名、類型、長度、初期值和編輯方法等說明。在理解工作緩沖區(qū)格式定義表中的各個變量的定義時,一定要對照相關(guān)的程序設(shè)計(jì)書的內(nèi)容。

模塊功能定義書是在程序處理概要說明書的基礎(chǔ)上對于每個程序模塊的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的說明,對于復(fù)雜的程序單元,一定要注意理解各個模塊功能定義書的詳細(xì)處理說明。對于程序設(shè)計(jì)階段補(bǔ)充的功能模塊和個別模塊的補(bǔ)充功能,在模塊功能定義書(補(bǔ)充)中給出了詳細(xì)說明。程序設(shè)計(jì)書的構(gòu)成和理解

輸入數(shù)據(jù)檢查處理說明書主要說明屏幕輸入項(xiàng)目的檢查條件,所有登錄到數(shù)據(jù)庫的數(shù)據(jù)都必須通過屏幕輸入檢查處理,以保證用戶數(shù)據(jù)的完整性和一致性。程序設(shè)計(jì)實(shí)例系統(tǒng)概要說明:本案例是一個學(xué)生成績管理子系統(tǒng)。它包含學(xué)生基本成績登錄、學(xué)生平均成績計(jì)算、班級平均成績計(jì)算、學(xué)生成績表生成等4個程序模塊

基本成績登錄畫面學(xué)生成績管理子系統(tǒng)學(xué)生基本成績文件學(xué)生平均成績計(jì)算(xscjp001)學(xué)生基本成績文件學(xué)生平均成績文件學(xué)生成績表生成(xscjp003)班級平均成績計(jì)算(xscjp002)學(xué)生基本成績文件班級平均成績文件學(xué)生平均成績文件學(xué)生基本成績文件學(xué)生成績表文件學(xué)生基本成績登錄(xscjp000)程序設(shè)計(jì)實(shí)例開發(fā)準(zhǔn)備確認(rèn)基本/詳細(xì)設(shè)計(jì)的成本物;制定工作計(jì)劃,作出開發(fā)計(jì)劃中日程表和開發(fā)計(jì)劃小日程表;確立開發(fā)體制(開發(fā)人員的構(gòu)成和組織體制);檢查所制定的工作計(jì)劃和工作內(nèi)容程序設(shè)計(jì)“學(xué)生成績管理系統(tǒng)流程圖”的處理要求,該系統(tǒng)由四個處理模塊構(gòu)成,它們是:①學(xué)生基本成績登錄;②學(xué)生平均成績計(jì)算;③班級平均成績計(jì)算;④學(xué)生成績表生成。

團(tuán)隊(duì)團(tuán)隊(duì)的含義:

團(tuán)隊(duì)是由員工和管理人員組成的一個共同體,該共同體合理利用每一個成員的知識和技能協(xié)同工作,解決問題,達(dá)到共同的目標(biāo)團(tuán)隊(duì)構(gòu)成團(tuán)隊(duì)的重要要素目標(biāo)(知道要向何處去)

人(人員的能力如何,技能是否互補(bǔ),人員的經(jīng)驗(yàn)如何)團(tuán)隊(duì)的定位(團(tuán)隊(duì)在企業(yè)中處于什么位置,由誰選擇和決定團(tuán)隊(duì)的成員,團(tuán)隊(duì)最終應(yīng)對誰負(fù)責(zé),團(tuán)隊(duì)采取什么方式激勵下屬;作為成員在團(tuán)隊(duì)中扮演什么角色?是訂計(jì)劃還是具體實(shí)施或評估?

)權(quán)限(整個團(tuán)隊(duì)在組織中擁有什么樣的決定權(quán),比方說財務(wù)決定權(quán)、人事決定權(quán)、信息決定權(quán);組織的基本特征)計(jì)劃(目標(biāo)的具體工作的程序)

團(tuán)隊(duì)群體群體是指兩個以上相互作用又相互依賴的個體,為了實(shí)現(xiàn)某些特定目標(biāo)而結(jié)合在一起。群體成員共享信息,作出決策,幫助每個成員更好地?fù)?dān)負(fù)起自己的責(zé)任。

團(tuán)隊(duì)團(tuán)隊(duì)與群體

團(tuán)隊(duì)與群體的區(qū)別(1)

領(lǐng)導(dǎo)方面。作為群體應(yīng)該有明確的領(lǐng)導(dǎo)人;團(tuán)隊(duì)可能就不一樣,尤其團(tuán)隊(duì)發(fā)展到成熟階段,成員共享決策權(quán)。(2)目標(biāo)方面。群體的目標(biāo)必須跟組織保持一致,但團(tuán)隊(duì)中除了這點(diǎn)之外,還可以產(chǎn)生自己的目標(biāo)。(3)協(xié)作方面。協(xié)作性是群體和團(tuán)隊(duì)最根本的差異,群體的協(xié)作性可能是中等程度的,有時成員還有些消極,有些對立;但團(tuán)隊(duì)中是一種齊心協(xié)力的氣氛。(4)責(zé)任方面。群體的領(lǐng)導(dǎo)者要負(fù)很大責(zé)任,而團(tuán)隊(duì)中除了領(lǐng)導(dǎo)者要負(fù)責(zé)之外,每一個團(tuán)隊(duì)的成員也要負(fù)責(zé),甚至要一起相互作用,共同負(fù)責(zé)。(5)技能方面。群體成員的技能可能是不同的

溫馨提示

  • 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

提交評論