Imagine, for a moment, you own a fishing company. Perhaps it is in Louisiana, something like Bubba Gump's Shrimp Company
from the movie Forrest Gump.
What you do is very simple; every day, you go out, cast your nets, bring in a few hundred pounds of shrimp. Minus the cost of gasoline and maintenance on the boat, you can "make a good living."
But the Blue family were not professional shrimp fishers; they were shrimp cookers.
Enter me, the Management Consultant, and my fishing maturity model
I point out that you've been running your business in an ad-hoc fashion - just running out into the water and dragging the nets. Why, you don't know if you're doing well or not, and have no plan for improvement. I'd like to help.
The five levels of the fishing maturity model:
1 - Ad-hoc. Fishing is an improvised process.
2 - Planned. The location and timing of our ships is planned. With a knowledge of how we did for the past two weeks, knowing we will go to the same places, we can predict our shrimp intake.
3 - Managed. If we can take the shrimp fishing process and create standard processes - how fast to drive the boat, and how deep to let out the nets, how quickly, etc, we can improve our estimates over time, more importantly.
4 - Measured. We track our results over time - to know exactly how many pounds of shrimp are delivered at what time with what processes.
5 - Optimizing. At level 5, we experiment with different techniques; to see what gathers more shrimp and what does not. This leads us to continual improvement.
Sounds good, right? Why, with a little work, this would make a decent 1-hour conference presentation. We could write a little book, create a certification, start running conferences ...
I've never fished with nets in my entire life
. In fact, the last time I fished with a pole, I was ten years old at Webelo's camp.
You see, I actually have no idea what I am talking about. I made it all up by inserting a process improvement framework over a specific activity. It's Gunk; it's Garbage
Or is it?
The beauty of Maturity Model Mania (the MMM
) is that it's a non-falsifiable argument. If you boil it all down, all it's saying is do the same thing every time, measure what you do, experiment, and then do what works best. How can you argue with that?
I'm not going to argue with the idea that evaluation when picking changes to technique is good. But that's not what we're talking about; we're talking about a specific framework that, when you get down to it, introduces a series of wasteful and expensive processes that don't really pay off until level five.
I would argue that, as testers - and quality experts - or heck, anyone doing knowledge work, it's our job to not be fooled
- not just by the software, not just by the project plan, but even by the people in suits with fancy ideas and power point. If Forrest Gump wants to run a successful fishing business, he probably wants to listen to just enough of the idea to see what parts of it apply, then use his own good judgement and discernment on what to implement. (On the other hand, if the guy actually fishes every day
and has been wildly successful, you might want to listen to him.)
There are a lot of bogus ideas in software development
. This is just one little reminder to trust your gut; don't be afraid to say "This whole thing smells fishy to me."