自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

專家答疑 什么是UML

開發(fā) 架構(gòu)
UML是什么意思,它包含什么內(nèi)容你是否了解,這里就向大家介紹一下什么是UML?相信通過本文的介紹,大家對(duì)UML有全面的了解,歡迎大家一起來學(xué)習(xí)UML的相關(guān)知識(shí)。

本節(jié)向大家介紹一下什么是UML?主要包括UML的出現(xiàn)和UML包含的內(nèi)容等兩大部分,希望通過本節(jié)的學(xué)習(xí)大家對(duì)UML有初步的認(rèn)識(shí),下面就讓我們一起來學(xué)習(xí)UML吧。

什么是UML?

面向?qū)ο蟮姆治雠c設(shè)計(jì)(OOA&D)方法的發(fā)展在80年代末至90年代中出現(xiàn)了一個(gè)高潮,UML是這個(gè)高潮的產(chǎn)物。它不僅統(tǒng)一了Booch、Rumbaugh和Jacobson的表示方法,而且對(duì)其作了進(jìn)一步的發(fā)展,并最終統(tǒng)一為大眾所接受的標(biāo)準(zhǔn)建模語(yǔ)言。

1.標(biāo)準(zhǔn)建模語(yǔ)言UML的出現(xiàn)

什么是UML,它何時(shí)誕生的?公認(rèn)的面向?qū)ο蠼UZ(yǔ)言出現(xiàn)于70年代中期。從1989年到1994年,其數(shù)量從不到十種增加到了五十多種。在眾多的建模語(yǔ)言中,語(yǔ)言的創(chuàng)造者努力推崇自己的產(chǎn)品,并在實(shí)踐中不斷完善。但是,OO方法的用戶并不了解不同建模語(yǔ)言的優(yōu)缺點(diǎn)及相互之間的差異,因而很難根據(jù)應(yīng)用特點(diǎn)選擇合適的建模語(yǔ)言,于是爆發(fā)了一場(chǎng)“方法大戰(zhàn)”。90年代中,一批新方法出現(xiàn)了,其中最引人注目的是Booch1993、OOSE和OMT-2等。

Booch是面向?qū)ο蠓椒ㄗ钤绲某珜?dǎo)者之一,他提出了面向?qū)ο筌浖こ痰母拍睢?991年,他將以前面向Ada的工作擴(kuò)展到整個(gè)面向?qū)ο笤O(shè)計(jì)領(lǐng)域。Booch1993比較適合于系統(tǒng)的設(shè)計(jì)和構(gòu)造。

Rumbaugh等人提出了面向?qū)ο蟮慕<夹g(shù)(OMT)方法,采用了面向?qū)ο蟮母拍睿⒁敫鞣N獨(dú)立于語(yǔ)言的表示符。這種方法用對(duì)象模型、動(dòng)態(tài)模型、功能模型和用例模型,共同完成對(duì)整個(gè)系統(tǒng)的建模,所定義的概念和符號(hào)可用于軟件開發(fā)的分析、設(shè)計(jì)和實(shí)現(xiàn)的全過程,軟件開發(fā)人員不必在開發(fā)過程的不同階段進(jìn)行概念和符號(hào)的轉(zhuǎn)換。OMT-2特別適用于分析和描述以數(shù)據(jù)為中心的信息系統(tǒng)。

Jacobson于1994年提出了OOSE方法,其最大特點(diǎn)是面向用例(Use-Case),并在用例的描述中引入了外部角色的概念。用例的概念是精確描述需求的重要武器,但用例貫穿于整個(gè)開發(fā)過程,包括對(duì)系統(tǒng)的測(cè)試和驗(yàn)證。OOSE比較適合支持商業(yè)工程和需求分析。

此外,還有Coad/Yourdon方法,即著名的OOA/OOD,它是最早的面向?qū)ο蟮姆治龊驮O(shè)計(jì)方法之一。該方法簡(jiǎn)單、易學(xué),適合于面向?qū)ο蠹夹g(shù)的初學(xué)者使用,但由于該方法在處理能力方面的局限,目前已很少使用。

概括起來,首先,面對(duì)眾多的建模語(yǔ)言,用戶由于沒有能力區(qū)別不同語(yǔ)言之間的差別,因此很難找到一種比較適合其應(yīng)用特點(diǎn)的語(yǔ)言;其次,眾多的建模語(yǔ)言實(shí)際上各有千秋;第三,雖然不同的建模語(yǔ)言大多類同,但仍存在某些細(xì)微的差別,極大地妨礙了用戶之間的交流。因此在客觀上,極有必要在精心比較不同的建模語(yǔ)言優(yōu)缺點(diǎn)及總結(jié)面向?qū)ο蠹夹g(shù)應(yīng)用實(shí)踐的基礎(chǔ)上,組織聯(lián)合設(shè)計(jì)小組,根據(jù)應(yīng)用需求,取其精華,去其糟粕,求同存異,統(tǒng)一建模語(yǔ)言。

1994年10月,GradyBooch和JimRumbaugh開始致力于這一工作。他們首先將Booch93和OMT-2統(tǒng)一起來,并于1995年10月發(fā)布了第一個(gè)公開版本,稱之為統(tǒng)一方法UM0.8(UnitiedMethod)。1995年秋,OOSE的創(chuàng)始人IvarJacobson加盟到這一工作。經(jīng)過Booch、Rumbaugh和Jacobson三人的共同努力,于1996年6月和10月分別發(fā)布了兩個(gè)新的版本,即UML0.9和UML0.91,并將UM重新命名為UML(UnifiedModelingLanguage)。

1996年,一些機(jī)構(gòu)將UML作為其商業(yè)策略已日趨明顯。UML的開發(fā)者得到了來自公眾的正面反應(yīng),并倡議成立了UML成員協(xié)會(huì),以完善、加強(qiáng)和促進(jìn)UML的定義工作。當(dāng)時(shí)的成員有DEC、HP、I-Logix、Itellicorp、IBM、ICONComputing、MCISystemhouse、Microsoft、Oracle、RationalSoftware、TI以及Unisys。這一機(jī)構(gòu)對(duì)UML1.0(1997年1月)及UML1.1(1997年11月17日)的定義和發(fā)布起了重要的促進(jìn)作用。

什么是UML?UML是一種定義良好、易于表達(dá)、功能強(qiáng)大且普遍適用的建模語(yǔ)言。它溶入了軟件工程領(lǐng)域的新思想、新方法和新技術(shù)。它的作用域不限于支持面向?qū)ο蟮姆治雠c設(shè)計(jì),還支持從需求分析開始的軟件開發(fā)的全過程。

面向?qū)ο蠹夹g(shù)和UML的發(fā)展過程可用上圖來表示,標(biāo)準(zhǔn)建模語(yǔ)言的出現(xiàn)是其重要成果。在美國(guó),截止1996年10月,UML獲得了工業(yè)界、科技界和應(yīng)用界的廣泛支持,已有700多個(gè)公司表示支持采用UML作為建模語(yǔ)言。1996年底,UML已穩(wěn)占面向?qū)ο蠹夹g(shù)市場(chǎng)的85%,成為可視化建模語(yǔ)言事實(shí)上的工業(yè)標(biāo)準(zhǔn)。1997年11月17日,OMG采納UML1.1作為基于面向?qū)ο蠹夹g(shù)的標(biāo)準(zhǔn)建模語(yǔ)言。UML代表了面向?qū)ο蠓椒ǖ能浖_發(fā)技術(shù)的發(fā)展方向,具有巨大的市場(chǎng)前景,也具有重大的經(jīng)濟(jì)價(jià)值和國(guó)防價(jià)值。

2.標(biāo)準(zhǔn)建模語(yǔ)言UML的內(nèi)容

什么是UML,它包含哪些內(nèi)容?首先,UML融合了Booch、OMT和OOSE方法中的基本概念,而且這些基本概念與其他面向?qū)ο蠹夹g(shù)中的基本概念大多相同,因而,UML必然成為這些方法以及其他方法的使用者樂于采用的一種簡(jiǎn)單一致的建模語(yǔ)言;其次,UML不僅僅是上述方法的簡(jiǎn)單匯合,而是在這些方法的基礎(chǔ)上廣泛征求意見,集眾家之長(zhǎng),幾經(jīng)修改而完成的,UML擴(kuò)展了現(xiàn)有方法的應(yīng)用范圍;第三,UML是標(biāo)準(zhǔn)的建模語(yǔ)言,而不是標(biāo)準(zhǔn)的開發(fā)過程。盡管UML的應(yīng)用必然以系統(tǒng)的開發(fā)過程為背景,但由于不同的組織和不同的應(yīng)用領(lǐng)域,需要采取不同的開發(fā)過程。

作為一種建模語(yǔ)言,UML的定義包括UML語(yǔ)義和UML表示法兩個(gè)部分。

(1)UML語(yǔ)義描述基于UML的精確元模型定義。元模型為UML的所有元素在語(yǔ)法和語(yǔ)義上提供了簡(jiǎn)單、一致、通用的定義性說明,使開發(fā)者能在語(yǔ)義上取得一致,消除了因人而異的最佳表達(dá)方法所造成的影響。此外UML還支持對(duì)元模型的擴(kuò)展定義。

(2)UML表示法定義UML符號(hào)的表示法,為開發(fā)者或開發(fā)工具使用這些圖形符號(hào)和文本語(yǔ)法為系統(tǒng)建模提供了標(biāo)準(zhǔn)。這些圖形符號(hào)和文字所表達(dá)的是應(yīng)用級(jí)的模型,在語(yǔ)義上它是UML元模型的實(shí)例。

標(biāo)準(zhǔn)建模語(yǔ)言UML的重要內(nèi)容可以由下列五類圖(共9種圖形)來定義:

◆第一類是用例圖,從用戶角度描述系統(tǒng)功能,并指出各功能的操作者。

◆第二類是靜態(tài)圖(Staticdiagram),包括類圖、對(duì)象圖和包圖。其中類圖描述系統(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)的整個(gè)生命周期都是有效的。

對(duì)象圖是類圖的實(shí)例,幾乎使用與類圖完全相同的標(biāo)識(shí)。他們的不同點(diǎn)在于對(duì)象圖顯示類的多個(gè)對(duì)象實(shí)例,而不是實(shí)際的類。一個(gè)對(duì)象圖是類圖的一個(gè)實(shí)例。由于對(duì)象存在生命周期,因此對(duì)象圖只能在系統(tǒng)某一時(shí)間段存在。

包由包或類組成,表示包與包之間的關(guān)系。包圖用于描述系統(tǒng)的分層結(jié)構(gòu)。

◆第三類是行為圖(Behaviordiagram),什么是UML行為圖?描述系統(tǒng)的動(dòng)態(tài)模型和組成對(duì)象間的交互關(guān)系。其中狀態(tài)圖描述類的對(duì)象所有可能的狀態(tài)以及事件發(fā)生時(shí)狀態(tài)的轉(zhuǎn)移條件。通常,狀態(tài)圖是對(duì)類圖的補(bǔ)充。在實(shí)用上并不需要為所有的類畫狀態(tài)圖,僅為那些有多個(gè)狀態(tài)其行為受外界環(huán)境的影響并且發(fā)生改變的類畫狀態(tài)圖。
而活動(dòng)圖描述滿足用例要求所要進(jìn)行的活動(dòng)以及活動(dòng)間的約束關(guān)系,有利于識(shí)別并行活動(dòng)。

◆第四類是交互圖(Interactivediagram),描述對(duì)象間的交互關(guān)系。其中順序圖顯示對(duì)象之間的動(dòng)態(tài)合作關(guān)系,它強(qiáng)調(diào)對(duì)象之間消息發(fā)送的順序,同時(shí)顯示對(duì)象之間的交互;合作圖描述對(duì)象間的協(xié)作關(guān)系,合作圖跟順序圖相似,顯示對(duì)象間的動(dòng)態(tài)合作關(guān)系。除顯示信息交換外,合作圖還顯示對(duì)象以及它們之間的關(guān)系。如果強(qiáng)調(diào)時(shí)間和順序,則使用順序圖;如果強(qiáng)調(diào)上下級(jí)關(guān)系,則選擇合作圖。這兩種圖合稱為交互圖。

◆第五類是實(shí)現(xiàn)圖(Implementationdiagram)。什么是UMl實(shí)現(xiàn)圖?其中構(gòu)件圖描述代碼部件的物理結(jié)構(gòu)及各部件之間的依賴關(guān)系。一個(gè)部件可能是一個(gè)資源代碼部件、一個(gè)二進(jìn)制部件或一個(gè)可執(zhí)行部件。它包含邏輯類或?qū)崿F(xiàn)類的有關(guān)信息。部件圖有助于分析和理解部件之間的相互影響程度。

配置圖定義系統(tǒng)中軟硬件的物理體系結(jié)構(gòu)。它可以顯示實(shí)際的計(jì)算機(jī)和設(shè)備(用節(jié)點(diǎn)表示)以及它們之間的連接關(guān)系,也可顯示連接的類型及部件之間的依賴性。在節(jié)點(diǎn)內(nèi)部,放置可執(zhí)行部件和對(duì)象以顯示節(jié)點(diǎn)跟可執(zhí)行軟件單元的對(duì)應(yīng)關(guān)系。

從應(yīng)用的角度看,當(dāng)采用面向?qū)ο蠹夹g(shù)設(shè)計(jì)系統(tǒng)時(shí),首先是描述需求;其次根據(jù)需求建立系統(tǒng)的靜態(tài)模型,以構(gòu)造系統(tǒng)的結(jié)構(gòu);第三步是描述系統(tǒng)的行為。其中在第一步與第二步中所建立的模型都是靜態(tài)的,包括用例圖、類圖(包含包)、對(duì)象圖、組件圖和配置圖等五個(gè)圖形,是標(biāo)準(zhǔn)建模語(yǔ)言UML的靜態(tài)建模機(jī)制。其中第三步中所建立的模型或者可以執(zhí)行,或者表示執(zhí)行時(shí)的時(shí)序狀態(tài)或交互關(guān)系。它包括狀態(tài)圖、活動(dòng)圖、順序圖和合作圖等四個(gè)圖形,是標(biāo)準(zhǔn)建模語(yǔ)言UML的動(dòng)態(tài)建模機(jī)制。因此,標(biāo)準(zhǔn)建模語(yǔ)言UML的主要內(nèi)容也可以歸納為靜態(tài)建模機(jī)制和動(dòng)態(tài)建
模機(jī)制兩大類。本節(jié)關(guān)于什么是UML的內(nèi)容介紹到這里。

【編輯推薦】

  1. UML類圖中的四種關(guān)系深入剖析
  2. 教你繪制整潔的UML圖
  3. 如何繪制UML用例圖
  4. UML中各種UML圖形的建立步驟簡(jiǎn)明介紹
  5. UML用例概念介紹
責(zé)任編輯:佚名 來源: csdn.net
相關(guān)推薦

2010-07-06 11:51:21

UML活動(dòng)圖

2010-06-07 19:27:40

UML是什么

2010-09-17 13:10:29

JVMJava虛擬機(jī)

2010-07-05 10:20:27

UML圖

2010-08-13 13:56:02

Flex事件機(jī)制

2010-07-02 14:04:24

UML圖

2010-08-04 15:55:08

Flex是什么

2010-06-11 13:31:04

UML2

2010-09-28 11:32:30

HTML DOM是什么

2010-09-26 10:29:45

JVMJava虛擬機(jī)

2010-08-25 10:28:05

margin

2009-07-20 10:36:29

什么是JDBC

2017-05-27 17:00:43

重復(fù)數(shù)據(jù)刪除存儲(chǔ)云端

2010-07-02 09:54:45

UML建模技能認(rèn)證體系中國(guó)系統(tǒng)與軟件過程改進(jìn)

2010-06-10 17:14:54

UML建模過程

2013-09-02 10:08:03

虛擬化核心應(yīng)用

2010-07-21 09:29:33

Perl常見問題

2010-07-06 10:00:08

UML部署圖

2010-06-12 17:19:18

UML用戶指南

2010-06-07 17:24:44

UML
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)