Software architecture is the set of significant decisions about the organization of a software system.
It encompasses the following:
- Selection of the structural elements and their interfaces of a system
- Behavior as specified in collaborations among those elements
- Composition of structural and behavioral elements into larger subsystems
-Architectural style that guides this organization
- Functionality, usability, resilience, performance, reuse, comprehensibility, economic and technology constraints, tradeoffs and aesthetic concerns
Asked In: Many Interviews |