面向?qū)ο蠼<夹g(shù)_第1頁
面向?qū)ο蠼<夹g(shù)_第2頁
面向?qū)ο蠼<夹g(shù)_第3頁
面向?qū)ο蠼<夹g(shù)_第4頁
面向?qū)ο蠼<夹g(shù)_第5頁
已閱讀5頁,還剩65頁未讀, 繼續(xù)免費(fèi)閱讀

付費(fèi)下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、面向?qū)ο蠼<夹g(shù)面向?qū)ο蠼<夹g(shù)軟件工程系軟件工程系林林 琳琳課程介紹課程介紹v課時(shí)安排:課時(shí)安排:35+1035+10v課堂紀(jì)律課堂紀(jì)律v出勤率出勤率v實(shí)驗(yàn)情況實(shí)驗(yàn)情況v總成績筆試成績總成績筆試成績(70%)+(70%)+上課出勤上課出勤(20%)+(20%)+案例設(shè)計(jì)案例設(shè)計(jì) (10%) (10%)自我介紹自我介紹v林琳林琳v郵箱:郵箱:JSDXLLJSDXLLv電話:電話:1385294537613852945376v辦公室:計(jì)算機(jī)大樓辦公室:計(jì)算機(jī)大樓316316參考書參考書vJoseph SchmullerJoseph Schmuller,UMLUML基礎(chǔ)、案例與應(yīng)用(第基礎(chǔ)、案例與

2、應(yīng)用(第三版),人民郵電出版社三版),人民郵電出版社v謝星星等,謝星星等,UMLUML基礎(chǔ)與基礎(chǔ)與RoseRose建模實(shí)用教程,清華建模實(shí)用教程,清華大學(xué)出版社大學(xué)出版社v http:/ 建筑工程建筑工程交流手段為什么要進(jìn)行建模為什么要進(jìn)行建模v任何大規(guī)模的系統(tǒng)設(shè)計(jì)都是相當(dāng)?shù)睦щy的。從簡任何大規(guī)模的系統(tǒng)設(shè)計(jì)都是相當(dāng)?shù)睦щy的。從簡單的單機(jī)桌面程序設(shè)計(jì)到多層的企業(yè)級系統(tǒng),任單的單機(jī)桌面程序設(shè)計(jì)到多層的企業(yè)級系統(tǒng),任何系統(tǒng)都可以分解為多個軟件和硬件何系統(tǒng)都可以分解為多個軟件和硬件v面對如此龐大復(fù)雜的結(jié)構(gòu)將會出現(xiàn)幾個問題:我面對如此龐大復(fù)雜的結(jié)構(gòu)將會出現(xiàn)幾個問題:我們?nèi)绾闻c客戶溝通,了解客戶對系統(tǒng)的需

3、求?如們?nèi)绾闻c客戶溝通,了解客戶對系統(tǒng)的需求?如何在開發(fā)人員之間共享設(shè)計(jì),以確保各個部分能何在開發(fā)人員之間共享設(shè)計(jì),以確保各個部分能夠無縫地協(xié)作?夠無縫地協(xié)作?v在開發(fā)復(fù)雜的系統(tǒng)時(shí),如果缺乏相應(yīng)的幫助工具,在開發(fā)復(fù)雜的系統(tǒng)時(shí),如果缺乏相應(yīng)的幫助工具,則很容易曲解或遺忘許多細(xì)節(jié)。則很容易曲解或遺忘許多細(xì)節(jié)。建模的重要性建模的重要性v建模的使用是軟件成功的一個基本因素。建模的使用是軟件成功的一個基本因素。v模型的實(shí)質(zhì):對現(xiàn)實(shí)的簡化。模型的實(shí)質(zhì):對現(xiàn)實(shí)的簡化。 v建模的目標(biāo)建模的目標(biāo) :便于展現(xiàn)系統(tǒng)。便于展現(xiàn)系統(tǒng)。允許指定系統(tǒng)的結(jié)構(gòu)或行為。允許指定系統(tǒng)的結(jié)構(gòu)或行為。提供構(gòu)造系統(tǒng)的模板。提供構(gòu)造系統(tǒng)的

4、模板。記錄決策。記錄決策。 建模的誤區(qū)建模的誤區(qū)v建模就是寫文檔建模就是寫文檔v一開始就能考慮到一切情況一開始就能考慮到一切情況v必須必須“凍結(jié)凍結(jié)”需求需求v設(shè)計(jì)不可更改設(shè)計(jì)不可更改v必須使用必須使用CASECASE工具工具v建模是在浪費(fèi)時(shí)間建模是在浪費(fèi)時(shí)間v所有的開發(fā)人員都知道如何建模所有的開發(fā)人員都知道如何建模 11第第1 1章章 UMLUML與面向?qū)ο笈c面向?qū)ο髒UMLUML(統(tǒng)一建模語言,(統(tǒng)一建模語言,Unified Modeling LanguageUnified Modeling Language)是軟)是軟件和系統(tǒng)開發(fā)的標(biāo)準(zhǔn)建模語言,它主要以圖形的方式對系統(tǒng)件和系統(tǒng)開發(fā)的標(biāo)準(zhǔn)

5、建模語言,它主要以圖形的方式對系統(tǒng)進(jìn)行分析、設(shè)計(jì)。進(jìn)行分析、設(shè)計(jì)。v面向?qū)ο蟮能浖_發(fā)方法是現(xiàn)在軟件工程流域的主流方法。面向?qū)ο蟮能浖_發(fā)方法是現(xiàn)在軟件工程流域的主流方法。vUMLUML是在多種面向?qū)ο蠓治雠c設(shè)計(jì)方法相互融合的基礎(chǔ)上形是在多種面向?qū)ο蠓治雠c設(shè)計(jì)方法相互融合的基礎(chǔ)上形成的,是一種專用于系統(tǒng)建模的語言。成的,是一種專用于系統(tǒng)建模的語言。12本章學(xué)習(xí)要點(diǎn)本章學(xué)習(xí)要點(diǎn)v 理解面向?qū)ο蟾拍罾斫饷嫦驅(qū)ο蟾拍顅 了解了解OOOO開發(fā)開發(fā)v 熟悉熟悉OOOO開發(fā)的優(yōu)點(diǎn)開發(fā)的優(yōu)點(diǎn)v 掌握掌握OOOO開發(fā)三層設(shè)計(jì)開發(fā)三層設(shè)計(jì)v 了解模型的作用了解模型的作用v 了解面向?qū)ο蟮闹饕拍盍私饷嫦驅(qū)ο蟮闹?/p>

6、要概念v 了解了解UMLUML的發(fā)展的發(fā)展v 掌握掌握UMLUML四層結(jié)構(gòu)四層結(jié)構(gòu)v 了解統(tǒng)一的含義了解統(tǒng)一的含義v 理解理解UMLUML視圖和圖的關(guān)系視圖和圖的關(guān)系v 掌握掌握UMLUML模型元素內(nèi)容模型元素內(nèi)容v 理解理解UMLUML通用機(jī)制通用機(jī)制v 了解了解UMLUML建模在軟件開發(fā)中應(yīng)用建模在軟件開發(fā)中應(yīng)用13v 面向?qū)ο竺嫦驅(qū)ο?Objec-Oriented(Objec-Oriented,OO)OO)不僅是一些具體的軟件不僅是一些具體的軟件開發(fā)技術(shù)與策略,而且是一整套關(guān)于如何看待軟件系統(tǒng)開發(fā)技術(shù)與策略,而且是一整套關(guān)于如何看待軟件系統(tǒng)與現(xiàn)實(shí)世界的關(guān)系,用什么觀點(diǎn)來研究問題并進(jìn)行求解

7、,與現(xiàn)實(shí)世界的關(guān)系,用什么觀點(diǎn)來研究問題并進(jìn)行求解,以及如何進(jìn)行系統(tǒng)構(gòu)造的軟件方法學(xué)。以及如何進(jìn)行系統(tǒng)構(gòu)造的軟件方法學(xué)。v 面向?qū)ο蠓椒ǖ幕舅枷氚▋蓚€主要方面。面向?qū)ο蠓椒ǖ幕舅枷氚▋蓚€主要方面。 一方面是從現(xiàn)實(shí)世界中客觀存在的事務(wù)出發(fā)來構(gòu)造軟一方面是從現(xiàn)實(shí)世界中客觀存在的事務(wù)出發(fā)來構(gòu)造軟件系統(tǒng),并在系統(tǒng)的構(gòu)造中盡可能地運(yùn)用人類的自然件系統(tǒng),并在系統(tǒng)的構(gòu)造中盡可能地運(yùn)用人類的自然思維方式。思維方式。 另一方面是面向?qū)ο蠓椒ū纫酝姆椒ǜ咏祟惖牧硪环矫媸敲嫦驅(qū)ο蠓椒ū纫酝姆椒ǜ咏祟惖淖匀凰季S方式。自然思維方式。1.1 1.1 面向?qū)ο箝_發(fā)面向?qū)ο箝_發(fā)軟件工程的發(fā)展歷史軟件工程的

8、發(fā)展歷史v19461946年,世界上第一臺電子計(jì)算機(jī)在美國研制年,世界上第一臺電子計(jì)算機(jī)在美國研制成功。成功。v5050年代,軟件誕生,這時(shí)的軟件開發(fā)主要指編年代,軟件誕生,這時(shí)的軟件開發(fā)主要指編程。程。 v6060年代中期到年代中期到7070年代中期,年代中期,“軟件危機(jī)軟件危機(jī)” ” 出出現(xiàn)?,F(xiàn)。v19681968年,年,“軟件工程軟件工程” ” 概念提出。概念提出。傳統(tǒng)軟件工程的生命周期傳統(tǒng)軟件工程的生命周期v軟件開發(fā)分為五個階段:軟件開發(fā)分為五個階段: 需求分析階段需求分析階段 總體設(shè)計(jì)階段總體設(shè)計(jì)階段 詳細(xì)設(shè)計(jì)階段詳細(xì)設(shè)計(jì)階段 編程和測試階段編程和測試階段 維護(hù)階段維護(hù)階段 面向?qū)ο?/p>

9、的軟件工程方法面向?qū)ο蟮能浖こ谭椒╲19671967年,第一種面向?qū)ο笳Z言年,第一種面向?qū)ο笳Z言Simula-67Simula-67誕生;誕生;v2020世紀(jì)世紀(jì)8080年代年代SmalltalkSmalltalk語言掀起了一場語言掀起了一場“面面向?qū)ο笙驅(qū)ο蟆边\(yùn)動;運(yùn)動;v面向?qū)ο笳Z言越來越多,應(yīng)用越來越廣泛;面向?qū)ο笳Z言越來越多,應(yīng)用越來越廣泛;v面向?qū)ο蠹夹g(shù)在軟件工程領(lǐng)域得到應(yīng)用,主要面向?qū)ο蠹夹g(shù)在軟件工程領(lǐng)域得到應(yīng)用,主要包括:包括: 面向?qū)ο蟮姆治雒嫦驅(qū)ο蟮姆治鯫OAOOA 面向?qū)ο蟮脑O(shè)計(jì)面向?qū)ο蟮脑O(shè)計(jì)OODOOD 面向?qū)ο蟮木幊堂嫦驅(qū)ο蟮木幊蘋OPOOP傳統(tǒng)方法與面向?qū)ο蠓椒ǖ谋?/p>

10、較傳統(tǒng)方法與面向?qū)ο蠓椒ǖ谋容^v數(shù)據(jù)處理方法不同數(shù)據(jù)處理方法不同 圖圖1-11-1v建模手段不同建模手段不同v軟件開發(fā)方法不同軟件開發(fā)方法不同 圖圖1-21-21.1.2 1.1.2 面向?qū)ο蟮幕靖拍蠲嫦驅(qū)ο蟮幕靖拍顅面向?qū)ο蠹夹g(shù)的基本觀點(diǎn)面向?qū)ο蠹夹g(shù)的基本觀點(diǎn): : 客觀世界由對象組成,任何客觀實(shí)體都是對客觀世界由對象組成,任何客觀實(shí)體都是對象,復(fù)雜對象可以由簡單對象組成。象,復(fù)雜對象可以由簡單對象組成。 具有相同數(shù)據(jù)和操作的對象可歸納成類,對具有相同數(shù)據(jù)和操作的對象可歸納成類,對象是類的一個實(shí)例。象是類的一個實(shí)例。 類可以派生出子類,子類除了繼承父類的全類可以派生出子類,子類除了繼承父

11、類的全部特性外還可以有自己的特性。部特性外還可以有自己的特性。 對象之間的聯(lián)系通過消息傳遞來維系。對象之間的聯(lián)系通過消息傳遞來維系。一個對象的實(shí)例圖解一個對象的實(shí)例圖解 v對象對象v類類v封裝封裝v繼承繼承v消息消息v多態(tài)性多態(tài)性v關(guān)聯(lián)關(guān)聯(lián)v聚合聚合201.1.2 1.1.2 面向?qū)ο蟮幕靖拍蠲嫦驅(qū)ο蟮幕靖拍?.1.3 OO開發(fā)的優(yōu)點(diǎn)v 1.1.自然性自然性 在開發(fā)中總是以對象的形式來認(rèn)識世界,因此當(dāng)在開發(fā)中總是以對象的形式來認(rèn)識世界,因此當(dāng)人們分析和設(shè)計(jì)系統(tǒng)需求時(shí),總是很自然地定義人們分析和設(shè)計(jì)系統(tǒng)需求時(shí),總是很自然地定義各類對象。各類對象。v 2.2.重用性重用性 一次創(chuàng)建的類和對象能

12、多次使用。一次創(chuàng)建的類和對象能多次使用。211.2 OO開發(fā)中三層設(shè)計(jì)v 面向?qū)ο蟮拈_發(fā)中,通常把面向?qū)ο蟮拈_發(fā)中,通常把OOOO系統(tǒng)中相互聯(lián)系的所有對系統(tǒng)中相互聯(lián)系的所有對象分成三類:問題域類、象分成三類:問題域類、GUIGUI類和數(shù)據(jù)訪問類。類和數(shù)據(jù)訪問類。v 問題域類是指和用戶相關(guān)的對象類;問題域類是指和用戶相關(guān)的對象類;v GUIGUI類的作用是方便用戶與問題類進(jìn)行交互;類的作用是方便用戶與問題類進(jìn)行交互;v 數(shù)據(jù)訪問類,實(shí)現(xiàn)問題域類和數(shù)據(jù)庫交互。數(shù)據(jù)訪問類,實(shí)現(xiàn)問題域類和數(shù)據(jù)庫交互。v 在實(shí)現(xiàn)系統(tǒng)時(shí)按照先確定問題域類,然后實(shí)現(xiàn)在實(shí)現(xiàn)系統(tǒng)時(shí)按照先確定問題域類,然后實(shí)現(xiàn)GUIGUI類,最

13、類,最后再確定數(shù)據(jù)訪問類的順序逐步實(shí)現(xiàn)。一旦完成所有的后再確定數(shù)據(jù)訪問類的順序逐步實(shí)現(xiàn)。一旦完成所有的內(nèi)容后,它們就可以作為一個完整的系統(tǒng)進(jìn)行工作了。內(nèi)容后,它們就可以作為一個完整的系統(tǒng)進(jìn)行工作了。v 優(yōu)點(diǎn):降低耦合,提高復(fù)用。優(yōu)點(diǎn):降低耦合,提高復(fù)用。221.2 OO開發(fā)中三層設(shè)計(jì)圖圖1-3 1-3 圖書管理系統(tǒng)的三層結(jié)構(gòu)圖書管理系統(tǒng)的三層結(jié)構(gòu)1.3 UML簡介v 統(tǒng)一建模語言(統(tǒng)一建模語言(UMLUML)僅僅是一種語言。它不)僅僅是一種語言。它不是一種系統(tǒng)設(shè)計(jì)的方法,而是系統(tǒng)建模的標(biāo)準(zhǔn)。是一種系統(tǒng)設(shè)計(jì)的方法,而是系統(tǒng)建模的標(biāo)準(zhǔn)。UMLUML經(jīng)歷了多年的研究、發(fā)展并不斷完善,成經(jīng)歷了多年的研

14、究、發(fā)展并不斷完善,成為現(xiàn)在諸多領(lǐng)域內(nèi)建模的首選標(biāo)準(zhǔn)。開發(fā)人員為現(xiàn)在諸多領(lǐng)域內(nèi)建模的首選標(biāo)準(zhǔn)。開發(fā)人員主要使用主要使用UMLUML來構(gòu)造各種模型,以便描述系統(tǒng)來構(gòu)造各種模型,以便描述系統(tǒng)需求和設(shè)計(jì)。需求和設(shè)計(jì)。241.3.1 為什么對系統(tǒng)建模v在系統(tǒng)設(shè)計(jì)中采用模型化設(shè)計(jì)的重要原因在系統(tǒng)設(shè)計(jì)中采用模型化設(shè)計(jì)的重要原因之一是管理系統(tǒng)設(shè)計(jì)的復(fù)雜性。模型化可之一是管理系統(tǒng)設(shè)計(jì)的復(fù)雜性。模型化可以幫助用戶從高層理解系統(tǒng),使用戶專注以幫助用戶從高層理解系統(tǒng),使用戶專注于系統(tǒng)設(shè)計(jì)的重要部分,收集關(guān)鍵信息,于系統(tǒng)設(shè)計(jì)的重要部分,收集關(guān)鍵信息,而不需要關(guān)心一些無關(guān)緊要的部分。而不需要關(guān)心一些無關(guān)緊要的部分。25

15、1.3.2 UML的發(fā)展1.3.3 UML的構(gòu)成vUMLUML的四層體系結(jié)構(gòu)的四層體系結(jié)構(gòu) 元元模型層元元模型層 元模型層元模型層 模型層模型層 用戶模型層用戶模型層271.3.3 UML的構(gòu)成vUMLUML的核心構(gòu)成的核心構(gòu)成 視圖視圖: :表達(dá)系統(tǒng)的某一個方面特征的表達(dá)系統(tǒng)的某一個方面特征的UMLUML建模建模元素的子集;元素的子集; 圖:對建模系統(tǒng)的抽象表示,用于描述視圖圖:對建模系統(tǒng)的抽象表示,用于描述視圖內(nèi)容;內(nèi)容; 模型元素:包括事物和事物之間的聯(lián)系;模型元素:包括事物和事物之間的聯(lián)系; 通用機(jī)制:為模型元素提供額外信息。通用機(jī)制:為模型元素提供額外信息。28部署圖部署視圖1.3.

16、4 “統(tǒng)一”的意義v UMLUML的含義為統(tǒng)一建模語言,那么的含義為統(tǒng)一建模語言,那么“統(tǒng)一統(tǒng)一”在在UMLUML中的含中的含義具有一些相關(guān)聯(lián)的含義,具體表現(xiàn)在以下幾個方面:義具有一些相關(guān)聯(lián)的含義,具體表現(xiàn)在以下幾個方面: 在以往出現(xiàn)的方法和表示法方面在以往出現(xiàn)的方法和表示法方面 在軟件開發(fā)的生命期方面在軟件開發(fā)的生命期方面 在應(yīng)用領(lǐng)域方面在應(yīng)用領(lǐng)域方面 在實(shí)現(xiàn)的編程語言和開發(fā)平臺方面在實(shí)現(xiàn)的編程語言和開發(fā)平臺方面 在開發(fā)過程方面在開發(fā)過程方面 在內(nèi)部概念方面在內(nèi)部概念方面301.4 UML視圖v 在對復(fù)雜的工程進(jìn)行建模時(shí),系統(tǒng)可由一個單一的圖形在對復(fù)雜的工程進(jìn)行建模時(shí),系統(tǒng)可由一個單一的圖形

17、來描述,該圖形精確地定義了整個系統(tǒng)。但是,單一的來描述,該圖形精確地定義了整個系統(tǒng)。但是,單一的圖形不可能包含系統(tǒng)所需的所有信息,更不可能描述系圖形不可能包含系統(tǒng)所需的所有信息,更不可能描述系統(tǒng)的整體結(jié)構(gòu)功能。統(tǒng)的整體結(jié)構(gòu)功能。v UMLUML中使用視圖來劃分系統(tǒng)各個方面,每一種視圖描述中使用視圖來劃分系統(tǒng)各個方面,每一種視圖描述系統(tǒng)某一個方面的特性。一個完整的系統(tǒng)由不同的視圖系統(tǒng)某一個方面的特性。一個完整的系統(tǒng)由不同的視圖從不同的角度共同描述,這樣系統(tǒng)才可能被精確定義。從不同的角度共同描述,這樣系統(tǒng)才可能被精確定義。v UMLUML中具有多種視圖,細(xì)分起來共有五種:用例視圖、中具有多種視圖,

18、細(xì)分起來共有五種:用例視圖、邏輯視圖、并發(fā)視圖、組件視圖和部署視圖。邏輯視圖、并發(fā)視圖、組件視圖和部署視圖。31 構(gòu)成系統(tǒng)模型的幾種視圖構(gòu)成系統(tǒng)模型的幾種視圖 組件視圖1.1. 用例視圖用例視圖 v用途:描述系統(tǒng)應(yīng)該具備的功能,即被稱為參用途:描述系統(tǒng)應(yīng)該具備的功能,即被稱為參與者的外部用戶所能觀察到的功能。與者的外部用戶所能觀察到的功能。 v用例視圖是幾個視圖的核心,它的內(nèi)容直接驅(qū)用例視圖是幾個視圖的核心,它的內(nèi)容直接驅(qū)動其他視圖的開發(fā)。動其他視圖的開發(fā)。2. 2. 邏輯視圖邏輯視圖 v用途:描述用例視圖中提出的系統(tǒng)功能的實(shí)現(xiàn)。用途:描述用例視圖中提出的系統(tǒng)功能的實(shí)現(xiàn)。 v邏輯視圖既描述系統(tǒng)

19、的靜態(tài)結(jié)構(gòu),也描述系統(tǒng)邏輯視圖既描述系統(tǒng)的靜態(tài)結(jié)構(gòu),也描述系統(tǒng)內(nèi)部的動態(tài)協(xié)作關(guān)系。內(nèi)部的動態(tài)協(xié)作關(guān)系。v使用者:主要是設(shè)計(jì)人員和開發(fā)人員。使用者:主要是設(shè)計(jì)人員和開發(fā)人員。 v組成:靜態(tài)結(jié)構(gòu)在類圖和對象圖中進(jìn)行描述;組成:靜態(tài)結(jié)構(gòu)在類圖和對象圖中進(jìn)行描述;動態(tài)模型在狀態(tài)圖、時(shí)序圖、協(xié)作圖以及活動動態(tài)模型在狀態(tài)圖、時(shí)序圖、協(xié)作圖以及活動圖中進(jìn)行描述。圖中進(jìn)行描述。3. 3. 并發(fā)視圖并發(fā)視圖v用途:考慮資源的有效利用、代碼的并行執(zhí)行用途:考慮資源的有效利用、代碼的并行執(zhí)行以及系統(tǒng)環(huán)境中異步事件的處理。以及系統(tǒng)環(huán)境中異步事件的處理。v使用者:主要是開發(fā)人員和系統(tǒng)集成人員。使用者:主要是開發(fā)人員和系

20、統(tǒng)集成人員。 v組成:狀態(tài)圖、協(xié)作圖和活動圖。組成:狀態(tài)圖、協(xié)作圖和活動圖。4. 4. 組件視圖組件視圖v用途:描述系統(tǒng)的實(shí)現(xiàn)模塊以及它們之間的依用途:描述系統(tǒng)的實(shí)現(xiàn)模塊以及它們之間的依賴關(guān)系。賴關(guān)系。 v組成:組件圖。組成:組件圖。 v使用者:主要是開發(fā)人員。使用者:主要是開發(fā)人員。 5. 5. 部署視圖部署視圖v用途:顯示系統(tǒng)的物理部署,并描述位于節(jié)點(diǎn)用途:顯示系統(tǒng)的物理部署,并描述位于節(jié)點(diǎn)實(shí)例上的運(yùn)行組件實(shí)例的部署情況,還允許評實(shí)例上的運(yùn)行組件實(shí)例的部署情況,還允許評估分配結(jié)果和資源分配。估分配結(jié)果和資源分配。 v組成:部署圖。組成:部署圖。v使用者:開發(fā)人員、系統(tǒng)集成人員和測試人員。使

21、用者:開發(fā)人員、系統(tǒng)集成人員和測試人員。 1.5 UML圖v 每一種每一種UMLUML的視圖都是由一個或多個圖組成的,一個的視圖都是由一個或多個圖組成的,一個圖就是系統(tǒng)架構(gòu)在某個側(cè)面的表示,所有的圖一起圖就是系統(tǒng)架構(gòu)在某個側(cè)面的表示,所有的圖一起組成了系統(tǒng)的完整視圖。組成了系統(tǒng)的完整視圖。UML1.xUML1.x提供了九種不同的提供了九種不同的圖,可以分為兩大類:一類是靜態(tài)圖,包括用例圖、圖,可以分為兩大類:一類是靜態(tài)圖,包括用例圖、類圖、對象圖、組件圖和部署圖;另一類是動態(tài)圖,類圖、對象圖、組件圖和部署圖;另一類是動態(tài)圖,包括序列圖、協(xié)作圖、狀態(tài)圖和活動圖。包括序列圖、協(xié)作圖、狀態(tài)圖和活動圖

22、。38UML1.XUML1.X與與2.02.0的比較的比較v對對UML1.XUML1.X進(jìn)行了一些擴(kuò)充。進(jìn)行了一些擴(kuò)充。v用更為受限的通信圖代替了協(xié)作圖。用更為受限的通信圖代替了協(xié)作圖。 v增加了交互概覽圖、定時(shí)圖、組合結(jié)構(gòu)圖等新增加了交互概覽圖、定時(shí)圖、組合結(jié)構(gòu)圖等新圖。圖。1.6 模型元素v UMLUML中每一個模型元素都有一個與之相對應(yīng)的中每一個模型元素都有一個與之相對應(yīng)的圖形元素。模型元素的圖形是表示使圖形元素。模型元素的圖形是表示使UMLUML的模的模型圖形化,圖形語言簡明和直觀使用其成為人型圖形化,圖形語言簡明和直觀使用其成為人們建模的有力工具。模型元素包括事物和事物們建模的有力工

23、具。模型元素包括事物和事物之間的關(guān)系,是之間的關(guān)系,是UMLUML中重要的組成部分。中重要的組成部分。401.6.1 事物v 事物是事物是UMLUML模型中面向?qū)ο蠡镜哪K,它們在模型中模型中面向?qū)ο蠡镜哪K,它們在模型中屬于靜態(tài)部分,代表物理上或概念上的元素。屬于靜態(tài)部分,代表物理上或概念上的元素。UMLUML中的中的事物可分為四種,分別是事物可分為四種,分別是 結(jié)構(gòu)事物結(jié)構(gòu)事物 動作事物動作事物 分組事物分組事物 注釋事物注釋事物411. 1. 結(jié)構(gòu)事物結(jié)構(gòu)事物 vUMLUML模型中最基本的結(jié)構(gòu)化事物,包括:模型中最基本的結(jié)構(gòu)化事物,包括: 類類 接口接口 協(xié)作協(xié)作 用例用例 活動類活

24、動類 組件組件 節(jié)點(diǎn)節(jié)點(diǎn) (1 1)類)類v 對具有相同屬性、對具有相同屬性、方法、關(guān)系和語義方法、關(guān)系和語義的對象的抽象。的對象的抽象。 (2 2)接口)接口v 為類或組件提供特定服務(wù)的一組操作的集合。為類或組件提供特定服務(wù)的一組操作的集合。 v 描述了類或組件的對外可見的動作。描述了類或組件的對外可見的動作。 (3 3)協(xié)作)協(xié)作 v定義了交互操作,一個給定的類可能是幾個協(xié)定義了交互操作,一個給定的類可能是幾個協(xié)作的組成部分。作的組成部分。 v代表構(gòu)成系統(tǒng)的模式的實(shí)現(xiàn)。代表構(gòu)成系統(tǒng)的模式的實(shí)現(xiàn)。(4 4)用例)用例 v描述系統(tǒng)對一個特定角色執(zhí)行的一系列動作。描述系統(tǒng)對一個特定角色執(zhí)行的一系

25、列動作。 v組織動作事物。組織動作事物。 (5 5)活動類)活動類 v類對象有一個或多個進(jìn)程或線程的類。類對象有一個或多個進(jìn)程或線程的類。 (6 6)組件)組件v實(shí)現(xiàn)了一個接口集合的物理上可替換的系統(tǒng)部實(shí)現(xiàn)了一個接口集合的物理上可替換的系統(tǒng)部分。分。 (7 7)節(jié)點(diǎn))節(jié)點(diǎn) v在運(yùn)行時(shí)存在的一個物理元素。在運(yùn)行時(shí)存在的一個物理元素。v代表一個可計(jì)算的資源。代表一個可計(jì)算的資源。v通常占用一些內(nèi)存和具有處理能力。通常占用一些內(nèi)存和具有處理能力。 2. 2. 動作事物動作事物 vUMLUML模型中的動態(tài)部分,包括:模型中的動態(tài)部分,包括: 交互交互 狀態(tài)機(jī)狀態(tài)機(jī)(1 1)交互)交互v一組對象在特定上

26、下文中,為達(dá)到某種特定的一組對象在特定上下文中,為達(dá)到某種特定的目的而進(jìn)行的一系列消息交換組成的動作。目的而進(jìn)行的一系列消息交換組成的動作。 (2 2)狀態(tài)機(jī))狀態(tài)機(jī)v由一系列對象的狀態(tài)組成。由一系列對象的狀態(tài)組成。 3. 3. 分組事物分組事物 vUMLUML模型中組織的部分。模型中組織的部分。v分組事物只有一種:包。分組事物只有一種:包。v包是一種將有組織的元素分組的機(jī)制。包是一種將有組織的元素分組的機(jī)制。v包只存在于開發(fā)階段。包只存在于開發(fā)階段。 4. 4. 注釋事物注釋事物 vUMLUML模型的解釋部分。模型的解釋部分。1.6.2 1.6.2 關(guān)系關(guān)系 關(guān)聯(lián)關(guān)聯(lián)依賴依賴泛化泛化實(shí)現(xiàn)實(shí)現(xiàn)

27、聚合聚合BicyclePumpTeacherCourse1.7 通用機(jī)制v 通用機(jī)制使得通用機(jī)制使得UMLUML更簡單和易于使用更簡單和易于使用v 通用機(jī)制可以為模型元素添加注釋、信息或語通用機(jī)制可以為模型元素添加注釋、信息或語義,還可以對義,還可以對UMLUML進(jìn)行擴(kuò)展。進(jìn)行擴(kuò)展。v 通用機(jī)制中包括了修飾、注釋、規(guī)格說明和擴(kuò)通用機(jī)制中包括了修飾、注釋、規(guī)格說明和擴(kuò)展機(jī)制等四種。展機(jī)制等四種。561.修飾v 修飾(修飾(AdornmentAdornment)為圖中的模型元素增加了語義,)為圖中的模型元素增加了語義,建模時(shí)可以將圖形修飾附加到建模時(shí)可以將圖形修飾附加到UMLUML圖中的模型元素圖

28、中的模型元素上。上。v 例如,當(dāng)一個元素代表某種類型時(shí),名稱顯示為粗例如,當(dāng)一個元素代表某種類型時(shí),名稱顯示為粗體;當(dāng)同一元素表示該類型的實(shí)例時(shí),該元素名稱體;當(dāng)同一元素表示該類型的實(shí)例時(shí),該元素名稱顯示為下劃線修飾。顯示為下劃線修飾。572 2 注釋注釋v 以自由的文本形式出現(xiàn)的。以自由的文本形式出現(xiàn)的。v 信息類型是不被信息類型是不被UMLUML解釋的一個字符串。解釋的一個字符串。 v 示例:示例:3 3 規(guī)格說明規(guī)格說明 vUML UML 中預(yù)定義的特性:中預(yù)定義的特性: 文檔(文檔(DocumentationDocumentation) 職責(zé)(職責(zé)(ResponsibilityResp

29、onsibility) 永久性(永久性(PersistencePersistence) 并發(fā)性(并發(fā)性(ConcurrencyConcurrency) 4 4 擴(kuò)展機(jī)制擴(kuò)展機(jī)制 構(gòu)造型構(gòu)造型 標(biāo)記值標(biāo)記值 約束約束 (1 1)構(gòu)造型)構(gòu)造型v 由建模者設(shè)計(jì)的新的模型元素。由建模者設(shè)計(jì)的新的模型元素。v 新的模型元素的設(shè)計(jì)要以新的模型元素的設(shè)計(jì)要以UMLUML已定義的模型元素為基礎(chǔ)。已定義的模型元素為基礎(chǔ)。 v 示例:示例:(2 2)標(biāo)記值)標(biāo)記值v 附加到任何模型元素上的命名的信息塊。附加到任何模型元素上的命名的信息塊。v 示例:示例:(3 3)約束)約束v 用某種形式化語言或自然語言表達(dá)的語義關(guān)系的文字用某種形式化語言或自然語言表達(dá)的語義關(guān)系的文字說明。說明。 v 示例:示例:1.8 使用UML建模v UMLUML可用于任何面向?qū)ο笙到y(tǒng)開發(fā)建模,不僅可以為使可用于任何面向?qū)ο笙到y(tǒng)開發(fā)建模,不僅可以為使用用UMLUML進(jìn)行軟件建模,同樣可以使用進(jìn)行軟件建模,同樣可以使用UMLUML

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論