Change management is a critical process of IT service management (ITSM) that ensures smooth changes when updates, enhancements, or fixes are implemented on IT infrastructure. ServiceNow, with its change management and update set capabilities, makes it easier, but to fully leverage its features, it’s essential to know best practices in update set management and deployments.
In this article, we’ll discuss how to simplify change management in ServiceNow, including best practices for working with Update Sets and deploying efficiently.
Why Change Management Is Important in ServiceNow
Change management enables organizations to manage the lifecycle of changes to ensure that changes to IT services are implemented with minimal impact. Change management includes planning, approving, testing, and deploying changes while minimizing risks and service outages.
ServiceNow offers a solid foundation for change management, and an awareness of how to appropriately use Update Sets and deployment best practices can drastically enhance the efficiency, velocity, and consistency of the change procedure.
Best Practice 1: Realize the Use of Update Sets
An Update Set is a collection of customizations or configuration changes in ServiceNow that can be moved from one instance to another (for example, from development to test, and then production). Update Sets allow for controlled changes and reduce the risk of accidental updates during deployment.
Major Steps in Creating an Update Set:
Create an Update Set Early: Start by creating an Update Set whenever you’re going to be making customizations to your instance. This enables any changes to be properly tracked.
Navigate to System Update Sets > Local Update Sets and click New.
Provide it with a descriptive name that reflects what changes you’re making (e.g., “Service Catalog Updates” or “Incident Form Modifications”).
Track All Customizations: Ensure that you incorporate all customizations, including UI changes, script changes, and configuration changes, in the Update Set. This ensures that you do not miss any changes during deployment.
Test Changes in a Separate Instance: Test changes in a sub-production instance (for instance, development or staging environment) before pushing them into production. This reduces the chances of errors or issues in the live system.
Monitor for Conflicts: When more than one update is in progress, conflicts may arise if different updates attempt to modify the same records. Regularly monitor and resolve conflicts to avoid problems at deployment time.
Best Practice 2: Split Update Sets for Selective Deployment
One of the most useful methods for reducing change management is to split Update Sets for selective deployment. Not all changes are ready to deploy to production at the same time. Splitting Update Sets allows you to deploy only tested and approved changes and leave behind experimental or unfinished changes to further develop.
How to Split an Update Set:
Identify Changes That Are Ready for Production: Once you’ve completed certain updates and thoroughly tested them, isolate the changes that are ready for production.
Create a New Update Set: For those changes, create a new Update Set specifically for production deployment.
Navigate to System Update Sets > Local Update Sets and click New to create a new set.
Move the completed changes from the original Update Set to this new one, and keep incomplete changes in the original set.
Deploy Only What’s Ready: Now you can deploy only the changes that are ready for production, and keep any work in progress in the original Update Set.
Benefits:
Less Risk: Deploy only the changes that have been thoroughly tested, reducing the risk of errors or service disruption.
In Progress Development: Continue with the unfinished updates without the weight of pushing untested changes.
Best Practice 3: Use the Update Set Deployment Workflow
Once your Update Sets are ready to be deployed, following a structured deployment workflow will ensure that changes are deployed efficiently and securely.
Structured Deployment Workflow:
Backup Your Instance: Take a backup of your production instance prior to deploying any changes. This will ensure that if anything goes wrong, you can roll back the system to a stable version.
Review and Approve Updates: Preview the changes in the Update Set to ensure all is well. For larger organizations, you may need to obtain approval from stakeholders before you proceed.
Deploy to a Test Environment: First, deploy the Update Set to a test environment. This allows you to verify that everything works as expected in a controlled, non-production environment.
Perform Testing: Thoroughly test the deployed changes in the test environment to ensure that there are no issues. The testing should include functional, regression, and user acceptance testing (UAT).
Deploy to Production: Once you’ve confirmed that everything is working in the test environment, deploy the Update Set to production.
Go to System Update Sets > Retrieved Update Sets in the production instance and click Preview to review the changes.
Once the preview passes without issues, select Commit to deploy the Update Set to production.
Best Practice 4: Maintain Proper Version Control and Documentation
When dealing with multiple Update Sets, proper version control and documentation are crucial to keeping change management simple.
How to Implement Version Control and Documentation:
Descriptive Naming of Update Sets: Give your Update Sets meaningful, descriptive names. Include the project or feature name, version, and type of change (e.g., “Incident Management UI Changes v1.2”).
Document Each Update Set: Maintain thorough documentation of what is included in each Update Set, why each modification was made, and the testing performed. This record will serve as a reference in case you need to troubleshoot or roll back an implementation.
Version Control in Development: Keep track of changes in your development environment by maintaining version control using tools like Git, especially if you’re working with code or scripts. This ensures that changes can be tracked and reverted easily if needed.
Best Practice 5: Automate Deployment with Change Management Workflows
To further streamline the change management process, consider automating aspects of the deployment workflow using ServiceNow’s Change Management module and Flow Designer.
Key Automations:
Automate Change Requests: Create automatic change request approvals so that the change request can move forward without the need for manual intervention when certain conditions are met.
Create Tasks Automatically: Automate the creation of tasks for deployment-related activities (e.g., testing, backups, approvals) so that everyone concerned is notified and the process moves forward smoothly.
Automate Notifications: Configure automated notifications to alert stakeholders at critical phases of the deployment (e.g., when deployment begins, when it’s finished, or when problems are encountered).
Best Practice 6: Audit and Review Change Management Records
Following each deployment, review the changes deployed and conduct audits to verify the process was successful and determine areas to improve.
How to Review and Audit:
Post-Deployment Review: Conduct a meeting with the deployment team to share what went well, what could be enhanced, and what issues were faced.
Change Management Reports: Use ServiceNow reporting capabilities to execute change management reports. Analyze key performance indicators such as success rate, deployment time, and incidents caused by changes to refine future deployments.
Audit Trails: Verify the audit trail for any modifications done. This provides transparency and verifies compliance with ITIL or other frameworks being followed.
Conclusion: Streamlining Change Management using Update Sets Best Practices
Change management in ServiceNow can be simplified by having a structured way of managing updates and deployments. By following best practices in building and deploying Update Sets, such as breaking them down, maintaining proper version control, and automating workflows, you can make transitions transparent, reduce risk, and improve the overall efficiency of your change management process.
By adhering to these best practices, organizations can maintain a stable production environment, minimize downtime, and provide a better overall end-user experience.
Have you grappled with change management in ServiceNow? What have you implemented to make it easier? Share your experiences and tips with us in the comments!