Software Architecture in Context
Where does Software Architecture Fit in the Development Process?
The diagram below shows architecting activities in the context of a simple application or product development process.
More and more products are being developed incrementally—with multiple releases and within each release, multiple development cycles. This is also known as evolutionary development. In this case, an architectural phase is an important precursor to the evolutionary cycles, as it allows the system to be broken down into the pieces that are built up incrementally. An architecture update step is an important part of each short development cycle, allowing for learnings about the requirements and architectural fit to be incorporated into the architecture.