This document introduces software architecture and provides examples using GitHub. It defines software architecture as the fundamental concepts or properties of a system embodied in its elements, relationships, and design principles. The document outlines Philippe Kruchten's 4+1 view model for describing software architecture, including logical, process, physical and development views in addition to scenarios. Diagrams for GitHub's class, component, sequence and deployment architectures are presented as examples.
Related topics: