3 Tips for Managing Scope Creep
3 Tips for Managing Scope Creep
Scope creep can cause a project to go over budget, over time, and pretty much just go off the rails. Read on to see how to fight back against it.
Join the DZone community and get the full member experience.Join For Free
Discover how TDM Is Essential To Achieving Quality At Speed For Agile, DevOps, And Continuous Delivery. Brought to you in partnership with CA Technologies.
Managing an app project for a client, whether large or small, is no easy task. Keeping the ship on course while it’s pulled about by the currents and winds of changing client demands, budget constraints and your looming deadlines can be a rough job, especially when the ugly sea monster known as scope creep rears its head.
The Standish Group’s 2017 CHAOS Summary found that fewer than a third of projects (29%) were successful, meaning they were delivered on-time, on-budget, and with all the required features.
Of the remaining projects, 52% percent were delivered late, over budget or missing features and 19% failed completely, either through being canceled or delivered and never used. That means that in 2015, 71% of all IT projects were either failed or challenged.
And the main reason for these failures? You guessed it, that nasty old sea monster, scope creep.
What Is Scope Creep?
Scope creep, otherwise known as feature creep or “kitchen sink syndrome” (as in, including everything and the kitchen sink), is basically where, over the course of the project, more and more features are added to the point where the allotted budget, time, and resources can no longer cover the workload and the project starts to flounder.
It happens for various reasons, but the two main causes are:
- Clients asking for more features.
- “Gold plating” – the situation where the development team decides to add more features in order to impress the client (or themselves).
Both of these things usually happen slowly, a small change here, a suggestion there, but they quickly build up into a formidable extra workload that can crush the project or grind it to a standstill.
Don’t let the thought of an unsuccessful project get you down, here are three tips for managing scope creep to keep your project development as smooth as possible:
1. Scope Creep Will Happen. Own it.
First things first: scope creep is going to happen. You’re not going to get around it. So it’s good to start with that assumption.
When you start working with a client, take time to define end results. That means, not only the required features of the app but also the budget, the time the project should take, and the resources that will be required to make sure the project is delivered within these constraints.
This is usually broken down into the “project triangle” of Scope/Time +Budget/Resources. If any one of these sides changes then so must the others to accommodate. Because of this, getting clear requirements is essential, as it covers the “scope” side of the triangle, and once that is in place the rest can be worked out.
When working with a client, good negotiation is essential so that you both understand exactly what the project is aiming to deliver, and, before the project begins, establish a formalized way for the client to request changes or new features, no matter how minor.
A great way to make sure that both you and your client are on the same page is by asking them the right questions before you even think about building their app. Then, when you and the client are ready, codify exactly which features are going to be in App 1.0 – the Minimum Viable Product.
By doing this, you not only manage to establish a way to organize and prioritize requests but also force the client to recognize whenever they are asking for something new, which can help with requests for tiny adjustments that are perhaps trivial.
2. Sometimes It’s Ok to 'Just Say No'
When you’re working for a client, it can be very hard to break the mindset of “the customer is always right.” It’s heavily ingrained in the customer service industry, no matter their area, and it’s an almost expected part of customer interaction.
In the case of project management though, it’s not always true.
The customer may make a request for a change that to them seems like a minor job, but you know that it will take a few days at least and be a major headache. Rather than heed their every whim, it’s your job to negotiate with the customer and to try to change their mind, especially if the change is, to you and your team, unnecessary.
That’s not to say you should utterly discount their idea, and especially not rudely, but by showing them that either through time or budget constraints that it’s not possible without changing the project plan, they are more likely to back down or be willing to take a watered down version of the idea.
It’s also in your best interests to provide a professional counterbalance to your customer’s ideas and demands. If they’ve, say, requested that an app is to be developed for both iOS and Android after you have already started developing it for iOS, it’s up to you to convince them that within your project’s constraints, it is a much better idea to continue on a single platform. Show your customer that you and your team know your stuff and can provide good reasons as to why it is better to follow your advice. Remember, your customer doesn’t necessarily have to like you. It helps, but would you rather have a reputation for being “nice guys” who are average quality or the guys that always deliver great products but are more strict?
At the end of the day, it’s about profit for the customer; and if your app makes them a good profit, they’ll be much more willing to turn a blind eye to you not always heeding to their every whim.
3. Know What You're Getting Into
Even with all of the above suggestions, it’s likely you’ll find yourself working on a few extra bits and pieces with the project; like we said before, scope creep will happen. The important part is to always research every request before you agree to do it. Here’s a good example: a client makes a simple request that you migrate the app database backend from your servers to theirs. Simple, right? But what your client forgot to tell you is that they’re running on Windows servers, while your app agency hosts everything on Linux. A simple request could turn into a week-long nightmare.
The same rule applies to teams on their own projects. If someone suddenly has a great sounding idea, always make sure to do as much research into how realistic making it happen would actually be.
It’s something that can be seen frequently in the games industry, where developers invest millions and millions of dollars into adding a feature into their games at the last minute that ends up pushing the game way over their deadlines and over their budget. This then snowballs as then they have to sell more of the game to recoup their losses and it makes it more likely the game, and all too commonly, the studio will fail.
Realise though, that scope creep isn’t just about vetoing obviously bad customer or fellow developer ideas. A lot of the time it is a two-way street. Someone suggests a feature idea and then, through either wanting to prove your worth or also being excited about the idea, you, as the project manager, allow the idea to be added to the scope of the project. Then, before you know it, you’re over budget, over time, and wondering just where the hell it all went off the rails.
Managing Scope Creep
Scope creep is an animal all projects, regardless of size, have to face. It can kill them dead if it’s allowed to, but with careful management and by keeping a firm grasp of the actual requirements of the project, it can be tamed. It can even become useful, providing ideas and features that take a project from mediocre to something special. It’s a hard line to walk, but, hopefully, these tips will help you keep it under control.
Published at DZone with permission of Scott Calonico . See the original article here.
Opinions expressed by DZone contributors are their own.