The most important and sometimes most overlooked step in the implementation of a new application or additional functionality is the planning phase. Common sense dictates that a successful implementation require a well thought out schedule documenting realistic timetables, resource requirements and accountability for tasks.
For every software development project we use a 5-phase process consisting of the following phases:
- Scope
- Blueprint
- Build
- Test
- Go Live & Support

Perhaps the most important phase in any project, the scope phase determines "what" is to be developed. The purpose of this phase is initial project planning and scope development. Numerous meetings and/or conference calls will be used specifically identify all requirements for the proposed application. At the end of the scope phase, a document will be presented for approval specifically outlining the project scope. This document will be used to measure a successful project implemention and to control "scope creep" of additional functionality.

The purpose of this phase is to technically outline the solution to be built as required from the scope document. Typical tasks included in this phase include refining initial scope, defining specific business process requirements, initial solution design and the development of clickable, HTML wireframes. The focus of the project shifts from solution requirements to the system and infrastructure setup in this phase. A detailed specifications document will be the result of this phase. This document will be the technical blueprint used to build the application.

The purpose of this phase is to develop and implement the solution documented in the blueprint phase. The proposed application progresses from a simple prototype to a more complex application representing business logic, workflow and data persistence. Constant interaction with the customer is necessary as core functionality is forged into the final, production application.

The purpose of this phase is to ensure the stability, reliability and accuracy of the developed application. Typical tasks include unit testing with relevant data and test scripts to ensure successful execution, identification and resolution of final issues. Customer interaction is crucial in this phase to ensure end-user buy in. Stakeholders from within the organization share in the testing process to validate the solution before it goes live.

The sole purpose of this phase is to place the developed solution into production status. Typical tasks include loading of production quality data, cutover to the production system and performance streamlining and optimization. Ongoing support consists of monitoring the application for bottlenecks and/or peaks in performance.
|