freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

軟件工程軟件總體設(shè)計(jì)-展示頁(yè)

2024-11-26 08:41本頁(yè)面
  

【正文】 僅以二維圖形任務(wù)為例 7 PROCEDURE 創(chuàng)建二維圖形 REPEAT UNTIL 創(chuàng)建圖形任務(wù)終止 DO WHILE 出現(xiàn)與數(shù)字儀的交互時(shí) 數(shù)字儀接口任務(wù); 判斷作圖請(qǐng)求; 線:畫(huà)線任務(wù); 圓:畫(huà)圓任務(wù); . END; DO WHILE 出現(xiàn)與鍵盤的交互時(shí) 鍵盤接口任務(wù); 選擇分析或計(jì)算; 輔助視圖:輔助視圖任務(wù); 截面視圖:截面視圖任務(wù); . END . END PROCEDURE. 在這一抽象層次上,給出了初步過(guò)程表示,模 塊結(jié)構(gòu)已清楚明朗,求精過(guò)程還可進(jìn)行下去,直到得到源代碼。能完成幾何計(jì)算和截面視圖及輔助視圖的設(shè)計(jì),圖形設(shè)計(jì)結(jié)果存于圖形文件中。 例: 開(kāi)發(fā)一個(gè) CAD 軟件,能夠?qū)崿F(xiàn)繪圖系統(tǒng)的全部功能,供低級(jí) CAD 使用。層次結(jié)構(gòu)的上一層是下一層的抽象,下一層是上一層的求精。在可行性研究階段,軟件作為系統(tǒng)的 一個(gè)完整部件;在需求分析期間,軟件解法是使用在問(wèn)題環(huán)境內(nèi)熟悉的方式描述的;當(dāng)我們由總體設(shè)計(jì)向詳細(xì)設(shè)計(jì)過(guò)渡時(shí),抽象的程度也就隨之減少了;最后,當(dāng)源程序?qū)懗鰜?lái)以后,也就達(dá)到了抽象的最低層。在抽象的最高層次使用問(wèn)題環(huán)境的語(yǔ)言,以概括的方式敘述問(wèn)題的解法;在較低抽象層次采用更過(guò)程化的方法,把面向問(wèn)題的術(shù)語(yǔ)和面向?qū)崿F(xiàn)的術(shù)語(yǔ)結(jié)合起來(lái)敘述問(wèn)題的解法;最后,在最低的抽象層次用可以直接實(shí)現(xiàn)的方式敘述問(wèn)題的解法。這種層次的思維和解題方式必須反映在定義動(dòng)態(tài)系統(tǒng)的程序結(jié)構(gòu)之中,每級(jí)的一個(gè)概念將以某種方式對(duì)應(yīng)于程序的一組成分。 處理復(fù)雜系統(tǒng)的有效的方法是用層次的方式構(gòu)造和分析它。把這些共性集中和概括起來(lái),忽略它們之間的差異,這就是抽象。模塊化也有助于軟件開(kāi)發(fā)工程的組織管理,一個(gè)復(fù)雜的大型程序可以由許多程序員分工編寫(xiě)不同的模塊。這是由于程序錯(cuò)誤通常發(fā)生在有關(guān)的模塊及它們之間的接口中,所以采用了模塊化技術(shù)會(huì)使軟件容易測(cè)試和調(diào)試,進(jìn)而有助于提高軟件的可 靠性。 圖 42 模塊數(shù)目與工作量關(guān)系 雖然目前還不能精確地決定 M 的數(shù)值,但是在考慮模塊化的時(shí)候模塊數(shù)目與工作量關(guān)系曲線是有用的指南。折衷考慮這兩個(gè)因素,可得出了圖中所示的總成本曲線。 參閱圖 42,如果無(wú)限地分割軟件,最后為了開(kāi)發(fā)軟件而需要的工作量也就小得可以忽略了。對(duì)于問(wèn)題 P 1 和問(wèn)題 P 2 ,如 C( P 1 ) C( P 2 ), 則有 E( P 1 )> E( P 2 ) 因?yàn)橛?P 1 和 P 2 兩個(gè)問(wèn)題組合而成一個(gè)問(wèn)題的復(fù)雜程度大于分別考慮每個(gè)問(wèn)題時(shí)的復(fù)雜程度之和。下面定量地描述模塊化的根據(jù)。 在軟件開(kāi)發(fā)過(guò)程中,大型軟件由于其控制路徑多、涉及范圍廣且變量數(shù)目多使其總體結(jié)構(gòu)更為復(fù)雜,這樣與小型軟件相比較其可理解性和可閱讀性較差。 模塊化 模塊是數(shù)據(jù)說(shuō)明、可執(zhí)行語(yǔ)句等程序?qū)ο蟮募?,可以?duì)模塊單獨(dú)命名,而且可通過(guò)名字訪問(wèn),例如,過(guò)程、函數(shù)、子程序、宏等等都可作為模塊。 (2)怎樣表示不同的成分內(nèi)的功能細(xì)節(jié)和數(shù)據(jù)結(jié)構(gòu)。 圖 41 總體設(shè)計(jì)過(guò)程 軟件設(shè)計(jì)的原則 軟件設(shè)計(jì)經(jīng)過(guò)多年發(fā)展,已經(jīng)總結(jié)出一些基本的軟件設(shè)計(jì)概念與原則,這些概念與原則經(jīng)過(guò)時(shí)間的考驗(yàn)成為軟件設(shè)計(jì)人員完成復(fù)雜的軟件設(shè)計(jì)問(wèn)題的基礎(chǔ)。 4 根據(jù)總體設(shè)計(jì)階段的結(jié)果,修改更正在需求分析階段產(chǎn)生的初步的用戶手冊(cè)。使用的數(shù)據(jù)庫(kù)簡(jiǎn)介數(shù)據(jù)模式設(shè)計(jì)和物理設(shè)計(jì)等。 詳細(xì)項(xiàng)目開(kāi)發(fā)實(shí)現(xiàn)計(jì)劃。對(duì)測(cè)試的計(jì)劃、策略、方法和步驟提出明確的要求。 用戶手冊(cè)。這個(gè)階段的測(cè)試計(jì)劃僅從 I/O 功能做的黑盒法測(cè)試計(jì)劃,詳細(xì)設(shè)計(jì)時(shí)才能做詳細(xì)的測(cè)試用例與計(jì)劃。再做數(shù)據(jù)庫(kù)完整性與安全性設(shè)計(jì),改進(jìn)與優(yōu)化模式和子模式(用戶使用的數(shù)據(jù)庫(kù)視圖)的數(shù)據(jù)存取。對(duì)需要使用數(shù)據(jù)庫(kù)的應(yīng)用領(lǐng)域,分析員再進(jìn)一步根據(jù)系統(tǒng)數(shù)據(jù)要求完成數(shù)據(jù)庫(kù)的模式設(shè)計(jì),確定數(shù)據(jù)庫(kù)物理數(shù)據(jù)的結(jié)構(gòu)約束。當(dāng)數(shù)據(jù)流圖細(xì)化到適當(dāng)?shù)膶哟?,由結(jié)構(gòu)化的設(shè)計(jì)方法( SD)可以直接映射出結(jié)構(gòu)圖(系統(tǒng)結(jié)構(gòu))。功能的分解導(dǎo)致對(duì)數(shù)據(jù)流圖的進(jìn)一步細(xì)化,并選用相應(yīng)圖形工具來(lái)描述。用戶與有關(guān)技術(shù)專家認(rèn)真審查分析員推薦的方案,然后提交使用部門負(fù)責(zé)人審批,審批接受分析員推薦的最佳實(shí)施方案后,才能進(jìn)入軟件結(jié)構(gòu)設(shè)計(jì)。并準(zhǔn)備好系統(tǒng)流程圖,系統(tǒng)的物理元素清單(即構(gòu)成系統(tǒng)的程序、文件、數(shù)據(jù)庫(kù)、人工過(guò)程,文檔等),成本效益分析,實(shí)現(xiàn)系統(tǒng)的進(jìn)度計(jì)劃。這個(gè)方案僅是邊界的取舍,拋棄技術(shù)上行不通的方法,留下可能的實(shí)現(xiàn)策略,但并不評(píng)價(jià)這個(gè)方案。這些邊界代表某 種實(shí)現(xiàn)策略。而在分析階段提供的用數(shù)據(jù)流圖描述邏輯模型是總體設(shè)計(jì)的出發(fā)點(diǎn)。選擇分解功能與劃分模塊的設(shè)計(jì)原則等。確定模塊間的聯(lián)系,確定數(shù) 據(jù)結(jié)構(gòu)、文件結(jié)構(gòu)、數(shù)據(jù)庫(kù)模式,確定測(cè)試方法與策略。 總體設(shè)計(jì)的任務(wù)與步驟 總體設(shè)計(jì)任務(wù) 、軟件需求分析文檔,提出最佳推薦方案,用系統(tǒng)流程圖描述,組成系統(tǒng)物理元素清單,成本效益分析,系統(tǒng)的進(jìn)度計(jì)劃,供專家審定,審定后進(jìn)入設(shè)計(jì)。如 果用戶和使用部門的負(fù)責(zé)人接受了推薦的方案,應(yīng)該進(jìn)一步為這個(gè)最佳方案設(shè)計(jì)軟件結(jié)構(gòu)。然后從這些可供選擇的方案中選取若干個(gè)合理的方案,為每個(gè)合理的方案都準(zhǔn)備一份系統(tǒng)流程圖、列出組成系統(tǒng)的所有物理元素、進(jìn)行成本/效益分析,并且制定實(shí)現(xiàn)這個(gè)方案的進(jìn)度計(jì)劃。 ② 設(shè)計(jì)軟件結(jié)構(gòu),即將需求規(guī)格轉(zhuǎn)換為軟件體系結(jié)構(gòu)、劃分出程序的模塊組成、模塊間的相互關(guān)系 、確定數(shù)據(jù)結(jié)構(gòu)和算法等。軟件開(kāi)發(fā)階段包括總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼和測(cè)試等。 1 教案首頁(yè) 周次 日期 課時(shí)序 課 題 軟件總體設(shè)計(jì) 教學(xué)目的 要 求 理解軟件總體設(shè)計(jì)目標(biāo);掌握軟件總體設(shè)計(jì)的手段與方法,理解模塊獨(dú)立性概念;理解模塊化概念 重 點(diǎn) 軟件總體設(shè)計(jì)目標(biāo)、模塊化 難 點(diǎn) 軟件總體設(shè)計(jì)的手段與方法;模塊獨(dú)立性 教學(xué)過(guò)程 設(shè) 計(jì) 及 時(shí)間分配 第一章 軟件總體設(shè)計(jì)( 2*45‘) 第一節(jié) 總體設(shè)計(jì)的任務(wù)與步驟( 15‘) 第二節(jié) 軟件設(shè)計(jì)原則( 15‘) 第三節(jié) 面向數(shù)據(jù)流的設(shè)計(jì)方法( 30‘) 第四節(jié) 面向數(shù)據(jù)結(jié)構(gòu)的分析設(shè)計(jì)方法( 25‘) 第五節(jié) 總體設(shè)計(jì)文檔評(píng)審( 5‘) 教學(xué)場(chǎng)所 或教學(xué)方法 使用 教具 作 業(yè) 課 后 記 授課教師 2 第四章 軟件總體設(shè)計(jì) 問(wèn)題定義、可行性研究和需求分析構(gòu)成了軟件計(jì)劃階段,在這個(gè)階段確定了需要做什么,解決了系統(tǒng)開(kāi)發(fā)目標(biāo),系統(tǒng)需求規(guī)格。而軟件開(kāi)發(fā)階段的任務(wù)是回答系統(tǒng)如何實(shí)現(xiàn)的問(wèn)題。在總體設(shè)計(jì)中有兩個(gè)主要任務(wù): ① 將系統(tǒng)劃分成物 理元素,即程序、文件、數(shù)據(jù)庫(kù)、文檔等。 總體設(shè)計(jì)過(guò)程首先尋找實(shí)現(xiàn)目標(biāo)系統(tǒng)的各種不同的方案,需求分析階段得到的數(shù)據(jù)流圖是設(shè)想的各種方案的基礎(chǔ)與根據(jù)。應(yīng)該綜合分析比較這些合理的方案,從中選出一個(gè)最佳方案向用戶和使用部門負(fù)責(zé)人推薦。通常,設(shè)計(jì)出初步的軟件結(jié)構(gòu)后還要進(jìn)一步改進(jìn),從而得到更合理的結(jié)構(gòu),進(jìn)行必要的數(shù)據(jù)庫(kù)設(shè)計(jì),確定測(cè)試要求并且制定測(cè)試計(jì)劃。 ,將軟件功能需求分配給所劃分的最小單元模塊。 ,用戶手冊(cè),測(cè)試計(jì)劃,選用相關(guān)的軟件工具來(lái)描述軟件結(jié)構(gòu),結(jié)構(gòu)圖是經(jīng)常使用的軟件描述工具。 總體設(shè)計(jì)的過(guò)程 S1:設(shè)計(jì)系統(tǒng)方案 為了實(shí)現(xiàn)要求的系統(tǒng),系統(tǒng)分析員應(yīng)該提出并分析各種可能的方案,并且從中選出最佳的方案。數(shù)據(jù)流圖中的某些處理可以邏輯地歸并在一個(gè)邊界內(nèi)作為一組,另一些處理可以放在另一個(gè)邊界內(nèi)作為另一組。在可供選擇的多種方案中,進(jìn)一步設(shè)想與選擇較好的系統(tǒng)實(shí)現(xiàn)方案。 3 S2:選取合理的方案 分析員在通過(guò)問(wèn)題定義,可行性研究和需求分析后,產(chǎn)生了一系列可供選擇的方案,從中選取低成本,中成本,高成本三種方案,必要時(shí)再進(jìn)一步征求用戶意見(jiàn)。 S3:推薦最佳實(shí)施方案 綜合分析各種方案的優(yōu)缺點(diǎn), 推薦最佳方案,并做詳細(xì)的實(shí)現(xiàn)進(jìn)度計(jì)劃。 S4:功 能 分解 要把復(fù)雜的功能進(jìn)一步分解成簡(jiǎn)單的功能,遵循模塊劃分獨(dú)立性原則(即做到模塊功能單一,模塊與外部聯(lián)系很弱,僅有數(shù)據(jù)聯(lián)系),使劃分過(guò)的模塊的功能對(duì)大多數(shù)程序員而言都是易懂的。 S5:軟件 結(jié) 構(gòu)設(shè)計(jì) 用層次圖( HC)、結(jié)構(gòu)圖(系統(tǒng)結(jié)構(gòu))來(lái)描述模塊組成的層次系統(tǒng),即 反映了軟件結(jié)構(gòu)。 S6:數(shù)據(jù)庫(kù)設(shè)計(jì)、文件結(jié)構(gòu)的設(shè)計(jì) 根據(jù)系統(tǒng)的數(shù)據(jù)要求,確定系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)、文件結(jié)構(gòu)。進(jìn)行數(shù)據(jù)庫(kù)子模式設(shè)計(jì),設(shè)計(jì)用戶使用的數(shù)據(jù)視圖。 S7:制定測(cè)試計(jì)劃 為保證軟件的可測(cè)試性,軟件設(shè)計(jì)一開(kāi)始就要考慮軟件 測(cè)試問(wèn)題。 S8:編寫(xiě)總體設(shè)計(jì)文檔 對(duì)需求分析階段編寫(xiě)的用戶手冊(cè)進(jìn)一步修訂。測(cè)試計(jì)劃。 給出系統(tǒng)目標(biāo)、總體設(shè)計(jì)、數(shù)據(jù)設(shè)計(jì)、處理方式設(shè)計(jì)、運(yùn)行設(shè)計(jì)和出錯(cuò)設(shè)計(jì)等。數(shù)據(jù)庫(kù)設(shè)計(jì)結(jié)果。 S9:審查與復(fù)審總體設(shè)計(jì)文檔。 總體設(shè)計(jì)過(guò)程如圖 41 所示。主要內(nèi)容包括有: (1)將軟件劃分成若干獨(dú)立成分的依據(jù)。 (3)怎樣統(tǒng)一衡量軟件設(shè)計(jì)的技術(shù)質(zhì)量。模塊化就是把程序劃分成若干個(gè)模塊,每個(gè)模塊具有一個(gè)確定的子功能,把這些模塊集成一個(gè)整體,可以完成指定的功能。模塊化增強(qiáng)了對(duì)復(fù)雜 的大型程序的可理解性與可管理性。 5 定義函數(shù) C( x)為問(wèn)題 x 的復(fù)雜程度,函數(shù) E( x)為解決間題 x 需要的工作量(時(shí)間)。 C( P 1 +P 2 )> C( P 1 )+ C( P 2 )綜上所述,可得到下面的不等式: E( P 1 +P 2 )> E( P 1 )+ E( P 2 ) 由此可知,把 復(fù)雜的問(wèn)題分解成許多容易解決的較小問(wèn)題,原來(lái)的問(wèn)題也就容易解決了,這就是模塊化提出的根據(jù)。事實(shí)上,當(dāng)模塊數(shù)目增加時(shí),每個(gè)模塊的規(guī)模將減小,雖然開(kāi)發(fā)單個(gè)模塊需要的工作量減少了 ,但是隨著模塊數(shù)目增加,設(shè)計(jì)模塊間接口所需要的工作量將增加。每個(gè)程序都相應(yīng)地有一個(gè)最適當(dāng)?shù)哪K數(shù)目 M,使得系統(tǒng)的開(kāi)發(fā)工作量為最小。 采用模塊化原理可以使軟件結(jié)構(gòu)清晰,不僅容易實(shí)現(xiàn)設(shè)計(jì),也使設(shè)計(jì)出的軟件的可閱讀性和可理解性大大增強(qiáng)。因?yàn)樽儎?dòng)往往只涉及少數(shù)幾個(gè)模塊,所以模塊化能夠提高軟件的可修改性。 抽象與逐步求精 6 在現(xiàn)實(shí)世界中,事物、狀態(tài)或過(guò)程之間存在共性。抽象就是抽出事物的本質(zhì)特性而暫時(shí)不考慮它們的細(xì)節(jié)。一個(gè)復(fù)雜的動(dòng)態(tài)系統(tǒng)首先可以用一些高級(jí)的抽象概念構(gòu)造和理解,這些高級(jí)概念又可以用一些較低級(jí)的概念構(gòu)造和理解, 如此進(jìn)行下去,直至最低層次的具體元素。 當(dāng)考慮對(duì)任何問(wèn)題的模塊化解法時(shí),可以提出許多抽象的層次。 軟件工程過(guò)程的每一步都是對(duì)軟件解法的抽象層次的一次精化。 逐步求精與抽象是緊密相關(guān),隨著軟件開(kāi)發(fā)工程的進(jìn)展,在軟件結(jié)構(gòu)每一層中的模塊,表示了對(duì)軟件抽象層次的一次精化。事實(shí)上,軟件結(jié)構(gòu)頂層的模塊,控制了系統(tǒng)的主要功能并且影響全局;在軟件結(jié)構(gòu)底層的模塊,完成對(duì)數(shù)據(jù)的一個(gè)具體處理,用自項(xiàng)向下由抽象到具體的方式分配控制,簡(jiǎn)化了軟件的設(shè) 計(jì)和實(shí)現(xiàn),提高了軟件的可理解性和可測(cè)試性,并且使軟件更容易維護(hù)。 抽象層次 1 用問(wèn)題所處環(huán)境的術(shù)語(yǔ)描述這個(gè)軟件 該軟件系統(tǒng)具有與可視化通信的圖形界面,能用鼠標(biāo)代替繪圖工具劃出各種曲線和直線。 抽象層次 2 所用術(shù)語(yǔ)不再是問(wèn)題所處環(huán)境的語(yǔ)言,但并沒(méi)給出怎樣做的信息,不能直接實(shí)現(xiàn)。 信息隱蔽和局部化 應(yīng)用模塊化原理時(shí),將產(chǎn)生的一個(gè)問(wèn)題:為了得到一組模塊,應(yīng)該如何分解軟件結(jié)構(gòu)。隱蔽表明有效的模塊化可以通過(guò)定義一組獨(dú)立的模塊而實(shí)現(xiàn),這些獨(dú)立的模塊間僅交換為完成系統(tǒng)功能而必須交換的信息。局部化的概念和信息隱蔽概念密切相關(guān)。在模塊中使用局部數(shù)據(jù)元素就是局部化的一個(gè)例子。 8 如果在測(cè)試期間和以后的軟件維護(hù)期間需要修改軟件,那么使用信息隱蔽原理作為模塊化系統(tǒng)設(shè)計(jì)的標(biāo)準(zhǔn)就會(huì)帶來(lái)極大好處。 模塊獨(dú)立性 模塊獨(dú)立性是 指軟件系統(tǒng)中的每個(gè)模塊只具有軟件要求的具體子功能,而與軟件系統(tǒng)中其他的模塊接口是簡(jiǎn)單的。 模塊獨(dú)立性的概念體現(xiàn)了模塊化、抽象、信息隱蔽和局部化概念。換句話說(shuō),希望這樣設(shè)計(jì)軟件結(jié)構(gòu),使得每個(gè)模塊完成一個(gè)相對(duì)獨(dú)立的特定子功能,并且與其他模塊之間的關(guān)系很簡(jiǎn)單。耦合表示不同模塊間互相連接的緊 密程度;內(nèi)聚表示一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密程度。耦合強(qiáng)弱取決于模塊間接口的復(fù)雜程度,調(diào)用模塊的方式,以及通過(guò)接口的信息。在松散耦合的系統(tǒng)中測(cè)試或維護(hù)任何一個(gè)模塊,而不影響系統(tǒng)的其他模塊。因此,模塊間的耦
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1