Microsoft Office Visio supports the creation of UML models without recommending any particular development process. However, to show the UML diagrams in a meaningful context, the following graphic organizes the UML diagram types listed below into models that roughly correspond to phases a development process might follow: use case model phase, domain model phase, design model phase, and implementation model phase.
The phases appear to be consecutive, but the most effective development processes are iterative, with each phase occurring a number of times.
Use case model phase
Use cases are narrative descriptions of processes that you create early in a development cycle. They describe the interactions between external actors and your system, and help you understand the system requirements and the terminology used in the domain area. During the use case phase, you create use case diagrams.
Domain model phase
Like the use case model phase, the domain model phase is focused on building an understanding of the domain for which you're developing a system. This is an analysis phase in which you're still thinking about objects and relationships in the real world rather than about programming concepts.
During the domain model phase, you create conceptual static structure diagrams, package diagrams, and sequence diagrams.
Design model phase
During the use case and domain model phases, you focus on understanding the requirements and concepts related to the system you're developing. In the design phase, you apply this understanding and come up with a programming solution.
To develop this solution, you need to use collaboration diagrams to determine how objects will communicate, and class static structure diagrams to define the classes that you will implement in the software.
To understand the life cycle of an object, you can also create a statechart or activity diagram in relation to a particular class or use case.
Implementation model phase
The implementation model phase focuses on the physical and component structure of the development environment. During the implementation phase, you create component diagrams and deployment diagrams.