Skip to main content

Data & Intelligence

The Importance of Software Process Improvement – It’s the journey, not just the destination.

All great endeavors start with a question. In this case it’s the same question every business asks at some point regardless of their industry or position they occupy. How do we get better at what we do? This is as true for a software company as the business down the street that makes canoes. The question usually comes up when they realize that they’ve been too focused on delivery and think “Could we be doing this better, faster, cheaper…using less wood?”

This is where the concept of Software Process Improvement (SPI) comes in. In every industry that uses computers (aka: all of them) there is a need for SPI. Granted, a business has to focus on delivery (and rightly so) but the need for improving internal processes should not be ancillary concern that always comes in last place.

What is SPI? It involves the Software Development Life Cycle (SDLC) which is a series of phases that takes a business case to completion; whether that means taking a sales lead to a final website go live, a stakeholder problem to a rolled out solution, or a product idea to a saleable product. SPI is a methodology for identifying issues and inefficiencies in your SDLC then devising and implementing solutions for them. It is an ongoing and reoccurring effort (with reviews, checkpoints, etc.) that does not have an end date. Its overarching concern and goal is to analyze and enhance the way you do things.

Data Intelligence - The Future of Big Data
The Future of Big Data

With some guidance, you can craft a data platform that is right for your organization’s needs and gets the most return from your data capital.

Get the Guide

So why should I care? Well, because how you do things is just as important as actually doing them. A common saying is “Work smart, not hard”. Simply put, maybe, yet this is exactly the goal of process improvement. It’s about fixing what is broken and creating efficiencies with what’s working, to reduce your overall overhead and costs. Making things easier for yourself, to give yourself more time to actually do the work you need to do rather than losing it to inefficient or unnecessary tasks. This helps you stand out against competitors who require more time (read: cost) for the same level of work and/or quality.

It’s also about quality. It’s garbage in garbage out. A bad process has bad results and if your code reviews are ad hoc and haphazardly done, what does that say about the code itself? If your requirements documentation is sparse and lacking, what effect does that have on the features of your software? The answer is simple; a finished product takes on the characteristics of the process it was created in. If you notice quality issues, take a good long look at your creation process. The problem’s right there in front of you.

Another reason to give process improvement a priority is one that may not be readily apparent. Who’s interacting with your process? Your employees and customers. Important people, no? Inefficient processes cause annoyance and frustration for both, which can result in high employee turnover or a distinct lack of repeat business. Two things that don’t bode well for any organization. A good process keeps projects flowing smoothly, results in less stressed employees and happier customers.

“It’s the job that’s never started as takes longest to finish.”

– J. R. R. Tolkien

Sold yet? Maybe even a little scared? Don’t panic, all the issues above are solvable. The key is to start before they grow into large problems. If you’ve already hit this point then you’ve waited too long. You need to start now. The good news is that process improvement is something all companies must implement as they grow, so you’re not traveling into uncharted territory. There is a roadmap. The biggest challenge is getting started. Here’s what can get you started on the path to a better future:

Process improvement is something all companies must implement as they grow. How to start now.

  1. Recognize the Need for Change
    • With any luck you’ve just done this. If not, check with your employees on what your process could be doing better. Their feedback might be surprising.
  2. Get Sponsorship
    • Without buy in from senior management, this won’t be going anywhere. Their commitment and support is absolutely necessary for any effort to be successful.
  3. Establish the Organization and Infrastructure for SPI
    • Setup and Form a Process Group (SPIG/SEPG)
      • A detailed guide for this can be gotten from the Software Engineering Institute (SEI) HERE. Basically this involves gathering your thought leaders to form a team and establish their charter to review, improve, and implement process improvement across the organization. They need to recognize where the issues are, define the improvement, and the train and rollout the new process.
    • Make it a Priority
      • This needs to be a priority not just for senior management but also the resources involved. If they’re too busy working on projects they won’t have much time for process work and it will always take a back seat to delivery. So they should be separate and dedicated to this to avoid a conflict of priority. In smaller organizations this may not always be possible, but in this case they should have a respectable amount of dedicated allocation for the group to remain unencumbered by project delivery
    • Set Authority
      • If the group doesn’t have the power to make and implement changes, this will be doomed from the start. They have to be able to not only define the process, but actually implement and enforce it as well. Without this, their recommendations won’t have any impact or improve anything. They also need to be the sole owner of process to avoid competing processes from being created.
  4. Get Going!
    • With the group formed and everything set to go, it’s time to get started!

So no more waiting! You’ve got the roadmap. We’ve now covered not only what process improvement is, but why it’s imperative for any organization to be able to grow and flourish. What’s illustrated above is the right path to be able answer the question that we began with. It’s on this path that you’ll begin your journey to destination: better.

(Co-author: Ritesh Keskar)

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Steve Zobrist

More from this Author

Follow Us