facebooklinkedinrss

CONTACT US 224 265 0400 or Email

The Agile Incubator Blog

How is IT development like painting your house?

In painting your house you must first prepare the surface. This involved scraping and sanding, caulking, repairing and getting the surface ready for the new paint. In my case this involved removing all the old paint down to the wood surface. Because this house has so many layers of paint the surface is uneven due to pealing and weathering. If another layer goes on, the weather will just pull it back off during the next winter. I know this because I tried that approach. The preparation work takes much longer than the fun painting part.

The same is true with IT development efforts. The path must be cleared for new work to be created successfully. In project management, this work consists of creating a project plan which includes more than a schedule and a budget. It includes planning for communication, testing, resource management, deployment and risk management. As the Project Management Institute Project Management Body of Knowledge (PMBOK) states, each of these should be planned before the project even starts. Reality usually means this happens somewhere at the beginning stages of the project. Good project managers make sure that these plans are documented early in the project. Communicating plans relieves some of the stress of coordinating team members and stakeholders around standard issues of project management.

In testing this preparation includes creating a test strategy, test plans and test cases. For information management projects this requires that test data be acquired that support multiple levels of testing including:  unit testing during development, system testing of integrated components, user acceptance testing, regression testing, and performance testing. Planning for these tests requires that thought be made to how code will be migrated from one environment to the next as testing and coding is completed. Neglecting to plan for test data requirements and deployment plans may result in significant lost time and frustration on the part of project participants and stakeholders. It could even mean the failure of a project. After all, if your new code doesn’t get deployed, your project has failed.