The Iron Triangle

Traditionally, features take time to develop, and the more time you spend, the better you can make it work. But the extra effort takes longer and costs more.

In the traditional diagram, you get to move the dot to any place in the triangle to get a solution.  For example this diagram shows a reasonably balanced solution, not very fast, not very good and not very cheap.

But this is a "flat" space with the assumption that all work takes equal effort and that all effort costs money.  There clearly are wrong ways to organize work that make it slow, expensive and produces low quality.  There are also elusive techniques that raise productivity or quality at a low cost.  For example, taking bugs out of a system is very expensive; If you can avoid putting bugs in, you can save a lot of time and money taking them out.  Another example, If you wait months to look for your bugs, you will forget how your code works, and you will have to re-learn it.  If you write the tests first, you can run the tests as you code and the bugs come out much faster.