Software Architecture
A branch of Software Engineering focused on designing, structuring and evolving complex systems to meet functional and non-functional requirements. It involves requirements analysis, defining architectural patterns (monolithic, microservices, serverless, event-driven) and choosing technologies aligned with the business, balancing cost, performance, security, usability and maintainability.
Architecture patterns · Architecture governance · Assessment and diagnosis of patterns.
