Microsoft Office Visio supports the creation of UML models (model: An abstraction of a modeled system that specifies the modeled system from a certain viewpoint and at a certain level of abstraction.) 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 (object: Information created in another application and imported, embedded, or linked in a Visio drawing. The term object is used to refer to objects from other applications and OLE objects.) will communicate, and class static structure diagrams to define the classes (class: In a static structure diagram, a set of objects with similar structure, behavior, and relationships. Classes are declared in class (static structure) diagrams and represent concepts in the systems being modeled.) that you will implement in the software.
To understand the life cycle of an object, you can also create a statechart or activity (activity: In a statechart diagram, the response an object in a particular state makes to an event without changing its state. Unlike actions, activities have non-negligible execution times and can be interrupted. The keyword "do" indicates an activity.) diagram in relation to a particular class or use case (use case: In a use case diagram, a representation of a set of events that occurs when an actor uses a system to complete a process. Normally, a use case is a relatively large process, not an individual step or transaction.).
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.