Why software architecture?

Post date: Jan 29, 2019 8:28:27 PM

Software architecture provides an opportunity to translate requirements in to structure of the software keeping in mind the constraints.

Structure

Software architecture defines structure of the target software system. Functions expected in requirements are assigned to different components (in other words target system is decomposed into different components). To achieve desired functional requirements and achieve other requirements, relationship and interaction between these components is defined.

Quality

Expected quality from the target system is defined and trade-off between different quality attribute is performed. Based on trade off analysis quality attributes are prioritized.

Architecture principles

Strategies, structure, size and tools are identified to achieve those quality attributes. Architecture helps achieving quality requirements. Known strategies, architecture styles, frameworks are identified and applied to the target system definition.