Our custom software development, whether development from scratch of integrations, follows a modified unified process: 1) Requirements, 2) Design, 3) Estimates, 4) Development, 5) Testing, 6) Deployment, and 7) Maintenance.
The process start with a meeting to review the high level requirements. Following this meeting, we require the execution of an “engagement letter” along with a “retainer” for the design and requirements. The “retainer” is based on the number of use cases. A use case, is an individual task or process step the user is to use the program to complete.
The requirements, design, and a cost and time analysis will be created. The client reviews this document throughout the process until completed to their satisfaction. Development stage will not commence until a formal review and sign off of the Requirements, Design, Time & Cost, and Terms of Development along with design cost being paid in full.
Development will occur for a period of time, and the client will be billed as the development process continues. Demonstrations of the application will be given periodically until development testing is completed.
The final stage before running the software live in your business is testing. The application will be tested against the requirements to ensure that all requirements were met. The application was designed and developed to meet the requirements, and the requirements are the measure for success. Test should be conducted in such a way to ensure that all requirements were met.
Deployment is when the application is installed on production servers, then the workstations. Initial configuration will need completed. Once deployed, the application will enter in “maintenance” which includes bug fixes and other remediation. Changes to the application, small and large, will start this process over again.