It is not a straight word answer to choose one as the best option when comparing agile methods with plan-driven development approach. The circumstances and the scenario around the project direct the selection of the best methodology.
Agile methods are best suited when the business customer fully commits to becoming the part of software development and is readily available for the fast feedback. Small or medium scale projects where the project teams are co-located to run daily meetings with ease is the requirement of agile approaches. High skilled team members, who are collaborative and work in close cooperation together and at the end of each increment produce a working product and present to the client for approval or changes and then ensure the incorporation of any change at any stage of the project. Also to use agile methods, one needs to make sure that the organization does not have a high culture and regulations to follow traditional approaches and require a contract in the form of detailed documentation as agile methods do not support formal or extensive documentation and with every increment, the requirements are evolved. Any external regulation also requires an organization to keep a detailed documentation for standards approval and in such cases agile approach is not recommended. For real time systems, which are large scale projects with definite requirements a plan-driven approach should be used. It is tough to change the culture of an organization as people are resistant to adapt to new methods. Also distributed teams can not communicate on a daily basis to keep track of the project. At the end of each increment in agile methods, integration of the system takes place. In large scale projects, several systems are being developed by different teams, so it is a challenge to integrate them after every cycle. It is why the plan-driven approach is best suited for large and complex projects. And many times, the business customer is not easily available to get involved in the development process, which is a significant requirement to follow an agile methodology. Strictly depending on one’s needs and circumstances, you decide which approach better suits you.