This article presents a model for describing the architecture of software-intensive systems, based on the useof multiple, concurrent views. This use of multiple views allows to address separately the concerns of thevarious ‘stakeholders’ of the architecture: end-user, developers, systems engineers, project managers, etc.,and to handle separately the functional and non functional requirements. Each of the five views is described,together with a notation to capture it. The views are designed using an architecture-centered, scenario-driven, iterative development process.