UML(统一建模语言)是针对软件系统开发的一种通用可视化建模语言,它旨在提供一种标准化的方式来描述、分析和构建软件系统。UML在第1章中概述了其基本概念,强调了其适用范围广泛,包括不同软件开发方法、生命周期阶段、应用领域和开发工具。作为综合性的建模技术,UML借鉴了多个著名面向对象方法学的精华,如Booch的面向对象开发、OMT(Object Modeling Technique)和OOSE(Object-Oriented Software Engineering)等。
UML的核心内容包括:
1. **UML的语义**:UML提供了一套统一的符号体系,用于表达各种概念,如类、对象、结构、行为、关系等。这使得不同的开发者能够共享理解和交流。
2. **表示法和说明**:UML采用了图形化的表示形式,如类图、对象图、顺序图等7种静态图和7种动态图,用于捕捉软件系统的静态结构和动态交互。
3. **UML的主要特点**:UML支持迭代开发,不仅仅局限于某种特定的开发过程,而是可以适应大部分现有的面向对象方法。它还包含了规格说明和文本维度的模型描述,允许用户从不同角度详述系统。
4. **构造块与通用机制**:UML由一系列基本构建块组成,如事物、关系、通用划分和扩展机制,如构造型、约束和标记值,这些提供了灵活的设计和定制能力。
5. **架构与分组**:UML关注系统的整体结构,包括架构层次划分和事物的分组,帮助理解复杂系统的组成部分及其相互作用。
6. **依赖与关联**:UML中的依赖和关联关系模型化了系统中对象之间的动态联系,体现对象间可能的交互。
7. **扩展性**:UML具有开放的结构,允许通过添加新的构造型、约束和标记值来适应不断变化的需求。
UML的发展历程见证了从早期的OOA(对象建模)和OOD(对象设计)方法到后来的OMT、OOSE等的融合,最终形成了一个综合的、成熟的建模框架。随着软件工程实践的演进,UML不断发展,满足日益复杂和多变的软件开发需求。UML的广泛应用证明了其在软件工程领域的重要地位和价值。