【文章內(nèi)容簡介】
些對象的組合來創(chuàng)建具體的應(yīng)用。面向?qū)ο笤O(shè)計具有基于抽象、信息隱藏、功能獨立和模塊性構(gòu)造系統(tǒng)的能力。對于面向?qū)ο蟮南到y(tǒng),可以定義一個四個層次的設(shè)計金字塔:子系統(tǒng)層;類及對象層;消息層;責(zé)任層。l 面向?qū)ο笤O(shè)計技術(shù)l Coad/Yourdon方法 l Booch方法 l OMT方法 l ll 面向?qū)ο笤O(shè)計過程系統(tǒng)設(shè)計過程:將分析模型劃分為子系統(tǒng);子系統(tǒng)分配及與問題的并發(fā)性;任務(wù)管理;數(shù)據(jù)管理;資源管理;人機界面;子系統(tǒng)間通信對象設(shè)計過程:對象描述;算法與數(shù)據(jù)結(jié)構(gòu)設(shè)計;接口設(shè)計與模塊化l 設(shè)計模式概述設(shè)計模式就是將面向?qū)ο筌浖脑O(shè)計經(jīng)驗記錄下,可供設(shè)計者能夠復(fù)用的設(shè)計方案。設(shè)計模式極大提高了面向?qū)ο筌浖_發(fā)的效率,降低了軟件的復(fù)雜度。在軟件設(shè)計中使用設(shè)計模式,將使用開發(fā)出來的軟件更容易理解、更容易維護、更容易擴展,使用設(shè)計模式同時也能夠提高開發(fā)團隊和個人的開發(fā)能力。l 設(shè)計模式基本組成模式名稱:惟一標(biāo)識一個設(shè)計模式。問題:描述應(yīng)該在何時使用該模式。l l ll l l l l l l l ll l ll l ll ll 解決方案:描述設(shè)計的組成要素,以及它們之間的相互關(guān)系及各自的職責(zé)與相互之間協(xié)作的方式。l 效果:描述應(yīng)用設(shè)計模式的效果,以及使用設(shè)計模式必須考慮的限制和約束因素。l 設(shè)計模式分類l 面向?qū)ο竽J?l 代碼模式l 框架應(yīng)用模式l 創(chuàng)建型模式、結(jié)構(gòu)型模式與行為型模式 l 類模式與對象模式l 如何使用設(shè)計模式l 針對接口編程,而不是針對實現(xiàn)編程 l 優(yōu)先使用對象組合,而不是類繼承 l 找出變化并封裝l 系統(tǒng)設(shè)計是一系列迭代的過程,主要任務(wù)包括數(shù)據(jù)結(jié)構(gòu)、體系結(jié)構(gòu)、接口及過程細節(jié)的設(shè)計等,而設(shè)計方法是軟件設(shè)計活動中實現(xiàn)設(shè)計模型的方法。l 系統(tǒng)設(shè)計方法主要包括面向過程的結(jié)構(gòu)化設(shè)計方法、面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計,以及面向?qū)ο蟮脑O(shè)計方法與設(shè)計模式。第10章數(shù)據(jù)庫設(shè)計 l 數(shù)據(jù)模型分類l 概念數(shù)據(jù)模型 l 結(jié)構(gòu)數(shù)據(jù)模型 l 物理數(shù)據(jù)模型l 實體聯(lián)系(ER)模型l 實體 l 屬性 l 聯(lián)系 l 實體型 l 實體集 l 鍵 l 域l 數(shù)據(jù)模型l 層次數(shù)據(jù)模型(hierarchical model)l 網(wǎng)狀數(shù)據(jù)模型(network model)l 關(guān)系數(shù)據(jù)模型(relational model)l 面向?qū)ο竽P停╫bject oriented model)l 數(shù)據(jù)規(guī)范化的基本概念l 函數(shù)依賴l 非平凡函數(shù)依賴 l 完全函數(shù)依賴 l 部分函數(shù)依賴l 傳遞函數(shù)依賴 l 鍵l 范式l l l l 第一范式(1NF)第二范式(2NF)第三范式(3NF)BC范式(BCNF) l 數(shù)據(jù)庫需求分析l l l l l l l l l l l l l l l l l l l l l 數(shù)據(jù)邊界的確定 數(shù)據(jù)環(huán)境的確定 數(shù)據(jù)內(nèi)部關(guān)系 數(shù)據(jù)字典數(shù)據(jù)性能需求數(shù)據(jù)需求分析說明書l 數(shù)據(jù)庫概念設(shè)計概念設(shè)計與概念模型 概念設(shè)計的主要方法 分解與抽象 局部概念模式 全局概念模式l 數(shù)據(jù)庫邏輯設(shè)計初始模式的形成 子模式設(shè)計應(yīng)用程序概要設(shè)計 模式評審 修正模式l 數(shù)據(jù)庫物理設(shè)計存儲記錄結(jié)構(gòu)設(shè)計 確定數(shù)據(jù)存放位置 存取方法設(shè)計完整性和安全考慮 程序設(shè)計l 數(shù)據(jù)庫系統(tǒng)普遍采取數(shù)據(jù)模型表示和處理客觀事物的數(shù)據(jù)特征與信息。數(shù)據(jù)模型主要由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和完整性約束三部分組成,從抽象層次上描述和模擬了系統(tǒng)的靜態(tài)特征、動態(tài)行為和約束條件。l 關(guān)系數(shù)據(jù)庫中的關(guān)系必須滿足一定的要求,即滿足不同的范式。目前關(guān)系數(shù)據(jù)庫中常用的范式包括:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)和BCNF。l 數(shù)據(jù)庫設(shè)計主要包括需求分析、概念設(shè)計、邏輯設(shè)計和物理設(shè)計等幾個階段。第11章用戶界面設(shè)計l l ll l l l l l l l l ll l l l l ll l l l l l l l l l l ll 界面設(shè)計目標(biāo)可用性目標(biāo):可行性、有效性、易學(xué)性、易記性、安全性、通用性用戶體驗?zāi)繕?biāo):令人滿意、令人愉快、引人入勝、富有啟發(fā)、激發(fā)創(chuàng)造??可用性目標(biāo)主要從客觀角度來評價系統(tǒng)界面,而用戶體驗?zāi)繕?biāo)則是從用戶主觀感受的角度來評價系統(tǒng)界面。l 界面設(shè)計原則可視性:將系統(tǒng)功能呈現(xiàn)得一目了然。反饋性:返回與活動相關(guān)的信息,以便用戶能夠繼續(xù)這個活動。限制性:將用戶的行為限制在一定的范圍內(nèi)。對應(yīng)性:明確系統(tǒng)某個控制與其控制效果之間的對應(yīng)關(guān)系。一致性:用相似的元素表現(xiàn)相似的操作或相似的任務(wù)。啟示性:界面元素應(yīng)給予用戶某種提示。l 界面設(shè)計過程標(biāo)識出用戶的真實需要并建立需求模型 設(shè)計出候選方案構(gòu)建或?qū)崿F(xiàn)設(shè)計的原型版本 對界面設(shè)計進行評估l 界面設(shè)計分析技術(shù)GOMS模型及GOMS擊鍵層模型 Hick律 Fitts律l 界面設(shè)計方法原型設(shè)計方法以用戶為中心的設(shè)計方法 用戶界面設(shè)計的支持工具l 構(gòu)造性評估與總結(jié)性評估構(gòu)造性評估:在設(shè)計過程中對所設(shè)計的系統(tǒng)或產(chǎn)品界面進行評估以確保其滿足用戶需求??偨Y(jié)性評估:對已經(jīng)完成的產(chǎn)品或系統(tǒng)界面進行評估。l 評估范型快速評估 可用性測試 實地研究 預(yù)測性評估l 評估方法與技術(shù)觀察用戶征求用戶意見 征求專家意見 用戶測試用戶執(zhí)行情況的分析模型l 評估框架明確(Determine)l l l l l l l l l發(fā)掘(Explore)選擇(Choose)標(biāo)識(Identify)決定(Decide)評估(Evalute)用戶界面體現(xiàn)了用戶利用系統(tǒng)完成任務(wù)的方式以及系統(tǒng)對用戶行為的響應(yīng)方式,一個沒有良好的用戶界面設(shè)計的系統(tǒng)很可能會成為一個沒有用戶的系統(tǒng)??捎眯阅繕?biāo)與用戶體驗?zāi)繕?biāo)。界面設(shè)計的量化模型:GOMS模型及其子模型擊鍵層模型,Hick律和Fitts律。構(gòu)造性評估與總結(jié)性評估。第12章系統(tǒng)設(shè)計文檔(結(jié)構(gòu))設(shè)計說明l l l l l l l l l l l l l l l l l l l l l l l l l 引言 引用文件系統(tǒng)級設(shè)計決策系統(tǒng)體系結(jié)構(gòu)設(shè)計:總體設(shè)計;系統(tǒng)部件設(shè)計;動態(tài)交互設(shè)計;接口設(shè)計 運行設(shè)計系統(tǒng)出錯處理設(shè)計 系統(tǒng)維護設(shè)計 尚未解決的問題 需求的可追蹤性 注解 附錄接口設(shè)計說明引言 引用文件 接口設(shè)計需求的可追蹤性 注解 附錄軟件(結(jié)構(gòu))設(shè)計說明引言 引用文件軟件級設(shè)計決策軟件體系結(jié)構(gòu)設(shè)計:程序結(jié)構(gòu)設(shè)計;全局數(shù)據(jù)結(jié)構(gòu)設(shè)計;軟件配置項設(shè)計;動態(tài)交互設(shè)計;接口設(shè)計 軟件詳細設(shè)計 需求的可追蹤性 注解 附錄l l l l l l l l ll l l l l引言 引用文件數(shù)據(jù)庫級設(shè)計決策 數(shù)據(jù)庫詳細設(shè)計用于數(shù)據(jù)庫操縱或訪問的軟件配置項的詳細設(shè)計 需求的可追蹤性 注解 附錄小節(jié)根據(jù)《GB/T 85672006 計算機軟件文檔編制規(guī)范》,系統(tǒng)設(shè)計文檔主要包括系統(tǒng)/子系統(tǒng)設(shè)計(結(jié)構(gòu)設(shè)計)說明(SSDD)、接口設(shè)計說明(IDD)、軟件(結(jié)構(gòu))設(shè)計說明(SDD)和數(shù)據(jù)庫設(shè)計說明(DBDD)。系統(tǒng)/子系統(tǒng)設(shè)計(結(jié)構(gòu)設(shè)計)說明(SSDD)描述了系統(tǒng)(或子系統(tǒng))的系統(tǒng)級(或子系統(tǒng)級)設(shè)計決策與體系結(jié)構(gòu)設(shè)計。接口設(shè)計說明(IDD)描述了一個或多個系統(tǒng)、子系統(tǒng)、硬件配置項(HWCI)、計算機軟件配置項(CSCI)、用戶或其他系統(tǒng)部件的接口特性。軟件(結(jié)構(gòu))設(shè)計說明(SDD)描述了計算機軟件系統(tǒng)的軟件級設(shè)計決策、軟件體系結(jié)構(gòu)設(shè)計(概要設(shè)計)與詳細設(shè)計。數(shù)據(jù)庫(頂層)設(shè)計說明(DBDD)描述了數(shù)據(jù)庫的設(shè)計。系統(tǒng)設(shè)計文檔可以使用自然語言,可以使用形式化語言,也可以根據(jù)具體的系統(tǒng)設(shè)計方法使用各種圖形工具,還可以根據(jù)實際情況混合使用多種表現(xiàn)形式。第二篇:《軟件系統(tǒng)分析與設(shè)計》期末復(fù)習(xí)知識點總結(jié)一、方法論模型。BOOCH、OMT、OOSE、CoadYourdon(前三者組成UML)UML包括9種圖,分別為用例圖、靜態(tài)圖(包圖、類圖、對象圖)、實現(xiàn)圖(構(gòu)件圖、部署圖)、行為圖(活動圖、狀態(tài)圖、交互圖(順序圖、協(xié)作圖))基本規(guī)范,泛化關(guān)聯(lián),包含關(guān)聯(lián),擴展關(guān)聯(lián)基本模型——類圖、需求模型——用例圖、輔助模型——其他各種圖兩大工具:Rose、PowerDesigner方法三要素:模型、工具和過程結(jié)構(gòu)化分析三視圖模型ER、DFD、STDOMT方法的三大模型:對象模型、功能模型、動態(tài)模型Coad/Yourdon方法的五大層次:對象類、結(jié)構(gòu)、主題、屬性、服務(wù)二、基本建模(類圖與對象圖)類之間的關(guān)系:關(guān)聯(lián)關(guān)系、依賴關(guān)系、泛化關(guān)系。抽象類與接口:抽象類有些方法可以提供實現(xiàn)代碼,接口所有的方法都沒有提供實現(xiàn)代碼。抽象類只能被繼承,接口只能被實現(xiàn)。類的版型:實體類(數(shù)據(jù)庫、文件等)、邊界類(如窗體、對話框)、控制類(協(xié)調(diào)交互)三、需求建模(用例圖)參與者指系統(tǒng)以外的、需要使用系統(tǒng)或與系統(tǒng)交互的外部實體??梢苑譃椋喝?、外部設(shè)備、外部系統(tǒng)。參與者之間的關(guān)系:泛化關(guān)系,參與者與用例之間的關(guān)系:關(guān)聯(lián)關(guān)系。用例之間的關(guān)系:泛化關(guān)系,包含關(guān)系,擴展關(guān)系。包含關(guān)系和擴展關(guān)系都是依賴關(guān)系的特例。用例是對一個參與者使用系統(tǒng)的一項功能時所進行的交互過程的一個文字描述序列。是參與者可以感受到的系統(tǒng)服務(wù)或功能單元。用例描述是一個關(guān)于參與者與系統(tǒng)如何交互的規(guī)范說明(包含用例用例名稱、用例描述、基本事件流、參與者、前置后置條件等)用例的進一步描述:活動圖、順序圖(通信圖)四、行為建模(狀態(tài)圖與活動圖)行為模型包括:狀態(tài)模型(狀態(tài)圖,單對象)、活動模型(活動圖,多對象)、交互模型(順序圖,多對象)。調(diào)用事件表示的是對操作的調(diào)用,變化事件一個布爾表達式變量的值發(fā)生變化。時間事件滿足某一時間表達式的情況的出現(xiàn)。信號事件就是由一個對象異步地發(fā)送、并由另一個對象(即狀態(tài)圖所對應(yīng)的對象)接收的已命名的實體。調(diào)用事件狀態(tài)圖內(nèi)對象和外部對象都能發(fā)起,信號事件只能由外部發(fā)起。對象處于不同的狀態(tài),導(dǎo)致后續(xù)要執(zhí)行不同的操作。這些操作可能歸屬于不同的用例。一個用例的執(zhí)行對應(yīng)一個順序圖。順序圖刻畫了多個對象之間的消息發(fā)送關(guān)系。需要多個用例的順序圖,來融合地描述一個對象的完整狀態(tài)圖?;顒颖硎镜氖悄沉鞒讨械娜蝿?wù)的執(zhí)行,它可以表示某算法過程中語句的執(zhí)行。分叉表示的是一個控制流被兩個或多個控制流代替,經(jīng)過分叉后,這些控制流是并發(fā)進行的。匯合正好與分叉相反,表示兩個或多個控制流被一個控制流代替。泳道(swimlane)是活動圖中的區(qū)域劃分,根據(jù)每個活動的職責(zé)對所有活動進行劃分,每個泳道代表一個責(zé)任區(qū)。關(guān)心的是其所代表的職責(zé)?;顒訄D用途:對業(yè)務(wù)過程進行建模。對某個方法具體過程建模。狀態(tài)與活動的區(qū)別:狀態(tài)是一個對象所處的境況。通常是執(zhí)行了一個(或多個)活動后的結(jié)局?;顒邮且欢纬绦虼a的執(zhí)行,對應(yīng)于若干個步驟的集成。不同的狀態(tài)會導(dǎo)致不同的功能(對應(yīng)于若干個活動)的執(zhí)行。一個方法可能需要多個(也可以是一個)活動來完成。一個活動只能屬于一個方法。一個用例對應(yīng)于若干個活動。五、交互建模(順序圖和協(xié)作圖)靜態(tài)結(jié)構(gòu)使用類圖,動態(tài)結(jié)構(gòu)使用順序圖、協(xié)作圖、狀態(tài)圖、活動圖。對象:同類圖中的對象,是類的實例生命線:從對象圖標(biāo)向下延伸的一條虛線,表示對象存在的生命期 控制焦點(激活期):對象執(zhí)行一個動作的時間段 消息:對象間的一次通信調(diào)用消息的發(fā)送者把控制傳遞給消息的接收者,然后停止