The fundamental organization of a software system, including its components, relationships, and principles that guide its design and evolution.