In the traditional approach to project management (shown on the left of the diagram above) the feature content of the solution is fixed whilst time and cost are subject to variation.
If the project goes off track, more resources are often added (which varies the cost) and/or the delivery date extended (which varies the time). However, adding resources to a late project often makes it even later and a missed deadline can be disastrous from a business perspective and often damages credibility. Under such pressure, quality often becomes a variable, as a result of introducing compromises which have not been thought through, by reducing essential quality control steps or by cutting back on testing.
With proper planning, any three of the four project variables can be fixed provided one is allowed to vary. In an Agile project the greatest predictability and the most successful outcome for a project usually comes from fixing time, cost and quality and allowing the scope of the features delivered to vary.
By default, using the AgilePF approach (shown on the right of the diagram above), time, cost and quality are fixed as part of establishing firm Foundations for the project. To reach the point where this can be achieved, an understanding of the high level features is required, sufficient to provide a sensible estimate for those aspects of the project that are fixed. At the same time, it is normal for a subset of the features to be identified as mandatory. This is on the understanding that if the solution does not include these features then it will have either no value or that value will be so severely compromised the project would be considered an outright failure.