What is Agile? The term means to be able to move quickly and lightly. And this type of movement is a key to leading-edge project management methods of the 21st century. Agile started as a software development methodology and quickly moved into the world of general project management. Agile emphasizes collaboration, customer feedback, and constant development. Moreover, it can be applied to projects of all sizes. Since its inception, Agile has been adopted by thousands of organizations around the world.
4 Agile values – table of contents:
A short history of Agile
At the very end of the last century software development teams were still using project management methodologies invented 50 years back. A waterfall, which had been the standard of project management for the most of the 20th century, was the most common software development methodology prior to Agile.
Waterfall methodology was created for the construction industry and manufacturing. It suited the needs of those businesses perfectly – as the types of projects in manufacturing require preparation of comprehensive plans before the execution phase. In this methodology once the plan is created, it is executed step by step. The flow of the work resembles a waterfall to meet the client’s requests.
Unfortunately, the waterfall methodology couldn’t be applied to software development since it was hard to follow and demanded tons of paperwork. More importantly, it was simply ineffective.
In search for a more flexible and iterative approach to software development, many teams began to work on their own, site-specific project management adjustments. However, there was an urgent need not only for a new standard, but also for a completely new way of thinking about project management.
The new approach was already budding here and there, when in 2001, 17 software thought leaders met at a conference in Snowbird, Utah. Among the participants were such names as Kent Beck and Ron Jeffries, co-creators of eXtreme Programming (XP), as well as Ken Schwaber and Jeff Sutherland, (the authors of Scrum framework we described in this series of entries). During the conference in Snowbird the Agile Manifesto was formulated in response to the shortcomings of the waterfall method. Nowadays, Agile is not only software development methodology. It became the way of thinking used for project management in various organizations. Despite of the fact that its popularity is constantly growing, the general rules of Agile remain unchanged.
What is Agile?
Agile is defined as a method of project management that divides all the tasks into short phases called iterations. They are frequently evaluated and adapted to the current state of the market and client’s needs.
Agile is also a term used to describe a set of values and principles of product development. In general, Agile means being focused on delivering value to the customer faster, and being able to self-regulate as an agile team. In other words, agile teams are able to adapt and change as needed in order to deliver the best possible results for their customers.
4 core values of Agile
Agile is built on 4 core values listed below:
- Individuals and interactions over processes and tools.
- Working software over comprehensive documentation.
- Customer collaboration over contract negotiation.
- Responding to change over following a plan.
These values may sound strict at first. But their authors stress the fact that they used the word “over” on purpose. They state that both parts of the equation are equally important hence those parts have to be mentioned to help with understanding of the core issues in management. However, the first part of the equation is more important in the Agile approach.
Individuals and interactions over processes and tools
The first core value of agile means that people working on the project, their wellbeing and communication, are the most important part of a successful teamwork. Neither the processes they run, nor the tools they use, can be valued more than individuals’ work and input.
Working software over comprehensive documentation
The second value of agile addresses directly software development. However, there are no major differences between an Agile teamwork in software development, or on any other kind of product. In both cases, the working version of the product should be available for the customer all the time. The work is done incrementally and iteratively. In other words, the product is developed step by step, where each step adds some value to the previous ones. This way, the product can be easily and quickly adjusted for changing requirements and needs. In consequence, a comprehensive documentation, which used to be a foundation of waterfall method, is not the priority in the agile approach.
Customer collaboration over contract negotiation
The third value praises continuous communication with the client. Due to the iterative nature of agile product development, customer’s needs can be addressed on the fly. Hence, the contract negotiated at the beginning of cooperation does not need to include all the detailed specification of the product.
Responding to change over following a plan
The last Agile value is connected with the previous ones. It puts the delivery of business value over acting according to predefined rules and plans. In short, the rule means that the product needs to be developed according to the current state of the market. Hence, the agile team needs to often adjust and update the requirements for the product, and consult it with the customer.
Agile Manifesto dates back to 2001. It was written as a set of rules and values for software development teams. However, nowadays it is used as a foundation for efficient and light-weight project management by various organizations.
Agile is based on a set of values. It praises individual input in teamwork. It values higher the availability of a working version of the product over elaborate plans and documentation. And highlights an ongoing communication with the customer who is engaged in the whole process of product development.
We have answered the main question, “What is Agile”. Now check out How to use Agile methodology for freelance projects?