The agile methodology was created out of a need by the software industry to have a methodology that fit their particular needs. This all came into reality in 2001 and was available for the industry to use.
While the agile methodology was a new approach that allowed the creators of software to be more independent with their work, it is not without controversy. The previous approach was the Waterfall methodology that uses a linear approach that is sequential for the creation of software to be used in the business world.
The agile methodology approach takes on the creation of software thru iterative work cadences that is incremental in design. This approach takes many components from the lean methodology, Waterfall and others so it is not entirely new. What was new is the freedom the project team members had whole the project was in its execution phase.
The term execution phase is from the project lifecycle methodology that has its principles in nearly every other methodology being used to date including the agile methodology. The execution phase of a software project allows the team members to work independently or with collaboration with other to achieve the final goal of the tasks assigned them. There are no daily deadlines, just an overall deadline that must be met.
The agile methodology did not meet all of the requirements that many in the software industry were looking for so a modified version was then created called Scrum Agile methodology. The unique approach to scrum is referred to as the idea of empirical process control. This makes room for 1, 2 and 3 week durations of tasks to be completed before the stakeholders of the project along with the team members meet to discuss the progress that has been made. This allows for adjustments to the schedule to be made when time frames or directions of the project change.
Today the use of agile methodology is more of a general category instead of an explicit methodology that is used. As most software developers already know, this is not the only methodology they can use to get the desired results from their project.