If requirements are implemented without taking the required architecture into account, it is likely that the requirements will not be accepted by the customer or that the requirements will have to be adjusted with additional effort and costs.
The task of software architecture is to create a basis for implementing the identified requirements according to the criteria specified by a company or organisation. The software architect develops the software architecture based on the requirements (e.g. function “store data”) and the available means (e.g. via an interface). This means that, based on the requirements, the architecture provides the framework, but does not determine how the requirements are implemented.
An example: The customer needs a function with which data is edited via an input mask and stored in the data base. With the help of the architecture, it can be clarified which individual system modules are required, which interfaces, and how they are to exchange data with each other. In order to express this, objectiF RPM offers various diagrams.
The advantage of an architecture is that the structures and complexity of a system can be clearly represented by the architect, concentrating on the essential components. Interfaces to other components, which due to the system environment will remain, can be identified and represented.
Which requirements are satisfied by which architectural elements? You can answer the question about the connection between requirements and solution at any time on the basis of the architecture models. In addition, diagrams help you master the complexity of system design and to communicate more easily in a team.