uml心得體會4篇最新匯總
UML是統(tǒng)一建模語言(UnifiedModelingLanguage)的縮寫,它發(fā)表于1997年,是一個支持模型化和軟件系統(tǒng)開發(fā)的圖形化語言,為軟件開發(fā)的所有階段提供模型化和可視化支持?!毕旅娼o大家?guī)硪恍╆P(guān)于uml心得體會,希望對大家有所幫助。
uml心得體會1
作為一種建模語言,UML的定義包括UML語義和UML表示法兩個部分。
l UML語義:描述基于UML的精確元模型定義。
l UML表示法:定義UML符號的表示法,為開發(fā)者或開發(fā)工具使用這些圖形符號和文本語法為系統(tǒng)建模提供了標準。這些圖形符號和文字所表達的是應(yīng)用級的模型,在語義上它是UML元模型的實例。
標準建模語言UML可以由下列5類圖來定義。
用例圖: 從用戶角度描述系統(tǒng)功能,并指出各功能的操作者。
靜態(tài)圖:包括類圖和對象圖。 類圖描述系統(tǒng)中類的靜態(tài)結(jié)構(gòu),不僅定義系統(tǒng)中的類,表示類之間的聯(lián)系,如關(guān)聯(lián)、依賴、聚合等,也包括類的屬性和操作,類圖描述的是一種靜態(tài)關(guān)系,在系統(tǒng)的整個生命周期都是有效的。對象圖是類圖的實例,幾乎使用與類圖完全相同的標識。一個對象圖是類圖的一個實例。由于對象存在生命周期,因此對象圖只能在系統(tǒng)某一時間段存在。
行為圖: 描述系統(tǒng)的動態(tài)模型和組成對象間的交互關(guān)系,包括狀態(tài)圖和活動圖 。狀態(tài)圖描述類的對象所有可能的狀態(tài)以及事件發(fā)生時狀態(tài)的轉(zhuǎn)移條件,狀態(tài)圖是對類圖的補充,活動圖描述滿足用例要求所要進行的活動以及活動間的約束關(guān)系,有利于識別并進行活動。
交互圖: 描述對象間的交互關(guān)系,包括時序圖和協(xié)作圖 。時序圖顯示對象之間的動態(tài)合作關(guān)系,它強調(diào)對象之間消息發(fā)送的順序,同時顯示對象之間的交互;協(xié)作圖描述對象間的協(xié)作關(guān)系,協(xié)作圖跟時序圖相似,顯示對象間的動態(tài)合作關(guān)系。除顯示信息交換外,協(xié)作圖還顯示對象以及它們之間的關(guān)系。如果強調(diào)時間和順序,則使用時序圖;如果強調(diào)上下級關(guān)系,則選擇協(xié)作圖。
實現(xiàn)圖: 包括組件圖和部署圖 。組件圖描述代碼部件的物理結(jié)構(gòu)及各部件之間的依賴關(guān)系,組件圖有助于分析和理解部件之間的相互影響程度;部署圖定義系統(tǒng)中軟硬件的物理體系結(jié)構(gòu)。
采用UML來設(shè)計系統(tǒng)時,第一步是描述需求;第二步根據(jù)需求建立系統(tǒng)的靜態(tài)模型,以構(gòu)造系統(tǒng)的結(jié)構(gòu);第三步是描述系統(tǒng)的行為。其中在第一步與第二步中所建立的模型都是靜態(tài)的,包括用例圖、類圖、對象圖、組件圖和部署圖等5種圖形,是標準建模語言UML的靜態(tài)建模機制。其中第三步中所建立的模型或者可以執(zhí)行,或者表示執(zhí)行時的時序狀態(tài)或交互關(guān)系。它包括狀態(tài)圖、活動圖、時序圖和協(xié)作圖等4種圖形,是標準建模語言UML的動態(tài)建模機制。
首先對UML中的各個圖的功用做一個簡單介紹:
1、用例圖
描述角色以及角色與用例之間的連接關(guān)系。說明的是誰要使用系統(tǒng),以及他們使用該系統(tǒng)可以做些什么。一個用例圖包含了多個模型元素,如系統(tǒng)、參與者和用例,并且顯示了這些元素之間的各種關(guān)系,如泛化、關(guān)聯(lián)和依賴。
2、類圖
類圖是描述系統(tǒng)中的類,以及各個類之間的關(guān)系的靜態(tài)視圖。能夠讓我們在正確編寫代碼以前對系統(tǒng)有一個全面的認識。類圖是一種模型類型,確切的說,是一種靜態(tài)模型類型。
3、對象圖
與類圖極為相似,它是類圖的實例,對象圖顯示類的多個對象實例,而不是實際的類。它描述的不是類之間的關(guān)系,而是對象之間的關(guān)系。
4、活動圖
描述用例要求所要進行的活動,以及活動間的約束關(guān)系,有利于識別并行活動。能夠演示出系統(tǒng)中哪些地方存在功能,以及這些功能和系統(tǒng)中其他組件的功能如何共同滿足前面使用用例圖建模的商務(wù)需求。
5、狀態(tài)圖
描述類的對象所有可能的狀態(tài),以及事件發(fā)生時狀態(tài)的轉(zhuǎn)移條件??梢圆东@對象、子系統(tǒng)和系統(tǒng)的生命周期。他們可以告知一個對象可以擁有的狀態(tài),并且事件(如消息的接收、時間的流逝、錯誤、條件變?yōu)檎娴?會怎么隨著時間的推移來影響這些狀態(tài)。一個狀態(tài)圖應(yīng)該連接到所有具有清晰的可標識狀態(tài)和復雜行為的類;該圖可以確定類的行為,以及該行為如何根據(jù)當前的狀態(tài)變化,也可以展示哪些事件將會改變類的對象的狀態(tài)。狀態(tài)圖是對類圖的補充。
6、序列圖 (順序圖)
序列圖是用來顯示你的參與者如何以一系列順序的步驟與系統(tǒng)的對象交互的模型。順序圖可以用來展示對象之間是如何進行交互的。順序圖將顯示的重點放在消息序列上,即強調(diào)消息是如何在對象之間被發(fā)送和接收的。
7、協(xié)作圖
和序列圖相似,顯示對象間的動態(tài)合作關(guān)系??梢钥闯墒穷悎D和順序圖的交集,協(xié)作圖建模對象或者角色,以及它們彼此之間是如何通信的。如果強調(diào)時間和順序,則使用序列圖;如果強調(diào)上下級關(guān)系,則選擇協(xié)作圖;這兩種圖合稱為交互圖。
8、構(gòu)件圖 (組件圖)
描述代碼構(gòu)件的物理結(jié)構(gòu)以及各種構(gòu)建之間的依賴關(guān)系。用來建模軟件的組件及其相互之間的關(guān)系,這些圖由構(gòu)件標記符和構(gòu)件之間的關(guān)系構(gòu)成。在組件圖中,構(gòu)件時軟件單個組成部分,它可以是一個文件,產(chǎn)品、可執(zhí)行文件和腳本等。
9、部署圖 (配置圖)
是用來建模系統(tǒng)的物理部署。例如計算機和設(shè)備,以及它們之間是如何連接的。部署圖的使用者是開發(fā)人員、系統(tǒng)集成人員和測試人員。
幾種圖的區(qū)別:
一:這九種模型圖各有側(cè)重,
1:用例圖側(cè)重描述用戶需求,
2:類圖側(cè)重描述系統(tǒng)具體實現(xiàn);
二:描述的方面都不相同,
1:類圖描述的是系統(tǒng)的結(jié)構(gòu),
2:序列圖描述的是系統(tǒng)的行為;
三:抽象的層次也不同,
1:構(gòu)件圖描述系統(tǒng)的模塊結(jié)構(gòu),抽象層次較高,
2:類圖是描述具體模塊的結(jié)構(gòu),抽象層次一般,
3:對象圖描述了具體的模塊實現(xiàn),抽象層次較低。
在有的文獻書籍中,將這九種模型圖分為三大類:結(jié)構(gòu)分類、動態(tài)行為和模型管理:
1:結(jié)構(gòu)分類 包括用例圖、類圖、對象圖、構(gòu)件圖和部署圖,
2:動態(tài)行為 包括狀態(tài)圖、活動圖、順序圖和協(xié)作圖,
3:模型管理 則包含類圖。
uml心得體會2
在80年代末至90年代中,對面向?qū)ο蠓治雠c設(shè)計方法的研究發(fā)展到一個高潮。但是,諸多流派在思想和術(shù)語上有很多不同的提法,在術(shù)語、概念上的運用也各不相同,需要一種統(tǒng)一的符號來描述面向?qū)ο蟮姆治龊驮O(shè)計活動。UML應(yīng)運而生。它不僅統(tǒng)一了Booch、Rumbaugh和Jacobson的表示方法,而且有進一步的發(fā)展,最終成為大眾所共同接受的標準建模語言。統(tǒng)一建模語言(UML)是一個通用的可視化建模語言,用于對軟件進行描述、可視化處理、構(gòu)造和建立軟件系統(tǒng)制品的文檔。它記錄了對必須構(gòu)造的系統(tǒng)的決定和理解,可用于對系統(tǒng)的理解、設(shè)計、瀏覽、配置、維護和信息控制。UML適用于各種軟件開發(fā)方法、軟件生命周期的各個階段、各種應(yīng)用領(lǐng)域以及各種開發(fā)工具,UML 是一種總結(jié)了以往建模技術(shù)的經(jīng)驗并吸收當今優(yōu)秀成果的標準建模方法。它融入了軟件工程領(lǐng)域的新思想、新方法和新技術(shù)。不僅支持面向?qū)ο蟮姆治雠c設(shè)計,還支持從需求分析開始的軟件開發(fā)全過程。
UML 模型、視圖、圖
UML的概念和模型可以分成以下幾個概念域:靜態(tài)結(jié)構(gòu)、動態(tài)行為、實現(xiàn)構(gòu)造、模型組織、擴展機制
UML視圖和圖
主要的域視圖圖主要概念
構(gòu)靜態(tài)視圖類圖類、關(guān)聯(lián)、泛化、依賴關(guān)系、實現(xiàn)、接口
用例視圖用例圖用例、參與者、關(guān)聯(lián)、擴展、包括、用例泛化
實現(xiàn)視圖構(gòu)件圖構(gòu)件、接口、依賴關(guān)系、實現(xiàn)
部署視圖部署圖節(jié)點、構(gòu)件、依賴關(guān)系、位置
動
態(tài)狀態(tài)視圖狀態(tài)圖狀態(tài)、事件、轉(zhuǎn)換、動作、
行活動視圖活動圖狀態(tài)、活動、完成轉(zhuǎn)換、分叉、結(jié)合
為交互視圖順序圖交互、對象、消息、激活
協(xié)作圖協(xié)作、交互、協(xié)作角色、消息
模型管理模型管理視圖類圖包、子系統(tǒng)、模型
擴展機制所有所有約束、構(gòu)造型、標記值
靜態(tài)視圖
1、 類元
類元是模型中的離散概念,擁有身份、狀態(tài)、行為和關(guān)系。有幾種類元包括類、接口和數(shù)據(jù)類型。其他幾種類元是行為概念、環(huán)境事物、執(zhí)行結(jié)構(gòu)的具體化。這些類元中包括用例、參與者、構(gòu)件、節(jié)點和子系統(tǒng)。圖列出了幾種類元和它們的功能。元模型術(shù)語類元中包括了所有這些概念。
類元功能表示法
類類代表了被建模的應(yīng)用領(lǐng)域中的離散概念。
最重要的特性是多重性
狀態(tài)類局限于某個給定狀態(tài)的類
類元角色在合作中局限于某個使用的類元
構(gòu)件系統(tǒng)的一個物理組成單元
接口刻劃行為特征的操作命名集.
節(jié)點計算資源
信號對象間的異步通信
子系統(tǒng)作為且有規(guī)范、實現(xiàn)和身份的單元的包
用例與外界代理交互中的實體行為說明
2、類元之間關(guān)系
類元之間的關(guān)系有關(guān)聯(lián)、泛化、各種形式的依賴關(guān)系,包括實現(xiàn)關(guān)系和使用關(guān)系。
關(guān)聯(lián):對象通常要和其他對象發(fā)生關(guān)聯(lián),關(guān)聯(lián)可以具有多層形式。多重性問題(一對一、一對多)。在UML中關(guān)聯(lián)用一條直線來表示。
泛化:一個類繼承了其他類的屬性和操作。在UML中泛化用“從之類畫一條帶空心三角形箭頭的連線指向父類”來表示。
依賴:一個類使用了另一個類。在UML中依賴用“從依賴類到被依賴的帶箭頭的虛線”表示。
聚集是關(guān)聯(lián)的一種,聚集對象由部分對象組成。也就是整體與部分關(guān)聯(lián)。在UML中用“整體和部分之間用帶空心菱形箭頭的連線連接”來表示。
組合是一種特殊的聚集,在一個組合對象中,部分對象只能作為組合對象的一部分與組合對象同時存在。在UML中用“整體和部分之間用帶實心菱形箭頭的連線連接”來表示。
實現(xiàn):類和接口之間的關(guān)系被稱為實現(xiàn)。在UML中實現(xiàn)關(guān)系用一個帶空心三角形箭頭加虛線來表示,箭頭指向接口。
uml心得體會3
在學習UML這門課之前,我一直心底有一個疑問,那就是我們和那些所謂的程序員速成班培訓出來的程序員到底有什么差別,都是寫代碼,那我們在大學里學習的意義是什么呢,直到我學習了UML這門課。我才知道寫代碼并沒有想象中的那么簡單,對于同一個功能,肯定有著多種不同的實現(xiàn)方法,而這些方法也肯定有優(yōu)劣之分。我們之所以不像外面那樣的培訓班一樣速成,是因為我們需要鍛煉自己去寫出高質(zhì)量的代碼,我覺得這就是我們學習的意義。
其實在上UML課之前,我以為UML跟C++和java一樣是一門編程語言,直到經(jīng)過老師的介紹,我才知道UML的全稱是Unified Modeling Language,他不同于C++,java這些編程語言,他是統(tǒng)一建模語言。UML是一種用于可視化描述系統(tǒng),具有廣泛用途的建模語言。作為一種標準化的圖形語言,在軟件工業(yè)中被用于軟件系統(tǒng)部件的具體化,可視化,結(jié)構(gòu)化描述以及撰寫文檔,同樣在商業(yè)模型中也得到應(yīng)用。
UML雖然不是一門程序設(shè)計語言,但他的重要性是不可忽視的。他的重要性主要體現(xiàn)在:使復雜的軟件設(shè)計更為簡單,也能夠?qū)崿F(xiàn)像OOP(面向?qū)ο缶幊?這一類被廣泛應(yīng)用的概念;用理解起來可能更容易的圖來描述,避免了大量的文字;使表達和交流概念或系統(tǒng)結(jié)構(gòu)變得更容易;在一張圖中就能夠描繪出整個系統(tǒng);程序員實用類圖來描述實際需求時,可讓問題更加清晰明了,實現(xiàn)起來更容易。
很多人或許會說直接寫代碼要比畫圖分析什么的快多了,但我認為UML在分析和設(shè)計階段十分重要。在學完職責分配原則和了解過一些設(shè)計模式過后,我更加堅定了我的想法?;蛟S對于一個小項目來說,實現(xiàn)的方式有很多種,無論是哪一種,可能會有人覺得只要能夠?qū)崿F(xiàn)功能就是可用的,就是好的。但如果是一個比較龐大的項目呢?如果在具體寫代碼時某個類的職責過于龐雜,那么必定會給系統(tǒng)帶來很大的壓力?;蛘哒f每個類之間的關(guān)系特別復雜,那么當后續(xù)需要更改某個類的時候,必定會影響到其他的類,帶來十分高昂的維護成本。而GRASP的九個原則:信息專家原則,創(chuàng)造者原則,低耦合原則,高內(nèi)聚原則,控制器原則,多態(tài)原則,純虛構(gòu),中介原則,受保護變量原則可以在一點程度上很有效地解決這些問題。
UML這門課程讓我學會了話UML的五大類,共九種圖:
用例圖:從用戶角度描述系統(tǒng)功能,并指出各功能的操作者。
靜態(tài)圖:包括類圖和對象圖。類圖描述系統(tǒng)中類的靜態(tài)結(jié)構(gòu),不僅定義系統(tǒng)中的類,表示類之間的聯(lián)系,如關(guān)聯(lián)、依賴、聚合等,也包括類的屬性和操作,類圖描述的是一種靜態(tài)關(guān)系,在系統(tǒng)的整個生命周期都是有效的。對象圖是類圖的實例,幾乎使用與類圖完全相同的標識。一個對象圖是類圖的一個實例。由于對象存在生命周期,因此對象圖只能在系統(tǒng)某一時間段存在。
行為圖:描述系統(tǒng)的動態(tài)模型和組成對象間的交互關(guān)系,包括狀態(tài)圖和活動圖。狀態(tài)圖描述類的對象所有可能的狀態(tài)以及事件發(fā)生時狀態(tài)的轉(zhuǎn)移條件,狀態(tài)圖是對類圖的補充,活動圖描述滿足用例要求所要進行的活動以及活動間的約束關(guān)系,有利于識別并進行活動。
交互圖:描述對象間的交互關(guān)系,包括時序圖和協(xié)作圖。時序圖顯示對象之間的動態(tài)合作關(guān)系,它強調(diào)對象之間消息發(fā)送的順序,同時顯示對象之間的交互;協(xié)作圖描述對象間的協(xié)作關(guān)系,協(xié)作圖跟時序圖相似,顯示對象間的動態(tài)合作關(guān)系。除顯示信息交換外,協(xié)作圖還顯示對象以及它們之間的關(guān)系。如果強調(diào)時間和順序,則使用時序圖;如果強調(diào)上下級關(guān)系,則選擇協(xié)作圖。
實現(xiàn)圖:包括組件圖和部署圖。組件圖描述代碼部件的物理結(jié)構(gòu)及各部件之間的依賴關(guān)系,組件圖有助于分析和理解部件之間的相互影響程度;部署圖定義系統(tǒng)中軟硬件的物理體系結(jié)構(gòu)。
UML也同時讓我自己去了解了統(tǒng)一過程,這部分老師并沒有詳細地講,我自己查閱資料了解了一些。RUP中的軟件生命周期在時間上被分解為四個順序的階段,分別是:初始階段、細化階段、構(gòu)造階段和交付階段。每個階段結(jié)束于一個主要的里程碑。每個階段本質(zhì)上是兩個里程碑之間的時間跨度。在每個階段的結(jié)尾執(zhí)行一次評估以確定這個階段的目標是否已經(jīng)滿足。如果評估結(jié)果令人滿意的話,可以允許項目進入下一個階段。
說實話在了解GRASP,設(shè)計模式,統(tǒng)一過程后,我覺得UML是一門十分重要的課。但是我在知乎上看到了一個“UML現(xiàn)在有什么用?”的問題,上面的許多高贊答案都是在說UML的用處并不大。甚至有人說UML是糊弄人的東西。但我卻不這么認為,判斷知識有沒有不能僅憑這自己以前的經(jīng)歷,或許有些人用UML的地方并不多,所以他認為UML的用處并不大,但是誰又能肯定的說你以后不會用到UML的建模方法和思想呢?我覺得我們學習的眼光應(yīng)該長遠一點。不管如何,我在UML結(jié)課后,仍然會繼續(xù)學習UML,因為我認為他是十分有用的,雖然目前為止我并沒有過參與大型項目的經(jīng)歷,但確實在UML建模后,我對一些問題和業(yè)務(wù)邏輯有了更深刻的認識,我相信他能幫助我提升我自己的能力,加油!
uml心得體會4
擴展關(guān)系:、泛化(繼承)關(guān)系:、依賴關(guān)系:
聚合關(guān)系:、組成關(guān)系:、
關(guān)聯(lián)關(guān)系:、實現(xiàn)關(guān)系:
2、UML中幾種基本圖及其基本功能作用:
UML的重要內(nèi)容可以由哪五類圖(共9種圖形)來定義:
答:用例圖:用例圖。
靜態(tài)圖:類圖、對象圖
行為圖:狀態(tài)圖、活動圖
交互圖:時序圖、協(xié)作圖
實現(xiàn)圖:構(gòu)件圖、部署圖
1)類圖:類圖是描述類、接口、協(xié)作以及它們之間的關(guān)系的圖,用來顯示系統(tǒng)中各個類的靜態(tài)結(jié)構(gòu)。
類包括:類圖、屬性、方法。
類圖包括:類、接口、協(xié)作、關(guān)系、約束、注釋以及包。
類的表示包括:名稱、屬性、操作、職責和約束。
類圖的建模過程:確定對象與類、確定類的屬性、確定類的關(guān)系。
類圖在UML中的重要作用:1.為開發(fā)人員提供這種模仿現(xiàn)實世界的表達方式。
2.讓分析員使用客戶所采用的術(shù)語和客戶交流,促使客戶說出所要解決的問題的重要細節(jié)。
2)對象圖:對象圖表示在某一時刻一組對象以及他們之間的關(guān)系的圖。
UML對象圖的用途
◆捕獲實例和連接、◆在分析和設(shè)計階段創(chuàng)建、◆捕獲交互的靜態(tài)部分、◆舉例說明數(shù)據(jù)/對象結(jié)構(gòu)、◆詳細描述瞬態(tài)圖、◆由分析人員、設(shè)計人員和代碼實現(xiàn)人員開發(fā)
3)用例圖:表述了一組用例、參與者以及它們之間的關(guān)系的圖。
用例模型包括:用例圖和用例規(guī)則。
用例規(guī)則包括:基本流和備選流。
用例圖的組成元素有:參與者,用例,通信關(guān)聯(lián),用例規(guī)約
建立用例模型步驟:
1) 根據(jù)系統(tǒng)邊界確定參與者
2) 根據(jù)每個參與者確定與之相關(guān)聯(lián)的用例
3) 對每個用例寫出用例規(guī)約文檔,調(diào)整用例模型(優(yōu)化參與者與參與者之間的關(guān)系,用例與用例之間的關(guān)系)
用例對于系統(tǒng)開發(fā)人員來說的價值:是用來從用戶的觀察角度收集系統(tǒng)需求的一項技術(shù),便于分析員與客戶和用戶交流,使系統(tǒng)更符合用戶的需求
4)順序圖也稱為時序圖,它描敘了系統(tǒng)中對象間通過消息進行的交互,強調(diào)了消息在時間軸上的先后順序。
順序圖是由對象、生命線、控制焦點和消息等構(gòu)成。(消息表示了對象間的通信,生命線表示了對象的生存期,控制焦點表示對象正在執(zhí)行一些活動)
順序圖將交互關(guān)系表示為一張二維圖,其中縱向是時間軸,時間沿豎線向下延伸,橫向代表了在協(xié)作中各獨立對象的角色。
順序圖中從左到右各對象分別為:執(zhí)行者角色、控制類、用戶接口、業(yè)務(wù)層、后臺數(shù)據(jù)庫。
順序圖的作用:順序圖常用來描述用例的實現(xiàn),它表明了由哪些對象通過消息相互協(xié)作來實現(xiàn)用例的功能。在順序圖中,標識了消息發(fā)生的先后順序。
5)協(xié)作圖:描述了系統(tǒng)中對象間通過消息進行的交互,強調(diào)了對象在交互行為中承擔的角色。
協(xié)作圖包括對象、鏈(連接器)、消息。
(協(xié)作圖與順序圖的比較與各自的優(yōu)缺點下面有)
交互圖(協(xié)作圖與順序圖)的特征:交互圖形主要用于對用例中的控制建模,一般情況下,一個交互圖形表達單個用例的行為,它表示出該用例中若干個實例對象和對象之間所傳遞的消息,交互圖形有效的幫助人們觀察和理解系統(tǒng)內(nèi)部的協(xié)作關(guān)系和過程行為。
6)狀態(tài)圖:描述了一個對象所處的可能狀態(tài)以及狀態(tài)之間的轉(zhuǎn)換,并給出了狀態(tài)變化序列的起點和終點。
狀態(tài)圖包括:狀態(tài)、轉(zhuǎn)換。
一個狀態(tài)圖表示一個狀態(tài)機,表示從一個狀態(tài)到另一個狀態(tài)的控制流。
引發(fā)狀態(tài)轉(zhuǎn)換的事件主要有:調(diào)用事件、變化事件、時間事件以及信號事件。
建模步驟:找出適合用模型描述其行為的類、確定對象可能存在的狀態(tài)、確定引起狀態(tài)轉(zhuǎn)換的事件、確定轉(zhuǎn)換進行時對象執(zhí)行的相應(yīng)動作、對建模結(jié)果進行相應(yīng)的精化和細化。
作用:能幫助分析員、設(shè)計員和開發(fā)人員理解系統(tǒng)中對象的行為。(P87)
7)活動圖:描述從活動到活動的流。
活動圖包括:動作狀態(tài),活動狀態(tài),動作流、分支與合并、分關(guān)與匯合、泳道以及對象流。
8)構(gòu)件圖:主要用來描述各種軟件構(gòu)件之間的依賴關(guān)系,是描述構(gòu)件與構(gòu)件關(guān)系的圖。
構(gòu)件圖包括注釋、約束和包。
構(gòu)件包括5個要素:接口聲明、接口實現(xiàn)、構(gòu)件標準、封裝方法以及部署方法。
構(gòu)件分為3種類型:配置構(gòu)件、工作產(chǎn)品構(gòu)件以及執(zhí)行構(gòu)件。
構(gòu)件圖的基本目的是:使系統(tǒng)人員和開發(fā)人員能夠從整體上了解系統(tǒng)的所有物理部件;同時,也使我們知道如何對構(gòu)件進行打包,以便交付給最終客戶;最后,構(gòu)件圖顯示了被開發(fā)系統(tǒng)所包含的構(gòu)件之間的依賴關(guān)系
(構(gòu)件和類的比較見下面)
9)部署圖:描述系統(tǒng)中的硬件節(jié)點及節(jié)點之間如何連接的圖。
部署圖的組成元素包括節(jié)點、節(jié)點間的鏈接。
部署圖的目的:描述系統(tǒng)投產(chǎn)的相關(guān)問題;描述系統(tǒng)與生產(chǎn)環(huán)境中的其他系統(tǒng)間的依賴關(guān)系,這些系統(tǒng)可能是已經(jīng)存在,或是將要引入的;描述一個商業(yè)應(yīng)用主要的部署結(jié)構(gòu);設(shè)計一個嵌入系統(tǒng)的硬件和軟件結(jié)構(gòu);描述一個組織的硬件/網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)。
(活動圖與狀態(tài)圖的比較見下面)
3、類圖的表示:
4、略
5、對象間的可見性:可見性指的是一個對象能夠“看到” 或者引用另一個對象的能力。Public + ,private - ,protected #
6、類的區(qū)分:
UML將類分為邊界類、實體類以及控制類。
1)邊界類用于描述外部參與者與系統(tǒng)之間的交互。
邊界類是一種用于對系統(tǒng)外部環(huán)境與其內(nèi)部運作之間的交互進行建模的類。這種交互包括轉(zhuǎn)換事件,并記錄系統(tǒng)表示方式(例如接口)中的變更。
2)實體類主要是作為數(shù)據(jù)管理和業(yè)務(wù)邏輯處理層面上存在的類別。
實體類的主要職責是存儲和管理系統(tǒng)內(nèi)部的信息,它也可以有行為,甚至很復雜的行為,但這些行為必須與它所代表的實體對象密切相關(guān)。
實體類保存要放進持久存儲體的信息。持久存儲體就是數(shù)據(jù)庫、文件等可以永久存儲數(shù)據(jù)的介質(zhì)。實體類可以通過事件流和交互圖發(fā)現(xiàn)。通常每個實體類在數(shù)據(jù)庫中有相應(yīng)的表,實體類中的屬性對應(yīng)數(shù)據(jù)庫表中的字段。
實體類是用于對必須存儲的信息和相關(guān)行為建模的類。實體對象(實體類的實例)用于保存和更新一些現(xiàn)象的有關(guān)信息,例如:事件、人員或者一些現(xiàn)實生活中的對象。
3)控制類用于描述一個用例所具有的事件流控制行為,控制一個用例中的事件順序。
1.邊界類,描述外部與系統(tǒng)內(nèi)部交互的類;2.控制類,控制其他類;3.實體類,存儲信息和相關(guān)行為的類;
7、面向?qū)ο箝_發(fā)系統(tǒng)是一系列對象的集合。
8、面向?qū)ο蟮娜髾C制:封裝、繼承、多態(tài)。
9、軟件工作的有效性和可靠性。
10、面向?qū)ο笾笆敲嫦蜻^程的結(jié)構(gòu)化分析與設(shè)計方法,這種方法以功能分析為基礎(chǔ)。
11、對象是客觀實體的抽象表示,是由描述對象屬性的數(shù)據(jù)和對這些數(shù)據(jù)進行的操作行為兩部分組成。而類是對具有相同屬性和行為一組對象的抽象描述。因此,它作為一種用戶自定義類型和創(chuàng)建對象的樣板,而按照這種樣板所創(chuàng)建的一個個具體對象就是類的實例。通過繼承關(guān)系又可形成一種類層關(guān)系。
12、UML中靜態(tài)圖有:用例圖、類圖、對象圖、構(gòu)件圖、部署圖
動態(tài)圖有:活動圖、順序圖、協(xié)作圖、狀態(tài)圖
簡答題:
1、簡述面向?qū)ο蟮娜髾C制:封裝性、繼承性以及多態(tài)性。
1)封裝性。所謂封裝就是把對象的屬性和行為結(jié)合成一個獨立的單位,使外界不能直接訪問或修改這些數(shù)據(jù)和代碼,外界只能通過對象提供的接口函數(shù)來改變或獲取對象的屬性數(shù)據(jù),這就實現(xiàn)了消息的隱蔽;2)繼承性。如果在一個已定義的類上,增加一些特殊屬性或操作,可以形成一個新的類,這個類不僅繼承了前一個類的全部特征,而且具有新的特性,因此可看作前一個類的特例,是對前一個類的繼承。前一個類成為父類,新產(chǎn)生的類叫做子類。通過繼承關(guān)系可形成一種類層次結(jié)構(gòu),叫做繼承結(jié)構(gòu);3)多態(tài)性。在類層次結(jié)構(gòu)的不同類中,可用相同的函數(shù)名實現(xiàn)功能不同的函數(shù)。多態(tài)即程序中同名的不同方法共存的情況,常見的兩種多態(tài)方式為:①子類對父類方法的覆蓋;② 利用重載在同一個類中定義多個同名的不同方法。
2、敘述面向?qū)ο蟀l(fā)展的動因:
為了超越程序復雜性障礙,克服軟件危機,人們提出了面向?qū)ο筌浖_發(fā)方法。面向?qū)ο箝_發(fā)方法一改過去傳統(tǒng)的以功能分析為基礎(chǔ)的面向過程的結(jié)構(gòu)化分析與設(shè)計方法。面向?qū)ο箝_發(fā)方法模擬人們理解和處理客觀世界的方式來分析問題,把系統(tǒng)視為一系列對象的結(jié)合,其面向?qū)ο笤O(shè)計又將分析的結(jié)果映射到某一種面向?qū)ο髮崿F(xiàn)工具的結(jié)構(gòu)上,使映射過程有著比較直接的對應(yīng)關(guān)系,使分析者、設(shè)計者和編程者都可使用相同的概念,從而使面向?qū)ο蟮能浖_發(fā)能比較自然地模擬客觀世界的活動,使問題描述空間與解空間在結(jié)構(gòu)上盡可能一致。因此,采用面向?qū)ο蠓椒梢愿行У亻_發(fā)大型軟件系統(tǒng)。面向?qū)ο蠓椒ǖ姆庋b、繼承、多態(tài)等機制不僅支持軟件復用,而且使軟件維護工作可靠有效,可實現(xiàn)軟件系統(tǒng)的柔性制造,更好地克服軟件危機。因此,它成為成熟的廣為采用的軟件開發(fā)方法。
3、分析順序圖和協(xié)作圖之間的差別和優(yōu)缺點:
順序圖可視化地表示了對象之間隨時間發(fā)生的交互,它除了展示對象之間的關(guān)聯(lián),還顯示出對象之間的消息傳遞。與順序圖一樣,協(xié)作圖也展示對象之間的交互關(guān)系。順序圖強調(diào)的是交互的時間順序,而協(xié)作圖強調(diào)的是交互的語境和參與交互的對象的整體組織。順序圖按照時間順序布圖,而協(xié)作圖按照空間組織布圖。
順序圖可以清晰地表示消息之間的順序和時間關(guān)系,但需要較多的水平方向的空間。
協(xié)作圖在增加對象時比較容易,而且分支也比較少,但如果消息比較多時難以表示消息之間的順序。
填空、選擇:
1、2略
3、在用例圖中用例與角色是關(guān)聯(lián)角色。
4、順序圖中有生命線。
5、整體與局部的關(guān)系用聚集(聚合)表達的。
6、UML圖中,關(guān)聯(lián)角色的構(gòu)造型有5種
7、略
8、UML中4大關(guān)系:依賴、泛化、實現(xiàn)和關(guān)聯(lián)。
9、UML構(gòu)造塊中的事物和關(guān)系各包含哪些內(nèi)容?
UML的事物包含:動作事物、結(jié)構(gòu)事物、分組事物、注釋事物
動作事物包含:交互、狀態(tài)機
結(jié)構(gòu)事物包含:類、接口、用例、協(xié)作、節(jié)點、構(gòu)件、活動類
分組事物包含:包
注釋事物包含:注解
10、活動圖中的泳道技術(shù)的作用:通過泳道不僅體現(xiàn)了整個活動控制流,還體現(xiàn)出了每個活動的實施者。
11、狀態(tài)圖描述從狀態(tài)到狀態(tài)的控制流程,常用來對系統(tǒng)的動態(tài)特稱進行建模。
12、UML中類可分為3大類:實體類、控制類和邊界類。
13、UML體系分為3大部分:UML基本構(gòu)造塊、UML規(guī)則和UML公共機制。
1. 比較活動圖與狀態(tài)圖:
1)活動圖和狀態(tài)圖描述的重點不同:活動圖描述的是從活動到活動的控制流,而狀態(tài)圖表述的是對象的狀態(tài)及狀態(tài)之間的轉(zhuǎn)移。
2)活動圖和狀態(tài)圖使用的場合不同:對于以下幾種情況可以使用活動圖:分析用例、理解涉及多個用例的工作流、處理多線程應(yīng)用:對于下面的情況要使用狀態(tài)圖:顯示一個對象在其生命周期內(nèi)的行為。
2. 構(gòu)件和類的比較:從構(gòu)件的定義來看,構(gòu)件和類十分相似,如都有名稱,都可以實現(xiàn)一組接口,都可以參與依賴,泛化和關(guān)聯(lián)關(guān)系,都可以被嵌套,都可以有實例,都可以參與交互,但它們之間也存著以下明顯區(qū)別:1)類是對實體的抽象,而構(gòu)件是對存在于計算機中的物理部件的抽象。也就是說構(gòu)件是可以部署的,而類不能部署。2)構(gòu)件是屬于軟件模塊,而非邏輯模塊,與類相比,它們處于不同的抽象級別,甚至可以說,構(gòu)件就是由一組類通過協(xié)作完成的;3)類可以直接擁有操作和屬性,而構(gòu)件僅擁有可以通過其接口訪問的操作。
3、面向?qū)ο蠓椒ǖ幕居^點:
(1)客觀世界由對象組成,任何客觀實體都是對象。對象是系統(tǒng)的基本單位。
(2)復雜的對象可以包含簡單的對象。
(3)事物的靜態(tài)特征用對象的屬性表示;事物的動態(tài)特征用對象的操作表示。
(4)對象的屬性與操作結(jié)合在一起,封裝成一個獨立的實體
(5)具有相同屬性和操作的對象可歸納成類,對象是類的一個實例。
(6) 類可以派生出子類,子類除了繼承父類的全部特性外還可以有自己的特性。
(7)對象之間通過消息進行通信,以實現(xiàn)對象之間的動態(tài)聯(lián)系。
4、簡述面向?qū)ο蠓治龇椒?OOA)的5個基本步驟
1)、識別對象,識別對象包括標識潛在的對象和篩選對象兩步
2)、識別對象的屬性
3)、識別對象的行為
4)、識別對象所屬的類
5)、定義主題詞
uml心得體會4篇最新匯總
上一篇:vba心得體會5篇最新匯總
下一篇:ui培訓心得5篇最新匯總