版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
UML面向?qū)ο蠼;A(chǔ)UML面向?qū)ο蠼1菊n程內(nèi)容安排:
1、面向?qū)ο蟾拍钆cUML介紹:
2、類建模與類圖介紹:
3、用例與用例圖介紹:
4、順序圖介紹:
5、狀態(tài)圖介紹:
6、活動圖:
7、協(xié)作圖與構(gòu)建圖與部署圖介紹:
8、UML在軟件開發(fā)實例中的具體應(yīng)用。1、面向?qū)ο蟮姆治龊驮O(shè)計(OOAD)1.1、面向?qū)ο蟪绦蛟O(shè)計的引入:隨著信息技術(shù)的發(fā)展,軟件復(fù)雜性的增長使軟件開發(fā)越來越困難應(yīng)用軟件網(wǎng)絡(luò)操作系統(tǒng)軟件可能是人類制造出來的最復(fù)雜的實體1.2、面向?qū)ο蟮姆治龊驮O(shè)計(OOAD)面向?qū)ο蟮姆椒ò凑杖祟惖淖匀凰季S的方式,面對客觀世界建立軟件模型。充分體現(xiàn)了對復(fù)雜系統(tǒng)進行分解、抽象、模塊化等思想OOA依照用戶所理解的真實世界中的對象概念,發(fā)現(xiàn)和分析對象的內(nèi)部構(gòu)成和外部關(guān)系,建立準(zhǔn)確而簡潔的軟件系統(tǒng)的對象模型。
OOD是根據(jù)已建立的系統(tǒng)對象模型,運用面向?qū)ο蠹夹g(shù),進行軟件設(shè)計。2、面向?qū)ο蟮幕靖拍?。面向?qū)ο蟮幕靖拍铑惻c對象抽象封裝繼承多態(tài)2.1類和對象的概念多邊形對象多邊形類屬性
頂點
邊的顏色
填充顏色方法
繪制
擦除
移動抽象為屬性1方法1屬性3方法22.2類和對象的關(guān)系:抽象考察特定應(yīng)用程序相關(guān)問題的某些方面的過程Class2.3類的特性:封裝信息隱藏的過程有選擇的數(shù)據(jù)隱藏防止意外的數(shù)據(jù)破壞更易于隔離和修復(fù)錯誤類的特性:封裝封裝是允許有選擇地隱藏類中的屬性和方法的過程在類的外部不能訪問在類的外部可以訪問私有公有類2.4類的特性:繼承超類是有其他類繼承其特征和行為的類繼承其他類的類稱為子類動物2.5類的特性:多態(tài)性
同樣的函數(shù)在不同的類上有不同的行為類:形狀方法:繪制移動初始化子類對各個子類實現(xiàn)的方法將產(chǎn)生不同的結(jié)果2.6類的其他知識接口:
接口是一個收集方法和常數(shù)表單的契約。當(dāng)類執(zhí)行一個接口,它就許諾聲明在那個接口中執(zhí)行所有的方法。 在不同類中實現(xiàn)取用相同參數(shù)的同名成員函數(shù)契約,設(shè)計的靈魂
重載
在同一類中實現(xiàn)取用不同參數(shù)的同名成員函數(shù)消息
對象之間的交互 包含三個方面的內(nèi)容:
消息的接收者;接收對象應(yīng)采用的方法;方法所需要的參數(shù)3、模型與建模
3.1什么是模型模型是現(xiàn)實的簡化
模型提供了系統(tǒng)的設(shè)計圖。模型可以包含詳細的規(guī)劃,也可以包含概括性的規(guī)劃,這種規(guī)劃高度概括了正在考慮的系統(tǒng)。好的模型包括那些具有高度抽象性的元素。模型有助于按原樣或根據(jù)需要使系統(tǒng)可視化通過模型可以詳細說明系統(tǒng)的結(jié)構(gòu)或行為模型可以提供一個指導(dǎo)我們構(gòu)建系統(tǒng)的模板模型可以記錄已經(jīng)做出的決策3.2、為什么要建模建模是為了讓我們更好地理解將要開發(fā)的系統(tǒng)。UserInterface(VisualBasic,Java)BusinessLogic(C++,Java)DatabaseServer(C++&SQL)3.3、建模要實現(xiàn)的目的模型有助于按原樣或根據(jù)需要使系統(tǒng)可視化。通過模型可以詳細說明系統(tǒng)的結(jié)構(gòu)或行為。模型可以提供一個指導(dǎo)我們構(gòu)建系統(tǒng)的模板。模型可以記錄已經(jīng)做出的決策。3.4、建模的原則選擇創(chuàng)建什么模型對于如何處理問題以及如何形成解決方案有很深遠的影響。每一種模型可以在不同的精度級別上表示。最佳模型與現(xiàn)實情況是緊密相連的。一個模型不足以全面地反映實際情況。每個具有一定規(guī)模的系統(tǒng)都是通過一組幾乎獨立的模型來表示的。4、UML的基本概念。4.1UML簡介統(tǒng)一建模語言UML(UnifiedModelingLanguage)是一種繪制軟件藍圖的標(biāo)準(zhǔn)語言??梢杂肬ML對軟件密集型系統(tǒng)進行可視化、詳述、構(gòu)造和文檔化。從企業(yè)信息系統(tǒng)到基于Web的分布式應(yīng)用,甚至嚴(yán)格的實時嵌入式系統(tǒng)都適合于用UML來建模。它是一種富有表達力的語言,可以描述開發(fā)所需要的各種視圖,然后以此為基礎(chǔ)開發(fā)系統(tǒng)。
4.2UML的語義與語法:1.UML語義描述基于UML的精確元模型定義。元模型為UML的所有元素在語法和語義上提供了簡單、一致、通用的定義性說明,使開發(fā)者能在語義上取得一致,消除了因人而異的最佳表達方法所造成的影響。此外UML還支持對元模型的擴展定義。2.UML表示法定義UML符號的表示法,為開發(fā)者或開發(fā)工具使用這些圖形符號和文本語法為系統(tǒng)建模提供了標(biāo)準(zhǔn)。這些圖形符號和文字所表達的是應(yīng)用級的模型,在語義上它是UML元模型的實例4.3在不同系統(tǒng)中的應(yīng)用信息系統(tǒng): 與數(shù)據(jù)庫有關(guān)的系統(tǒng)技術(shù)系統(tǒng):處理和控制技術(shù)設(shè)備嵌入式系統(tǒng):控制像移動電話這樣的設(shè)備以 及家用設(shè)備分布式系統(tǒng):使用CORBA和類似的面向?qū)? 象機制分布在不同系統(tǒng)上的 數(shù)據(jù)庫系統(tǒng)系統(tǒng)軟件:操作系統(tǒng)和編寫系統(tǒng)實用程序業(yè)務(wù)系統(tǒng):與工作流有關(guān)的系統(tǒng)5、UML的組成。5.UML的組成
標(biāo)準(zhǔn)建模語言UML的重要內(nèi)容可以由下列五類圖(共9種圖形)來定義:類圖:類圖描述系統(tǒng)中類的靜態(tài)結(jié)構(gòu)。不僅定義系統(tǒng)中的類,表示類之間的聯(lián)系如關(guān)聯(lián)、依賴、聚合等,也包括類的內(nèi)部結(jié)構(gòu)(類的屬性和操作)。類圖描述的是一種靜態(tài)關(guān)系,在系統(tǒng)的整個生命周期都是有效的。以洗衣機為例:類圖如右下:對象圖:對象圖是類圖的實例,幾乎使用與類圖完全相同的標(biāo)識。他們的不同點在于對象圖顯示類的多個對象實例,而不是實際的類。一個對象圖是類圖的一個實例。由于對象存在生命周期,因此對象圖只能在系統(tǒng)某一時間段存在。如下面:左圖指明對象和它對應(yīng)的類名;右圖盡管指明了對象所屬類,但并未提供一個具體的對象名,這是匿名對象。用例圖用例圖:是從用戶角度描述系統(tǒng)功能,并指出各功能的操作者。以洗衣機系統(tǒng)如下:狀態(tài)圖狀態(tài)圖是對類圖的補充。在實用上并不需要為所有的類畫狀態(tài)圖,僅為那些有多個狀態(tài)其行為受外界環(huán)境的影響并且發(fā)生改變的類畫狀態(tài)圖。如下為一洗衣過程的狀態(tài)圖。順序圖順序圖顯示對象之間的動態(tài)合作關(guān)系,它強調(diào)對象之間消息發(fā)送的順序,同時顯示對象之間的交互?;顒訄D活動圖描述滿足用例要求所要進行的活動以及活動間的約束關(guān)系,有利于識別并行活動協(xié)作圖協(xié)作圖描述對象間的協(xié)作關(guān)系,協(xié)作圖跟順序圖相似,顯示對象間的動態(tài)合作關(guān)系。除顯示信息交換外,協(xié)作圖還顯示對象以及它們之間的關(guān)系。構(gòu)件圖構(gòu)件圖描述代碼部件的物理結(jié)構(gòu)及各部件之間的依賴關(guān)系。一個部件可能是一個資源代碼部件、一個二進制部件或一個可執(zhí)行部件。它包含邏輯類或?qū)崿F(xiàn)類的有關(guān)信息。部件圖有助于分析和理解部件之間的相互影響程度。部署圖配置圖定義系統(tǒng)中軟硬件的物理體系結(jié)構(gòu)。它可以顯示實際的計算機和設(shè)備(用節(jié)點表示)以及它們之間的連接關(guān)系,也可顯示連接的類型及部件之間的依賴性。在節(jié)點內(nèi)部,放置可執(zhí)行部件和對象以顯示節(jié)點跟可執(zhí)行軟件單元的對應(yīng)關(guān)系。下面為不同品牌計算機的通信部署圖:UML中幾個圖的關(guān)系用例圖需求類圖(復(fù)雜)狀態(tài)圖順序圖類圖(簡單)活動圖協(xié)作圖UML應(yīng)用領(lǐng)域
最常用的是為軟件系統(tǒng)建模,但不限于軟件系統(tǒng)建模。UML還可用來描述其他非軟件系統(tǒng),如一個機構(gòu)的組成或機構(gòu)中的工作流程等。UML應(yīng)用---需求分析階段UML的用例視圖可以表示客戶的需求,通過用例建??梢詫ν獠康慕巧约八鼈兯枰南到y(tǒng)功能建模。UML應(yīng)用---分析階段
分析階段主要考慮所要解決的問題??捎肬ML的邏輯視圖和動態(tài)視圖來描述,類圖描述系統(tǒng)的靜態(tài)結(jié)構(gòu);協(xié)作圖、狀態(tài)圖、順序圖和活動圖描述系統(tǒng)的動態(tài)特征。在分析階段,只為問題領(lǐng)域的類建模,不定義軟件系統(tǒng)的解決方案的細節(jié)(如用戶接口的類數(shù)據(jù)庫等)。UML應(yīng)用---設(shè)計階段在設(shè)計階段把分析階段的結(jié)果擴展成技術(shù)解決方案,加入新的類來提供技術(shù)基礎(chǔ)結(jié)構(gòu)---用戶接口,數(shù)據(jù)庫操作等。分析階段的領(lǐng)域問題類被嵌入在這個技術(shù)基礎(chǔ)結(jié)構(gòu)中,設(shè)計階段的結(jié)果是構(gòu)造階段的詳細的規(guī)格說明。UML應(yīng)用---構(gòu)造階段在構(gòu)造(或程序設(shè)計)階段把設(shè)計階段的類轉(zhuǎn)換成某種面向?qū)ο蟪绦蛟O(shè)計語言的代碼。UML應(yīng)用---測試階段對系統(tǒng)的測試通常分為單元測試、集成測試、系統(tǒng)測試和接受測試幾個不同級別。不同的測試小組使用不同的UML圖作為他們工作的基礎(chǔ)。單元測試使用類圖和類的規(guī)格說明;集成測試典型地使用組件圖和協(xié)作圖;而系統(tǒng)測試實現(xiàn)用例圖來確認系統(tǒng)的行為是否符合這些圖中的定義。6、一個UML案例
順序圖案例
劉備孔明關(guān)羽求戰(zhàn)請擬策略張飛請防守荊州請防守荊州前線孫權(quán)曹操請聯(lián)絡(luò)孫權(quán)請孫權(quán)領(lǐng)兵相助借東風(fēng)火攻火攻曹軍劉備的責(zé)任?
劉備求戰(zhàn)請擬策略請防守荊州請聯(lián)絡(luò)孫權(quán)我必須
迎戰(zhàn)曹操!!使用UML表示
孔明請擬策略請聯(lián)絡(luò)孫權(quán)請孫權(quán)領(lǐng)兵相助借東風(fēng)火攻火攻曹軍孔明擬定策略聯(lián)合孫權(quán)借東風(fēng)火攻使用UML表示
關(guān)羽張飛請防守荊州請防守荊州前線關(guān)羽防守荊州張飛防守荊州前線
關(guān)羽防守荊州張飛防守荊州前線劉備迎戰(zhàn)曹操孔明擬定策略聯(lián)合孫權(quán)借東風(fēng)火攻UML的類圖
怎么根據(jù)模型來寫代碼呢?
使用C#
劉備迎戰(zhàn)曹操寫C#程序class劉備{public迎戰(zhàn)曹操(){
……}}
孔明擬定策略聯(lián)合孫權(quán)借東風(fēng)火攻寫C#程序class孔明{public擬定策略(){
……}public聯(lián)合孫權(quán)(){
……}private
借東風(fēng)火攻(){
……}}class劉備{public
迎戰(zhàn)曹操(){
……}}使用C#class孔明{public
擬定策略(){
……}public聯(lián)合孫權(quán)(){
……}private
借東風(fēng)火攻(){
……}}class關(guān)羽{public
防守荊州(){
……}}class張飛{public
防守前線(){
……}}準(zhǔn)備填寫public方法內(nèi)容依樣畫葫蘆寫C#程序內(nèi)容
劉備求戰(zhàn)請擬定策略請防守荊州請聯(lián)絡(luò)孫權(quán)寫C#程序class劉備{孔明
k=new孔明關(guān)羽
g=
new關(guān)羽public
迎戰(zhàn)曹操(){
k.擬定策略
g.防守荊州
k.聯(lián)合孫權(quán)}}寫C#程序內(nèi)容
孔明請擬定策略請聯(lián)絡(luò)孫權(quán)請孫權(quán)領(lǐng)兵相助借東風(fēng)火攻借東風(fēng)火攻寫C#程序class孔明{孫權(quán)
s=new孫權(quán)public
擬定策略(){
……}public聯(lián)合孫權(quán)(){
s.請領(lǐng)兵相助
借東風(fēng)火攻()}private借東風(fēng)火攻(){
……}}寫C#程序內(nèi)容
case
endclass劉備{孔明
k=new
孔明關(guān)羽
g=new關(guān)羽public
迎戰(zhàn)曹操()
溫馨提示
- 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. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工作檢討書集合15篇
- 演講稿怎么寫格式?【5篇】
- 退社申請書(15篇)
- 小學(xué)學(xué)校校長述職報告范文10篇
- 大一學(xué)生自我鑒定15篇
- 高層框剪多功能寫字樓施工組織設(shè)計
- 人教版初中英語九年級下冊全冊教案
- 免責(zé)協(xié)議書的范本(2篇)
- 兒童教育輔導(dǎo)服務(wù)合同(2篇)
- 2025年高性能氣敏傳感器合作協(xié)議書
- DPP4抑制劑比較篇PPT課件
- 中藥飲片購進驗收記錄表格模板
- TCM遠紅外發(fā)展初析
- 滑坡穩(wěn)定性計算及滑坡推力計算
- 繼教脈圖分析 0
- 房地產(chǎn)開發(fā)企業(yè)土地增值稅清算政策與實務(wù)操作(成都市)解讀
- 房地產(chǎn)估計第九章假設(shè)開發(fā)法練習(xí)題參考答案
- [爆笑小品校園劇本7人]爆笑小品校園劇本
- 第五章 逆向選擇
- 高速鐵路電氣化系統(tǒng)概論PPT優(yōu)秀課件
- 農(nóng)村祠堂上梁說辭
評論
0/150
提交評論