As stated earlier, work flows are sequences of related activities performed by specific roles.
UP defines five core workflows in its life cycle:
Requirements: Figuring out (from the customer) what the system should
Analysis: Refining, elaborating and describing in utmost detail the
requirements collected from the requirement workflow.
Design: Planning the system architecture to reflect the requirements of
Implementation: Coding and development of the software.
Test: Verifying the quality of the product to be delivered.
The project life
cycle in UP is divided into four phases (They are described in more detail in
the next section):
Inception: During the inception phase the requirements are gathered and
analyzed and the functional and non-functional needs are established. Technical
proofs of concepts are conducted and details of the hardware infrastructure and
software architecture are drafted.
Elaboration: During the Elaboration phase detailed analysis of the
requirements is made and the solution is designed. Tests plans are built.
Construction: During the Construction phase the actual solution is
developed. This involves software development, but also specification &
development of the test data and finally tests executions.
Transition: During the Transition phase the solution is rolled out to a
limited number of users, piloted and enhanced if need be. Then it is rolled out
to all the end users.
Phases and Workflows in Iterations -- Bring it together
Figure 1 best describes the essence of UP. As you can see, in
the row headers we have the UP phases, in the column headers we have the UP
workflows, and in the row footers we have the iterations planned throughout the
project. The curves determine the relative amount of work needed in each phase
throughout each workflow.
As you can see, one phase can have multiple iterations. For
example, you can see that the inception phase is mostly concerned with
requirements, where as the elaboration phase is more into analysis and design
with a hint of implementation. The interesting curve is the testing workflow.
As you can see, this curve spikes in every phase. Hence, we can conclude that
testing is involved in all phases of UP, ensuring worthwhile quality.