Software deployment is a two-part process, each part of which could have a nearly infinite number of steps. With each new release, you face unforeseeable issues, some pushback, and then the return to normal oversight. You may find this handy software deployment checklist helpful in breaking down your next software deployment.
Part One: Plan and Prepare
Collaborate Between Departments—Keep the operations department up to speed on software deployment, and let them help you protect the deployment by agreeing on monitoring, early warnings of impending problems, and methods of troubleshooting the software during deployment.
- Automate Processes—Avoid allowing human error into the deployment by automating file copying across your network.
- Plan against Changes—Every IT department recognizes software changes as the weak link, so plan to avoid later changes by building in time to thoroughly test the release before deployment.
- Balance—While too-frequent software changes are unproductive, do not be afraid to find the balance between frequency and size of new software releases to maintain productivity and keep your company competitive.
- Keep Your Back Pocket Open—With any software deployment, no matter how thoroughly tested, issues can arise. Build in rollback points to return to previous states if the new deployment goes wrong.
- Test, test, test—No matter the platform, no matter the stability and resiliency of your software, test everything repeatedly.
- Key Performance Indicators (KPIs)—Your KPIs are the little lighthouses that guide deployment, so know ahead of time what metrics your team should look out for (page load times, server usage, etc.), and what red lines should signal intervention.
- Tell Everyone—Too often IT departments are excellent at hardware and software, but simply terrible at nonlinear relationships (people skills). Notify users, vendors, C-suites, and training departments of the impending software deployment.
PRO TIP: When notifying the obvious list of stakeholders via e-mail, encourage them to provide you with the name of a person, outside vendor or in-house department they think should also be notified of the software deployment.
Part Two: Monitor and Maintain
- Monitor—Everything; Monitor server use, exception rates, page load times, database performance, and HTTP error rates.
- Compare—Compare actual KPIs with planned KPIs to ensure the new software deployment is operating within your predicted parameters, to avoid convincing yourself that everything is actually running smoothly when it may not be.
- Log the Logs—The software deployment can cause an unexpected spike in logging, so make certain logging is still working, and at expected volumes.
- Catch the Caching—You planned an effective caching strategy to balance performance and data consistency (didn’t you?) so follow through and keep an eye on caching for data consistency issues.
PRO TIP: Include time for self-reflection amid any celebrations after a successful deployment. Whether formally or informally, solicit feedback on what went right and what went wrong in the deployment. Build a new software deployment checklist of concerns or issues to watch for during the next deployment.
Cervisys can provide experienced, knowledgeable IT professionals to assist you with software deployment. If necessary, we can take most of the burden off your IT department to not only navigate checklists far more elaborate than the basic software deployment checklist here, but to reduce risks inherent to software upgrading.