The Joy of Tradeoffs
An important element in managing a project is the ability to handle tradeoffs. A project contains three adjustable variables: Resources, Schedule, and Features. (Quality is not included, as any adjustment to quality as a variable will guarantee a short career lifespan, and flipping burgers just sucks.) Its important to remember as you are planning a project that if one of these three variables need to be adjusted, then another will have to be adjusted as well to guarantee a project remains on time, on budget, and results in an excellent product.
This can require some excellent managerial skills, as clients are often reluctant to reduce the feature set of an application, while the development team may have a limited number of resources to throw at a project. Failure to manage these changes results in the dreaded scope creep, a leading factor in the failure of so many development projects. Once a change is agreed upon, it is critical for all stakeholders in the project to sign off to ensure the new project plan is fully supported.
One way Microsoft attempts to transform this into practical wording is by using, of course, Mad Libs:
"Given fixed ________, we will choose a ________ and adjust ________ if necessary."
Example: "Given fixed features, we will choose a schedule and adjust resouces if necessary." See, who said project management couldn't be fun?