Five Critical Tasks for Project Managers in the Software Development Lifecycle
By John Focht
When developing a new website, or providing new software to your client, be sure you are following a project plan and development plan which provides you and your client the proper steps to ensure a successful delivery.
Don’t just wing it and develop what you think your client needs. Proper documentation and functions are required by you to warrant a successful website delivery to your client.
Everything starts with proper documentation. Developing a requirements document with your client confirms you fully understand their business needs and how your website will help them achieve their business results.
Work directly with your client in the creation of the requirements document. Have your client sign-off on the completed document. This allows you and your client to refer back to an agreed-upon document later, if need be.
Sounds easy enough, but your development of the software and code needs to follow the plan outlined in the requirements document. If there is ambiguity within the requirements document, your development team should work with your business unit to gain clarity around the requirements.
The development team should not continue with the development of that specific piece of functionality until they receive clarification on the requirement. Forcing your developer to continue with development until clarification is provided may create unnecessary or extra work. Keep that piece of development on hold until the requirement is fully understood.
Once the development effort is complete, the software and code should be deployed into a test environment to be fully tested.
A critical failure point in many development efforts is not creating a functioning test plan to go along with the requirements document. The test plan is a document created from the requirements and certifies all client needs and requirements are developed fully and working to the clients expected results.
The testing effort should be complete by executing all test cases created in the test plan to maintain the software and code are functioning per the client’s specifications.
Client Acceptance Test
Once your testing effort is complete, the software and code needs to be deployed into a separate client testing environment for the client to run an additional round of tests from their business perspective. This final test provides the client one final opportunity to make any changes prior to the software or code being deployed into a live production environment.
Deploying the code into a separate client acceptance test environment allows you the flexibility to continue to develop and test, if need be, without disrupting the client testing.
Don’t just turn the code on in production and walk away. Ensure the code has properly been deployed: run some tests to ensure all links and pages are functioning properly prior to informing your client the upgrade is complete.
For any project manager or developer, seeing a software development effort deployed into a live production environment is usually a pretty gratifying feeling. After weeks or months of working on a project, seeing an end result that captures your clients’ needs provides a real sense of accomplishment. Plus, you always get to point back to that website and say you were a critical component in building that website.