Software projects are filled with possibilities. If you have enough time, and enough money, and the right developers, you can do anything.
What a wonderful world.
Of course, that’s not the real world. Most businesses don’t have unlimited budgets and eons of time.
So you have to make choices. What can your business actually build, based on your needs, the time you have, and the money that’s available?
Those constraints lead you to determine the scope of a project. What features and functionality are you actually going to build, and in what order? These choices are vital in taking an idea and turning it into working software that benefits your company and your customers.
This is not a bad thing. It’s important to recognize that constraints are not bad things. They simply are. They exist, and part of the creativity required to build software project is working around constraints to build something valuable.
Sounds good, right?
Of course, that’s not the real world—at least, not enough of the time. That’s because no matter how much strategy and creativity and reality you put into making scope decisions, someone will come up with a great idea that just has to be included—even though there’s not enough time or money to do it.
So the plan changes. Then it changes again. And the software project drags on and on, never reaching the finish line.
That doesn’t sound good—but it does sound all too familiar to all too many of us.
What does sound good? Avoiding the trap of scope creep. So let’s break down what scope creep is and why it happens. Then, we’ll take a look in the mirror to identify if the scope creep culprit is found in the reflection.
What Is Scope Creep?
Scope creep is a deviation from the stated plan to add features, functionality, or polish to a system.
Of course, it’s not bad to want enhanced functionality or user-centered user experience polish. But it’s not OK to let these things creep into a software project at the expense of timeline or budget.
There’s an important distinction here. Scope change is an intentional decision to expand scope because of strategic reasons with measurable ROI. Scope creep is not intentional—and it just kind of happens.
Your approach to a software project will impact what forms scope creep takes.
In Waterfall Projects
In a waterfall project, the goal is to formalize the architecture, scope, timeline, and budget before the first line of code is written. Requirements are clear and the strategy is set.
In these situations, scope change is an alteration to the set plan. Someone asks for a new feature or for a piece of functionality to work a different way. These things make a milestone take just a little bit longer, and before long, the finish line is moving. As a result, all of the certainty you thought you had about timeline and cost has flown away, never to be seen again.
In Agile Projects
Agile projects are more flexible than waterfall projects. Generally, an agile plan consists of a series of sprints, with each sprint having a defined goal.
In these types of software projects, scope will naturally ebb and flow. The results of one sprint will impact the plan for the next. That’s to be expected, and in fact it’s what people like about the agile approach.
But it’s important for leaders of agile projects to keep the larger goals in mind. If a milestone is supposed to take two sprints, but you spend four enhancing and perfecting it, you’re going to run out of sprints before you have software that truly adds value to your company. Scope creep strikes again.
Now that we’re all crystal clear about what scope creep is, let’s talk about the how and why.
Why Does Scope Creep Happen?
Nobody sets out to cause scope creep on a project. Everybody wants to see a project get to the finish line.
But not everyone adopts the disciplined approach to reviewing milestones that it takes to avoid scope creep and actually get a project to a successful launch. Instead, they fall into other mindsets that end up doing more harm than good.
Here are three particular mindsets that can cause scope creep:
Misunderstanding of Project Goals—Every software project needs a clearly defined goal or set of goals. What’s the reason for going through the expense of actually building this? What is the ROI? How, specifically, will our company and our customers benefit?
It’s important to identify and document these goals at the beginning of a project. But it’s not enough. You need to keep these goals at the forefront of everyone’s mind throughout the project. This will keep everyone from user interface designers to software developers to project managers on the same page.
One of the ways that this misunderstanding often pops up happens when someone who has not been intimately involved in the project parachutes in to look at things. Often, someone who does this has ideas that may be valid but that are not aligned with the project’s stated goals. You can steer away from this kind of problem by encouraging anyone who reviews the software—from a quality assurance tester to the CEO—to review the project goals before providing feedback.
Tunnel Vision—Another way that scope creep happens is when people reviewing software are laser focused on a specific aspect of what it does. These people are often tempted to focus on what the software will do for them and their department, instead of on what it’s supposed to do for everyone.
The more departments you involved in a software project, the more likely you are to experience this problem. Salespeople will focus on what they need from a system, not what operations or supply chain or customer service might.
A project manager will have to be vigilant about reminding people to get out of their tunnels so that they look at the big picture as they give feedback. And the project manager will also need to review feedback to ensure that it’s good for the project as a whole, not just for a specific tunnel.
Forgetting the End User—This mindset is one of the easiest for business users to slip into. We have worked with countless business users who are tempted to think this way.
Here’s one way this often happens: Someone wants to organize the user flow of a process by the way the business thinks of things, not by the way that potential customers will think of it. The result is a process that is overly complicated interface that doesn’t make sense to the people who actually use the system.
The scope of a software project should be what a user wants and expects. So you should do enough work at the outset to understand what users want, and create your plan accordingly. Then compare any feedback other stakeholders give with what users want, and when there’s a conflict, fall on the side of the user.
Conclusion: Are You the Scope Creep Culprit?
Now it’s time to look in the mirror. Are you the one with tunnel vision? Do you try to change up the strategy of a software project without thinking about the end user? Do you get hung up on details that have little or nothing to do with the larger project goals?
If you are, buy your software development project manager a latte and say that you’re sorry. That’s the first step. But don’t stop there. Give your PM permission to push back on your feedback now and in the future—especially if it’s about to cause scope creep.
That way, you’ll be able to look in the mirror tomorrow morning, instead of having a foreboding sense of the creeps.
And you’ll be able to benefit from your successfully launched software on time and on budget.
What a wonderful world that will be.
Looking to bring your ideas to life?
We are committed to guiding you towards the best solution for your business.Schedule a Call With Us