At some point, everybody learns about the dreaded Project Triangle. The arms represent tradeoffs between cost, time, and scope. The perimeter of the triangle represents your planning commitments, so if one dimension changes, another dimension will have to change in order to compensate. For example, if scope increases, you have to either: spend more, take more time, or give up some scope elsewhere in order to make the equation balance.
Occasionally somebody makes the mistaken suggestion that there is a fourth variable of quality, but really that’s a misunderstanding of the meaning of scope. The quality level you’re shooting for is not absolute — it’s part of scope. You have to articulate and verify the bar needed to satisfy your customers. If a system performs the functions you say you wanted and you still don’t like it, then you got the requirements wrong. If you update the requirements to address your objections, you’ll discover that the scope is greater than you identified. That confusion is a telltale sign of a team with immature design capability.
The art of project management is largely about knowing how and when to make these tradeoffs. First that means establishing priority. Priority is the root of all leadership. If you can’t prioritize the competing forces in your environment, then you are not in control of your responsibilities. The road to project success begins with prioritizing these project tradeoffs.
The good news is that there are design processes that are optimized for each of the primary tradeoffs: scope vs time, scope vs. cost, etc. Traditional network-model schedules are not very good at making any of these tradeoffs. The Lean approach we’ve been discussing here is best at making scope vs time tradeoffs. However, there is another approach that allows you to make scope vs cost tradeoffs, which might be a sort of Holy Grail in software project planning. That approach is the Set-Based Development method that is used in the Toyota Development System.
Toyota holds development time fixed, and partly constrains scope. The scope constraint is that it has to be a whole vehicle, and it has to be better than the previous design of the same model (or of some comparable benchmark). They make this work by over-provisioning resources. Toyota designs multiple independent solutions for each major subsystem of the vehicle. At regular intervals, less promising designs are weeded out and more promising designs are promoted or combined. This concurrent redundancy makes it very likely that a satisfactory solution will appear within the time allotted. Additionally, Toyota leaves the requirements open until the final design converges. In this way, Toyota strives to design the best possible vehicle in the time allowed, but not better than possible.
I’m already planning to address the set-based approach by the inclusion of Pugh Concept Selection in our design workflow, but we can talk more about the Toyota thing if people seem interested. Otherwise we’ll keep more focused a flow-oriented scope/time model.





Pugh Decision Matrix | Lean Software Engineering | 07-May-07 at 11:04 am | Permalink
[...] using Set Based Development — exploring several design alternatives, looking to pick the final choice for this version of [...]
Andrew | 14-May-07 at 1:33 pm | Permalink
Where did you take this info about Toyota? I couldn’t find out any pictures like this, huh
coreyl | 14-May-07 at 5:20 pm | Permalink
Hi Andrew,
The Toyota Development System has been documented in a few places I can think of, but one very handy resource is Michael Kennedy’s Product Development for the Lean Enterprise.
Andrei | 08-Jun-08 at 7:00 am | Permalink
I believe there definitely is a 4th variable that would turn the triangle into a triungular pyramid: RISK. Often people leave undiscussed the impact of budget cuts and trimming estimates on the level and probability of reaching project success. Imagine the tradeoffs between these 4 corners: SCOPE, COST, DURATION and RISK. A manager will/should always see a project as investment so RISK is definitely important and it varies according to the other 3 parameters.