Agile methods are focused on different aspects of the software development life cycle. Some focus on the practices (e.g. XP, pragmatic programming, agile modeling), while others focus on managing the software projects (e.g. scrum). Yet, there are approaches providing full coverage over the development life cycle (e.g. DSDM, RUP), while most of them are suitable from the requirements specification phase on (FDD, for example). Thus, there is a clear difference between the various agile methods in this regard.[31]