Agile manifesto 12 principles of software development, is published around 15 years ago, it is the simplest and minimalistic approach to give power to the scrum team, give competitive advantage to customer, engage the ends like business and development team, it harness agility and welcome change, emphasis on shorter and consistent releases for active feedback loop, bring motivation, trust and respect for individual. Which in return deliver valuable and working software earlier and faster.
Agile manifesto is not a recipe, manifesto idea is to create “master chefs”, which can bring about perfect dishes with any available ingredients during any circumstances.
These are the roles defined in 12 principles of agile manifesto for SW development.
Team[Developer] → Business People → Customer[Sponsors] → End User
Agile Manifesto explanation
Lets have a detailed look at all the agile manifesto principles and explain each principle.
1. Agile Manifesto Principle 1
“Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.”
1.1 Important takeaway (agile manifesto explanation)
- highest priority
It is interesting to see that 1st principle of agile manifesto starts with words
[Our] & [highest Priority] & emphasising the [customer satisfaction] in same sentence.
[Our] define here as a team, it put the responsibility for customer satisfaction to scrum team.
[early deliver] deliverable should be early. Which means we need to divide the deliverable into smaller pieces, that can be delivered earlier to customer. As it shortens the feedback loop, which help us to understand what customer really want. This principle also emphasises the value in our delivery for our customer. Delay in delivery and not-valuable product will delay the feedback from the customer, which can delay the whole product.
[continuous delivery] delivery should be early and continuous, so feedback between team and customer should be continuous on each delivery.
[valuable] emphasis on “value” then a release. We need to ask our selves if we truly delivering the value which we promised and committed with the customer.
2. Agile Manifesto Principle 2
“Welcome changing requirements, even late in development. Agile processes harness change for the customer’s competitive advantage.”
2.1 Important takeaway (agile manifesto explanation)
- even late
- competitive advantage
[changing] this principle emphasise on being agile with its true essence, welcoming the change for the customer requirement. it emphasises that requirement is very dynamic and live element, which grow and shape up to be a real product, this is one of the concept differ heavily from its waterfallish approach.
[late] it’s never too late for customers to do changes in the requirement. To avoid those changes to happen late in requirement cycle, it is best to spend more time with the customer to understand it well in first place, it goes back to principle 1, of releasing early and in small iteration continuously.
[competitive] scrum team enhancing the competitiveness of customer, this competitive advantage could be in terms of cost, feature offering, etc for the customer towards its competitors.
3. Agile Manifesto Principle 3
“Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.”
3.1 Important takeaway (agile manifesto explanation)
- Working Software
- shorter timescale
[working software] this principle doesn’t just emphasise on delivery but actually on “working” software, the delivery which conform of DoD[definition of done], CoS[condition of satisfaction] and value of its own, as describe in principle 2
[shorter timescale] delivering earlier, with preference on shortening the timescale, as this is the main philosophy of eliminating waste, to keep track on timeline of deliverable
4. Agile Manifesto Principle 4
“Business people and developers must work together daily throughout the project.”
4.1 Important takeaway (agile manifesto explanation)
- must work
[Business people] is referred to a Product Owner, or anyone who is a proxy between customer and team.
[must work together] emphasise here to have a shared responsibility and accountability, ‘work together’ stresses on total commitment on both sides.
[throughout the project] this principle emphasise that there should be a commitment, direct collaboration and cooperation in all the phases of a project.
5. Agile Manifesto Principle 5
“Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.”
5.1 Important takeaway (agile manifesto explanation)
- Build projects
- motivated individuals
- support in need
[motivated individuals] agile manifesto, speak too highly about scrum team, this principle talked about motivation and happy individual.
How you create a motivated individual?
the answer is simply provided in another half of the principle
“.. Give them the environment and support they need, and trust them to get the job done.”
Start with a value, show by action that product team is going to build a which have high value for the end customer.
- Let the team come up with commitment and delivery plan which they feel comfortable with.
- Let them execute, don’t come in their way.
- Remove the hindrances which come on the way to the team.
- That give them trust and motivation to deliver working software with value.
6. Agile Manifesto Principle 6
“The most efficient and effective method of conveying information to and within a development team is the face-to-face conversation.”
6.1 Important takeaway (agile manifesto explanation)
[efficient and effective] this principle emphasis on efficient and effective communication over status meetings, just like we do during a daily scrum, it’s an act of conveying information.
[face-to-face] effectiveness of a meeting is if it is face-to-face. Just like daily scrum and sprint planning, manifesto doesn’t dictate how the meeting should be run, it emphasise on its effectiveness and efficiency.