




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、第第6 6章章 面向對象設計面向對象設計計算機科學與技術學院計算機科學與技術學院第第6 6章章 面向對象設計面向對象設計如何設計一個軟件系統(tǒng)?如何設計一個軟件系統(tǒng)?軟件開發(fā)的過程軟件開發(fā)的過程一個例子的相關描述一個例子的相關描述第第6 6章章 面向對象設計理念面向對象設計理念軟件系統(tǒng)開發(fā)過程描述軟件系統(tǒng)開發(fā)過程描述1 1問題定義問題定義 2 2可行性研究可行性研究3 3需求分析需求分析4 4總體設計總體設計5 5詳細設計詳細設計6 6編碼和單元測試編碼和單元測試7 7綜合測試綜合測試8 8軟件維護軟件維護通過問題定義階段的工作,系統(tǒng)分析員通過問題定義階段的工作,系統(tǒng)分析員應該提出關于問題性質、
2、工程目標和規(guī)應該提出關于問題性質、工程目標和規(guī)模的書面報告。通過對系統(tǒng)的實際用戶模的書面報告。通過對系統(tǒng)的實際用戶和使用部門負責人的訪問調(diào)查,分析員和使用部門負責人的訪問調(diào)查,分析員扼要地寫出他對問題的理解,并在用戶扼要地寫出他對問題的理解,并在用戶和使用部門負責人的會議上認真討論這和使用部門負責人的會議上認真討論這份書面報告,澄清含糊不清的地方,改份書面報告,澄清含糊不清的地方,改正理解不正確的地方,最后得出一份雙正理解不正確的地方,最后得出一份雙方都滿意的文檔。方都滿意的文檔。這個階段要回答的關鍵問題:這個階段要回答的關鍵問題:“對于上對于上一個階段的問題有行得通的解決辦法?一個階段的問題
3、有行得通的解決辦法?”為了回答這個問題,系統(tǒng)分析員需要進為了回答這個問題,系統(tǒng)分析員需要進行一次大大壓縮和簡化了的系統(tǒng)分析和行一次大大壓縮和簡化了的系統(tǒng)分析和設計的過程,也就是在較抽象的高層次設計的過程,也就是在較抽象的高層次上進行的分析和設計的過程。上進行的分析和設計的過程。這這個階段的任務仍然不是具體的解決這這個階段的任務仍然不是具體的解決問題,而是準確地確定問題,而是準確地確定“為了解決這個為了解決這個問題,目標系統(tǒng)必須做什么問題,目標系統(tǒng)必須做什么”,主要是,主要是確定目標系統(tǒng)必須具備哪些功能。確定目標系統(tǒng)必須具備哪些功能。這個階段必須回答的關鍵問題是這個階段必須回答的關鍵問題是“概括
4、概括地說應該如何解決這個問題?地說應該如何解決這個問題?”系統(tǒng)分析員應該使用系統(tǒng)流程圖或其他系統(tǒng)分析員應該使用系統(tǒng)流程圖或其他工具描述每種可能的系統(tǒng),估計每種方工具描述每種可能的系統(tǒng),估計每種方案的成本和效益,還應該在充分權衡各案的成本和效益,還應該在充分權衡各種方案的利弊的基礎上,推薦一個較好種方案的利弊的基礎上,推薦一個較好的系統(tǒng)(最佳方案),并且制定實現(xiàn)所的系統(tǒng)(最佳方案),并且制定實現(xiàn)所推薦的系統(tǒng)的詳細計劃。如果用戶接受推薦的系統(tǒng)的詳細計劃。如果用戶接受分析員推薦的系統(tǒng),則可以著手完成本分析員推薦的系統(tǒng),則可以著手完成本階段的另一項主要工作。階段的另一項主要工作。總體設計階段以比較抽象
5、概括的方式提總體設計階段以比較抽象概括的方式提出了解決問題的方法,詳細設計階段的出了解決問題的方法,詳細設計階段的任務就是把解決方法具體化,也就是回任務就是把解決方法具體化,也就是回答關鍵問題:答關鍵問題:“應該怎樣具體的實現(xiàn)這應該怎樣具體的實現(xiàn)這個系統(tǒng)呢?個系統(tǒng)呢?”。程序員根據(jù)目標系統(tǒng)的性質和實際環(huán)境,程序員根據(jù)目標系統(tǒng)的性質和實際環(huán)境,選取一種適當?shù)母呒壋绦蛟O計語言(必選取一種適當?shù)母呒壋绦蛟O計語言(必要時用匯編語言)把詳細設計的結果翻要時用匯編語言)把詳細設計的結果翻譯成用選定的語言書寫的程序,并且仔譯成用選定的語言書寫的程序,并且仔細測試編寫出的每一個模塊。細測試編寫出的每一個模塊。
6、這個階段的關鍵任務是通過各種類型的這個階段的關鍵任務是通過各種類型的測試及相應的調(diào)試,使軟件達到預定的測試及相應的調(diào)試,使軟件達到預定的要求。要求。維護階段的關鍵任務是通過各種必要的維護階段的關鍵任務是通過各種必要的維護活動使系統(tǒng)持久的滿足用戶的需要。維護活動使系統(tǒng)持久的滿足用戶的需要。4第第6 6章章 面向對象設計面向對象設計 6.1 6.1 網(wǎng)絡教學系統(tǒng)的需求分析網(wǎng)絡教學系統(tǒng)的需求分析 6.2 6.2 系統(tǒng)的系統(tǒng)的UMLUML基本模型基本模型 6.3 6.3 系統(tǒng)中的類系統(tǒng)中的類 6.4 6.4 系統(tǒng)的配置與實現(xiàn)系統(tǒng)的配置與實現(xiàn)56.1 6.1 網(wǎng)絡教學系統(tǒng)的需求分析網(wǎng)絡教學系統(tǒng)的需求分析
7、 6.1.1 6.1.1 系統(tǒng)功能需求系統(tǒng)功能需求 6.1.2 6.1.2 數(shù)據(jù)信息管理模塊數(shù)據(jù)信息管理模塊 6.1.3 6.1.3 基本業(yè)務模塊基本業(yè)務模塊 6.1.4 6.1.4 信息瀏覽、查詢模塊信息瀏覽、查詢模塊66.1.1 6.1.1 系統(tǒng)功能需求系統(tǒng)功能需求系統(tǒng)的功能需求主要包括以下幾個方面:系統(tǒng)的功能需求主要包括以下幾個方面:學生可以登錄網(wǎng)站、瀏覽信息、查找信息和下載學生可以登錄網(wǎng)站、瀏覽信息、查找信息和下載文件。文件。教師可以登錄網(wǎng)站、輸入課程簡介、上傳課件文教師可以登錄網(wǎng)站、輸入課程簡介、上傳課件文件、發(fā)布消息、修改和更新消息。件、發(fā)布消息、修改和更新消息。 系統(tǒng)管理員可以對
8、頁面維護以及批準用戶的注冊系統(tǒng)管理員可以對頁面維護以及批準用戶的注冊申請。申請。76.1.1 6.1.1 系統(tǒng)功能需求系統(tǒng)功能需求系統(tǒng)主要包括以下幾個模塊:系統(tǒng)主要包括以下幾個模塊: 數(shù)據(jù)信息管理模塊數(shù)據(jù)信息管理模塊 基本業(yè)務模塊基本業(yè)務模塊 信息瀏覽、查詢模塊信息瀏覽、查詢模塊86.1.2 6.1.2 數(shù)據(jù)信息管理模塊數(shù)據(jù)信息管理模塊數(shù)據(jù)信息管理模塊數(shù)據(jù)信息管理模塊包含的功能:包含的功能: 教師信息管理教師信息管理 課程信息管理課程信息管理 文件上傳信息的管理文件上傳信息的管理96.1.3 6.1.3 基本業(yè)務模塊基本業(yè)務模塊基本業(yè)務模塊基本業(yè)務模塊包含的功能:包含的功能: 文件上傳文件上傳
9、 文件下載文件下載 消息發(fā)布消息發(fā)布 消息修改和更新消息修改和更新 頁面維護頁面維護 用戶注冊批準用戶注冊批準106.1.4 6.1.4 信息瀏覽、查詢模塊信息瀏覽、查詢模塊信息瀏覽、查詢模塊信息瀏覽、查詢模塊主要用于網(wǎng)頁上信息主要用于網(wǎng)頁上信息的瀏覽、搜索,包括:的瀏覽、搜索,包括: 網(wǎng)頁信息瀏覽網(wǎng)頁信息瀏覽 文章信息搜索文章信息搜索116.2 6.2 系統(tǒng)的系統(tǒng)的UMLUML基本模型基本模型 6.2.1 6.2.1 系統(tǒng)的用例圖系統(tǒng)的用例圖 6.2.2 6.2.2 系統(tǒng)的時序圖系統(tǒng)的時序圖 6.2.3 6.2.3 系統(tǒng)的協(xié)作圖系統(tǒng)的協(xié)作圖 6.2.4 6.2.4 系統(tǒng)的狀態(tài)圖系統(tǒng)的狀態(tài)圖
10、6.2.5 6.2.5 系統(tǒng)的活動圖系統(tǒng)的活動圖12補充:補充:UMLUML建模語言建模語言 統(tǒng)一建模語言(UML是 Unified Modeling Language的縮寫)是用來對軟件密集系統(tǒng)進行可視化建模的一種語言。 UML為采用面向對象技術面向對象技術開發(fā)系統(tǒng)的產(chǎn)品進行說明說明、可視化可視化、和編制文檔編制文檔的一種標準語言。 UML最大的好處減少了溝通的成本,把一些想法能夠很清晰直觀的表達出來,在設計的過程中,使用得較多的是用例圖,類圖,組件圖,部署圖和用例圖,類圖,組件圖,部署圖和時序圖時序圖。 13補充:UML用例圖 用例圖用例圖描述了系統(tǒng)提供的一個功能單元。 用例圖的主要目的主
11、要目的是幫助開發(fā)團隊以一種可視化的方式理解系統(tǒng)的功能需求,包括基于基本流程的角色角色(actors,也就是與系統(tǒng)交互的其他實體)關系關系,以及系統(tǒng)內(nèi)用例之間用例之間的關系。 146.1.1 6.1.1 系統(tǒng)功能需求系統(tǒng)功能需求創(chuàng)建用例圖之前首先需要確定參與者。創(chuàng)建用例圖之前首先需要確定參與者。 系統(tǒng)的功能需求主要包括以下幾個方面:系統(tǒng)的功能需求主要包括以下幾個方面:學生學生可以登錄網(wǎng)站、瀏覽信息、查找信息和下載可以登錄網(wǎng)站、瀏覽信息、查找信息和下載文件。文件。教師教師可以登錄網(wǎng)站、輸入課程簡介、上傳課件文可以登錄網(wǎng)站、輸入課程簡介、上傳課件文件、發(fā)布消息、修改和更新消息。件、發(fā)布消息、修改和更
12、新消息。 系統(tǒng)管理員系統(tǒng)管理員可以對頁面維護以及批準用戶的注冊可以對頁面維護以及批準用戶的注冊申請。申請。156.1.1 6.1.1 系統(tǒng)的用例圖系統(tǒng)的用例圖 1 1) 系統(tǒng)用戶參與的總的用例圖系統(tǒng)用戶參與的總的用例圖 2 2) 學生參與的用例圖學生參與的用例圖 3 3) 教師參與的用例圖教師參與的用例圖 4 4) 系統(tǒng)管理員參與的用例圖系統(tǒng)管理員參與的用例圖166.1.1 6.1.1 系統(tǒng)功能需求系統(tǒng)功能需求系統(tǒng)的用例圖系統(tǒng)的用例圖系統(tǒng)的功能需求主要包括以下幾個方面:系統(tǒng)的功能需求主要包括以下幾個方面:學生學生可以可以登錄登錄網(wǎng)站、網(wǎng)站、瀏覽瀏覽信息、信息、查找查找信息和信息和下載下載文件。
13、文件。教師教師可以可以登錄登錄網(wǎng)站、網(wǎng)站、輸入輸入課程簡介、課程簡介、上傳上傳課件文課件文件、件、發(fā)布發(fā)布消息、消息、修改修改和和更新更新消息。消息。 系統(tǒng)管理員系統(tǒng)管理員可以對頁面可以對頁面維護維護以及以及批準批準用戶的注冊用戶的注冊申請。申請。17171. 1. 系統(tǒng)用戶參與的總的用例圖系統(tǒng)用戶參與的總的用例圖182. 2. 學生參與的用例圖學生參與的用例圖學生學生可以可以登錄登錄網(wǎng)站、網(wǎng)站、瀏覽瀏覽信息、信息、查找查找信息和信息和下載下載文件。文件。193. 3. 教師參與的用例圖教師參與的用例圖教師教師可以可以登錄登錄網(wǎng)站、網(wǎng)站、輸入輸入課程簡介、課程簡介、上傳上傳課件文件、課件文件、
14、發(fā)布發(fā)布消息、消息、修改修改和和更新更新消息。消息。204. 4. 系統(tǒng)管理員參與的用例圖系統(tǒng)管理員參與的用例圖系統(tǒng)管理員系統(tǒng)管理員可以對頁面可以對頁面維護維護以及以及批準批準用戶的注冊申請。用戶的注冊申請。21補充:UML時序圖 時序圖主要用于按照交互發(fā)生的一系列順序,顯示對象之間的這些交互。 主要用途之一,是把用例表達的需求,轉化為進一步、更加正式層次的精細表達。 226.2.2 6.2.2 系統(tǒng)的時序圖系統(tǒng)的時序圖 1. 1. 系統(tǒng)管理人員管理網(wǎng)站的時序圖系統(tǒng)管理人員管理網(wǎng)站的時序圖 2. 2. 用戶登錄系統(tǒng)的時序圖用戶登錄系統(tǒng)的時序圖 3. 3. 學生下載文件的時序圖學生下載文件的時序
15、圖231. 1. 系統(tǒng)管理人員管理網(wǎng)站的時序圖系統(tǒng)管理人員管理網(wǎng)站的時序圖242. 2. 用戶登錄系統(tǒng)的時序圖用戶登錄系統(tǒng)的時序圖253. 3. 學生下載文件的時序圖學生下載文件的時序圖26補充:UML協(xié)作圖 協(xié)作圖強調(diào)的是發(fā)送和接收消息的對象之間的組織結構。 一個協(xié)作圖顯示了一系列的對象和在這些對象之間的聯(lián)系以及對象間發(fā)送和接收的消息。 協(xié)作圖用于顯示對象之間如何進行交互以執(zhí)行特定用例或用例中特定部分的行為。 用于確定類的職責和接口。 276.2.3 6.2.3 系統(tǒng)的協(xié)作圖系統(tǒng)的協(xié)作圖 1. 1. 用戶登錄系統(tǒng)的協(xié)作圖用戶登錄系統(tǒng)的協(xié)作圖 2. 2. 學生下載文件的協(xié)作圖學生下載文件的協(xié)作
16、圖281. 1. 用戶登錄系統(tǒng)的協(xié)作圖用戶登錄系統(tǒng)的協(xié)作圖292. 2. 學生下載文件的協(xié)作圖學生下載文件的協(xié)作圖30補充:UML狀態(tài)圖 狀態(tài)圖表示某個類所處的不同狀態(tài)和該類的狀態(tài)轉換信息。 狀態(tài)圖顯示了它們可以表達的一些潛在信息。 316.2.4 6.2.4 系統(tǒng)的狀態(tài)圖系統(tǒng)的狀態(tài)圖32補充:UML活動圖 活動圖闡明了業(yè)務用例實現(xiàn)的工作流程。 可以使用垂直實線將活動圖劃分為泳道。每條泳道代表整個工作流程的某個部分的職責,該職責由組織的某個部門來執(zhí)行。 泳道最終可以由組織單元或者業(yè)務對象模型中的一組類來實施。 33336.2.5 6.2.5 系統(tǒng)的活動圖系統(tǒng)的活動圖 1. 1. 用戶登錄系統(tǒng)的
17、活動圖用戶登錄系統(tǒng)的活動圖 2. 2. 教師上傳課件的活動圖教師上傳課件的活動圖 3. 3. 系統(tǒng)管理員進行網(wǎng)站維護的活動圖系統(tǒng)管理員進行網(wǎng)站維護的活動圖341. 1. 用戶登錄系統(tǒng)的活動圖用戶登錄系統(tǒng)的活動圖352. 2. 教師上傳課件的活動圖教師上傳課件的活動圖363. 3. 系統(tǒng)管理員進行網(wǎng)站維護的活動圖系統(tǒng)管理員進行網(wǎng)站維護的活動圖37補充:UML類圖 類圖顯示了模型的靜態(tài)結構,特別是模型中存在的類、類的內(nèi)部結構以及它們與其他類的關系等。 類圖不顯示暫時性信息。 386.3 6.3 系統(tǒng)中的類系統(tǒng)中的類 1. 1. 類圖的生成類圖的生成 2. 2. 各個類之間的關系各個類之間的關系39
18、1. 1. 類圖的生成類圖的生成 參與者相關的類參與者相關的類 一些其他的類一些其他的類40(1 1)參與者相關的類)參與者相關的類41(2 2)一些其他的類)一些其他的類422. 2. 各個類之間的關系各個類之間的關系436.4 6.4 系統(tǒng)的配置與實現(xiàn)系統(tǒng)的配置與實現(xiàn)44補充:UML部署圖 UML部署圖(對象管理組織2001)描述了一個運行時的硬件結點,以及在這些結點上運行的軟件組件的靜態(tài)視圖。 部署圖顯示了系統(tǒng)的硬件,安裝在硬件上的軟件,以及用于連接異構的機器之間的中間件。 4545系統(tǒng)的配置圖系統(tǒng)的配置圖46第第6 6章章 面向對象設計面向對象設計設計準則設計準則1.1.模塊化模塊化l對象就是模塊。它是把數(shù)據(jù)結構和操作這些數(shù)據(jù)的方法緊對象就是
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年山東省科創(chuàng)集團有限公司招聘(33人)筆試參考題庫附帶答案詳解
- 2025內(nèi)蒙古中煤鄂能化公司高校畢業(yè)生招聘98人筆試參考題庫附帶答案詳解
- 2025中國人壽田林支公司招聘17人筆試參考題庫附帶答案詳解
- 12MWh儲能電站項目可行性研究報告分析
- 筋膜間室綜合征解讀課件
- 網(wǎng)絡運維筆試題及答案
- 驅逐老鼠測試題及答案
- 紡織材料市場動態(tài)分析試題及答案
- 大型超市供貨合同協(xié)議書
- 餐飲合同解除協(xié)議書
- 吉林市富源石材有限公司三佳子飾面花崗巖及周邊礦區(qū)礦山地質環(huán)境保護與土地復墾方案
- 2022年上海奉賢經(jīng)濟發(fā)展有限公司招聘筆試題庫及答案解析
- 混凝土氯離子含量試驗檢測記錄表(選擇性電極法)
- 納稅實務(第三版)項目一納稅基礎知識
- 新教材人教版高中數(shù)學必修第二冊全冊教案(教學設計)
- DB23∕T 440-1996 柞蠶生產(chǎn)技術規(guī)程
- 藥物溶解與溶出及釋放-精品醫(yī)學課件
- 匯源果汁生產(chǎn)廢水處理工程設計
- TIG焊充氬倉的應用
- 魔方基礎教程 三階魔方簡化教程
- 安徽高中畢業(yè)生登記表(共7頁)
評論
0/150
提交評論