常用的UML圖

          最常用的UML圖包括:用例圖、類圖、序列圖、狀態圖、活動圖、組件圖和部署圖


          用例圖

          用例圖描述了系統提供的一個功能單元。用例圖的主要目的是幫助開發團隊以一種可視化的方式理解系統的功能需求,包括基于基本流程的"角色"(actors,也就是與系統交互的其他實體)關系,以及系統內用例之間的關系。用例圖一般表示出用例的組織關系--要么是整個系統的全部用例,要么是完成具有功能(例如,所有安全管理相關的用例)的一組用例。

          ?


          類圖

          類圖表示不同的實體(人、事物和數據)如何彼此相關;換句話說,它顯示了系統的靜態結構。類圖可用于表示邏輯類,邏輯類通常就是業務人員所談及的事物種類--搖滾樂隊、CD、廣播劇;或者貸款、住房抵押、汽車信貸以及利率。類圖還可用于表示實現類,實現類就是程序員處理的實體。實現類圖或許會與邏輯類圖顯示一些相同的類。然而,實現類圖不會使用相同的屬性來描述,因為它很可能具有對諸如Vector和HashMap這種事物的引用。

          ?


          如果兩個類都彼此知道對方,則應該使用實線來表示關聯關系;如果只有其中一個類知道該關聯關系,則使用開箭頭表示。

          ?


          序列圖

          序列圖顯示具體用例(或者是用例的一部分)的詳細流程。它幾乎是自描述的,并且顯示了流程中中不同對象之間的調用關系,同時還可以很詳細地顯示對不同對象的不同調用。
          序列圖有兩個維度:垂直維度以發生的時間順序顯示消息/調用的序列;水平維度顯示消息被發送到的對象實例。

          ?

          狀態圖

          狀態圖表示某個類所處的不同狀態和該類的狀態轉換信息。有人可能會爭論說每個類都有狀態,但不是每個類都應該有一個狀態圖。只對"感興趣的"狀態的類(也就是說,在系統活動期間具有三個或更多潛在狀態的類)才進行狀態圖描述。
          ?
          初始起點,它使用實心圓來繪制;
          狀態之間的轉換,它使用具有開箭頭的線段來繪制;
          狀態,它使用圓角矩形來繪制;
          判斷點,它使用空心圓來繪制;
          以及一個或者多個終止點它們使用內部包含實心圓的圓來繪制

          ?

          活動圖


          活動圖表示在處理某個活動時,兩個或者更多類對象之間的過程控制流。活動圖可用于在業務單元的級別上對更高級別的業務過程進行建模,或者對低級別的內部類操作進行建模。根據我的經驗,活動圖最適合用于對較高級別的過程建模,比如公司當前在如何運作業務,或者業務如何運作等。這是因為與序列圖相比,活動圖在表示上"不夠技術性的",但有業務頭腦的人們往往能夠更快速地理解它們。

          --------------------
          作為一種選擇,活動可以分組為泳道(swimlane),泳道用于表示實際執行活動的對象,如圖6所示。



          組件圖


          組件圖提供系統的物理視圖。它的用途是顯示系統中的軟件對其他軟件組件(例如,庫函數)的依賴關系。組件圖可以在一個非常高的層次上顯示,從而僅顯示粗粒度的組件,也可以在組件包層次2上顯示。

          ?


          部署圖


          部署圖表示該軟件系統如何部署到硬件環境中。它的用途是顯示該系統不同的組件將在何處物理地運行,以及它們將如何彼此通信。因為部署圖是對物理運行情況進行建模,系統的生產人員就可以很好地利用這種圖。

          posted on 2009-03-29 02:00 luofeng225 閱讀(967) 評論(0)  編輯  收藏 所屬分類: 建模UML


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


          網站導航:
           
          <2009年3月>
          22232425262728
          1234567
          891011121314
          15161718192021
          22232425262728
          2930311234

          導航

          統計

          公告

          我曾經聽到這么一個故事: 一個年輕的程序員問一個老程序員(一個比較牛逼的公司的CTO) 年輕程序員: 你為什么這么牛X., 就好像沒有你不會的。老程序員: 積累的。年輕程序員: 怎么才能積累到您的程度呢。我每天都在積累。但是似乎都沒有感覺到進步。老程序員: 我從20歲開始做到了一件事情,直到今天,而且盡可能地保證不間斷。年輕程序員: 到底是什么? 老程序員: 我每天保證自己有2個小時在學習新的東西。

          常用鏈接

          留言簿(3)

          隨筆分類

          隨筆檔案

          文章分類

          相冊

          收藏夾

          Java Website

          java技術博客

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 建阳市| 巩留县| 昭通市| 剑河县| 新余市| 精河县| 张北县| 康乐县| 拉萨市| 菏泽市| 英山县| 建宁县| 繁昌县| 万全县| 玛曲县| 宜昌市| 尉犁县| 亳州市| 东阳市| 新竹市| 桂平市| 崇文区| 公安县| 定日县| 哈巴河县| 华安县| 江达县| 怀仁县| 昆山市| 阿坝县| 屯昌县| 房产| 荃湾区| 云林县| 兰州市| 宝兴县| 阿合奇县| 大渡口区| 紫云| 大悟县| 伊春市|