I have been leading a Process Improvement task force for the past year with the main goal of rolling out a standardized SDLC across the Prod Dev groups within the company. We're finishing up the last of our content development and soon face our implementation phase. We started evangelizing some of the key changes and highlights months ago to mainly the Manager and Director level.
Do you have any good best practices you can share with rolling out a new process to such a large group of people. This process change will effect more than half of the company. How do we ensure / monitor compliance? Saving Changes...
At this stage of your project you might need to do the following:
- communicate
- communicate
- communicate
For any process implementation (standards, frameworks, etc.) there are a set of key elements that should be observed and communicated:
a. Why are we doing this? – The answer to this question is important for the buy-in. In your case, implementing an SDLC standard might help with on or more of: increasing the quality of work, reducing the re-work, enabling to organization to repeat success, etc.
b. What changes will occur? This will need to be explained so the implementation of the changes will not lead to a “screeching halt”. Answering questions like “what does it mean for you” tailored for the various roles (programmer, code librarian, testers, etc.) will help. Having walkthroughs using real examples – a project done the old way in parallel with a project done the new way will help.
c. Who do you ask for help? When it doubt people will need to be able to get immediate help.
d. How do we measure / monitor? By now (as you are so close to the implementation) you surely have your gate controls, etc. in your presentations indicate to the audience what you will measure and why.
e. Is your standard able to deal with exceptions?
Lastly, “evangelization” is good but not enough. Training tailored for the audience is necessary both to prepare the organization and to ensure that your standard did not miss any area.
Roll out: as a team, define what is appropriate for the organization culture:
- a “beta” deployment that will enable the critical players to review the process,
- a gradual roll out (e.g. only for the very critical projects),
A couple of additional hints: if you've already 'evangelized' at the high level, don't forget to push the right messages to the rest. High-level acceptance might get you the right sponsorship, but a lower level one will achieve effective usage and quick adoption of the process changes.
And while you're deploying the changed process, you might want to select local specialists or champions. Of course 'local' might mean one per location, one per department / area, or whatever suits best your organization. Local champions can provide efficient support at early stages of the roll out, and can be key in gathering additional improvement suggestions in the future (process improvement being an ongoing activity, and not a one off project!).