The complex nature of software development and the wide variety of methods make comparison of agile and plan-driven approaches difficult and imprecise. Nevertheless, we have found several important software project characteristics for which there are clear differences between agile and plan-driven methods. These are
• Application characteristics, including primary project goals, project size, and application environment.
• Management characteristics, including customer relations, planning and control, and project communications.
• Technical characteristics, ...