Change Management and Operations
Now that you understand the basics of creating a process and what the standard ITIL documents offer, it is time to look more deeply at the change and release management processes. This section covers change management, and the next section discusses release management. The goal is to provide an overview of some of the more interesting process issues that you will undoubtedly face. The issues are not necessarily resolved for you, but at least they are outlined so that you can begin to find the best resolutions for your organization.
The First Policy
When beginning to define change management in a more formal way, every organization struggles with the question of exactly which activities need to be controlled with a change record. After establishing the highest-level flow, you should try to get agreement about the policy of when a change record is needed. This is the first, and perhaps most important, policy to define.
In most organizations, data center changes are already under change control. Moving a server to a new rack, deploying a major business application, modifying firewall rules, and decommissioning a network appliance are all activities that normally are subject to change control. But why does everyone agree that data center activities need to be controlled? It is really because of the potential impact of something going wrong. Perhaps a good policy to use is that if the change could cause a serious negative consequence, it must be controlled through the change-management process.
That is a great working definition, but it is too ambiguous to be of direct use. What seems like a serious negative consequence to one person might seem like a minor inconvenience to another. For example, swapping the 21-inch display attached to my desktop PC with a 14-inch display probably wouldn't seem like it could have serious consequences to the CIO or most of the IT organization. To me, however, the results of even a successful swap would drastically reduce my screen size, and thus my ability to multitask, create illustrations, and monitor events all on the same screen. Therefore, I would interpret this swapping of monitors as having serious negative consequences. So would a change record be necessary?
Consider a weekly batch job that updates data in your customer support database. The same job runs each month, picking up data from several sources and then integrating that data into the database that all your customer support representatives use to respond to customer calls. Certainly if this job fails in such a way that the database is scrambled, you will have serious negative consequences. But the job has run for years now and has never failed. Does your policy call for a change record to control this job? Sometimes data changes require significant controls, and other times they might be considered standard operations and require no additional controls.
Spend some time at the beginning of the change control process considering as many different scenarios as possible and creating a clear, concise, and helpful statement of when a change record is needed and when it is not. This first policy will probably need to be amended from time to time, but making it comprehensive early on will save effort later in the implementation project.
It is worth taking some time to document the scenarios you use in creating this policy. Those scenarios will be valuable when it comes time to validate your policy and to test the change management process flow.
Documenting the Request for Change (RFC)
The content of a request for change (RFC) is the second issue you will face. Many people assume that whatever tool they choose will determine the contents of the RFC, but this is a mistake. Certainly all tools will come with a comprehensive list of fields that can become part of every RFC, but all good tools also allow you to customize these fields, and you should certainly take advantage of this flexibility.
Most organizations will adopt common basic fields for their RFC content. A number; a title; information about the requester, sponsor, and implementer; scheduled and actual dates and times; and some indication of status are all essential. You will probably also want to have information about the approvals necessary for the change and some implementation information such as an implementation plan, a plan for backing out if necessary, and perhaps a plan to verify that the change is successful.
The best practices contained in ITIL indicate that each change should reference one or more configuration items. These are entries from your configuration management database (CMDB), and each change should record exactly how the configuration of your environment will be modified by the change being proposed. If you already have a CMDB with well-structured identifiers for each item, you're in great shape, and you will want to be able to attach one or more of these identifiers to an RFC. On the other hand, if you haven't yet implemented a CMDB, you still need some way to allow the requester to specify which parts of the environment he or she is changing. This will be very important in assessing the technical impact of the change.
Some organizations like to include fields in every RFC to help understand the compliance implications of the change. Often these are simple check boxes or flags that indicate whether the proposed change will affect audit posture. You may also need something more complex, such as pointers to a separate compliance management tool. The requirements you documented will guide how much you need to customize the fields that make up the RFC.
Reviews and Impact Assessment
The number and types of reviews needed is another significant process issue to explore. Some organizations choose a single review that focuses on the question of whether a change should be made. Other organizations like to use separate technical and business reviews to focus on the technical and business risks and implications of the change. Your process definition should consider the number and order of the reviews and should assign appropriate roles for each review. The names of the people reviewing each RFC might change, but the roles should be consistent from review to review.
Part of the review process should involve assessing the impact of each proposed change. Impact assessment consists of two parts—technical analysis followed by risk management. The technical analysis phase determines what components of the overall IT environment might be affected by the proposed change. For example, if the change calls for rebooting a specific server, it would be natural to understand which business applications depend on that server. Those applications could potentially be impacted by the change. The technical analysis would also determine whether those applications could be switched to other servers or whether an outage of the applications would be certain with a reboot of the server. Having a complete and accurate CMDB makes technical assessment of a proposed change much simpler.
The second phase of impact assessment deals with risk analysis. This involves using your imagination and technical understanding to guess what could go wrong with the proposed change. Consider the possible ways the change could fail, and build a two-dimensional matrix. The first axis in the matrix is the likelihood of any potential failure happening, and the second axis is the damage that would result if that failure actually happened. In the server rebooting example, for instance, it is possible that a hard disk failure might keep the server from restarting. Given the reliability of modern disk drives, there is a low likelihood of this happening, but the impact of the server's not restarting might be quite significant. This kind of analysis could be repeated with all the potential failures for the change, and the aggregation of risk data will help assess whether the change should be attempted.
Approval, Authorization, or Both
One of the key questions to be determined in your change management process is to what extent you will require changes to be approved before they are implemented. Many different models for approval exist, and the one you choose should allow sufficient control without undue bureaucracy.
Experience suggests that you might want to use two different kinds of permission—approval and authorization. Approval grants you permission to invest time (and therefore money) to plan a change and is essentially a business approval. For something like a major release of a business application, this might involve a team of programmers or the purchase of a vendor software package. For hardware implementation, approval may be required to purchase a new router or to invest in architect time to define a new SAN layout. Any change that requires investment to get ready for implementation might require an approval to make that investment.
The second kind of permission is authorization. Whereas approval grants permission to expend resources, authorization grants permission to alter the production environment and thus is a technical or IT approval. Consider again the implementation of a major business application. Many months might pass while the developers are working on building and testing the application. Approval was granted to spend money during those months, but there is no guarantee that the results of the effort are safe for deployment. Authorization is an acknowledgment that the testing of the application has been sufficient and that plans for implementation have considered and mitigated the risks involved.
You should spend a significant part of your change management process work on this question of approvals and authorizations. You will probably determine that some changes require only authorization and that others require both authorization and approval. Be sure to define a policy that will help everyone understand which kinds of permission are required for which changes.
ITIL recommends that you review each change after implementation, and it gives you some general ideas of what to look for in that review. That guidance is sound as far as it goes, but you will certainly need to fill in many details concerning how post-implementation reviews will be conducted for your organization.
The central purpose of reviewing a change is to learn how to improve your future implementations. We learn more from our failures than our successes, and this is also true in change management. The changes that fail have the most to teach us about future success and thus should be thoroughly reviewed. Understanding the reason for a failure can make future changes more successful. This is why each failed change should be reviewed.
Your process definition should include the specifics of how post-implementation reviews will work. Identify the roles to be involved, the potential actions to be taken, and the ways in which discovered information will be fed back into future changes. If these reviews are new to your organization, you need to specify even more closely how they will be conducted to ensure that they provide the maximum value.
There are many more topics to understand when documenting change management. The topics common to nearly every implementation are covered throughout this book, but some topics may be more specific, so you need to deal with them on your own. In dealing with any issue in process definition, the best resolution always comes from forming agreements between your stakeholders and sponsors. Introduce the issue, generate lots of communication around it, and then proceed with the resolution that makes the most sense to everyone involved. Remember that policies, procedures, and processes can always be modified later to be even more useful. In the continuous service improvement book, ITIL suggests that each process document be reviewed at least annually to find potential improvements, so don't be too determined to get everything perfect on the first pass.