Software Architect and Software Architecture
What is Software Architecture? Software Architecture is the structure of a software system, it's fundamental properties and the principles of its design and evolution. Structure : It is about identifying the architecturally significant pieces of a system and defining the relationship between them. Properties : It is about the functional properties of a system and its quality properties like performance, scalability, security, etc. Principles : It is about understanding the principles behind its design. An understanding that allows the system to evolve in a consistent and logical way without introducing unnecessary complexity. What is the importance of Software Architecture? The need for Software Architecture is best summarized in the following statement: "Software architecture represents a system's earliest set of design decisions. These early decisions are the most difficult to get correct and the hardest to change later in the development