Values of the Agile Manifesto
Bhupesh Kumar Pandey
Project Manager, SAFe Certified PO/PM, SAFe Certified RTE, Certified Scrum Master
The Agile Manifesto starts off by saying, “We are uncovering better ways of developing software by doing it and helping others do it."
Agile manifesto comprises of 4 foundational values and 12 supporting principles which lead the Agile approach to development process. Each Agile methodology applies these 4 values in different ways, but rely on them to guide the development and delivery of high-quality, working software.
- Individuals & Interactions Over Processes &Tools
The first and foremost principle is to value people more than processes or tools. It is because, It is the people who respond to business needs and drive the development process. For the efficient product development, developers and business people must work together throughout the project and build the projects around motivated individuals. When processes drive the development, people tend to hide behind the processes and that may cause negative impact on the development, however, when people and communications drive the processes, they become more efficient.
“A group full of T-shaped people is more ?exible about the kind of work they can take on than a group made up of specialists"
- Working Software Over Comprehensive Documentation
In the waterfall model, a lot of time is spent on documenting the development and delivery process. Technical specifications, requirements specifications, interface design documents, test plans, test reports, documentation plans, and approvals are required for each step. It is an exhaustive and extensive list of documentations which a lot of times causes delays in development.
“Rather than sayin “requirements”,
say “deciding what to build.”
Working agile does not mean to eliminate the documentation completely, but it streamlines it in a form that gives the developer what is needed to do the work without getting bogged down in each and every detail. Requirements are documented as user stories, with the information sufficient for a software engineer to begin/continue the task.
The Agile Manifesto values documentation, but it values working software higher than documentation.
- Customer Collaboration Over Contract Negotiation
Contract negotiation is a process where the customer and vendor work out the details of a delivery, customer negotiates the requirements for the product, often in great detail, prior to starting any work. It is like defining the responsibilities of each party and keeping the hands out of the area of the other side’s responsibility area. In this process, customer is involved in the process before and after the actual development process, but not during the actual development process.
"Alignment enables Autonomy"
Collaboration is a different game plan, making customer part of the development process. In agile development, customer is engaged throughout the development process. Being part of the development means customer is appraised of the progress with clear view of the product being developed. Development team gets real-time feedbacks and feed-forwards, which can be incorporated in the development process making the developed product more relevant to the customer’s latest business needs.
- Responding to Change Over Following a Plan
Traditionally change was considered as an expense, so all necessary precautions were done to avoid it, by documentation, by means of contracts and so on.. The business dynamics keep on changing, and in the current VUCA world, the rate of change is pretty fast. Which means that the requirements defined 6 to 12 months before may not be relevant any more now.
“Intelligence is the ability to adapt to change.”
Agile embraces changes. It harness change for the customer's benefit, which means that responding to the changes is given higher importance than following the predefined plan. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its course of action accordingly, which means that the final developed product is more relevant to the latest customer needs and hence have higher success rate and better customer satisfaction.