Any change to the way we do things is disruptive. Any deviation from our normal routine is unsettling. Forget about the holy wars around what constitutes the “best” software development approach or whose diet plan produces the “best” results. The challenges of creating software and dieting are the same.
Why would a company change the way it builds software systems? Companies change their approach to software development once they conclude that what they’re doing is too big, too slow, or too costly. They want better, faster, cheaper results.
Why would a person decide to go on a diet? People decide to lose weight when they believe they are too big, too slow, or too costly (as in having to buy a new wardrobe). We’d all like to be healthier, fitter, and more appealing, right?
Consider the Challenges
Whether it’s a company writing software or a person losing weight, the challenges are similar. Many companies struggle with software projects that are usually late, over budget or unreliable. Making major improvements is difficult. Flawed processes don’t just heal themselves. It takes a lot of work.
As for the challenge of losing weight, it’s hard to do. It may be a few pounds or a hundred pounds. Regardless of the amount, you have to make some some basic lifestyle changes. Excess weight doesn’t just magically melt away as some marketing campaigns would like us to believe.
The basic steps to solving either problem are the same. The steps might look like the following (along with some examples):
- Establish goals
- Company: reduce time to market by 20% or lower customer support costs by 30%
- Person: lose 50 pounds, run a marathon, or fit into an existing wardrobe
- Evaluate approaches
- Company: iterative waterfall, Scrum or XP
- Person: Weight Watchers, Jenny Craig or South Beach Diet
- Prepare to follow the approach
- Company: identify training materials and train employees
- Person: study the diet and chat with others that have followed it
- Purchase necessary items
- Company: buy equipment and software; setup office space
- Person: buy cooking tools and food items
- Start the effort and track progress
- Company: use charts and graphs to show progress
- Person: track weight and strength/endurance
I could go on but you get the idea. The similarities are striking.
If you don’t have clear goals, you’ll either fail from lack of direction or you’ll accept whatever outcome you get and call it a day. Proper preparation is also critically important, as is tracking progress. It all has to come together to achieve a successful outcome.
Oh, I almost forgot! The most important aspect of any change endeavor is commitment. Some things will go wrong along the way. Mistakes will happen. The journey certainly won’t be smooth sailing. Those that succeed in any endeavor are those that defined clear goals at the outset and were committed to success from the beginning.
That’s hard to do as an individual and it’s even tougher as an enterprise organization.