Three Degrees of Separation
The combination of architecture, a use case model, and features provides a powerful abstraction for software development. But we haven't said anything yet about coding. Indeed, methodologies such as the Rational Unified Process (RUP) deliberately delay coding until these steps have been completed:
- Stakeholders have been identified and signed up for a project.
- A complete problem statement has been documented (formally or informally).
- An outline set of features has been determined.
RUP provides a vision document as a vehicle for instigating development. Once the vision document is complete, the use case modeling can commence (the two may also occur in parallel). When the use case model is complete—or sufficiently complete for an iteration, such as in agile development—coding can commence.