全書教學(xué)課件:UML系統(tǒng)建?;A(chǔ)教程_第1頁(yè)
全書教學(xué)課件:UML系統(tǒng)建?;A(chǔ)教程_第2頁(yè)
全書教學(xué)課件:UML系統(tǒng)建模基礎(chǔ)教程_第3頁(yè)
全書教學(xué)課件:UML系統(tǒng)建?;A(chǔ)教程_第4頁(yè)
全書教學(xué)課件:UML系統(tǒng)建模基礎(chǔ)教程_第5頁(yè)
已閱讀5頁(yè),還剩355頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、重點(diǎn)內(nèi)容:面向?qū)ο笏枷氲幕靖拍?面向?qū)ο蟮娜笠?面向?qū)ο笈c項(xiàng)目設(shè)計(jì) 用面向?qū)ο笏枷虢⑾到y(tǒng)模型第1章 面向?qū)ο笤O(shè)計(jì)與UML 一、面向?qū)ο笏枷氲幕靖拍?面向?qū)ο蠹夹g(shù)是一種以對(duì)象為基礎(chǔ),以事件或消息來驅(qū)動(dòng)對(duì)象執(zhí)行處理的程序設(shè)計(jì)技術(shù)。 從程序設(shè)計(jì)方法上來講,它是一種自下而上的程序設(shè)計(jì)方法,它不像面向過程程序設(shè)計(jì)那樣一開始就需要使用一個(gè)主函數(shù)來概括出整個(gè)程序,面向?qū)ο蟪绦蛟O(shè)計(jì)往往從問題的一部分著手,一點(diǎn)一點(diǎn)地構(gòu)建出整個(gè)程序。 1、什么叫面向?qū)ο? 對(duì)象(object)是面向?qū)ο螅∣bject-Oriented,OO)系統(tǒng)的基本構(gòu)造塊,是一些相關(guān)的變量和方法的軟件集。 可以利用對(duì)象來代表現(xiàn)實(shí)世界

2、中的對(duì)象:可用一個(gè)飛行試駕程序來代表現(xiàn)實(shí)世界中的正在飛行的飛機(jī),或者用機(jī)床數(shù)控程序來代表現(xiàn)實(shí)世界的運(yùn)行的機(jī)床。 同樣可以使用對(duì)象來造型抽象的概念,比如,點(diǎn)擊按鈕事件就是一個(gè)用在GUI窗口系統(tǒng)的公共對(duì)象,它可以代表用戶點(diǎn)擊程序界面中的一個(gè)確定按鈕的動(dòng)作。 2、對(duì)象 一、面向?qū)ο笏枷氲幕靖拍钜?、ADO.NET基礎(chǔ) 類(Class)是具有相同屬性和操作的一組對(duì)象的組合,也就是說,抽象模型中的“類”描述了一組相似對(duì)象的共同特征,為屬于該類的全部對(duì)象提供了統(tǒng)一的抽象描述。 例如名為“學(xué)生”的類被用于描述為被學(xué)生管理系統(tǒng)管理的學(xué)生對(duì)象。 類的定義要包含以下的要素 第一,定義該類對(duì)象的數(shù)據(jù)結(jié)構(gòu)(屬性的名稱

3、和類型) 第二,定義對(duì)象所要執(zhí)行的操作,也就是類的對(duì)象要被調(diào)用執(zhí)行那些操作,以及這些操作時(shí)對(duì)象要執(zhí)行那些操作,比如數(shù)據(jù)庫(kù)操作等等。3、類一、面向?qū)ο笏枷氲幕靖拍?所謂消息(Message)是指描述事件發(fā)生的信息,是對(duì)象間相互聯(lián)系和相互作用的方式。一個(gè)消息主要由5部分組成:消息的發(fā)送對(duì)象、消息的接收對(duì)象、消息傳遞方式、消息內(nèi)容(參數(shù))、消息的返回。傳入的消息內(nèi)容的目的有兩個(gè),一個(gè)是讓接受請(qǐng)求的對(duì)象獲取執(zhí)行任務(wù)的相關(guān)信息,另一個(gè)是行為指令。 所謂事件通常是指一種由系統(tǒng)預(yù)先定義而由用戶或系統(tǒng)發(fā)出的動(dòng)作。事件作用于對(duì)象,對(duì)象識(shí)別事件并作出相應(yīng)反應(yīng) 。 對(duì)象通過對(duì)外提供的方法在系統(tǒng)中發(fā)揮自己的作用,當(dāng)

4、系統(tǒng)中的其它對(duì)象請(qǐng)求這個(gè)對(duì)象執(zhí)行某個(gè)方法時(shí),就向該對(duì)象發(fā)送一個(gè)消息,對(duì)象響應(yīng)這個(gè)請(qǐng)求,完成指定的操作。程序的執(zhí)行取決于事件發(fā)生的順序,由順序產(chǎn)生的消息來驅(qū)動(dòng)程序的執(zhí)行。4、消息與事件一、面向?qū)ο笏枷氲幕靖拍?二、面向?qū)ο蟮娜笠?封裝(Encapsulation)是把對(duì)象的狀態(tài)和行為綁到一起的機(jī)制,把對(duì)象形成一個(gè)獨(dú)立的整體,并且盡可能的隱藏對(duì)象的內(nèi)部細(xì)節(jié)。封裝有兩個(gè)含義:一是把對(duì)象的全部狀態(tài)和行為結(jié)合一起,形成一個(gè)不可分割的整體。對(duì)象的私有屬性只能夠由對(duì)象的行為來修改和讀取。二是盡可能隱蔽對(duì)象的內(nèi)部細(xì)節(jié),與外界的聯(lián)系只能夠通過外部接口來實(shí)現(xiàn)。 封裝的信息屏蔽作用反映了事物的相對(duì)獨(dú)立性,我們

5、可以只關(guān)心它對(duì)外所提供的接口,即能夠提供什么樣的服務(wù),而不用去關(guān)注其內(nèi)部的細(xì)節(jié)問題。 比如說使用手機(jī),我們關(guān)注的通常是這個(gè)手機(jī)能實(shí)現(xiàn)什么功能,而不太會(huì)去關(guān)心這個(gè)手機(jī)的是怎么一步步制造出來的。1、封裝 二、面向?qū)ο蟮娜笠?繼承(Inheritance)是一種連接類與類的之間的層次模型。繼承是指特殊類的對(duì)象擁有其一般類的屬性和行為。 繼承意味著“自動(dòng)地?fù)碛小?,即在特殊類中不必重新?duì)已經(jīng)在一般類中所定義過的屬性和行為進(jìn)行定義,而是特殊類自動(dòng)地、隱含地?fù)碛衅湟话泐惖膶傩院托袨椤?繼承對(duì)類的重用性,提供了一種明確表述共性的方法。即一個(gè)特殊類既有自己定義的屬性和行為,又有繼承下來的屬性和行為。2、繼承

6、 二、面向?qū)ο蟮娜笠?多態(tài)性(Polymorphism)是指在兩個(gè)或多個(gè)屬于不同類中同一函數(shù)名對(duì)應(yīng)多個(gè)具有相似功能的不同函數(shù),可以使用相同的調(diào)用方式來調(diào)用這些具有不同功能的同名函數(shù)。 3、多態(tài) 三、面向?qū)ο笈c項(xiàng)目設(shè)計(jì)1、用面向?qū)ο蠓椒ǚ治鲰?xiàng)目需求 面向?qū)ο笤O(shè)計(jì)的準(zhǔn)則包括模塊化、抽象、信息隱藏、低耦合和高內(nèi)聚等特征。 系統(tǒng)設(shè)計(jì)是問題求解及建立解答的高級(jí)策略。必須制定解決問題的基本方法,系統(tǒng)的高層結(jié)構(gòu)形式包括子系統(tǒng)的分解、它的固有并發(fā)性、子系統(tǒng)分配給硬軟件、數(shù)據(jù)存儲(chǔ)管理、資源協(xié)調(diào)、軟件控制實(shí)現(xiàn)、人機(jī)交互接口等等。系統(tǒng)設(shè)計(jì)一般是先從高層入手,然后細(xì)化。 系統(tǒng)設(shè)計(jì)要決定整個(gè)結(jié)構(gòu)及風(fēng)格,這種結(jié)構(gòu)為后

7、面設(shè)計(jì)階段的更詳細(xì)策略的設(shè)計(jì)提供了基礎(chǔ)。 2、用面向?qū)ο蟮姆椒ㄔO(shè)計(jì)系統(tǒng)三、面向?qū)ο笈c項(xiàng)目設(shè)計(jì) 瀑布模型也被稱為生存周期模型,其核心思想是按照相應(yīng)的工序?qū)栴}進(jìn)行簡(jiǎn)化,將系統(tǒng)功能的實(shí)現(xiàn)與系統(tǒng)的設(shè)計(jì)工作分開,便于項(xiàng)目之間的分工與協(xié)作。 瀑布模型將軟件生命周期劃分為軟件計(jì)劃、需求分析和定義、軟件設(shè)計(jì)、軟件實(shí)現(xiàn)、軟件測(cè)試、軟件運(yùn)行和維護(hù)這6個(gè)階段。1、瀑布模型 四、用面向?qū)ο笏枷虢⑾到y(tǒng)模型噴泉模型是一種以對(duì)象為驅(qū)動(dòng)、以用戶需求為動(dòng)力的模型,主要用于描述面向?qū)ο蟮能浖_發(fā)過程。該模型認(rèn)為軟件開發(fā)過程自下而上周期的各階段是相互重疊和多次反復(fù)的,就像水噴上去又可以落下來,類似一個(gè)噴泉。2、噴泉模型四、用面

8、向?qū)ο笏枷虢⑾到y(tǒng)模型基于構(gòu)件的開發(fā)模型利用模塊化方法將整個(gè)系統(tǒng)模塊化,并在一定構(gòu)件模型的支持下復(fù)用構(gòu)件庫(kù)中的一個(gè)或多個(gè)軟件構(gòu)件,通過組合手段高效率、高質(zhì)量地構(gòu)造應(yīng)用軟件系統(tǒng)的過程。3、基于組件的開發(fā)模型四、用面向?qū)ο笏枷虢⑾到y(tǒng)模型 敏捷方法強(qiáng)調(diào)適應(yīng)性而非預(yù)測(cè)性、強(qiáng)調(diào)以人為中心,而不以流程為中心,以及對(duì)變化的適應(yīng)和對(duì)人性的關(guān)注,其特點(diǎn)是輕載、基于時(shí)間、緊湊、并行并基于構(gòu)件的軟件過程。 在所有的敏捷方法中,XP(eXtreme Programming)方法是最引人注目的一種輕型開發(fā)方法。它規(guī)定了一組核心價(jià)值和方法,消除了大多數(shù)重量型開發(fā)過程中的不必要產(chǎn)物,建立了一個(gè)漸進(jìn)型開發(fā)過程。 4、XP開

9、發(fā)模型四、用面向?qū)ο笏枷虢⑾到y(tǒng)模型重點(diǎn)內(nèi)容: UML概述 常用的UML元素分析 UML的通用機(jī)制 UML的擴(kuò)展機(jī)制 第2章 UML通用知識(shí)點(diǎn)綜述 一、 UML概述 UML能夠在盡可能簡(jiǎn)單的同時(shí)能夠滿足對(duì)實(shí)際開發(fā)需要,進(jìn)行系統(tǒng)的各個(gè)方面建模。 UML擁有足夠的表達(dá)能力以便可以處理現(xiàn)代軟件開發(fā)中出現(xiàn)的所有概念。 UML是一個(gè)通用語(yǔ)言,不僅僅和一種通用程序設(shè)計(jì)語(yǔ)言一樣,也是一個(gè)龐大的標(biāo)準(zhǔn)符號(hào)體系,提供了多種模型。 UML是用模型來描述系統(tǒng)的結(jié)構(gòu)或靜態(tài)特征以及行為或動(dòng)態(tài)特征的,它從不同的視角為系統(tǒng)的架構(gòu)建模形成系統(tǒng)的不同視圖(view)。 在UML中主要包括的視圖為靜態(tài)視圖、用例視圖、交互視圖、實(shí)現(xiàn)

10、視圖、狀態(tài)機(jī)視圖、活動(dòng)視圖、部署視圖和模型管理視圖。 1、視圖 二、常用的UML元素分析視圖 靜態(tài)視圖是對(duì)在應(yīng)用領(lǐng)域中的各種概念以及與系統(tǒng)實(shí)現(xiàn)相關(guān)的各種內(nèi)部概念進(jìn)行的建模。 由于這種視圖不描述與時(shí)間有關(guān)的系統(tǒng)行為所以我們稱之為是靜態(tài)的,描述與時(shí)間相關(guān)的系統(tǒng)行為我們?cè)谄渌晥D中進(jìn)行描述。靜態(tài)視圖主要是由類與類之間的關(guān)系構(gòu)成。 這些關(guān)系包括:關(guān)聯(lián)、泛化和依賴關(guān)系,我們又把依賴關(guān)系具體可以再分為使用和實(shí)現(xiàn)關(guān)系。1、視圖 二、常用的UML元素分析靜態(tài)圖視 用例視圖描述了系統(tǒng)的參與者與系統(tǒng)進(jìn)行交互的功能,是參與者所能觀察和使用到的系統(tǒng)功能的模型圖。一個(gè)用例是系統(tǒng)的一個(gè)功能單元,是系統(tǒng)參與者與系統(tǒng)之間進(jìn)行

11、的一次交互作用。 1、視圖 二、常用的UML元素分析用例視圖 交互視圖描述了執(zhí)行系統(tǒng)功能的各個(gè)角色之間相互傳遞消息的順序關(guān)系,是描繪系統(tǒng)中各種角色或功能交互的模型。交互視圖顯示了跨越多個(gè)對(duì)象的系統(tǒng)控制流程。 我們通過不同對(duì)象間的相互作用來描述系統(tǒng)的行為,是通過兩種方式進(jìn)行的,一種是以獨(dú)立的對(duì)象為中心進(jìn)行描述,另外一種方式是以相互作用的一組對(duì)象為中心進(jìn)行描述。 交互視圖可運(yùn)使用兩種圖的形式來表示:序列圖和協(xié)作圖。 1、視圖 二、常用的UML元素分析交互視圖 狀態(tài)機(jī)視圖是通過對(duì)象的各種狀態(tài)來建立模型來描述對(duì)象隨時(shí)間變化的動(dòng)態(tài)行為。狀態(tài)機(jī)視圖也是通過不同對(duì)象間的相互作用來描述系統(tǒng)的行為的,不同的它是

12、以獨(dú)立的對(duì)象為中心進(jìn)行描述。 狀態(tài)機(jī)視圖中,每一個(gè)對(duì)象都擁有自己的狀態(tài),這些狀態(tài)之間的變化是通過事件進(jìn)行觸發(fā)的。 對(duì)象被看成為通過事件進(jìn)行觸發(fā)并做出相應(yīng)的動(dòng)作來與外界的其他對(duì)象進(jìn)行通信的獨(dú)立實(shí)體。事件表達(dá)了對(duì)象可以被使用操作,同時(shí)反映了對(duì)象狀態(tài)的變化。 1、視圖 二、常用的UML元素分析狀態(tài)機(jī)視圖 活動(dòng)視圖是一種特殊形式的狀態(tài)機(jī)視圖,是狀態(tài)機(jī)的一個(gè)變體,用來描述執(zhí)行算法的工作流程中涉及的活動(dòng)。 通?;顒?dòng)視圖用于對(duì)計(jì)算流程和工作流程建模?;顒?dòng)視圖中的狀態(tài)表示計(jì)算過程中所處的各種狀態(tài)。 活動(dòng)視圖是在假定整個(gè)計(jì)算處理的過程中沒有外部事件引起的中斷的條件下進(jìn)行描述的,否則普通的狀態(tài)機(jī)更加適合于描述這種

13、情況。 1、視圖 二、常用的UML元素分析活動(dòng)視圖 物理視圖是對(duì)應(yīng)用自身的實(shí)現(xiàn)結(jié)構(gòu)建模,例如系統(tǒng)的構(gòu)件組織情況以及運(yùn)行節(jié)點(diǎn)的配置等等。 物理視圖提供了將系統(tǒng)中的類映射成物理構(gòu)件和節(jié)點(diǎn)的機(jī)制。 物理視圖提供了將系統(tǒng)中的類映射成物理構(gòu)件和節(jié)點(diǎn)的機(jī)制。系統(tǒng)模型的大部分內(nèi)容反映了系統(tǒng)的邏輯和設(shè)計(jì)方面的信息,并且獨(dú)立于系統(tǒng)的最終實(shí)現(xiàn)單元。 1、視圖 二、常用的UML元素分析物理視圖 模型管理視圖是對(duì)模型自身組織進(jìn)行的建模,是由自身的一系列模型元素(如類、狀態(tài)機(jī)和用例)構(gòu)成的包所組成的模型。模型是從某一觀點(diǎn)以一定的精確程度對(duì)系統(tǒng)所進(jìn)行的完整描述。 從不同的視角出發(fā),對(duì)同一系統(tǒng)可能會(huì)建立多個(gè)模型,例如有系統(tǒng)

14、分析模型和系統(tǒng)設(shè)計(jì)模型等等。模型是一種特殊的包。一個(gè)包 (package) 還可以包含其他的包。 整個(gè)系統(tǒng)的靜態(tài)模型實(shí)際上可看成是系統(tǒng)最大的包,它直接或間接包含了模型中的所有元素內(nèi)容。1、視圖 二、常用的UML元素分析模型管理視圖 用例圖描述了系統(tǒng)提供的一個(gè)功能單元。用例圖的主要目的是幫助開發(fā)團(tuán)隊(duì)以一種可視化的方式理解系統(tǒng)的功能需求,包括基于基本流程的“角色”關(guān)系,以及系統(tǒng)內(nèi)用例之間的關(guān)系。 使用用例圖可以表示出用例的組織關(guān)系,這種組織關(guān)系包括整個(gè)系統(tǒng)的全部用例或者是完成相關(guān)功能的一組用例。 在用例圖中畫出某個(gè)用例方式是在用例圖中繪制一個(gè)橢圓,然后將用例的名稱放在橢圓的中心或橢圓下面的中間位置

15、。2、圖 二、常用的UML元素分析用例圖 類圖顯示了系統(tǒng)的靜態(tài)結(jié)構(gòu),表示了不同的實(shí)體(人、事物和數(shù)據(jù))是如何彼此相關(guān)聯(lián)起來。 類圖可用于表示邏輯類,邏輯類通常就是用戶的業(yè)務(wù)所談及的事物,比如說學(xué)生、學(xué)校等。類圖還可用于表示實(shí)現(xiàn)類,實(shí)現(xiàn)類就是程序員處理的實(shí)體。 2、圖 二、常用的UML元素分析類圖 序列圖顯示了一個(gè)具體用例或者用例的一部分的一個(gè)詳細(xì)流程。它幾乎是自描述的,序列圖不僅可以顯示了流程中不同對(duì)象之間的調(diào)用關(guān)系,還可以很詳細(xì)地顯示對(duì)不同對(duì)象的不同調(diào)用。 序列圖有兩個(gè)維度:垂直維度,也稱時(shí)間維度,以發(fā)生的時(shí)間順序顯示消息或調(diào)用的序列;水平維度顯示消息被發(fā)送到的對(duì)象實(shí)例。2、圖 二、常用的U

16、ML元素分析序列圖 狀態(tài)圖表示某個(gè)類所處的不同狀態(tài)及該類在這些狀態(tài)中的轉(zhuǎn)換過程。 狀態(tài)圖的符號(hào)集包含了下列五個(gè)基本的元素:初始起點(diǎn),狀態(tài)之間的轉(zhuǎn)換,狀態(tài),判斷點(diǎn),一個(gè)或者多個(gè)終止點(diǎn),它們使用內(nèi)部包含實(shí)心圓的圓來繪制。2、圖 二、常用的UML元素分析狀態(tài)圖 活動(dòng)圖是用來表示兩個(gè)或者更多的對(duì)象之間在處理某個(gè)活動(dòng)時(shí)的過程控制流程。 活動(dòng)圖能夠在業(yè)務(wù)單元的級(jí)別上,對(duì)更高級(jí)別的業(yè)務(wù)過程進(jìn)行建模,或者對(duì)低級(jí)別的內(nèi)部類操作進(jìn)行建模。2、圖 二、常用的UML元素分析活動(dòng)圖 是要指出某些功能實(shí)際存在哪些地方,還需要構(gòu)件圖來進(jìn)行表示。 構(gòu)件圖提供系統(tǒng)的物理視圖,它是根據(jù)系統(tǒng)的代碼構(gòu)件顯示了系統(tǒng)代碼的整個(gè)物理結(jié)構(gòu)。

17、 構(gòu)件圖最經(jīng)常用于實(shí)際的編程工作中。在以構(gòu)件為基礎(chǔ)的開發(fā)(CBD)中,構(gòu)件圖為系統(tǒng)架構(gòu)師提供了一個(gè)為解決方案進(jìn)行建模的自然形式。 2、圖 二、常用的UML元素分析構(gòu)件圖 部署圖是用于表示該軟件系統(tǒng)如何部署到硬件環(huán)境中,它是顯示在系統(tǒng)中的不同的構(gòu)件在何處物理地運(yùn)行,以及如何進(jìn)行彼此的通信。 部署圖對(duì)系統(tǒng)的物理運(yùn)行情況進(jìn)行了建模,因此系統(tǒng)的生產(chǎn)人員就能夠很好地利用這種圖來部署實(shí)際的系統(tǒng)。2、圖 二、常用的UML元素分析部署圖 在UML中,圖作為一種可視化的方式聚集了相關(guān)需要表達(dá)的事物,并且表達(dá)了這些事物之間的關(guān)系。 事物是對(duì)模型中最具有代表性的成分的抽象,關(guān)系描述了事物之間如何彼此關(guān)聯(lián)、相互依賴或

18、作用的。正是關(guān)系把構(gòu)成系統(tǒng)的諸多事物結(jié)合成一個(gè)有機(jī)的整體。3、模型元素 二、常用的UML元素分析 事物是UML模型中面向?qū)ο蠡镜哪K,它們?cè)谀P椭袑儆陟o態(tài)部分。事物作為對(duì)模型中最具有代表性的成分的抽象,在UML中,定義了四種基本的面向?qū)ο蟮氖挛?,分別是結(jié)構(gòu)事物、行為事物、分組事物和注釋事物等。3、模型元素 二、常用的UML元素分析事物 UML模型是由各種事物以及這些事物之間的各種關(guān)系構(gòu)成的。關(guān)系是指支配、協(xié)調(diào)各種模型元素存在并相互使用的規(guī)則。 UML中主要包含四種關(guān)系,分別是依賴、關(guān)聯(lián)、泛化和實(shí)現(xiàn)。3、模型元素 二、常用的UML元素分析關(guān)系 依賴關(guān)系:依賴關(guān)系指的是兩個(gè)事物之間的一種語(yǔ)義關(guān)系

19、,當(dāng)其中一個(gè)事物(獨(dú)立事物)發(fā)生變化就會(huì)影響另外一個(gè)事物(依賴事物)的語(yǔ)義。 3、模型元素 二、常用的UML元素分析關(guān)系 關(guān)聯(lián)關(guān)系:關(guān)聯(lián)關(guān)系是一種事物之間的結(jié)構(gòu)關(guān)系,我們用它來描述一組鏈,鏈?zhǔn)菍?duì)象之間的連接。 泛化關(guān)系:泛化關(guān)系是事物之間的一種特殊/一般關(guān)系,特殊元素(子元素)的對(duì)象可替代一般元素(父元素)的對(duì)象,也就是我們?cè)诿嫦驅(qū)ο髮W(xué)中常常提起的繼承。 3、模型元素 二、常用的UML元素分析關(guān)系 實(shí)現(xiàn)關(guān)系:實(shí)現(xiàn)關(guān)系也是UML元素之間的一種語(yǔ)義關(guān)系,它描述了一組操作的規(guī)約和一組對(duì)操作的具體實(shí)現(xiàn)之間的語(yǔ)義關(guān)系。 如果把模型元素當(dāng)成一個(gè)對(duì)象來看待,那么模型元素本身也應(yīng)該具有很多的屬性,這些屬性用于

20、維護(hù)屬于該模型元素的數(shù)據(jù)值。 屬性是使用名稱和標(biāo)記值(Tagged Value)的值來定義的。標(biāo)記值指的是一種特定的類型,可以是布爾型、整型或字符型,也可以是某個(gè)類或接口的類型。1、規(guī)則說明三、UML的通用機(jī)制 在UML的圖形表示中,每一個(gè)模型元素都有一個(gè)基本符號(hào),這個(gè)基本符號(hào)可視化地表達(dá)了模型元素最重要的信息。 用戶也可以把各種修飾細(xì)節(jié)加到這個(gè)符號(hào)上以擴(kuò)展其含義。這種添加修飾細(xì)節(jié)的做法可以為圖中的模型元素在一些視覺上的效果上發(fā)生一些變化。2、修飾三、UML的通用機(jī)制 在UML的圖形表示中,每一個(gè)模型元素都有一個(gè)基本符號(hào),這個(gè)基本符號(hào)可視化地表達(dá)了模型元素最重要的信息。 用戶也可以把各種修飾細(xì)

21、節(jié)加到這個(gè)符號(hào)上以擴(kuò)展其含義。這種添加修飾細(xì)節(jié)的做法可以為圖中的模型元素在一些視覺上的效果上發(fā)生一些變化。2、修飾三、UML的通用機(jī)制 通用劃分是一種保證不同抽象概念層次的機(jī)制。通常我們可以采用兩種方式進(jìn)行通用劃分,一種是對(duì)類和對(duì)象的劃分,另外一種是對(duì)接口和實(shí)現(xiàn)的分離。 類和對(duì)象的劃分是指類是一個(gè)抽象而對(duì)象是這種抽象的一個(gè)實(shí)例化。接口和實(shí)現(xiàn)的分離是指接口聲明了一個(gè)操作接口,但是卻不實(shí)現(xiàn)其內(nèi)容,而實(shí)現(xiàn)則表示了對(duì)該操作接口的具體實(shí)現(xiàn),它負(fù)責(zé)如實(shí)地實(shí)現(xiàn)接口的完整語(yǔ)義。 類和對(duì)象的劃分保證了實(shí)例及其抽象的劃分,從而使得對(duì)一組實(shí)例對(duì)象的公共靜態(tài)和動(dòng)態(tài)特征無需一一管理和實(shí)現(xiàn),只需要抽象成一個(gè)類,通過類的實(shí)

22、例化實(shí)現(xiàn)對(duì)對(duì)象實(shí)體的管理。 3、通訊劃分三、UML的通用機(jī)制 簡(jiǎn)而言之,構(gòu)造型擴(kuò)展機(jī)制的目的就是基于一個(gè)已存在的模型元素再重新定義一個(gè)新的模型元素。 構(gòu)造型的一般表現(xiàn)形式為使用“”包含構(gòu)造型的名稱在里面,例如、等。 1、構(gòu)造型四、UML擴(kuò)展機(jī)制 標(biāo)記值是由一對(duì)字符串構(gòu)成,這對(duì)字符串包含一個(gè)標(biāo)記字符串和一個(gè)值字符串,用來存儲(chǔ)著有關(guān)模型元素或表達(dá)元素的一些相關(guān)信息。 標(biāo)記值,可以被我們用來擴(kuò)展UML構(gòu)造塊的特性,可以根據(jù)我們的需要來創(chuàng)建詳述元素的新元素。 標(biāo)記值可以與任何獨(dú)立元素相關(guān),包括模型元素和表達(dá)元素。標(biāo)記值是當(dāng)我們需要對(duì)一些特性進(jìn)行記錄的時(shí)候而給定元素的值。 2、標(biāo)記值四、UML擴(kuò)展機(jī)制

23、約束機(jī)制用于擴(kuò)展UML構(gòu)造塊的語(yǔ)義,允許建模者和設(shè)計(jì)人員可以增加新的規(guī)則和修改現(xiàn)有的規(guī)則。 約束可以表示在 UML 的規(guī)范表示中不能表示的語(yǔ)義關(guān)系,特別是當(dāng)陳述全局條件或影響許多元素的條件時(shí),約束特別有用。 約束使用大括號(hào)和大括號(hào)內(nèi)的字符串表達(dá)式表示,即約束的表現(xiàn)形式為約束的內(nèi)容。約束可以附加在表元素、依賴關(guān)系,或注釋上。3、約束四、UML擴(kuò)展機(jī)制重點(diǎn)內(nèi)容: 什么叫統(tǒng)一過程 統(tǒng)一過程的結(jié)構(gòu)配置和實(shí)現(xiàn)Rational統(tǒng)一過程 第3章 Rational統(tǒng)一過程一、 什么叫統(tǒng)一過程 Rational統(tǒng)一過程,從字面的意思來講,其包含有三層含義。首先,作為“Rational”統(tǒng)一過程,它是由Ratio

24、nal軟件開發(fā)公司開發(fā)并維護(hù)的,它可以被看成是Rational軟件開發(fā)公司的一款軟件產(chǎn)品,并且和Rational軟件開發(fā)公司開發(fā)的一系列軟件開發(fā)工具進(jìn)行了緊密的集成。 其次是它的“統(tǒng)一”的含義,Rational統(tǒng)一過程擁有自己的一套架構(gòu),并且這套架構(gòu)是以一種大多數(shù)項(xiàng)目和開發(fā)組織都能夠接受的形式存在的。其采用了現(xiàn)代軟件工程開發(fā)的六項(xiàng)最佳實(shí)踐。 最后是它的“過程”上,Rational統(tǒng)一過程不管是如何解釋,其最終仍然是一種軟件開發(fā)過程,提供了如何對(duì)軟件開發(fā)組織進(jìn)行管理的方式,并且擁有自己的目標(biāo)和方法。一、 什么叫統(tǒng)一過程 在各種書籍以及參考資料中,將Rational統(tǒng)一過程的開發(fā)過程使用一種二維結(jié)

25、構(gòu)來表達(dá),即使用沿著橫軸和縱軸兩個(gè)坐標(biāo)軸來表達(dá)該過程。 二、 統(tǒng)一過程的結(jié)構(gòu) Rational統(tǒng)一過程的靜態(tài)結(jié)構(gòu)是通過對(duì)其模型元素的定義來進(jìn)行描述的。在Rational統(tǒng)一過程的開發(fā)流程中定義了“誰(shuí)”“何時(shí)”“如何”做“某事”,并分別使用四種主要的建模元素來進(jìn)行表達(dá),它們是: 第一,角色(Workers),代表了“誰(shuí)”來做? 第二,活動(dòng)(Activities),代表了“如何”去做? 第三,產(chǎn)物(Artifacts),代表了要做“某事”? 第四,工作流(Workflows),代表了“何時(shí)”做?1、統(tǒng)一過程靜態(tài)結(jié)構(gòu) 二、 統(tǒng)一過程的結(jié)構(gòu) 角色定義了個(gè)人或由若干人所組成小組的行為和責(zé)任,它是統(tǒng)一過程

26、的中心概念,很多事物和活動(dòng)都是圍繞角色進(jìn)行的。 角色舉例: 架構(gòu)師(Architect) 架構(gòu)師在整個(gè)項(xiàng)目中領(lǐng)導(dǎo)和協(xié)調(diào)技術(shù)活動(dòng)和產(chǎn)物。架構(gòu)師為每一個(gè)架構(gòu)視圖建立整體結(jié)構(gòu):視圖分解、元素分組以及在這些主要分組之間的接口。 系統(tǒng)分析員(System Analyst)系統(tǒng)分析員通過描述系統(tǒng)功能的綱要和約束,領(lǐng)導(dǎo)和協(xié)調(diào)系統(tǒng)需求的抽取和用例建?;顒?dòng)。1、統(tǒng)一過程靜態(tài)結(jié)構(gòu) 角色二、 統(tǒng)一過程的結(jié)構(gòu) 角色所執(zhí)行的行為使用活動(dòng)表示,每一個(gè)角色都與一組相關(guān)的活動(dòng)相聯(lián)系,活動(dòng)定義了他們執(zhí)行的工作。 某個(gè)角色的活動(dòng)是可能要求該角色中的個(gè)體執(zhí)行的工作單元。 活動(dòng)通常具有明確的目的,將在項(xiàng)目語(yǔ)境中產(chǎn)生有意義的結(jié)果,通

27、常表現(xiàn)為一些產(chǎn)物,如模型、類、計(jì)劃等。 活動(dòng)舉例: 第一,計(jì)劃一個(gè)迭代過程,對(duì)應(yīng)角色:項(xiàng)目經(jīng)理。 第二,尋找用例(use cases)和參與者(actors):對(duì)應(yīng)角色:系統(tǒng)分析員。 第三,審核設(shè)計(jì):對(duì)應(yīng)角色:設(shè)計(jì)審核人員。 第四,執(zhí)行性能測(cè)試:對(duì)應(yīng)角色:性能測(cè)試人員。1、統(tǒng)一過程靜態(tài)結(jié)構(gòu) 活動(dòng)二、 統(tǒng)一過程的結(jié)構(gòu) 產(chǎn)物物是被過程產(chǎn)生的、修改,或?yàn)檫^程所使用的一段信息。 產(chǎn)物是項(xiàng)目的有形產(chǎn)品:項(xiàng)目最終產(chǎn)生的事物,或者向最終產(chǎn)品邁進(jìn)過程中使用的事物。產(chǎn)物用作角色執(zhí)行某個(gè)活動(dòng)的輸入,同時(shí)也是該活動(dòng)的輸出。在面向?qū)ο蟮脑O(shè)計(jì)術(shù)語(yǔ)中,如活動(dòng)是活動(dòng)對(duì)象(角色)上的操作一樣,產(chǎn)物是這些活動(dòng)的參數(shù)。 產(chǎn)物可以

28、具有不同的形式: 模型,模型組成元素,文檔,源代碼和可執(zhí)行文件。 1、統(tǒng)一過程靜態(tài)結(jié)構(gòu) 產(chǎn)物二、 統(tǒng)一過程的結(jié)構(gòu) 僅依靠角色、活動(dòng)和產(chǎn)物的列舉并不能組成一個(gè)過程。需要一種方法來描述能產(chǎn)生若干有價(jià)值的有意義結(jié)果的活動(dòng)序列,顯示角色之間的交互作用,這就是工作流。 Rational統(tǒng)一過程中包含了九個(gè)核心過程工作流(core process workflows),代表了所有角色和活動(dòng)的邏輯分組情況。 核心過程工作流可以被再分成六個(gè)核心工程工作流和三個(gè)核心支持工作流。 六個(gè)核心工程工作流分別為:業(yè)務(wù)建模工作流,需求工作流,分析和設(shè)計(jì)工作流,實(shí)現(xiàn)工作流,測(cè)試工作流 ,分發(fā)工作流。 三個(gè)核心支持工作流分別

29、為:項(xiàng)目管理工作流,配置和變更控制工作流,環(huán)境工作流。1、統(tǒng)一過程靜態(tài)結(jié)構(gòu) 工作流 二、 統(tǒng)一過程的結(jié)構(gòu) Rational統(tǒng)一過程的動(dòng)態(tài)結(jié)構(gòu),是通過對(duì)迭代式軟件開發(fā)過程的周期、階段、迭代過程以及里程碑等的描述來進(jìn)行表示的。 2、統(tǒng)一過程動(dòng)態(tài)結(jié)構(gòu)二、 統(tǒng)一過程的結(jié)構(gòu) 在Rational統(tǒng)一過程中建議采用五種視圖來進(jìn)行描述架構(gòu):邏輯視圖(Logical View):邏輯視圖主要支持系統(tǒng)的功能性需求,即在為用戶提供服務(wù)方面系統(tǒng)應(yīng)該提供的功能。 過程視圖(Process View):過程視圖考慮的是一些非功能性的需求,主要表現(xiàn)為系統(tǒng)運(yùn)行時(shí)的一些特性,如系統(tǒng)的性能和可用性等。 物理視圖(Physical

30、 View):物理視圖主要關(guān)注的也是系統(tǒng)的非功能性需求,這些需求包括系統(tǒng)的可用性、可靠性、性能和可伸縮性。 開發(fā)視圖(Development View):開發(fā)視圖描繪的是系統(tǒng)地開發(fā)架構(gòu),它關(guān)注的是軟件開發(fā)環(huán)境中實(shí)際模塊的組織情況,即系統(tǒng)的子系統(tǒng)是如何分解的。 3、面向架構(gòu)的過程三、配置實(shí)現(xiàn)Rational統(tǒng)一過程 配置Rational統(tǒng)一過程是指通過修改Rational軟件公司交付的過程框架,使整個(gè)過程產(chǎn)品適應(yīng)采納了這種方法的組織的需要和約束。 當(dāng)將在線的Rational統(tǒng)一過程的基線拷貝置于配置管理之下時(shí),配置該過程的相關(guān)人員就可以修改過程以實(shí)現(xiàn)變更。例如: 1 在活動(dòng)中增加、擴(kuò)展、修改或刪

31、除一些步驟。 2 基于經(jīng)驗(yàn)增加評(píng)審活動(dòng)的檢查點(diǎn)。 3 根據(jù)在以前項(xiàng)目中發(fā)現(xiàn)的問題,增加一些指南。 4 裁減一些模板,比如增加公司的標(biāo)志、頭注、腳注、標(biāo)識(shí)和 封面等。 5 增加一些必要的工具指南等。1、配置Rational統(tǒng)一過程三、配置實(shí)現(xiàn)Rational統(tǒng)一過程 實(shí)現(xiàn)Rational統(tǒng)一過程是指在軟件開發(fā)組織中,通過改變組織的實(shí)踐,使組織能例行地、成功地使用Rational統(tǒng)一過程的全部或其一部分。 在軟件開發(fā)組織中實(shí)現(xiàn)一個(gè)全新的過程可以使用以下六個(gè)步驟來描述。它們分別是: 1 評(píng)估當(dāng)前狀態(tài)。 2 建立明確目標(biāo)。 3 識(shí)別過程風(fēng)險(xiǎn)。 4 計(jì)劃過程實(shí)現(xiàn)。 5 執(zhí)行過程實(shí)現(xiàn)。 6 評(píng)價(jià)過程實(shí)現(xiàn)。

32、2、實(shí)現(xiàn)Rational統(tǒng)一過程重點(diǎn)內(nèi)容: Rational Rose:設(shè)計(jì)UML的工具 Rational Rose的安裝 Rational Rose的使用第4章 Rational Rose的安裝和操作一、 Rational Rose:設(shè)計(jì)UML的工具 Rational Rose 是一個(gè)完全的、具有能滿足所有建模環(huán)境(包括Web開發(fā)、數(shù)據(jù)庫(kù)建模以及各種開發(fā)工具和語(yǔ)言)需求能力和靈活性的一套解決方案。 Rational Rose 是一個(gè)完全的、具有能滿足所有建模環(huán)境(包括Web開發(fā)、數(shù)據(jù)庫(kù)建模以及各種開發(fā)工具和語(yǔ)言)需求能力和靈活性的一套解決方案。Rational Rose 允許系統(tǒng)開發(fā)人員、系

33、統(tǒng)管理人員和系統(tǒng)分析人員在軟件的各個(gè)開發(fā)周期內(nèi),建立系統(tǒng)地需求和系統(tǒng)的體系架構(gòu)的可視化模型,并且能夠?qū)⑦@些需求和系統(tǒng)的體系架構(gòu)可視化模型轉(zhuǎn)換成代碼,幫助系統(tǒng)開發(fā)。 二、 Rational Rose的安裝 1 硬件配置。最低的硬件配置環(huán)境需要基于Pentium的PC兼容系統(tǒng),600MHz,512M內(nèi)存,400M磁盤空間。推薦將內(nèi)存增加至1G。 2 系統(tǒng)要求??梢园惭b在以下的Windows操作系統(tǒng)中,Windows NT 4.0、Windows 2000、Windows XP Professional、Windows 2003。 3 數(shù)據(jù)庫(kù)支持。Rational Rose 2003可以提供多種數(shù)據(jù)

34、庫(kù)的支持,包括IBM DB2 Universal Database5.x、6.x和7.x,IBM DB2 OS390 5.x和6.x,MS SQL Server 6.x、7.x和2000,Oracle 7.x、8.x和9.x以及Sybase System 12。 1、Rational Rose的安裝環(huán)境 二、 Rational Rose的安裝 1 將擁有Rational Rose Enterprise Edition安裝程序的光盤放置在光驅(qū)中,瀏覽該光盤,查找到RationalRoseEnterpriseEditionforWindows.exe可執(zhí)行文件,雙擊該文件進(jìn)行運(yùn)行。 2、Ratio

35、nal Rose 的安裝步驟二、 Rational Rose的安裝 2 在完成路徑設(shè)置以后,單擊Next按鈕,安裝程序開始進(jìn)入讀取安裝包的內(nèi)容。在讀取安裝包中的內(nèi)容后,將待安裝文件釋放到已經(jīng)設(shè)置的路徑中。 3 進(jìn)入安裝向?qū)Ы缑?,單擊“Next ”按鈕,進(jìn)入產(chǎn)品選擇界面。在產(chǎn)品選擇中,可以選擇“Rational License Server”或者“Rational Rose Enterprise Edition”,我們選擇后者,選擇后在圖的右方出現(xiàn)相關(guān)說明信息。隨后按默認(rèn)的Next,進(jìn)行安裝。 2、Rational Rose 的安裝步驟三、 Rational Rose的使用 在“New”(新建)

36、選項(xiàng)卡中,我們可以選擇創(chuàng)建模型的模板。 在“Existing”(打開)選項(xiàng)卡中,我們可以打開一個(gè)已經(jīng)存在的模型,在對(duì)話框左側(cè)的列表中,逐級(jí)找到該模型所在的目錄,然后從右側(cè)的列表中選中該模型,單擊“Open”(打開)按鈕進(jìn)行打開。 在“Rencent”(最近使用的模型)選項(xiàng)卡中,我們可以選擇打開一個(gè)最近使用過的模型文件,在選項(xiàng)卡中,選中需要打開的模型,單擊“Open”按鈕或者雙擊該模型文件的圖標(biāo)即可。1、Rational Rose的啟動(dòng)界面三、 Rational Rose的使用 標(biāo)題欄可以顯示當(dāng)前正在工作的模型文件名稱。 對(duì)于剛剛新建還未被保存的模型名稱使用“untitled”表示。此外,標(biāo)題欄

37、還可以顯示當(dāng)前正在編輯的圖的名稱和位置,如 Class Diagram:Logical View / Main 代表的是在Logical View(邏輯視圖)下創(chuàng)建的名稱為Main的Class Diagram(類圖)。2、Rational Rose的操作界面標(biāo)題欄三、 Rational Rose的使用 在菜單欄中包含了所有在Rational Rose 2003 中可以進(jìn)行的操作,一級(jí)菜單共有項(xiàng),分別是 “File”(文件) “Edit”(編輯) “View”(視圖) “Format”(格式) “Browse”(瀏覽) “Report”(報(bào)告) “Query”(查詢) “Tools”(工具) “

38、Add-Ins”(插件) “Window”(窗口) “Help”(幫助)。2、Rational Rose的操作界面菜單欄 三、 Rational Rose的使用 可以通過“View”(視圖)下的“Toolbars”(工具欄)來定制是否顯示標(biāo)準(zhǔn)工具欄和編輯區(qū)工具欄。 單擊“Tools”(工具)下的“Options”(選項(xiàng)),彈出一個(gè)對(duì)話框,選中“Toolbars”(工具欄)選項(xiàng)卡,我們可以在“Standard Toolbar”(標(biāo)準(zhǔn)工具欄)復(fù)選框中可以選擇顯示或隱藏標(biāo)準(zhǔn)工具欄,或者工具欄中的選項(xiàng)是否使用大圖標(biāo)。也可以在“Diagram Toolbar”(圖形編輯工具欄)中選擇是否顯示編輯區(qū)工具欄

39、,以及編輯區(qū)工具欄顯示的樣式。2、Rational Rose的操作界面工具欄 三、 Rational Rose的使用 工作區(qū)由四部分構(gòu)成,瀏覽器、文檔區(qū)、圖形編輯區(qū)和日志區(qū)。 瀏覽器和文檔區(qū)位于Rational Rose 2003工作區(qū)域的左側(cè)。 瀏覽器是一種樹形的層次結(jié)構(gòu),可以幫助我們迅速的查找到各種圖或者模型元素。 文檔區(qū)用于對(duì)Rational Rose 2003中所創(chuàng)建的圖或模型元素說明。 2、Rational Rose的操作界面工作區(qū)三、 Rational Rose的使用 編輯區(qū)包含了圖形工具欄和圖的編輯區(qū)域,在圖的編輯區(qū)域中可以根據(jù)圖形工具欄中的圖形元素內(nèi)容繪制相關(guān)信息。 在圖的編輯

40、區(qū)添加的相關(guān)模型元素會(huì)自動(dòng)地在瀏覽器中添加,這樣使瀏覽器和編輯區(qū)的信息保持同步。我們也可以將瀏覽器中的模型元素拖動(dòng)到圖形編輯區(qū)中進(jìn)行添加。 2、Rational Rose的操作界面工作區(qū)三、 Rational Rose的使用 日志區(qū)位于Rational Rose 2003工作區(qū)域的下方,用以記錄了對(duì)模型的一些重要操作2、Rational Rose的操作界面工作區(qū)三、 Rational Rose的使用 可以通過選擇“File”(文件)菜單欄下的“New”(新建)命令來創(chuàng)建新的模型,也可以通過標(biāo)準(zhǔn)工具欄下的“新建”按鈕創(chuàng)建新的模型,這時(shí)便會(huì)彈出選擇模板的對(duì)話框,選擇我們想要使用的模板,單擊“OK”

41、(確定)按鈕即可。 如果使用模板,Rational Rose 2003系統(tǒng)就會(huì)將模板的相關(guān)初始化信息添加到創(chuàng)建的模型中,這些初始化信息包含了一些包、類、構(gòu)件和圖等。3、Rational Rose的基本操作創(chuàng)建模型 三、 Rational Rose的使用 可通過選擇“File”(文件)菜單欄下的“Save”(保存)命令來保存新建的模型,也可以通過標(biāo)準(zhǔn)工具欄下的按鈕保存新建的模型,保存的Rational Rose模型文件的擴(kuò)展名為.mdl。 可以通過選擇“File”(文件)菜單欄下的“Save Log As”(保存日志)來保存日志,也可以通過“AutoSave Log”(自動(dòng)保存日志)。 3、Ra

42、tional Rose的基本操作保存模型 三、 Rational Rose的使用 通過選擇“File”(文件)菜單欄下的“Import”(導(dǎo)入)可以用來導(dǎo)入模型、包或類等,可供選擇的文件類型包含.mdl、.ptl、.sub或.cat等,導(dǎo)入模型的對(duì)話框。導(dǎo)入模型,可以利用現(xiàn)成的建模。 3、Rational Rose的基本操作導(dǎo)入模型 三、 Rational Rose的使用 通過選擇“File”(文件)菜單欄下的“Export Model .”(導(dǎo)出模型)可以用來導(dǎo)出模型,導(dǎo)出的文件后綴名為.ptl。3、Rational Rose的基本操作導(dǎo)出模型 三、 Rational Rose的使用 Rat

43、ional Rose 2003提供了將模型生成相關(guān)網(wǎng)頁(yè)從而在網(wǎng)絡(luò)上進(jìn)行發(fā)布的功能,這樣,可以方便的系統(tǒng)模型的設(shè)計(jì)人員將系統(tǒng)的模型內(nèi)容對(duì)其它開發(fā)人員進(jìn)行說明。 首先,選擇“Tools”(工具)菜單欄下的“Web Publisher”選項(xiàng)。 3、Rational Rose的基本操作發(fā)布模型 三、 Rational Rose的使用 如果需要設(shè)置發(fā)布的模型生成的圖片格式,可以點(diǎn)擊“Diagram”按鈕, 有四個(gè)選項(xiàng)可以提供選擇,分別是“Dont Publish Diagrams”(不要發(fā)布圖)、Windows Bitmaps(BMP格式)、Portable Network Graphics(PNG格式

44、)和JPEG(JPEG格式)。“Dont Publish Diagrams”(不要發(fā)布圖)是指不發(fā)布圖像,僅僅包含文本內(nèi)容。其余三種指的是發(fā)布的圖形文件格式。 3、Rational Rose的基本操作發(fā)布模型 三、 Rational Rose的使用 添加一個(gè)注釋包含以下的步驟: 1 打開正在編輯的圖,選擇圖形編輯工具欄中的圖標(biāo),將其拖入到圖中需添加注釋的模型元素附近。也可以選擇“Tools”(工具)菜單下的“Create”(新建)菜單中的“Note”選項(xiàng),在圖中需添加注釋的模型元素附近繪制注釋即可。 2 在圖形編輯工具欄中選擇圖標(biāo),或者在“Tools”(工具)菜單下的“Create”(新建)菜

45、單中選擇“Note Anchor”選項(xiàng),添加注釋與模型元素的超鏈接。 刪除注釋的方法很簡(jiǎn)單,選中注釋信息或者注釋超鏈接,按“Delete”或者右鍵選擇“Edit”下“Delete”選項(xiàng)即可。3、Rational Rose的基本操作添加或刪除注釋三、 Rational Rose的使用 創(chuàng)建圖的方式可以通過以下的步驟: 1 在視圖或者包中右鍵單擊選擇“New”菜單下的圖或模型元素。 2 將創(chuàng)建的圖或模型元素進(jìn)行命名。 如果需要?jiǎng)h除模型中的圖或模型元素,需要在瀏覽器中選中該模型元素或圖,右鍵單擊選擇“Delete”即可,這樣在所有圖中存在的該模型元素都會(huì)刪除。如果在圖中選擇該模型元素,按“Delet

46、e”或者右鍵選擇“Edit”下“Delete”選項(xiàng)值會(huì)在該圖中刪除,其它圖中不會(huì)產(chǎn)生影響。 3、Rational Rose的基本操作添加和刪除圖或模型元素 三、 Rational Rose的使用 Rational Rose 2003支持多個(gè)用戶的并行開發(fā),使用控制單元便是支持的一種方式??刂茊卧梢钥刂聘鞣N視圖、Model Properties(模型屬性)和各種視圖下的包。在使用一個(gè)控制單元時(shí),該單元中的所有模型元素存在在一個(gè)后綴為“.cat”的文件中。 在創(chuàng)建完成該控制單元以后,可以對(duì)該控制單元進(jìn)行重載、卸載、取消控制、另存為以及寫保護(hù)操作 3、Rational Rose的基本操作使用控制單

47、元 三、 Rational Rose的基本設(shè)置 點(diǎn)擊“Tools”(工具)菜單下的“Options”選項(xiàng),能設(shè)置字體。 1、字體設(shè)置三、 Rational Rose的基本設(shè)置 在“General”(全局)選項(xiàng)卡中,在“Default Color”選項(xiàng)中,點(diǎn)擊相關(guān)按鈕,便會(huì)彈出顏色設(shè)置對(duì)話框中,可以設(shè)置該選項(xiàng)的顏色信息,這些選項(xiàng)包括“Line Color”(線的顏色)和“Fill Color”(填充區(qū)顏色)。 2、顏色設(shè)置重點(diǎn)內(nèi)容: Rational Rose的四種視圖模型 Rational Rose與生成代碼 第5章 使用Rose設(shè)計(jì)UML一、 Rational Rose的四種視圖模型 在Ra

48、tional Rose建立的模型中包括四種視圖,分別是用例視圖(Use Case View)、邏輯視圖(Logical View)、構(gòu)件視圖(Component View)和部署視圖(Deployment View)。在我們創(chuàng)建一個(gè)Rational Rose工程的時(shí)候,會(huì)自動(dòng)包含這四種視圖。一、 Rational Rose的四種視圖模型 在用例視圖(Use Case View)中包括了系統(tǒng)中的所有參與者、用例和用例圖,必要時(shí)還可以在用例視圖中添加順序圖、協(xié)作圖、活動(dòng)圖和類圖等。 用例視圖是與系統(tǒng)中的實(shí)現(xiàn)是不相關(guān)的,它關(guān)注的是系統(tǒng)功能的高層抽象,適合于對(duì)系統(tǒng)進(jìn)行分析和獲取需求,而不關(guān)注于系統(tǒng)的具

49、體實(shí)現(xiàn)方法。1、用例視圖一、 Rational Rose的四種視圖模型 邏輯視圖關(guān)注系統(tǒng)如何實(shí)現(xiàn)用例中所描述的功能,主要是對(duì)系統(tǒng)功能性需求提供支持,即在為用戶提供服務(wù)方面,系統(tǒng)所應(yīng)該提供的功能。 在邏輯視圖中,用戶將系統(tǒng)更加仔細(xì)的分解為一系列的關(guān)鍵抽象,將這些大多數(shù)來自于問題域的事物通過采用抽象、封裝和繼承的原理,使之表現(xiàn)為對(duì)象或?qū)ο箢惖男问剑柚陬悎D和類模板等手段,提供了系統(tǒng)的詳細(xì)設(shè)計(jì)模型圖。 在邏輯視圖下的模型元素可以包括類、類工具、用例、接口、類圖、用例圖、協(xié)作圖、順序圖、活動(dòng)圖和狀態(tài)圖等。 2、邏輯視圖一、 Rational Rose的四種視圖模型 構(gòu)件視圖用來描述系統(tǒng)中的各個(gè)實(shí)現(xiàn)模

50、塊以及它們之間的依賴關(guān)系。 構(gòu)件視圖包含模型代碼庫(kù),執(zhí)行文件,運(yùn)行庫(kù)和其他構(gòu)件的信息,但是按照內(nèi)容來劃分構(gòu)件視圖主要由包、構(gòu)件和構(gòu)件圖構(gòu)成。 包是與構(gòu)件相關(guān)的組。構(gòu)件是不同類型的代碼模塊,它是構(gòu)造應(yīng)用的軟件單元,構(gòu)件可以包括源代碼構(gòu)件、二進(jìn)制代碼構(gòu)件以及可執(zhí)行構(gòu)件等等。3、構(gòu)件視圖一、 Rational Rose的四種視圖模型 在構(gòu)件視圖下的元素可以包括各種構(gòu)件、構(gòu)件圖以及包等。 3、構(gòu)件視圖一、 Rational Rose的四種視圖模型 在構(gòu)件視圖中,同樣可以創(chuàng)建一些的模型元素。在瀏覽器中選擇Component View(構(gòu)件視圖)選項(xiàng),右鍵單擊,可以看到在該視圖中允許創(chuàng)建的模型元素件、構(gòu)件

51、圖以及包等。3、構(gòu)件視圖一、 Rational Rose的四種視圖模型 部署視圖顯示的是系統(tǒng)的實(shí)際部署情況,它是為了便于理解系統(tǒng)如何在一組處理節(jié)點(diǎn)上的物理分布,而在分析和設(shè)計(jì)中使用的構(gòu)架視圖。 在系統(tǒng)中,只包含有一個(gè)部署視圖,用來說明了各種處理活動(dòng)在系統(tǒng)各節(jié)點(diǎn)的分布。4、部署視圖一、 Rational Rose的四種視圖模型 在部署視圖中,可以創(chuàng)建處理器和設(shè)備等的模型元素。在瀏覽器中選擇Deployment View(部署視圖)選項(xiàng),右鍵單擊,可以看到在該視圖中允許創(chuàng)建的模型元素。 4、部署視圖一、 Rational Rose的四種視圖模型 處理器(Processor):處理器是指任何有處理功

52、能的節(jié)點(diǎn)。節(jié)點(diǎn)是各種計(jì)算資源的通用名稱,包括處理器和設(shè)備兩種類型。 設(shè)備(Device)。設(shè)備是指任何沒有處理功能的節(jié)點(diǎn)。例如打印機(jī)。 文件(File)。文件是指那些能夠連接到部署視圖中的一些外部文件,用來詳細(xì)的介紹使用部署視圖的各種信息。 URL地址(URL)。URL地址是指能夠連接到部署視圖的一些外部URL地址。這些地址用于介紹部署視圖的相關(guān)信息。中允許創(chuàng)建的模型元素。 4、部署視圖一、 Rational Rose的四種視圖模型 部署視圖考慮的是整個(gè)解決方案的實(shí)際部署情況,所描述的是在當(dāng)前系統(tǒng)結(jié)構(gòu)中所存在的設(shè)備、執(zhí)行環(huán)境和軟件的運(yùn)行時(shí)體系結(jié)構(gòu),它是對(duì)系統(tǒng)拓?fù)浣Y(jié)構(gòu)的最終物理描述。 系統(tǒng)的拓?fù)?/p>

53、結(jié)構(gòu)描述了所有硬件單元,以及在每個(gè)硬件單元上執(zhí)行的軟件的結(jié)構(gòu)。 在這樣的一種體系結(jié)構(gòu)中,我們可以通過部署視圖查看拓?fù)浣Y(jié)構(gòu)中的任何一個(gè)特定的節(jié)點(diǎn),了解正在該節(jié)點(diǎn)上組件執(zhí)行情況,以及該組件中包含了哪些邏輯元素(例如類、對(duì)象、協(xié)作等),并且最終能夠從這些元素追溯到系統(tǒng)初始的需求分析階段。4、部署視圖二、Rational Rose與生成代碼 Rational Rose Enterprise版本對(duì)UML提供了很高的支持,可以使用多種語(yǔ)言進(jìn)行代碼生成,這些語(yǔ)言包括Ada83、Ada95、ANSI C+、CORBA、JAVA、COM、Visual Basic、Visual C+、Oracle8和XML_DT

54、D等。 可以通過選擇選擇“Tools”(工具)下的“Options”(選項(xiàng))選項(xiàng)來查看所支持的語(yǔ)言信息。1、用Rational Rose生成代碼二、Rational Rose與生成代碼 使用Rational Rose進(jìn)行生成代碼可以通過以下四個(gè)步驟進(jìn)行,以目標(biāo)語(yǔ)言為Java代碼為例。 第一,選擇待轉(zhuǎn)換的目標(biāo)模型。 第二,檢查Java語(yǔ)言的語(yǔ)法錯(cuò)誤。 第三,設(shè)置代碼生成屬性。 第四,生成代碼。1、用Rational Rose生成代碼二、Rational Rose與生成代碼 在Rational Rose中,可以通過收集有關(guān)類(Classes)、類的屬性(Attributes)、類的操作(Opera

55、tions)、類與類之間的關(guān)系(Relationships)以及包(Packages)和構(gòu)件(Components)等靜態(tài)信息,將這些信息轉(zhuǎn)化成為對(duì)應(yīng)的模型,在相應(yīng)的圖中顯示出來。 可以在工具欄中通過選擇“Tools”(工具)中“Java”菜單下的“Reverse Engineer.”(逆向工程)選項(xiàng)來進(jìn)行逆向工程。 2、逆向工程 重點(diǎn)內(nèi)容:什么叫用例圖 用例圖的構(gòu)成要素 用例的重要元素 用例之間的各種重要關(guān)系 使用Rose創(chuàng)建用例圖的步驟說明 使用Rose創(chuàng)建用例圖的步驟說明 第6章 用例圖一、 什么叫用例圖 由參與者(Actor)、用例(Use Case)以及它們之間的關(guān)系構(gòu)成的用于描述系

56、統(tǒng)功能的動(dòng)態(tài)視圖稱為用例圖。要在用例圖上顯示某個(gè)用例,可繪制一個(gè)橢圓,然后將用例的名稱放在橢圓的中心或橢圓下面的中間位置。 要在用例圖上繪制一個(gè)參與者(表示一個(gè)系統(tǒng)用戶),可繪制一個(gè)人形符號(hào)。參與者和用例之間的關(guān)系使用帶箭頭或者不帶箭頭的線段來描述,箭頭表示在這一關(guān)系中哪一方是對(duì)話的主動(dòng)發(fā)起者,箭頭所指方是對(duì)話的被動(dòng)接受者。1、用例圖的含義一、 什么叫用例圖 在用例建模中,為了更加清楚的描述用例或者參與者,會(huì)使用到注釋。1、用例圖的含義一、 什么叫用例圖 用例圖是需求分析中的產(chǎn)物,主要作用是描述參與者和用例之間的關(guān)系,幫助開發(fā)人員可視化的了解系統(tǒng)的功能。借助于用例圖,系統(tǒng)用戶、系統(tǒng)分析人員、系

57、統(tǒng)設(shè)計(jì)人員、領(lǐng)域?qū)<夷軌蛞钥梢暬姆绞綄?duì)問題進(jìn)行探討,減少了大量交流上的障礙,便于對(duì)問題達(dá)成共識(shí)。 用例圖可視化地表達(dá)了系統(tǒng)的需求,具有直觀、規(guī)范等優(yōu)點(diǎn),克服了純文字性說明的不足。 用例方法是完全從外部來定義系統(tǒng)功能,它把需求和設(shè)計(jì)完全的分離開來。我們不用關(guān)心系統(tǒng)內(nèi)部是如何完成各種功能的,系統(tǒng)對(duì)于我們來說就是一個(gè)黑箱子。2、用例圖的作用二、用例圖的構(gòu)成要素 參與者(Actor)是指存在于系統(tǒng)外部并直接與系統(tǒng)進(jìn)行交互的人、系統(tǒng)、子系統(tǒng)或類的外部實(shí)體的抽象。 每個(gè)參與者可以參與一個(gè)或多個(gè)用例,每個(gè)用例也可以有一個(gè)或多個(gè)參與者。 在用例圖中使用一個(gè)人形圖標(biāo)來表示參與者,參與者的名字寫在人形圖標(biāo)下面。

58、1、參與者二、用例圖的構(gòu)成要素 由于參與者實(shí)質(zhì)上也是類,所以它擁有與類相同的關(guān)系描述,即參與者與參與者之間主要是泛化關(guān)系(或稱為“繼承”關(guān)系)。 泛化關(guān)系的含義是把某些參與者的共同行為提取出來表示成通用行為,并描述成超類。泛化關(guān)系表示的是參與者之間的一般/特殊關(guān)系,在UML圖中,使用帶空心三角箭頭的實(shí)線表示泛化關(guān)系。2、參與者間的關(guān)系二、用例圖的構(gòu)成要素 在項(xiàng)目開發(fā)過程中,邊界是一個(gè)非常重要的概念。這里說的系統(tǒng)邊界是指系統(tǒng)與系統(tǒng)之間的界限。通常我們所說的系統(tǒng)可以認(rèn)為是由一系列的相互作用的元素形成的具有特定功能的有機(jī)整體。 系統(tǒng)同時(shí)又是相對(duì)的,一個(gè)系統(tǒng)本身又可以是另一個(gè)更大系統(tǒng)的組成部分,因此,

59、系統(tǒng)與系統(tǒng)之間需要使用系統(tǒng)邊界進(jìn)行區(qū)分開來。我們把系統(tǒng)邊界以外的同系統(tǒng)相關(guān)聯(lián)的其他部分,稱之為系統(tǒng)環(huán)境。3、系統(tǒng)邊界三、用例的重要元素 任何用例都不能在缺少參與者的情況下獨(dú)立存在。同樣,任何參與者也必須要有與之關(guān)聯(lián)的用例。所以識(shí)別用例的最好方法就是從分析系統(tǒng)參與者開始,在這個(gè)過程中往往會(huì)發(fā)現(xiàn)新的參與者。 可以通過以下問題來尋找用例: 1 參與者希望系統(tǒng)提供什么功能? 2 參與者是否會(huì)讀取、創(chuàng)建、修改、刪除、存儲(chǔ)系統(tǒng)的某種信息?如果是的話,參與者又是如何完成這些操作的? 3 參與者是否會(huì)將外部的某些事件通知給系統(tǒng)? 4 系統(tǒng)中發(fā)生的事件是否通知參與者? 5 是否存在影響系統(tǒng)的外部事件。1、識(shí)別用

60、例三、用例的重要元素 用例的粒度指的是用例所包含的系統(tǒng)服務(wù)或功能單元的多少。用例的粒度越大,用例包含的功能越多,反之則包含的功能越少。 如果用例的粒度很小,得到的用例數(shù)就會(huì)太多。反之,如果用例的粒度很大,那么得到的用例數(shù)就會(huì)很少。 如果用例數(shù)目過多會(huì)造成用例模型過大和引入設(shè)計(jì)困難大大提高。 如果用例數(shù)目過少會(huì)造成用例的粒度太大,不便于進(jìn)一步的充分分析。2、用例的粒度三、用例的重要元素 用例的粒度指的是用例所包含的系統(tǒng)服務(wù)或功能單元的多少。用例的粒度越大,用例包含的功能越多,反之則包含的功能越少。 如果用例的粒度很小,得到的用例數(shù)就會(huì)太多。反之,如果用例的粒度很大,那么得到的用例數(shù)就會(huì)很少。 如

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論