A hallmark of whether to use a more plan-driven methodology versus an agile methodology is the potential for requirements change. If you have a project in which the requirements are set in stone up front and should not change, then you are probably going to be using plan-driven methods.
Why is this the case? Well, if you know (or have to know) all the requirements up front then the project:
- Could have a large base of customers / stakeholders, where you cannot engage them one-on-one like you would with agile
- May have higher reliability or security constraints
- Could involve hardware in which the interface is already known
- Might have to go through an approval process (FDA, FAA, etc.)
So, if the requirements are known, there are other aspects of project that are likely to be true - all of which point to plan-driven.
Software Process and Methodologies