Software Design Principles
An Illustrated Guide
An illustrated guide to software design principles across foundations, system qualities, and process. Chapters cover design by principles, humans, cloud, developers, and AI; system qualities from simplicity and security to scalability, resiliency, and cost; and process from continuous integration to continuous delivery. Each chapter presents one idea per slide and frames decisions as trade-offs rather than rules.
Chapters
Introduction
Design by Principles
Design by Structural Principles
Design by Humans
Design for the Cloud
Design for Developers
Design by AI
Design for Simplicity
Design for Security
Design for Trust
Design for Visibility
Design for Testability
Design for High Availability
Design for Resiliency
Design for Scalability
Design for Performance
Design by Process
Design to Be Built
Design to Be Released
Design to Be Operated