My organization's main project went live on Monday. That was my third day here. Now that I've been here almost a week, I'm tasked with creating a change management plan for the maintenance of the application and preparation for phase 2, which will commence "someday." We're a Microsoft shop but open-minded.
I'm looking for some suggestions on CM techniques and especially tools that will help with this. I'm familiar with ITIL and I've been considering how its concept of CM could apply to this project, but admittedly this one is a lot smaller than I'm used to (< 100 users versus thousands). I'm not exactly sure how, or if, ITIL can be pared down to such a small project. Or maybe I'm thinking too small.
How does your organization manage change at the system level? Does it work for you? How could it be improved?
To further clarify, can anyone recommend a CM process and tool, perhaps from the open source or agile worlds?
Establish a review board, with senior representatives from development, operations, qa, the business, etc., with the CM manager as the chair. All changes have to be presented to the board.
In one place I worked you needed unanimous approval to implement a change. In another a 2/3 majority was enough. At both places though, you had to get your s**t together when presenting a change; you really didn't want to be unprepared and look like a fool.
The CM team defines the "artifacts" required to pass the control gate, usually a series of forms with a checklist as a guide. If the system is "mission critical" you may also want to do some kind of CM audit to ensure that your development process was followed (unit tests were run, files placed under version control, tagged properly with comments, QA tests signed off, etc.).
For tools, a simple spreadsheet or database is usually enough, something you can put together yourself, tailored to your organization's processes. Keep it simple.
The CM manager also has to have some "teeth" and be able to enforce the decisions of the review board. CM is a quality process, and is there to ensure that quality standards are maintained, not that deadlines are met.