As consultants, we’ve all been there, professionally or personally – someone wants a 747 and all you can offer is a paper airplane. Given enough time and enough resources, you can get them that jumbo jet, but right now the best solution equals a folded up piece of paper that flies. Neither party is truly happy; they’re not getting the 747, and you’re disappointed you can’t give it to them.
Sometimes the timeline and scope are out of everyone’s control, but when it’s not, you must understand and respect the three main phases of a project:
- Discovery & Planning
- Build & Test
- Deploy & Support
Each of these phases must be given the appropriate amount of time to ensure the end product is successful. None of these phases work without the other, and need to be executed in order. Going through the build and deployment phases of the project require that you have a solid understanding of what the solution is, how you’re going to get there, and will eventually lead to a successful deployment.
Discovery & Planning: The Flight Plan
“Give me six hours to chop down a tree, and I will spend the first four sharpening the axe.”
There are always exceptions, but most of the time, projects start as a spark and evolve over time into a solidified idea through discussion, scoping, and planning of the requirements, limitations, and course of action. Usually the phases go something like this:
- Pre-sales & Planning
ROMs, estimations, loose timelines set, SOWs
Deep dive into processes, BRDs, user stories/user flows, methodologies established, MVP set, demos given
SDD/TDD created, wireframes and/or mockups designed
You’ve planned your flight, know exactly what to do and how to get to your destination, and now have to fly the plane. This is where the solution comes together. Whatever methodology you use to get there, you’ve got a strong plan of action to guide you through the biggest portion of the project: the build.
This is the portion that takes up the most amount of time, but if you’ve taken the right amount of time during planning and discovery, you know what to expect and what tasks are ahead of you. It’s always important to have regular check-ins with both your team and the client, doing demos of completed functionality and asking follow up questions to those inevitable unknowns. This is the time to keep the momentum of trust and confidence your client has in you going into the next phase.
“Ladies and gentlemen, we are beginning our descent into Deployment. Please fasten your seat belts during testing and training, and we’ll be have a smooth landing shortly.”
It’s the announcement we all want to hear from our pilots. A calm, confident statement that everything is going to be fine as we coast into the final stages of our journey. This is a crucial moment where all hands need to be on deck, testing the final product by running through the user stories and flows, training the end users, and of course, going live with the solution.
User stories used to create test cases, UAT, bug fixing, backlog established
Train the trainer, provide documentation of solution, train end users
Push solution to production environment, smoke testing, DNS redirects
We all know that in an ideal state, we have enough time to do the planning, build the solution and deploy without incident. In reality, the client is often getting internal pressure to push the solution out yesterday, corners are cut to account due to accelerated timelines, and the deployment can be wrought with complications. It’s the nature of the beast, and we, as consultants, do our best to meet the requirements in any situation, ideal or not.
The key is planning – the more you have, the smoother the rest of your engagement will be.