Systeemontwerp gaat fundamenteel over afwegingen — je kunt niet alles tegelijk optimaliseren, dus goed ontwerp houdt in dat je de afwegingen begrijpt en bewuste keuzes maakt op basis van de specifieke vereisten en prioriteiten. Goed redeneren over afwegingen is de kern van systeemontwerp.
Er is geen perfect ontwerp
Every design decision involves TRADE-OFFS → improving one thing often costs another:
→ you CAN'T maximize consistency, availability, performance, cost, simplicity all at once
→ "it depends" → the right choice depends on the specific REQUIREMENTS and priorities
→ system design = making informed trade-offs, NOT finding a universal "best" design.
