術語匯編 UML建模技術解析
本節向大家介紹一下UML建模,UML建模是在開發階段,說明,可視化,構建和書寫一個面向對象軟件密集系統的制品的開放方法。UML建模展現了一系列最佳工程實踐,這些最佳實踐在對大規模,復雜系統進行建模方面,特別是在軟件架構層次已經被驗證有效。
UML建模簡介
UML建模是一種定義良好、易于表達、功能強大且普遍適用的建模語言。它溶入了軟件工程領域的新思想、新方法和新技術。它的作用域不限于支持面向對象的分析與設計,還支持從需求分析開始的軟件開發的全過程。
1、統一建模語言(UML是UnifiedModelingLanguage的縮寫)是用來對軟件密集系統進行可視化建模的一種語言。UML為面向對象開發系統的產品進行說明、可視化、和編制文檔的一種標準語言。
統一建模語言(UML)是非專利的第三代建模和規約語言。UML建模是在開發階段,說明,可視化,構建和書寫一個面向對象軟件密集系統的制品的開放方法。UML展現了一系列最佳工程實踐,這些最佳實踐在對大規模,復雜系統進行建模方面,特別是在軟件架構層次已經被驗證有效。
UML可以貫穿軟件開發周期中的每一個階段。被OMG采納作為業界的標準。
UML最適于數據建模,業務建模,對象建模,組件建模。
UML作為一種模型語言,它使開發人員專注于建立產品的模型和結構,而不是選用什么程序語言和算法實現。當模型建立之后,模型可以被UML工具轉化成指定的程序語言代碼。
IBM的RationalRose和MS的Visio都是UML工具。
同時還有一些免費的UML工具:http://java-source.net/open-source/uml-modeling
2、UML建模的主要特點
UML建模的主要特點可以歸結為三點:
(1)UML統一了Booch、OMT和OOSE等方法中的基本概念。
(2)UML還吸取了面向對象技術領域中其他流派的長處,其中也包括非OO方法的影響。
UML符號表示考慮了各種方法的圖形表示,刪掉了大量易引起混亂的、多余的和極少使用的符號,也添加了一些新符號。因此,在UML中匯入了面向對象領域中很多人的思想。這些思想并不是UML的開發者們發明的,而是開發者們依據最優秀的OO方法和豐富的計算機科學實踐經驗綜合提煉而成的。
(3)UML在演變過程中還提出了一些新的概念。
在UML標準中新加了模板(Stereotypes)、職責(Responsibilities)、擴展機制(Extensibilitymechanisms)、線程(Threads)、過程(Processes)、分布式(Distribution)、并發(Concurrency)、模式(Patterns)、合作(Collaborations)、活動圖(Activitydiagram)等新概念,并清晰地區分類型(Type)、類(Class)和實例(Instance)、細化(Refinement)、接口(Interfaces)和組件(Components)等概念。
因此可以認為,UML是一種先進實用的標準建模語言,但其中某些概念尚待實踐來驗證,UML也必然存在一個進化過程。
3、UML建模的應用領域
UML的目標是以面向對象圖的方式來描述任何類型的系統,具有很寬的應用領域。其中最常用的是建立軟件系統的模型,但它同樣可以用于描述非軟件領域的系統,如機械系統、企業機構或業務過程,以及處理復雜數據的信息系統、具有實時要求的工業系統或工業過程等。總之,UML是一個通用的標準建模語言,可以對任何具有靜態結構和動態行為的系統進行建模。
此外,UML建模適用于系統開發過程中從需求規格描述到系統完成后測試的不同階段。在需求分析階段,可以用用例來捕獲用戶需求。通過用例建模,描述對系統感興趣的外部角色及其對系統(用例)的功能要求。分析階段主要關心問題域中的主要概念(如抽象、類和對象等)和機制,需要識別這些類以及它們相互間的關系,并用UML類圖來描述。為實現用例,類之間需要協作,這可以用UML動態模型來描述。在分析階段,只對問題域的對象(現實世界的概念)建模,而不考慮定義軟件系統中技術細節的類(如處理用戶接口、數據庫、通訊和并行性等問題的類)。這些技術細節將在設計階段引入,因此設計階段為構造階段提供更詳細的規格說明。
編程(構造)是一個獨立的階段,其任務是用面向對象編程語言將來自設計階段的類轉換成實際的代碼。在用UML建立分析和設計模型時,應盡量避免考慮把模型轉換成某種特定的編程語言。因為在早期階段,模型僅僅是理解和分析系統結構的工具,過早考慮編碼問題十分不利于建立簡單正確的模型。
UML模型還可作為測試階段的依據。系統通常需要經過單元測試、集成測試、系統測試和驗收測試。不同的測試小組使用不同的UML圖作為測試依據:單元測試使用類圖和類規格說明;集成測試使用部件圖和合作圖;系統測試使用用例圖來驗證系統的行為;驗收測試由用戶進行,以驗證系統測試的結果是否滿足在分析階段確定的需求。
總之,標準建模語言UML適用于以面向對象技術來描述任何類型的系統,而且適用于系統開發的不同階段,從需求規格描述直至系統完成后的測試和維護。
【編輯推薦】