Project planning for software dev. with new technology.
A potential customer of your organization requires a software that can be provided only with new tools and technology and currently available in ur organization.. Your management has decided to accept the contract. How should the project be planned for successful completion?
Since this is a new tool & technology there are risks involved, Namely --
1. Reliability & Robustness- Coz there is not enough history that sofware is reliable and wont break
2. Skills - New technology implies that experience level is less and turnaround till will be more due to learning curve.
3. End user experience - New tools and technology is likely to change the end user experience and they will need to be educated as well.
4. Maintainence - Once deployed to production, depending upon the usage , unexpected issues can occur.
5. Hardware / Software needs - New technology will have to be well tested on the hardware / software and there may be a need to procure new resources.
The project has to be planned so that above risk items are mitigated during the planning process.
1. Reliability and Robustness - Find reliable support team, either with third party or vendor, and clearly decide the SLAs. Ask for documentation and best practices that your develpment team can follow.
2. Arrange for comprehensive training program for all development team. Make sure every aspect of software is covered and there are resources who can back up each other if required.
3. Get clear with requirements and if there is an existing system educate the user how the new technology will change the current process. End users need to know if there are issues who is the right person to contact. Make a short documentation of common list of errors that they may encounter & how to get help on each.
4. Get a oncall person to be available during the deployment and post deployment. It is better if some experience person can conduct the production deployment even if it means hiring vendor or third party.
5. Vendor documentation should be followed and if there are any deviations from the supported hardware of software, it should be certified from the vendor or it should be researched & tested that it would work . A seperate task should be assigned for this at the start of project and any gray areas should be resolved during the initiation step of the project.
Other things to consider.
1. Development and test regions should be ready.
2. Proper planning needs to be done to ensure , enough buffer is left for unexpected issues. Plan needs to be reviewed and revised at every step of the project & before entering into next phase.