Successfully Managing the Production Deployment of Large, Complex Software Systems
You are finally ready to go live. But are you really? Unless you have thoroughly thought through, planned out, and tested each step of what can be hundreds of steps to go live in your Production environment, you might be headed toward failure.
Whether you call it “Go Live”, “Production Implementation”, “Production Cutover”, “Production Deployment,” or something different, this is the event to take the software system, put it in your production environment and make it available to users who will rely on this system to perform their day-to-day jobs. You have spent considerable time, effort, and money creating, configuring, customizing, loading with data, and testing the system; now is the time to ensure you get this implemented correctly.
Who is doing what when? In what order? What if something goes wrong? What if we get stuck along the way? Who needs to be informed about what we are doing? You need to have thought about and planned answers to each of these questions well in advance of your Go Live event. You will need a detailed, ordered schedule of tasks, each with a description, a named person responsible for completing the task, and an estimated duration to complete it. You will need to be able to contact the Go Live event team members at a moment’s notice. You will need specific technical and business information at your fingertips to not waste valuable time searching for it during the Go Live event. You will need to have a plan to return to normal business operations should you hit an unsolvable issue or at least an issue that cannot be resolved in the given timeframe for the specific task or overall Go Live timeline.
Consider the Microsoft Excel workbook accompanying this article to be a “one-stop-shop” for all of that. Whereas a full project plan may be a collection of many documents, spreadsheets, schedules, and other artifacts, this Go Live Plan is contained within one Excel workbook, designed to contain everything you will need to manage your Go Live event to successful completion. Let’s look at what is in this workbook, tab by tab. If you haven’t yet, it’s best to download the workbook and refer to it while reading the below.
Instructions and Notes Tab
This tab in the workbook directs the team members on the proper use of the Go Live Plan and the execution of the actual Go Live event. Include enough detail here that someone joining the team even during the Go Live event itself has enough to be able to execute their piece of the effort.
Timeline Tab
The timeline is the heart of the Go Live Plan (workbook), and while it is just one component of the plan, just as a project schedule is just one component of a project plan, it is nonetheless the key and the source from which the other components spring. This one piece of the workbook can take weeks or months to develop, depending on the scale and scope of a given production implementation. The development of the timeline could happen in many ways, but you can start by having the team describe the high-level work to be completed. Then ask questions about each piece of work until the details are well understood – what needs to happen and in what order. Begin to develop estimates of the duration needed to complete each task or set of tasks and assign a specific person to complete each task. Over time and after many iterations of review and update, this timeline should be a precise, minute by minute, schedule of the specific tasks in the specific order they must be completed to go live – to make the system fully functional and usable to users in your production environment.
Things to think about for your timeline:
- Make it as detailed as you can; the more you include in your plan, the less likely a detailed task will be forgotten
- Give yourself plenty of time to develop the timeline, allowing for multiple rounds of review and refinement by all event participants and stakeholders
- Continue expanding out the details of tasks to the point that a substitute of the relative same skill level as the person responsible for the task could drop in and complete it
- Document all approvals required in advance for production changes/outages; know what the acceptable production outage duration is
- Let your calculated total Go Live duration determine the needed production outage duration, not the other way around; you may have to seek additional executive approval or waivers to standard production outage or maintenance windows
- Determine whether you will have formal approvals at specific or all milestones – steering committee and/or stakeholder approval; include time for these approvals
- Work with operations and support groups to document the process to receive immediate attention for the environment, server, application, database, network, or other issues
- Allow time for the setup of a physical “command center” if that is something you will use
- In the sample, there are some simple “handshake” tasks to allow for integration with and dependencies among other implementations occurring at the same time; the way you indicate and manage these dependencies might need to be more sophisticated
- The time duration estimates for each task are important because they determine the overall expected duration of the Go Live event. Initially, these durations will be estimates, but where possible establish benchmarks by exercising these tasks in lower-level environment implementations (deployments into development or test environments). Use the actual start, end, and duration columns to record how long tasks actually take and use those to develop better and better duration estimates
- Remember to take care of people. Build a rotation schedule or build rest breaks into your timeline so that Go Live event participants do not become overtired and subject to mistakes
Contacts List Tab
It might seem basic to know who is doing which task in the Go Live timeline, but are you sure you know how to reach them for the duration of the event – notify them when it’s their turn, follow up with them when their task is exceeding estimated duration? Do you know who to contact in case the person responsible for completing a task is unresponsive during the Go Live event?
Things to think about for your contacts:
- You should have at least one backup or escalation contact for each person responsible for a given task in the timeline. Depending on the Go Live event’s scope, scale, complexity, and duration of your Go Live event, you may consider having two or three backups or escalation contacts.
- Remind Go Live participants to keep mobile phones on and ringers activated for the portions of the Go Live event where they may be needed.
Milestone Communications Tab
The distribution list for communications at key points throughout the timeline.
Things to think about for your communications:
- You may need a more robust communications plan but making it part of this workbook is possible
- Have a standard look and feel to your communications – use email templates
Application Checkout Issues Tab
This is a basic issue log. There should be verification tasks at certain points in your timeline, and you will want to be prepared to capture and manage issues encountered.
Something to think about for your issue management:
- You may need a more sophisticated issue log or issue management process but consider making it a tab in this workbook if possible
Rollback Plan Tab
Things go wrong, despite the best planning and preparation. Think about and plan for what to do when things go so wrong that you need to return to the previous reliable (“last known good”) state of your production environment. The more thought and effort you put into this in advance, the less likely you will leave out important steps should you reach this stressful point in your Go Live event.
Things to think about for your rollback plan:
- Think about the points at which you can still undo what’s been done in the Go Live timeline and return to a usable state for your production environment
- Consider points in the Go Live timeline that might be critical “points of no return” – where there is no turning back; consider having formal stakeholder approvals at that point; consider including a possible rollback point in the timeline just before the “point of no return.”
- Consider and document who makes the decision to rollback, whether that is one person or perhaps a committee of key stakeholders
- This is when knowing how to reach each of your event team members and their backups is going to pay off
Author Instructions Tab
Some specific instructions on the use of the critical parts of the workbook include what information to put where and descriptions of how some of the formulas work.
Though not included in the sample workbook, there might be other pieces of information that you will want to consider including in your Go Live Plan workbook. Think about the important information that participants will need. Either include that information as another tab in the workbook or notate in your workbook where that information can be readily found. Make your Go Live Plan workbook easily accessible by all participants, but control who can edit the plan so that changes are managed and communicated.
The more time and effort you put into creating and refining your Go Live Plan workbook, the less likely surprises will affect your team during the Go Live event, and the more likely you will complete your implementation without a hitch.
Now, you are ready.
What do you think?