One of my constant struggles in managing software products has been in establishing and keeping tabs on the correspondence between the amount of work completed on a project and the quality of the software produced.
Oddly enough the main claim on time that would otherwise be spent on “designing quality” is spent on developing features, which, unlikely quality, are easily counted and plotted against costs. Shipping features often gets you off the hook quickly because you can easily explain a feature. Quality, on the other hand, eludes a snappy description.
All this is fine until one must negotiate something out of the product. Negotiating on a feature is usually a minor inconvenience, but when negotiating on quality the conversations get tougher and less pleasant. Customers leave, teams are demoralized, and product management is dismayed.
Why then do we still rally behind the feature list every single time? Here is why and what to do to rebalance the equation… (or skip to TL;DR section below)