學習筆記 全面認識UML建模
本文和大家重點討論一下UML建模的概念,主要包括UML建模的特點,視圖,建模工具以及應用領域等內容,相信通過本文的學習你對UML建模一定會有全面的認識。
UML建模
一、為什么要學習UML
UML是UnifiedModelingLanguage(統(tǒng)一建模語言)的簡稱。UML是對軟件密集型系統(tǒng)中的制品進行可視化、詳述、構造和文檔化的語言。制品{Artifact}是指軟件開發(fā)過程中產生的各種各樣的產物,如模型、源代碼、測試用例等。
1)UML建??梢赃_到以下目的:
2)使用模型可以更好地理解問題
3)使用模型可以加強人員之間的溝通
4)使用模型可以更早地發(fā)現(xiàn)錯誤或疏漏的地方
5)使用模型可以獲得設計結果
6)模型為***的代碼提供依據
二、UML建模的特點
1)UML的主要特點包括:
2)統(tǒng)一的標準
3)面向對象。UML是支持面向對象軟件開發(fā)的建模語言。
4)可視化、表現(xiàn)能力強
5)獨立于過程,UML不依賴于特定的軟件開發(fā)過程。
6)概念明確,建模表示法簡潔,圖形結構清晰,容易掌握和使用。
三、UML建模中的視圖
UML中的視圖包括用例視圖(UseCaseView)、邏輯視圖(LogicalView)、實現(xiàn)視圖(ImplementationView)、進程視圖(ProcessView)、部署視圖(DeploymentView)等,這5個視圖被稱作”4+1”視圖.如下圖所示:
邏輯視圖。邏輯視圖關注功能,不僅包括用戶可見的功能,還包括為實現(xiàn)用戶功能而必須提供的"輔助功能模塊";它們可能是邏輯層、功能模塊等。
開發(fā)視圖。開發(fā)視圖關注程序包,不僅包括要編寫的源程序,還包括可以直接使用的第三方SDK和現(xiàn)成框架、類庫,以及開發(fā)的系統(tǒng)將運行于其上的系統(tǒng)軟件或中間件。開發(fā)視圖和邏輯視圖之間可能存在一定的映射關系:比如邏輯層一般會映射到多個程序包等。
處理視圖。處理視圖關注進程、線程、對象等運行時概念,以及相關的并發(fā)、同步、通信等問題。處理視圖和開發(fā)視圖的關系:開發(fā)視圖一般偏重程序包在編譯時期的靜態(tài)依賴關系,而這些程序運行起來之后會表現(xiàn)為對象、線程、進程,處理視圖比較關注的正是這些運行時單元的交互問題。
物理視圖。物理視圖關注"目標程序及其依賴的運行庫和系統(tǒng)軟件"最終如何安裝或部署到物理機器,以及如何部署機器和網絡來配合軟件系統(tǒng)的可靠性、可伸縮性等要求。物理視圖和處理視圖的關系:處理視圖特別關注目標程序的動態(tài)執(zhí)行情況,而物理視圖重視目標程序的靜態(tài)位置問題;物理視圖是綜合考慮軟件系統(tǒng)和整個IT系統(tǒng)相互影響的架構視圖。
四、UML建模工具
市面上UML建模工具很多,比較流行的有RationalRose,MicrosoftVisio、EnterpriseArchitect、VisualUML等。《UML建模-面向對象設計》系列文章使用的UML建模工具是EnterpriseArchitect7.0,此工具還是比較好用的。
五、UML的應用領域
UML具有很廣泛的應用領域,其中最常用的是為軟件系統(tǒng)建模,主要領域有:企業(yè)信息系統(tǒng)、銀行金融系統(tǒng)、電信、交通、國防、航空、零售領域、科學計算、分布式的基于Web的服務。UML還可以用來描述其他非軟件系統(tǒng),比如一個機構的組成和機構的工作流程等等。
六、UML的構成
《UML建模-面向對象設計》系列文章描述了常見的一些UML圖,主要包括了用例圖(UseCaseDiagram)、類圖(ClassDiagram)、活動圖(ActivityDiagram)、時序圖(SequenceDiagram)、狀態(tài)圖(StatechartMachineDiagram)、部署圖(DeploymentDiagram)、業(yè)務處理模型(BusinessProcessModel)、數(shù)據建模(DataModelingDiagram)等等。
【編輯推薦】