Most people will be involved in approximately zero custom software development projects in their careers. And unless you’re a developer or work in an IT department, if you are involved in a custom software project, it’ll still probably
be just one or two.
When you only do something once or twice in your career, chances are you’re not going to be an expert. Since we’ve been involved in hundreds of projects, here are our tips for preparing for one. These apply whether you’re building in-house,
outsourcing to a development company, or some combination of the two.
1. Define Your Goals
If you don’t know where you’re headed, you won’t know when you get there. Make sure you know why you’re building the custom software system. Another way to phrase this is: “What will success look like?”
I know this tip seems self-explanatory and obvious, but we talk to a lot of people who have an idea for an app or system but haven’t identified the bigger goals and purpose. Instead of, “I have an idea for a software that does this very specific
thing,” think in terms of, “This software will help us do this process faster and with fewer mistakes.”
2. Set Guiding Principles
Guiding principles are more specific than the overarching project goals and are meant to serve as a litmus test as you make decisions throughout a project. In other words, they’re there to guide you. Read how and why we use guiding principles.
3. Know Your Users
Before you start building a custom system, you need to know who will be using it. Will it be members of your team? Existing customers? New customers? A combination of these? You can, of course, do more in-depth user research as part of the project—and
we highly encourage you to do so—but it’s important to know the basics about who your system will help even before you start.
4. Determine Your Priorities
I’d love to tell you that you can get every single piece of functionality you set out to build within whatever budget you have to work with, but I’d be lying. Throughout the project, you’ll have to make decisions about what will be put
off and what likely won’t get built at all. If you set your priorities out ahead of time, at a high level, you’ll be more confident in your decisions and you’ll use your budget more wisely.
5. Have Realistic Budget Guidelines
When you don’t work on development projects every day, you’re not expected to know how much custom software should cost.
It’s important to ask trusted consultants, do your research, and set your expectations accordingly. Keep in mind, too, that costs and estimates could very well change as the project goes along.
6. Set Timeline Goals (Add Padding)
Similar to budget expectations, your timeline expectations need to be realistic. Try not to back yourself into a corner with a hard deadline and no matter what, build in some padding. Worst case scenario: you’re prepared. Best case scenario: you
can get more functionality built before your original deadline comes around.
7. Start Thinking About the Rollout
The time to start thinking about how you’ll implement your new software platform is before you begin development. If you start planning for the rollout too late in the process, you could experience delays, unnecessary rework, and other less than ideal consequences. For help with this, download
our rollout plan template.
If you’re one of the lucky few who gets to take on a custom software project, follow these tips to make it a success.