Saturday, February 9, 2013

Rollout Planning of the Enterprise Software Systems - Important Considerations.

Usually the rollout of the enterprise software systems includes 3 phases: pre-deploy, deploy and follow-up support. The planning is done in the pre-deploy phase and its scope includes the feature implementation and activities to be done in the deploy and follow-up phases.
Before an enterprise software system is fully rolled out in production, the deployment will be done in the following environments:
  • The sandbox deployment: Isolated from the production environment, the test data are copies of those from the production environment.
  • The pre-production deployment: It is the next step after sandbox deploy, it is similar with the production environment, but the hardware used is isolated from the production environment. The production data are mirrored to this environment.
  • The pilot deploy: It is a deployment in a real production environment, but it is done only to a small subset of users. Thus major issues will not have a high impact. Ideally the pilot deploy environment will be a department placed at a single location.
It is very important to prepare also the post rollout activities; the follow up support phase. In this stage you must have already available a well established help desk, a change management system, user guides, trainings and FAQs.   

The rollout planning has to consider the following aspects:
  • Plan the implementation of the functional and non-functional requirements. The rolled out  system has to fulfill the functional and non functional requirements of the users. Therefore, together with the user, it must be done a gap analysis to discover the still needed requirements to be implemented or the implemented features which do not fulfill the requirements.  Furthermore since every deployment environment may be different, extensive configuration and testing might be needed and correspondingly planned.
  • Schedule the deliveries: After being ready with the functionality implementation you should deliver the software to the users. The delivery has to be carefully scheduled. Usually it will be done in stages to minimize the risks for the users. For example firstly the software will be rolled out and tested in a sandbox environment , than in pre-production, than maybe you will do a pilot deploy. In the last step the software will be rolled out in the full production environment.
  • Plan for trainings: The users shall be able to learn how to use the rolled out system therefore you have to plan the trainings. A training plan will contain the users targeted by the training, resource needs for executing trainings, their schedules, and the effort needed to prepare the training. Note that the trainings will be done not only in the deploy phase, but also in the follow up support phase. The training materials has to be started latest when the software is deployed in the sandbox environment and to be finished in the pilot phase.
  • Create a change management system: It is needed for channeling the user requests for new features, for changing already implemented functionality or to report defects. It has to be available latest when the first deploy is started.
  • Organize the support: A proper support is needed both in deploy and follow-up support phase. Therefore you have to plan for creating a help desk. The help desk shall be available latest when the deployment is ready.  In order to reduce the support amount given by the help desk team, you have to train so called “Key Users”. They are part of the user team and will serve as a first level support.
  • Do a proper risk management: Risk management activities must be planned because a lot of things can go wrong at a rollout. For example the software might not work at all, might have a bad performance, does not fulfil the user requirements, might not be compatible with the infrastructure. Furthermore you might encounter security issues or the features might not be obvious for users. If you already started with the rollout and a proceeding it is no longer possible you must have prepared a rollback plan. The rollback plan will allow you to restore the state of the system to that state before the rollout.

The enumerated planning activities are applying to the rollout of the most enterprise systems. However each project has its particularities therefore additional activities have to be planned.

No comments:

Post a Comment