Chapter 2. The UML is a language for Visualizing Specifying Constructing Documenting the artifacts of a software-intensive system.