How Commonality Variability Analysis reduces complexity.
summary
Commonality–variability analysis (CVA) reduces accidental complexity by forcing explicit choices about what is truly shared and what is variant: use event storming and multiple models to build a theory, track binding time (install vs runtime), and prefer useful generalizations over premature exceptions. Examples and references: Peter Naur’s theory‑building, George Box’s “all models are wrong,” Martin Fowler’s accounting patterns. Concrete loan model shows decisions that matter: borrower identity is immutable, interest is mutable, conditional approvals differ from conditional denials, and focusing on risk modeling avoids needless complexity.
AI-written summary · about
chapters (19)
- 0:00Intro
- 0:39Avraham Poupko
- 1:19Cs - Complexity of the system DRIVEN
- 2:48Believe
- 6:06Abstraction
- 11:55Peter Naur
- 18:22Theory Building is at the heart of Storytelling
- 23:58The steps of Domain Modeling
- 26:26Example - Newton's Theory vs. Model
- 27:02Difference between model and theory
- 28:53A model of all models
- 34:20Example - Positive/Negative Variance
- 43:13Stories
- 44:15Types of loan (Application time binding)
- 44:37Attributes of loan (different binding times)
- 46:31States of Loan (requires human intervention)
- 48:23Types of Branches (Installation time)
- 49:02Theory - Risk
- 53:33In Summary
related talks
49mVariability, The Second Hardest Problem ...
50mAll Models Are Wrong: Lessons from Real DDD Projects
51mThe Model Is All You Need
47mThe Joy of Multiple Models
33mPractical Applications of Complexity in Software & Digital Products Development
17mPreserving Consistency of Interrelated Models during View-Based Evolution of Variable Systems
06mØ
48mAccidentally Complex Development
