Triangle-Class Problems

Most project managers are familiar with the phrase “fast, cheap, or good, pick two”.  It’s a classic formulation of a resource constraint tradeoff.  If you need it fast, you can spend more or lower the quality bar; if you need it cheap, it’s going to take longer or be lower quality; if you need it to be top-notch, you’re going to have to either spend the money or the time to get it there.  This triangle of constraints represents (in some ways) a particular version of balloon-class problems: squeezing any one angle is going to put pressure on the other two; if you try to pressure all three, it’s likely to explode in your face.

In my experience, though, things are rarely so clean.  For example, where does scope fall in these constraints?  Is it a sub-set of quality?  And labor cost factors into both fast and cheap; even if you’re running a small team, burn rate X time = money.  The idea that spending more money can make things faster also runs into problems with critical path and non-segmentable work (see The Mythical Man-Month on why 9 women can’t have a baby in 1 month).  In team situations (and almost all game development is team-based), you also run into problems because communication efficiency scales inversely with team size, and scaling a team is a risky and time-consuming proposition.

People have tried to refine this triangle by making diamonds, or Star-of-David type diagrams, which really misses the point.  Project management is not a problem you can solve in the abstract.  Every team, every project has its own dynamics.  The triangle is a tool.  Like a forking move in chess, it allows the project manager to present clearly to other stakeholders that they must make a choice, and regardless of which choice they make, they are going to have to give something up.  It is a defense against outside forces who often want everything, or, for that matter, against inside forces that are not setting priorities realistically.  Its simplicity is its strength; it embodies the problem.

Even though it’s not the most precise formulation, it’s still a useful tool.  It allows you to negotiate without saying no, a valuable move particularly when you’re managing up.  On the flip side, if you recognize that you’re getting this a lot from your team, you need to revisit the project priorities, risks, and mitigation plans; something has drifted out of alignment, and you may well be the one who is drifting.

Leave a Reply

Your email address will not be published. Required fields are marked *