UML學習總結

chaofanwei發表於2014-04-21

        隨著親手接觸的專案越來越多,專案的複雜度越來越大,專案的理解程度也變的很難,尤其是在接收一個別人已經做好的專案時,你迫切先想到的就是“有沒有文件啊”,當然是各種文件,概要設計文件,詳細設計文件,資料庫設計文件,第三方介面等等各種,但往往得到的答案就是“這個現在沒有文件啊”,而且剛好作為經理考研你是否看懂熟悉程式碼的依據-讓你自己寫個文件,流程圖等等。

        回憶大學時曾經學過的UML設計,使用rouse來畫圖,但往往這個軟體很大,而且用著也不是很順手,於是在公司裡面用的最多的還是jude(astash),下載地址 http://jude.change-vision.com/jude-web/index.html

              下面還是先說說UML裡面的圖吧等等 。UML總共有用例圖、類圖、包圖、物件圖、協作圖和序列圖、活動圖、構件圖和部署圖。關係主要有依賴關係(Dependency)、關聯關係(Associate)(又分為組合和聚合)、泛華關係(Generalization)、實現關係(Realization)。

關聯關係

   聚合是部分與整體的關係(has a),體現在類成員變數
   組成則是一個比聚合更強形式的關聯,在組合中,成員物件的生命週期取決於聚合的生命週期。

   依賴體現在方法變數,返回值,區域性變數等。
   聚合和組成是結構上的關係,而依賴關係則強調的是語義上的關係

 


1、用例圖

          意義:有參與者(Actor)、用例(Use Case)以及他們之間的關係構成的用於描述系統功能的動態檢視。

 

       

   

 

用例之間關係分為包含,擴充套件,泛華。其中擴充套件用例只有在滿足一定條件下才會被執行,而在包含關係中,當基礎用例執行完成後,被包含用例是一定會被執行的。

例外需要注意用例規約:用例場景,前置條件,後置條件

2、類圖

         顯示了系統的靜態結構。

 

3、序列圖

         序列圖是描述物件之間基於時間順序的動態互動,強調訊息傳送的時間先後順序。

注意同步訊息和非同步訊息的格式。

4、活動圖

          活動圖強調的是計算過程中的順序和併發步驟,類似於流程圖。

                                           活動圖1

 

                                                                            活動圖2

5、包圖

     直接看圖吧。

 

6、狀態圖

    狀態圖有狀態、轉換、事件、活動和東站組成。

  

7、構建圖與部署圖

將系統中可重用的模組封裝成具有可替代性的物理單元,即為構建。

部署圖即系統執行時的硬體節點。
處理器即為能運算的節點。