Through the years a bunch of “X”-driven developments/designs have emerged, such as Domain Driven Design, Test Driven Development, Behavior Driven Development etc. These design principles all have their own focus on different parts of development, and what I think is missing is a more higher level, over arching design principle. Therefore I have formulated the “Freedom Driven Design” principle.