When it comes to solving our client's business challenges with software, there's a lot that has to happen to make it a reality. The first stage is the proposal and we want our estimate to be as accurate as possible so the client can plan accordingly. To that end, when planning out a custom solution, we focus on four key items: keeping the timeline short, prioritizing features, talking about our client's problems, and talking about the end result
KEEPING THE TIMELINE SHORT
When creating a custom solution, whether it's for employees to use in back-office management tasks or for a customer service channel, we plan to produce the minimum viable product (MVP). An MVP will implement only the core functionality of the software with minimal "bells and whistles" so that a solution can be in place as quickly as possible. If a challenge facing our client means they will cease to exist in 6 months without it, including all the extras and producing the final version in 5-7 months won't help. Our goal is to have an MVP complete and implemented in three months or less.
TALK ABOUT YOUR PROBLEMS
Where our clients see problems, we see challenges and a puzzle to be solved. Like a good psychiatrist, we're great listeners and encourage our clients to tell us about the problems they're facing in their business. Hearing these challenges gives us one piece of the puzzle and some insight into what doesn't currently work, narrowing down the options on our way to a viable solution.
PRIORITIZE FEATURES & STICK TO IT
In order to keep the timeline short and solve the puzzle, priorities need to be set. Lots of ideas will come up during the initial brainstorming and we'll need to transform these into features so they can be prioritized. Once this is done and a plan has been put together, any ideas that come up during the project should be evaluated through this lens. Many times, a new idea can just as easily be added during a future enhancement project rather than disrupting the current momentum toward a solution.
TALK ABOUT THE END RESULT
Prioritizing features and knowing the challenges our clients face is just one part of getting to a solution. Second only to knowing and understanding the problem is knowing the desired outcome of a business process. It could be an email that is triggered, a work order that is created, or an order that is shipped, but that outcome is the other end of the process that our solution will manage. Everything in between will be handled by the software in some way.
Addressing these four items provides the most insight into how we can help our clients. From this information we can propose an appropriate solution and begin devising the architecture of the solution's components.