<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    憨厚生

    ----Java's Slave----
    ***Java's Host***

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      165 隨筆 :: 17 文章 :: 90 評論 :: 0 Trackbacks
    轉 http://dev.yesky.com/241/8757741.shtml#pls

    UML建模的要點總結

    2009-03-18 11:57作者:出處:天極網責任編輯:鄭重

      預備知識:

      一、UML的特性與發展現狀

      UML是一種Language(語言)

      UML是一種Modeling(建模)Language

      UML是Unified(統一)Modeling Language

      1、已進入全面應用階段的事實標準

      2、應用領域正在逐漸擴展,包括嵌入式系統建模、業務建模、流程建模等多個領域

      3、成為“產生式編程”的重要支持技術:MDA、 可執行UML等

      二、建模的目的與原則

      1、幫助我們按照實際情況或按我們需要的樣式對系統進行可視化;提供一種詳細說明系統的結構或行為的方法;給出一個指導系統構造的模板;對我們所做出的決策進行文檔化。

      2、僅當需要模型時,才構建它。

      3、選擇要創建什么模型對如何動手解決問題和如何形成解決方案有著意義深遠的影響;每一種模型可以在不同的精度級別上表示;最好的模型是與現實相聯系的;單個模型是不充分的。對每個重要的系統最好用一組幾乎獨立的模型去處理。

      三、誰應該建模

      1、業務建模:以領域專家為主,需求分析人員是主力,系統分析員、架構師可參與

      2、需求模型:以需求分析人員為主,系統分析員是主力,領域專家提供指導,架構師和資深開發人員參與

      3、設計模型:高層設計模型以架構師為主,系統分析員從需求方面提供支持,資深開發人員從技術實現方面提供支持。詳細設計模型則以資深開發人員為主,架構師提供指導。

      4、實現模型:以資深開發人員(設計人員)為主,架構師提供總體指導。

      5、數據庫模型:以數據庫開發人員為主,架構師提供指導,資深開發人員(設計人員)予以配合。

      正式開始

      UML組成,三部分(構造塊、規則、公共機制),關系如下圖所示:

      

      一、構造塊

      1、構造塊是對模型中最具有代表性的成分的抽象

      建模元素:UML中的名詞,它是模型基本物理元素。

      行為元素:UML中的動詞,它是模型中的動態部分,是一種跨越時間、空間的行為。

      分組元素:UML中的容器,用來組織模型,使模型更加的結構化。

      注釋元素:UML中的解釋部分,和代碼中的注釋語句一樣,是用來描述模型的。

      1.1、建模元素

      類(class)和對象(object)

      接口(interface)

      主動類(active class)

      用例(use case)

      協作(collaboration)

      構件(component)

      節點(node)

      類(class)和對象(object)

      類是對一組具有相同屬性、相同操作、相同關系和相同語義的對象的抽象

      UML中類是用一個矩形表示的,它包含三個區域,最上面是類名、中間是類的屬性、最下面是類的方法

      對象則是類的一個實例 (object is a Instance of Class)

      接口(interface)

      接口是描述某個類或構件的一個服務操作集

      主動類(active class)

      主動類實際上是一種特殊的類。引用它的原因,實際上是在開發中需要有一些類能夠起到 啟動控制活動的作用

      主動類是指其對象至少擁有一個進 程或線程,能夠啟動控制活動的類

      用例(use case)

      用例是著名的大師Ivar Jacobson首先提出的,現已經成為了面向對象軟件開發中一個需求分析的最常用工具

      用例實例是在系統中執行的一系列動作,這些動作將生成特定執行者可見的價值結果。一個 用例定義一組用例實例。

      協作(collaboration)

      協作定義了一個交互,它是由一組共同工作以提供某協作行為的角色和其他元素構 成的一個群體。

      對于某個用例的實現就可 以表示為一個協作

      構件(component)

      在實際的軟件系統中,有許多要比“類”更大的實體,例如一個COM組件、一個DLL文件、一個JavaBeans、一個執行文件等等。為了更好地對在UML模型中對它們進行表示,就引入了構件(也譯為組件)

      構件是系統設計的一個模塊化部分,它隱藏了內部的實現,對外提供了一組外部接口。在系統中滿足相同接口的組件可以自由地替換

      節點(node)

      為了能夠有效地對部署的結構進行建模,UML引入了節點這一概念,它可以用來描述實際的PC機、打印機、服務器等軟件運行的基礎硬件

      節點是運行時存在的物理元素,它表示了一種可計算的資源,通常至少有存儲空間和處理能力

      1.2、行為元素

      交互(interaction): 是在特定語境中,共同完成某個任務的一組對象之間交換的信息集合

      交互的表示法很簡單,就是一條有向直線,并在上面標有操作名

      狀態機(state machine):是一個對象或交互在生命周期內響應事件所經歷的狀態序列

      在UML模型中將狀態畫為一個圓 角矩形,并在矩形內寫出狀態名 稱及其子狀態

      1.3、分組元素

      對于一個中大型的軟件系統而言,通常會包含大量的類,因此也就會存在大量的結構事物、行為事物,為了能夠更加有效地對其進行整合,生成或簡或繁、或宏觀或微觀的模型,就需要對其進行分組。在UML中,提供了“包(Package)”來完成這一目標

      1.4、注釋元素

      結構事物是模型的主要構造塊,行為事物則是補充了模型中的動態部分,分組事物而是用來更好地組織模型,似乎已經很完整了。而注釋事物則是用來錦上添花的,它是用來在UML模型上添加適當的解釋部分

      2、關系

      UML模型的關系比較多,下圖

      

      2.1 關聯關系

      關聯(Association)表示兩個類之間存在某種語義上的聯系。關聯關系提供了通信的路徑,它是所有關系中最通用、語義最弱的。

      在UML中,使用一條實線來表示關聯關系

      在關聯關系中,有兩種比較特殊的關系:聚合和組合

      聚合關系:聚合(Aggregation)是一種特殊形式的關聯。聚合表示類之間的關系是整體與部分的關系

      如果發現“部分”類的存在,是完全依賴于“整體”類的,那么就應該使用“組合”關系來描述

      組合是聚合的變種,加入了一些重要的語義。也就是說,在一個組合關系中一個對象一次就只是一個組合的一部分,“整體”負責“部分”的創建和破壞,當“整體”被破壞時,“部分”也隨之消失

      聚合就像汽車和車胎,汽車壞了胎還可以用。組合就像公司和下屬部門,公司倒閉了部門也就不存在了!

      2.2  泛化、實現與依賴

      泛化關系描述了一般事物與該事物中的特殊種類之間的關系,也就是父類與子類之間的關系。

      實現關系是用來規定接口和實現接口的類或組件之間的關系。接口是操作的集合,這些操作用于規定類或組件的服務。

      有兩個元素X、Y,如果修改元素X的定義可能會引起對另一個元素Y的定義的修改,則稱元素Y依賴(Dependency)于元素X。

      二、規則

      命名:也就是為事物、關系和圖起名字。和任何語言一樣,名字都是一個標識符

      范圍:與類的作用域相似.

      可見性:Public,Protected,Private,Package

      三、UML公共機制

      1、規格描述

      在圖形表示法的每個部分后面都有一個規格描述(也稱為詳述),它用來對構造塊的語法和語義進行文字敘述。這種構思,也就使可視化視圖和文字視圖的分離 :

      2、UML修飾與通用劃分

      在為了更好的表示這些細節,UML中還提供了一些修飾符號,例如不同可視性的符號、用斜體字表示抽象類

      UML通用劃分:

      1)類與對象的劃分:類是一種抽象,對象是一個具體 的實例

      2)接口與實現的分離:接口是一種聲明、是一個契 約,也是服務的入口;實現則是負責實施接口提供 的契約

      3、UML擴展機制

      這部分不容易描述,待改(邀月注 2009.2.18)

      構造型:在實際的建模過程中,可能會需要定義一些特定于某個領域或某個系統的構造塊

      標記值則是用來為事物添加新特性的。標記值的表示方法是用形如“{標記信息}”的字符串

      約束是用來增加新的語義或改變已存在規則的一種機制(自由文本和OCL兩種表示法)。約束的表示法和標記值法類似,都是使用花括號括起來的串來表示,不過它是不能夠放在元素中的,而是放在相關的元素附近。

      4、UML視圖和圖

      

      圖名            功能                備注

      類圖      描述類、類的特性以及類之間的關系        UML 1原有

      對象圖     描述一個時間點上系統中各個對象的一個快照    UML 1非正式圖

      復合結構圖   描述類的運行時刻的分解             UML 2.0新增

      構件圖     描述構件的結構與連接              UML 1原有

      部署圖     描述在各個節點上的部署             UML 1原有

      包圖      描述編譯時的層次結構              UML中非正式圖

      用例圖     描述用戶與系統如何交互             UML 1原有

      活動圖     描述過程行為與并行行為             UML 1原有

      狀態機圖    描述事件如何改變對象生命周期          UML 1原有

      順序圖     描述對象之間的交互,重點在強調順序       UML 1原有

      通信圖     描述對象之間的交互,重點在于連接        UML 1中的協作圖

      定時圖     描述對象之間的交互,重點在于定時        UML 2.0 新增

      交互概觀圖   是一種順序圖與活動圖的混合           UML 2.0新增

      附:開發過程與圖的對應關系

      



    posted on 2009-04-15 16:12 二胡 閱讀(199) 評論(0)  編輯  收藏 所屬分類: xml設計相關

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲精品GV天堂无码男同| 亚洲人成电影在线天堂| 一级特黄录像免费播放肥| 在线免费视频一区二区| 亚洲一区二区三区亚瑟| 一级黄色免费网站| 一本色道久久88综合亚洲精品高清 | 国产精品亚洲一区二区三区在线 | 亚洲成AV人在线播放无码| 51午夜精品免费视频| 亚洲人成网站免费播放| 亚洲一区欧洲一区| 德国女人一级毛片免费| 亚洲AV综合永久无码精品天堂| 免费看AV毛片一区二区三区| 亚洲精品成人片在线播放| 你懂的免费在线观看网站| 亚洲福利中文字幕在线网址| 一个人看的hd免费视频| 亚洲第一AV网站| 51在线视频免费观看视频| 亚洲一区爱区精品无码| 国产成人综合亚洲一区| 亚洲国产日韩在线观频| 黄色免费网站在线看| 久久亚洲AV无码西西人体| 国产一区二区免费| 4338×亚洲全国最大色成网站| 国产在线观看无码免费视频| 亚洲精品私拍国产福利在线| 无码国产精品一区二区免费I6| 国产精品手机在线亚洲| 亚洲精品国产精品乱码视色| 亚洲美女免费视频| 美女尿口扒开图片免费| 亚洲高清国产拍精品26U| 欧美大尺寸SUV免费| 亚洲无线电影官网| 最近中文字幕无吗高清免费视频| 污视频网站在线免费看| 国产亚洲精品免费|