Here is the second sample from my new Kindle book “Agile Illustrated: A Visual Learner’s Guide to Agility”. The book is a graphical introduction to the agile mindset and servant leadership behaviors for working with agile teams. If you missed the first sample on the Agile Manifesto, you can find it here.
Today we will revisit the Declaration of Interdependence. A lesser-known cousin to the Agile Manifesto, the Declaration of Interdependence was created in a few years after the Agile Manifesto to describe how to achieve an Agile Mindset in product and project leadership. It describes six principles essential to agile project teams. We will review them one by one.
1 – We increase return on investment by making a continuous flow of value our focus.
Amaze your customers; keep giving them what they ask for!
Concentrate on developing features the business asks for: This is how we can get the best benefits for the business and support for the process. Projects are hard to cancel or deny requests from when they consistently deliver business results.
2 – We deliver reliable results by engaging customers in frequent interactions and shared ownership.
When planning interaction with the business, try to be more like the good neighbor you see frequently and can easily call upon rather than the intrusive relative who moves in for a while and then disappears for a year. We want regular and engaging business interaction, not a huge, upfront requirements-gathering phase followed by nothing until delivery. Frequently show how the system is evolving and make it clear the business drives the design by listening to and acting on feedback.
3 – We expect uncertainty and manage for it through iterations, anticipation, and adaptation.
Software functionality is hard to describe, technology changes quickly and so too do business needs. Software projects typically have lots of unanticipated changes. Rather than trying to create and follow a rigid plan that is likely to break, it is better to plan and develop in short chunks (iterations / sprints) and adapt to changing requirements.
4 – We unleash creativity and innovation by recognizing that individuals are the ultimate source of value, and creating an environment where they can make a difference.
We manage property and lead people; if you try to manage people they feel like property.
Projects are completed by living, breathing people, not tools or processes. To get the best out of our team we must treat them as individuals, provide for their needs and support them in the job. Paying a wage might guarantee that people show up, but how they contribute once they are there is governed by a wide variety of factors. If you want the best results, provide the best environment you can.
5 – We boost performance through group accountability for results and shared responsibility for team effectiveness.
Everyone needs to share responsibility for making the project, and the team as a whole, successful. We can help by empowering the team to make their own decisions. When people are more engaged in a process, they are more committed to its outcome and success. In short, people care more about things they had a hand in creating than things given to them or imposed upon them.
6 – We improve effectiveness and reliability through situationally specific strategies, processes, and practices.
Real projects are complex and messy. Rarely do all the ideal conditions for agile development present themselves. Instead, we have to interpret the situation and make the best use of the techniques, people, and tools available to us. There is no single cookbook for how to run successful projects; instead, we need to adjust to best fit the project ingredients and project environment we are presented with.
The next post will feature another random excerpt from the book “Agile Illustrated: A Visual Learner’s Guide to Agility”. If you liked this sample please consider buying the Kindle book available on your local Kindle store – here’s a link to the Amazon.com store.