Definition software architecture
Software architecture describes the basic components of a software system and their intern interaction.
Software architecture in the development process
Within the framework of software development, software architecture represents the earliest design decision. It is basically characterized by quality criteria like modifiability, maintainability, security or performance. A once established software architecture is modifiable later on only at great expense and effort. The decision about its design is therefore one of the most critical and important points in the development process of a software.
Attributes of successful software architecture
In order to function successfully, the software architecture needs to be attuned to the remaining factors of the software project. Well-constructed software architecture facilitates users and developers the comprehension of the system. Important factors which influence the applicability of software architecture are project planning, risk analysis, organization, the development process, operational procedures, hardware, quality control and requirements.