Tutorials · Software Design Group · MIT CSAIL
Short guides to concept design.
A collection of short guides — a gentle on-ramp, a grounding in software design generally, and then the machinery of concept design itself. Read them in order or dip in anywhere; each opens in full on the group's publication site.
A gentle introduction
On software design
Design vs. engineering
Read on essenceofsoftware.com
How great design happens
Read on essenceofsoftware.com
Form, context & misfits
Read on essenceofsoftware.com
Generic fitness criteria
Read on essenceofsoftware.com
Simplicity
Read on essenceofsoftware.com
Levels of design
Read on essenceofsoftware.com
Beyond the user interface
Read on essenceofsoftware.com
Divergent and convergent design
Read on essenceofsoftware.com
Tactics for divergent design
Read on essenceofsoftware.com
On concept design
Software = concepts
Read on essenceofsoftware.com
Operational principles
Read on essenceofsoftware.com
Concept purposes
Read on essenceofsoftware.com
Apps are state machines
Read on essenceofsoftware.com
Concepts are state machines
Read on essenceofsoftware.com
Concept state
Read on essenceofsoftware.com
Concept criteria: what's a concept?
Read on essenceofsoftware.com
Concept composition and sync
Read on essenceofsoftware.com
Concept dependencies and subsets
Read on essenceofsoftware.com
Concept modularity
Read on essenceofsoftware.com