What is Agile Manifesto?
The Agile Manifesto is a declaration of essential values and principles for software development.
Although it is related to a technological sector, the impacts of the Manifesto and the agile development proposed by it are undeniable for companies from different sectors.
Currently, who can say they are not hit by faster, more productive and informative deliveries, engagement and innovation promoted by software from companies like Uber, IFood, Netfliz or Airbnb?
Agile Manifesto: How did it come about?
The document was created in February 2001, when 17 professionals, who already practiced agile methods such as XP, DSDM, Scrum , FDD, etc., gathered in the snowy mountains of the US state of Utah.
Although these 17 developers used different approaches and methods, they shared the same fundamentals.
During the course of the meeting, a common consensus on important aspects of software development flowed. Soon, everyone thought it best to take that meeting to a higher level.
They decided to write a document that would serve as a rallying cry for new software development processes. The first part boiled down to finding a name that well expressed the meaning of that movement, “light methods” were no longer a valid option, as they did not explain the desired meaning.
After considering several names, they decided that the word “agile” best captured the proposed approach.
The second part of the meeting was dedicated to the writing of a document that would trigger the Agile Manifesto, which would contain the declaration of the beliefs and values that those 17 people had.
In the last part and in the following months, the principles were worked on. The Agile Manifesto has become a rallying cry for the software industry and for those 17 developers. The document manages to clearly express what it defends and what it opposes, making it very clear what is agile and what is not.
Therefore, currently, it is not possible to dissociate Scrum from the Agile Manifesto, or any other methodology based on its premises.
The Agile Manifesto addresses values that all the professionals gathered there agreed to follow and disseminate.
The Agile Manifest values are:
– Individuals and interaction between them more than processes and tools;
– Working software rather than comprehensive documentation;
– Customer collaboration more than contract negotiation;
– Responding to change rather than following a plan.
According to The Agile Manifesto, while there is value in the items on the right (processes and tools, comprehensive documentation, contract negotiation and plan), the items on the left (individuals and interactions, working software, collaboration and response to change) are more valued.
To better understand the 4 values of the Agile Manifesto:
1 – Individuals and interactions more than processes and tools
We must understand that software development is a human activity and that the quality of interaction between people can solve chronic communication problems. Processes and tools are important, but they must be simple and useful.
2 – Working software more than comprehensive documentation
The biggest indicator that your team has actually built something is working software. Customers want results and that can be with working software. Documentation is also important, but that is only necessary and that adds value.
3 – Collaboration with the client more than contract negotiation
4 – Responding to change rather than following a plan
Developing software and products is an environment of high uncertainty and that’s why we can’t dwell on huge plans full of assumptions. What must be done is to learn from the information and feedback and adapt the plan at all times.
The Twelve Principles of the Agile Manifesto
Based on 12 principles, the Agile Manifesto has become a kind of guide that guides the actions, choices of methods and tools of agile project teams, maximizing results.
These are the 12 principles of the Agile Manifesto:
1 – Our highest priority is to satisfy the customer through continuous and early delivery of value-added software.
2 – Accept requirements changes, even at the end of development. Agile processes adapt to changes, so that the customer can take competitive advantage.
3 – Deliver working software frequently, from a few weeks to a few months, with preference to the shortest timescale.
4 – Business people and developers must work together daily throughout the project.
5 – Build projects around motivated individuals, giving them the environment and support they need and trusting them to get the job done.
6 – The most efficient and effective method of conveying information to and between a development team is through face-to-face conversation.
7 – Working software is the primary measure of progress.
8 – Agile processes promote sustainable development. Sponsors, developers and users must be able to maintain a steady pace indefinitely.
9 – Continuous attention to technical excellence and good design increases agility.
10 – Simplicity: The art of maximizing the amount of work not done is essential.
11 – The best architectures, requirements and designs emerge from self-organizing teams.
12 – At regular intervals, the team reflects on how to become more effective and then refines and adjusts their behavior accordingly.
With the Agile Manifesto it was necessary to create a permanent organization to represent it. Thus, at the end of 2001, the Agile Alliance was born.
This non-profit organization seeks to promote knowledge and discussions about the various agile methods existing in the world and reinforce the pillars of the Agile Manifesto.
Each agile method that exists today carries the values and principles rooted in the Agile Manifesto, methods such as Scrum, Kanban and XP bring them, that’s why they are called agile.
The real possibility of introducing products to the market faster and with higher levels of satisfaction, has popularized agile methods around the world.
The rewards for those who decide to be agile are great, not for nothing, companies like Google, Yahoo, Microsoft and IBM use the values and principles of the Agile Manifesto.
However, in addition to software development processes, companies that produce other types of products can also use the principles and values of the Agile Manifesto (Scrum or other agile methodologies).