There is a natural progression in the growth and development of a software development team or start-up. As the problems and your solutions get more and more complex, the tools you require to manage these solutions needs to be able to handle these changes. What would software development be without change management? The two are inseparable. To successfully develop and deliver your solution, you must put in place the tools and processes and knowledge required to successfully perform change management. Period.
What is change management? When people talk about change management in high-tech, they are usually referring to the tools that manage source code. However, this is just one aspect of the solution. What works for software teams can be applied more liberally to the rest of your organization. If you step back and look at all of the components, change management consists of many different pieces, including:
Identification: identifying components, structure
Control: controlling releases, visibility and changes
Status: ability to report status, changes, and their impacts
Audit: ability to validate completeness and track changes
Manufacture: ability to trace the process from the individual developer making a change through the release of the software
Process: ensuring that changes go through a particular life-cycle
Teamwork: ability to control team interactions at multiple levels
And now that you understand the components, how do you convince your team on the importance of taking your change management practices to the next level? Where do you start?
Change management is all about managing the increasing complexity of a project, plain and simple. Your team must understand how to manage the complexities of an ever growing, always expanding list of customer demands, enhancements, and features. Increasingly, SharePoint has become a platform for change management. While few companies have yet to embrace Project Server, many companies have built out their own project management utilities on the platform, and gravitated toward the out of the box templates in SharePoint 2010 (I expect to see big improvements here in the next version of SharePoint, if not through partner solutions). Social computing has also become a major factor in how change management is tracked and communicated.
To successfully build and deploy a change management platform, you need to understand how it fits into your company. What are you current processes? How strictly are they adhered to? Who needs access to this information, and where are they located? You may all be centrally located in one office now, but what are your company’s plans for growth? The actors (roles) will tell who will use your change management system, and help you to model out the flow of communication necessary for a successful system.
Many companies take on large process or standards initiatives like this without having a clear understanding of how much time and effort these projects will take to fully implement – or how long it will take to reap the benefits that these initiatives can provide. Many times these efforts fall short because there isn't a clearly defined owner or evangelist. Without someone at the helm of the ship, driving standards for implementation, and how closely the new change management system adheres to company standards, most of these implementations fail.
Configuration management can play an important role in improving the quality of your products through process improvement, and improve your overall design and implementation practices. The key is understanding what it is, identifying an owner, and working with your various stakeholders so that everyone has visibility in what is been built and deployed, and their role in the change management process.