The Five Workflows
Within the Unified Process, five workflows cut across the set of four phases: Requirements, Analysis, Design, Implementation, and Test. Each workflow is a set of activities that various project workers perform.
The following subsections provide brief overviews of these workflows.
Requirements
The primary activities of the Requirements workflow are aimed at building the use case model, which captures the functional requirements of the system being defined. This model helps the project stakeholders reach agreement on the capabilities of the system and the conditions to which it must conform.
The use case model also serves as the foundation for all other development work. Figure 1-2 shows how the use case model influences the other five models discussed in the subsequent subsections.
Chapter 2 discusses the key aspects of the Requirements workflow. Chapters 7, 8, and 9 describe how this workflow cuts across the Inception, Elaboration, and Construction phases, respectively.
Figure 1-2: The Six Basic Unified Process Models
Analysis
The primary activities of the Analysis workflow are aimed at building the analysis model, which helps the developers refine and structure the functional requirements captured within the use case model. This model contains realizations of use cases that lend themselves to design and implementation work better than the use cases.
Chapter 3 discusses the key aspects of the Analysis workflow. Chapters 7, 8, and 9 describe how this workflow cuts across the Inception, Elaboration, and Construction phases, respectively.
Design
The primary activities of the Design workflow are aimed at building the design model, which describes the physical realizations of the use cases from the use case model, and also the contents of the analysis model. The design model serves as an abstraction of the implementation model (see the next subsection).
The Design workflow also focuses on the deployment model, which defines the physical organization of the system in terms of computational nodes.
Chapter 4 discusses the key aspects of the Design workflow. Chapters 7, 8, and 9 describe how this workflow cuts across the Inception, Elaboration, and Construction phases, respectively.
Implementation
The primary activities of the Implementation workflow are aimed at building the implementation model, which describes how the elements of the design model are packaged into software components, such as source code files, dynamic link libraries (DLLs), and EJBs.
Chapter 5 discusses the key aspects of the Implementation workflow. Chapters 8 and 9 describe how this workflow cuts across the Elaboration and Construction phases, respectively.
Test
The primary activities of the Test workflow are aimed at building the test model, which describes how integration and system tests will exercise executable components from the implementation model. The test model also describes how the team will perform those tests as well as unit tests.
The test model contains test cases that are often derived directly from use cases. Testers perform black-box testing using the original use case text, and white-box testing of the realizations of those use cases, as specified within the analysis model. The test model also contains the results of all levels of testing.
Chapter 6 discusses the key aspects of the Test workflow. Chapters 8 and 9 describe how this workflow cuts across the Elaboration and Construction phases, respectively.