Welcome back to Part 2 of the Basics of Agile series.
Going back to Part 1, we talked about the motivations for Agile, and how change is an important part of those motivations. The standard for Waterfall required planning the end-to-end solution well in advance of the beginning of development, and any changes to that plan were difficult to apply once development started. Over time, this created an environment where the gap between the need vs the met needs never narrowed. In other words, the results actually left the customer further behind because of the rigidity of adherence to the plan.
Then Agile comes along and does away with planning. Problem solved, right?
Wrong. That is not what happened. However, it is the false perception.
Planning in Agile is more of a fluid process.
Water Pools for the Waterfall
I will illustrate the need for fluidity with this little story I call “The Waterfall Watering Hole.”
Imagine that a village has contacted a designer to come up with a way to provide water for the village. After meeting with the Chief and other village leaders, the Designer begins his work coming up with a plan. After years of research, the designer comes out of his hut and contacts the Chief. “I have a great design for the village water needs. It is timeless and has worked in villages for millennia.”
The design called for large a water storage pool. All the water would be stored there. According to Waterfall Designs Inc., an internationally recognized water supply thought leadership group, a single large pool is the proven method for holding water. The village water supply designer adds “No one ever died of thirst when living near a large pool.” The design was presented to the village Chief and other leaders.
The Chief is impressed, but notices the cost. Still, trusting the designer and seeing how he had not emerged from his hut for so long, the Chief believes the Designer and approves the work. Besides, he learned a new word, “reservoir.” Without knowing what it meant, the Chief thought it had to be very impressive.
Because of the costs, he also stops eating meat in order to save money for the project, and to lose weight. But mainly it’s the money. The butcher is not pleased with losing his job.
The work commenced. For project integrity, access to the project was denied until the water pool was finished. No alternative sources of water and no changes to size or design would be allowed because the Chief is already on a diet.
Construction took a very long time. As the saying goes, “the natives were restless” with anticipation of finally seeing the results.
When construction ended, everyone was excited to finally see the water pool.
Yet over time, the water began to taste strange. Someone said, “This water is stagnant. Algae is forming on the surface.” But having the water pool was so much better, no one said anything until more problems arose.
Then the water began attracting wild animals, and what everyone expected to meet the village needs now was being drained. At current rates, the water would only last through half of the dry season. A concerned citizen group forms for Water Pool Reforms, and asks me to be spokesman. I ask the designer if the pool could be bigger since the animals are drinking it all. The designer says, “The storage pools were designed to the specifications given when this project began. These concerns should have been raised back in the design phase.”
Because these are thirsty wild animals, getting water has now become dangerous. The Water Pool Reforms group sees the need to get further away where it is safer. However, no one can carry the water from the pool around, since there are no containers. So everyone has to stay within range of the pool, and the wild and dangerous animals. You begin thinking, how can we make this portable. I ask the designer, “Can I have some kind of container so I don’t have to stay where these dangerous animals can eat me or my family?”
“No, storage pools is the approved design,” the designer says. “The village Chief has approved it. I do not want to have to face him again because he is always in a bad mood on his diet and does not have time to address all the needs. You are lucky to have gotten this much.”
Then there came the mosquito problem, since there is a large body of standing water. Eventually, villagers begin to catch malaria. My whole family has gotten sick with the virus. I ask the designer “Can I have mosquito nets added to my home?”
The designer says “No. That would be outside of the scope of the original project, and the added expense will not be approved. Besides, we have just entered the maintenance support phase, so no changes can take place on this project. If it is broken, then you can create a trouble ticket. But it is working as designed, so we will not do anything about it. I’ve been contracted for the next village water project.”
As the designer walks off toward the next village, he turns and says, “You complain a lot. Good luck getting any changes with that attitude.”
Fed up and trying to hide a snarky tone, I respond, “Thank you for your time.” But as the sting of the designer’s rebuke wears off, I cannot help but think, “Was there ever a time when changes could have been made?”
That is a VERY good question.
The storage pool ends up causing several problems while inadequately addressing one.
How would Agile approach this problem?
The Agile Aquifer
If Waterfall provided the Watering Hole, then the Agile response would be the Aquafer. That story goes something like this.
The village leaders ask a designer to help them have a source of water. The designer spends a little time researching what thought-leaders propose, just to get some ideas. “Water Pools are a great answer,” she thinks. But she also had read about other methods that are far less glamorous, and wonders if that would be a better option. So, having that as a base of information, the designer compares the various hypotheses by talking to the villagers. She begins to understand their needs and how to determine the best answer.
To her surprise, the global thought-leader’s ideas were soundly rejected by everyone in the village. A lot of people moving from other villages mentioned that storage pools are expensive, take a long time to build, turn green with algae, tie you down to gathering food close to the water pool, attract mosquitoes, brings in malaria and attract dangerous animals.
“Wow, the eggheads missed that one,” she thinks.
The designer asked if the people wanted running water into their homes. She got an estimate of the cost of that proposal. Although everyone liked the idea, the Chief decided to leave that for future generations because of the cost. As he sits down for dinner (on a stool that barely supports his weight), the Chief says “Ms. Designer, please find a way that does not cost so much, but is still safer than the water pools. Perhaps when the village grows we can address that option then. We just do not have the tax base for it.”
The designer took all of this information into consideration and came up with a less expensive and safer proposal – a water spicket located in the center of the village.
She showed her proposal. It was not very flashy. No big construction would need to be involved, because the minimum viable product simply needed to provide safe water. It did not need to store water, just provide it. The key was, the water was already there, just underground. The designer began her presentation “I have a proposal that has worked for millennia, and I’m sure it will meet your needs.”
The Chief was surprised that he had such a great water resource available and claimed great personal wisdom to access it. Plus he had looked up the word millennia, having heard it used on neighboring water projects. Additionally, he had heard about neighboring Chiefs losing weight after expensive water projects. So if it provided for his people, maintained his lifestyle, and plausibly made him look good politically without going on a diet, then he was agreeable. “But I want to see how this project progresses,” he said. “We need to verify this will meet the people’s needs.”
A drill began digging the route through the surface for the pipe to go down into the aquifer. Everyone came to see as a water pipe was installed. The villagers review safety standards and approve each segment of the pipe.
However, while the spicket is being built, the villagers ask the designer if they could carry water with them as they gather food. A change request is made and sent to the Chief for approval. With the cost of the original estimate for the water spicket being so much less, the Chief was able to fit this into the village budget (along with an increase to his hefty meal plan). He was in a very generous mood these days since he was getting such a favorable result in local polling. So the additional work is authorized to supply bottles and other containers of various sizes. A family can store water in containers or bottles, with just enough to meet each family’s need. Because the water bottles are lightweight, families could bring water with them and gather food much further away.
The village became a very popular destination for immigration in the region, which added to the Chief’s voting base. With the economic growth, a study is being done for the Shake Shack and other businesses to have running water installed. The designer of the spicket project has been retained to assist in that effort.
So summarizing the results, with the spicket design there are there are no standing pools. That had benefits missed by the Watering Hole such as no stagnation, no algae, no wild animals, no mosquitos and no malaria. If you needed more water for a period, you could always fill up more bottles. If you need to go extra far to gather food, you can carry them with you on a journey.
I know these little stories are a bit ridiculous. But they do illustrate several aspects of Agile, as well as it’s advantages over Waterfall. The second story illustrates the Seven Principles of Agile Business Analysis, as taken from IIBA’s The Agile Extension to the BABOK Guide v. 2. These principles are:
• See the Whole – Get a big picture view of things. Researching options.
• Think as a Customer – Capturing various opinions and values of everyone involved. Talking with the villagers.
• Analyze to Determine What is Valuable – Determining tradeoffs between opposing options. Determining health and safety is a concern.
• Get Real Using Examples – showing various alternatives. Asking about Water Pool models.
• Understand What is Doable – adhering to budget constraints. Rejection of the running water to everyone’s homes.
• Stimulate Collaboration and Continuous Improvement – Adapting to new improvements as more information surfaces. The villagers coming up with additional ideas.
• Avoid Waste – The least cost option that provides the desired result. Choosing the spicket model instead of the Water Pools or Running Water systems.
I will talk more about the Principles of Agile Business Analysis in my next post.