We use two different project management methodologies, depending on the nature of the project, to meet our client’s requirements. We have successfully completed a variety of projects using each of these methodologies.
Prototyping Development Methodology
Approximately 75% of our development work is completed using the prototyping development methodology. This is the most appropriate approach if our client hasn’t determined all of the functional requirements of a system, or if the requirements are likely to change during the project.
Using this methodology, detailed specifications are prepared for only one part of the application at a time. We generally start with the core application framework and the maintenance of key master files. Auxiliary master files (e.g. customers) and transaction file maintenance (e.g. orders) are added next, followed by reporting and import/export capabilities. As each specification document is completed and approved, development and delivery of those components is scheduled. Prototypes are installed at 2-4 week intervals in a typical prototyping project. User experience with each prototype influences the direction of later efforts.
Traditional Development Methodology
Approximately 25% of our development work is completed using the traditional development methodology. This approach is recommended whenever all of the requirements are clearly identified at the start of the project, and they are not likely to change.
Using this methodology, detailed specifications are prepared at the start of the project for the entire application. We start with any specification documents which have been prepared by our client, and work with our key client contact to develop complete, unambiguous, detailed development specifications. We can schedule a meeting to review sample specification documents, to illustrate the level of detail required, upon request.
After the detailed specifications are complete, we prepare a detailed schedule, noting when each specified module will be completed and when interim systems can be delivered to our client for preliminary testing. We generally start development with the core application framework and the maintenance of key master files. Auxiliary master files and transaction file maintenance are added next, followed by reporting and import/export capabilities.
Changes during this process are more difficult to incorporate into the schedule, but are still possible. As each change is identified, the detailed specifications document needs to be updated and a revised schedule needs to be prepared. If frequent changes are required, this will be a more expensive approach than the prototyping development methodology.
Choosing a Methodology
It is important to choose the appropriate methodology, based on the characteristics of the project, to ensure that all system requirements are met at a reasonable cost. If the requirements are well-defined and unlikely to change, the traditional methodology is the most cost-effective approach. If frequent changes or enhancements are likely, the prototyping methodology — managed correctly — will be the lowest-cost and most effective approach.