Object-Oriented Analysis and Design 333
11
In a waterfall development process, the requirements are detailed, and the clients sign off
(“Yes, this is what I want”); the requirements are then passed on to the designer, set in
stone. The designer creates the design (and a wonder to behold it is), and passes it off to
the programmer who implements the design. The programmer, in turn, hands the code to
a QA person who tests the code and then releases it to the customer. Great in theory,
however, this is potentially disastrous in practice.
The Process of Iterative Development ..........................................................
In iterative development, you start with a concept; an idea of what you might want to
build. As the details are examined, the vision might grow and evolve.
When you have a good start on the requirements, you begin the design, knowing full well
that the questions that arise during design might cause modifications back in the require-
ments. As you work on design, you can also begin prototyping and then implementing
the product. The issues that arise in development feed back into design and might even
influence your understanding of the requirements. Most important, you design and
implement only pieces of the full product, iterating over the design and implementation
phases repeatedly.
Although the steps of the process are repeated iteratively, it is nearly impossible to
describe them in such a cyclical manner. Therefore, the following list describes them in
sequence.
The following are the steps of the iterative development process you’ll use for this:
Step 1: Conceptualization
Conceptualizationis the “vision thing.” It is the single sentence that describes the
great idea.
Step 2: Analysis
Analysisis the process of understanding the requirements.
FIGURE11.3
The waterfall method. Analysis
Design
Implementation
Te s t