第14章提高軟件設(shè)計質(zhì)量_第1頁
第14章提高軟件設(shè)計質(zhì)量_第2頁
第14章提高軟件設(shè)計質(zhì)量_第3頁
第14章提高軟件設(shè)計質(zhì)量_第4頁
第14章提高軟件設(shè)計質(zhì)量_第5頁
已閱讀5頁,還剩31頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、質(zhì)量保證和管理第十四章 提高設(shè)計質(zhì)量Start HereContact Us Contact Us©Co©llaCgoelolafgSeooftfwSaorfetwBaeriehaBnegihUanigveUrnsivtyersity:/softqma:.esodfut.qcmn 主要內(nèi)容設(shè)計是把需求轉(zhuǎn)換為表示的過程,是開發(fā)的重要階段之一。設(shè)計體系結(jié)構(gòu)設(shè)計模式設(shè)計優(yōu)化一些典型的系統(tǒng)設(shè)計數(shù)據(jù)庫設(shè)計Contact Us©Collage of Software Beihang University: softqm設(shè)計14.1設(shè)計的目標及階段設(shè)計評價標準設(shè)計原則Conta

2、ct Us©Collage of Software Beihang University: softqm設(shè)計的目標基本目標:合適性、完整性其它可靠性(容錯性、故障轉(zhuǎn)移) 性能和安全性可擴展性(增加用戶數(shù)量等)可定制性或可移植性(根據(jù)客戶群或市場進行調(diào)整) 可維護性(排錯+新需求)可重用性Contact Us©Collage of Software Beihang University: softqm設(shè)計的階段體系結(jié)構(gòu)設(shè)計(也叫總體設(shè)計、概要設(shè)計) 將需求轉(zhuǎn)化為系統(tǒng)結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu),并定義子系統(tǒng)(組間)和它們之間的通信或接口。 對結(jié)構(gòu)表示進行細化,得到詳細的詳細設(shè)計數(shù)據(jù)結(jié)構(gòu)和算

3、法,對所有的類的描述,從而給程序員一個清晰的規(guī)范說明。Contact Us©Collage of Software Beihang University: softqm設(shè)計原則Contact Us©Collage of Software Beihang University: softqm設(shè)計原則Contact Us: softqm常做、早做設(shè)計原則Contact Us©Collage of Software Beihang University: softqm面向?qū)ο笤O(shè)計的SOLID原則SRP Open-Closed Principle,開閉原則OCP實體應(yīng)該是

4、可擴展的,而不可修改的。LSPISPDIPContact Us©Collage of Software Beihang University: softqm體系結(jié)構(gòu)14.2體系結(jié)構(gòu)為系統(tǒng)提供一個結(jié)構(gòu)、行為和屬性的高級抽象,由系統(tǒng)的元素、元素間相互作用、元素集成模式以及這些模式的約束組成。體系結(jié)構(gòu)的模型和視圖體系結(jié)構(gòu)的分類體系結(jié)構(gòu)的設(shè)計異步體系結(jié)構(gòu)的選擇Contact Us©Collage of Software Beihang University: softqm體系結(jié)構(gòu)的模型結(jié)構(gòu)模型框架模型動態(tài)模型 研究構(gòu)造系統(tǒng)的步驟和過程。因而結(jié)構(gòu)是遵循某些過程的結(jié)果。過程模型功能模型

5、Contact Us©Collage of Software Beihang University: softqm體系結(jié)構(gòu)的視圖 最抽象的視圖,一般用系統(tǒng)用戶(非 IT 專業(yè)用戶) 熟悉的術(shù)語來描述。概念視圖用于定義應(yīng)用程序的功能需求和商業(yè)用戶視圖,以便生成業(yè)務(wù)模型。概念視圖 顯示主要的功能組件和它們在系統(tǒng)中的,而不邏輯視圖涉及功能的實現(xiàn)細節(jié)。架構(gòu)師創(chuàng)建的應(yīng)用程序模型就是業(yè)務(wù)模型的邏輯視圖。 最不抽象的,它們表示特定的實現(xiàn)組件和它們之間物理視圖的。物理視圖中的每個元素一般都由設(shè)計和開發(fā)過程來實現(xiàn),如硬件系統(tǒng)Contact Us©Collage of Software Bei

6、hang University: softqm體系結(jié)構(gòu)的分類 Client/Server,客戶端/服務(wù)器結(jié)構(gòu) 服務(wù)器集中管理數(shù)據(jù),計算任務(wù)分散在客戶機上。C/S結(jié)構(gòu)客戶機和服務(wù)器之間通過協(xié)議進行通訊。 Browser/Server,瀏覽器/服務(wù)器結(jié)構(gòu) 極少數(shù)業(yè)務(wù)邏輯在前端實現(xiàn),主要業(yè)務(wù)邏輯在服務(wù)器端實現(xiàn)。B/S結(jié)構(gòu) 中間件在操作系統(tǒng)、和數(shù)據(jù)庫之上,應(yīng)用中間件多層結(jié)構(gòu)之下,它掩蓋了底層的異構(gòu)型,為上層的應(yīng)用提供運行和開發(fā)環(huán)境。微軟的COM技術(shù) 為解決兩層分布式體系結(jié)構(gòu)的不足,提出了三層或多層分布式體系結(jié)構(gòu)。Contact Us©Collage of Software Beihang U

7、niversity: softqm多層分布式體系結(jié)構(gòu)的設(shè)計主要層次設(shè)計要點Contact Us©Collage of Software Beihang University: softqm安全性客戶對數(shù)據(jù)服務(wù)器的,保護了數(shù)據(jù)庫的安全 性緩沖了客戶端與數(shù)據(jù)庫的實際連接,使數(shù)據(jù)庫的實際連接數(shù)量遠小于客戶端應(yīng)用的數(shù)量。易維護業(yè)務(wù)規(guī)則變化時,客戶端程序基本不做改動響應(yīng)快通過負載均衡及中間層緩存數(shù)據(jù),提升響應(yīng)速度擴展靈活業(yè)務(wù)增大時,在中間層部署的應(yīng)用服務(wù)器。表示層提供人機交互界面,完成數(shù)據(jù)的輸入和結(jié)果的顯示業(yè)務(wù)邏輯層實現(xiàn)具體的業(yè)務(wù)處理邏輯數(shù)據(jù)層就是數(shù)據(jù)庫系統(tǒng),負責(zé)對數(shù)據(jù)庫數(shù)據(jù)的讀寫異步體系結(jié)構(gòu)

8、運行時間較長的進程應(yīng)以異步方式運行。異步運行某個進程意味著請求發(fā)出之后調(diào)用就立即返回,而不需要等待該請求執(zhí)行完畢。異步切斷了系統(tǒng)中不同進程間的連接,讓它們以不同速度運行。相比同步系統(tǒng),異步結(jié)構(gòu)的優(yōu)點:更快的響應(yīng)時間負載平衡具有更好的容錯能力支持斷續(xù)連接Contact Us©Collage of Software Beihang University: softqm設(shè)計模式設(shè)計14.3設(shè)計模式是對于某一類解決方案。的可重用的設(shè)計模式:設(shè)計模式使得人們可以更加簡單和方便地去復(fù)用的設(shè)計和體系結(jié)構(gòu),從而能夠幫助設(shè)計者更快更好地完設(shè)計。的永恒:模式是一條由三部分組成的規(guī)則,它表示了一個特定環(huán)境

9、、一個和一個解決方案之間的。每一個模式描述了一個在我們周圍不斷重復(fù)發(fā)生的,以及該的解決方案的。這樣,你就能一次又一次地使用該方案而不必做重復(fù)勞動。Contact Us©Collage of Software Beihang University: softqm設(shè)計模式的基本要素、解決方案模式名稱及其解決方案效果Contact Us©Collage of Software Beihang University: softqm單例模式-Singleton名稱:Singleton:一個類,在整個系統(tǒng)中只此類只有一個對象。比如說當(dāng)建立一個數(shù)據(jù)庫操作類,用于總管所有的數(shù)據(jù)庫操作,那么

10、此時可能不希望這個類擁有多個對象而產(chǎn)生干擾。解決方案:構(gòu)造提供靜態(tài)共有效果:。以獲取此類的唯一實例。很明顯,解決了我們所要解決的,在此實現(xiàn)之下,無法構(gòu)建除了唯一對象以外的新對象。Contact Us©Collage of Software Beihang University: softqmMVC模式MVC模式-View-Controller模式M模型-視圖-器模式MVC設(shè)計模式將模型、視圖與器分隔開來。模型:封裝任務(wù)的代碼。數(shù)據(jù)和對這些數(shù)據(jù)的操作。它是執(zhí)行視圖:向用戶顯示信息。它獲得來自模型的數(shù)據(jù),決定以什么樣的方式展示給用戶。器:和視圖使用,捕捉鼠標移動、點擊和鍵盤輸入等,將其轉(zhuǎn)

11、化為服務(wù)請求,然后傳給模型或視圖。用戶通過器交互。Contact Us©Collage of Software Beihang University: softqm設(shè)計優(yōu)化14.4模塊設(shè)計和接口設(shè)計的要求詳細設(shè)計的要求界面設(shè)計的要求Contact Us©Collage of Software Beihang University: softqm模塊設(shè)計準則模塊劃分是否合適、模塊是否具有一定的每個模塊的功能和接口定義是否正確數(shù)據(jù)結(jié)構(gòu)的定義是否正確性模塊內(nèi)的數(shù)據(jù)流和流的定義是否正確Contact Us©Collage of Software Beihang Unive

12、rsity: softqm接口設(shè)計的準則用戶接口設(shè)計是否正確全面,是否有單獨的用戶 界面設(shè)計文檔。是否包含有硬件接口設(shè)計,硬件接口設(shè)計是否正 確且全面。概要設(shè)計規(guī)格說明是否包含有件接口設(shè)計是否正確且全面。接口設(shè)計,軟口設(shè)計是否正是否包含有通口設(shè)計,通確且全面。是否描述了各類接口的功能、各接口與其他接口之間的已經(jīng)接口的設(shè)計是否具有可測試性Contact Us©Collage of Software Beihang University: softqm詳細設(shè)計的要求詳細設(shè)計的目標任務(wù)為每個模塊確定采用的算法 確定每一模塊使用的數(shù)據(jù)結(jié)構(gòu)確定模塊接口的細節(jié)為每一個模塊設(shè)計出一組測試用例詳細設(shè)

13、計的原則盡量少用GOTO語句使用單單出口的結(jié)構(gòu)結(jié)構(gòu)內(nèi)部采用順序、選擇、循環(huán)自頂向下逐步求精Contact Us©Collage of Software Beihang University: softqm詳細設(shè)計的要求詳細設(shè)計的表示流程圖偽碼IPO圖(Input-Process-Output) PAD(Problem Analysis Diagram)判定表Contact Us©Collage of Software Beihang University: softqm偽碼偽碼是用介于自然語言和計算機語言之間的文字和符號(數(shù)學(xué)符號)來描述算法。輸入3個數(shù),打印輸出其中最大的

14、數(shù)。偽碼:Begin(算法開始) 輸入 A,B,CIF A>B 則 AMax 否則 BMaxIF C>Max 則 CMax Print MaxEnd (算法結(jié)束)Contact Us©Collage of Software Beihang University: softqmIPO圖IPO圖表示輸入-過程-輸出之間的處理輸入輸出Contact Us©Collage of Software Beihang University: softqm判定表判定表是描述各條件組合產(chǎn)生不同的結(jié)構(gòu)的表格。Contact Us©Collage of Software B

15、eihang University: softqm你覺得疲倦嗎?YYYYNNNN你對內(nèi)容感嗎?YYNNYYNN書中內(nèi)容使你糊涂嗎?YNYNYNYN建議請回到本章開頭重讀繼續(xù)讀下去跳到下一章去讀停止閱讀,請休息界面設(shè)計的要求用戶界面必須保持一致性用戶界面應(yīng)該有自助功能用戶界面易懂性Contact Us©Collage of Software Beihang University: softqm14.5 典型的系統(tǒng)結(jié)構(gòu)J2EE系統(tǒng)使用統(tǒng)一的Jave2開發(fā)平臺簡化企業(yè)解決方案的開發(fā)、部署和管理。.NET系統(tǒng)一個,構(gòu)建與XML和互聯(lián)網(wǎng)標準之上,為用戶提供web服務(wù)的開發(fā)、管理、應(yīng)用和體驗。C

16、ontact Us©Collage of Software Beihang University: softqm典型的J2EE系統(tǒng)結(jié)構(gòu)Web層Web服務(wù)器客戶層瀏覽器業(yè)務(wù)邏輯層EJB容器企業(yè)信息系統(tǒng)層Application Client Container客戶機J2EE服務(wù)器EIS服務(wù)器Contact Us©Collage of Software Beihang University: softqm典型的.Net系統(tǒng)結(jié)構(gòu)表示層業(yè)務(wù)層數(shù)據(jù)層XMLSOAP制Contact Us©Collage of Software Beihang University: softq

17、m14.6 數(shù)據(jù)庫設(shè)計質(zhì)量設(shè)計數(shù)據(jù)庫是指對于一個給定的應(yīng)用環(huán)境,構(gòu)造最 優(yōu)的數(shù)據(jù)模式,建立數(shù)據(jù)庫,使其能夠有效地數(shù)據(jù),并能滿足各種應(yīng)用需求。對數(shù)據(jù)庫進行質(zhì)量數(shù)據(jù)層構(gòu)建數(shù)據(jù)字典設(shè)計數(shù)據(jù)流設(shè)計方面劃分為三步:Contact Us©Collage of Software Beihang University: softqm數(shù)據(jù)層構(gòu)建表示層數(shù)據(jù)元數(shù)據(jù)業(yè)務(wù)層描述數(shù)據(jù)存取的數(shù)據(jù)數(shù)據(jù)層數(shù)據(jù)層簡化對數(shù)據(jù)庫的操作數(shù)據(jù)提供層返回需要的數(shù)據(jù)Contact Us©Collage of Software Beihang University: softqm數(shù)據(jù)字典的設(shè)計數(shù)據(jù)字典說明了每個字段的用途。Contact Us©Collage of Software Beihang University: softqm字段名稱字段類型說明備注IdInt主鍵AccountNvarchar(50)賬號PasswordNvarchar(50)EnabledBit賬戶是否禁用0代表禁用1代表可用數(shù)據(jù)流設(shè)計數(shù)據(jù)流設(shè)計標識所有系統(tǒng)數(shù)據(jù)的處理流向以及運 行過程。數(shù)據(jù)流設(shè)計貫穿整個系統(tǒng)的始終首先,以業(yè)務(wù)為主線,搞清每個業(yè)務(wù)的每個環(huán)節(jié)的流程,涉及部門、輸入輸出項。然后,以數(shù)據(jù)為主線,

溫馨提示

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

最新文檔

評論

0/150

提交評論