With the experience we have gained over the years of work and being savvy at software development methodologies usage, we know how to make the whole programming process run smoothly.
First comes pre-project analysis. Here we get to know each other, find out your business goals, and define the project scope.
As a result of our discussions, our team comes up with the finalized project concept which contains the following: a brief functionality description; the suggested collaboration model; the preliminary project estimate.
After we agree on the project scope, the next step is to divide it into milestones. As practice shows, it’s better to carry out work on large projects in stages, presenting the results to Customer upon every milestone completion.
At this stage, we confirm delivery timeframes and budget with you.
And after all these aspects are agreed upon, we can proceed to signing a service agreement.
This is where use cases, interface design, and requirements specification are delivered.
Here the high-level system design is created. A prototype of the project or of some part of it may be crafted at this stage as well. Testing this prototype as thoroughly as possible can save you hundreds (or thousands) of dollars for possible corrections.
We have great artists within our team and thus can perform graphic design works. Alternatively, you can provide your design. If this is the case, here is a set of our friendly recommendations:
At this stage, the code is actually created. As all the programming experts do, we follow the good practice of documenting code.
As to Customer’s access to the source code, this will depend on the chosen collaboration model. If hourly payment is the case, we give you access to the source code. With fixed price model, we initially agree with you after what stage we will hand the source code over to you.
At the testing stage we make sure that the whole product functions as desired. We also detect errors (if any) and conditions under which they arise, and hand them over to programmers for further fixing.
This is actually when the project is delivered, and the source code is placed on your server. If any documentation was created, it is handed over to you as well. By the way, the exclusive ownership rights to the programming code will be yours after this moment.
Even when the project is successfully delivered, our work doesn’t finish here. Our team is always here to support your product. We discuss the terms of software maintenance and support individually, so that together we will define the option that will suit your project to the fullest.
Before we proceed with signing a support agreement, we need to come up with a software maintenance work plan. It typically includes software faults and defects prevention, timely software update to provide its correct functioning, necessary software modifications to maintain and increase its demand in the market.
As to a services agreement, it is normally signed on an hourly basis at the software maintenance and support stage.