Just like building a house, developing any application starts with a plan. Once you describe your idea, receive a quote from us, and agree on pricing and give us the go ahead, we can begin planning the application. This starts with a general idea of the application should be doing, how it should be interacting with the user, as well as a detailed description of all features to be implemented. This phase also involves a general plan of which screens will need to be developed and how they will transition between each other. Any additional capabilities the application will need, such as enterprise integration, network communication, databases, servers, are also described here.
As you may have noticed, we use whole-package pricing instead of per-hour charge, meaning we give you a quote and that's what the app is going to cost (for details, see the payment structure section. This works well for applications for most features can be planned ahead of time. For applications where requirements are less certain, or for any features that require additional R&D work that come up after the Architecture Phase, we use additional per-hour pricing to accommodate the modified requirements.
Once all the requirements are detailed and agreed upon, we start the design work. In this part, we create the UI skin for the application, layout how the screens will look, and do all the creative work required to bring the application to life. Alternatively, if you already have all or some graphical elements designed, we can take those and iterate on them to refine the look and feel of the application and ensure all graphics are in the form that will seamlessly integrate with the programming portion of the development work. Since most graphical work is highly subjective, the Design Phase is usually an iterative process that is repeated several times until you are satisfied with the result.
Once the design is complete, we get to coding up the actual application. Our normal approach is to quickly layout the general structure of the application, often with temporary placeholder graphics, and then gradually start filling in all the details and features, paying very close attention to the polish and functionality of each.
Since typically this is one of the longest parts of the entire process, we break it down into several stages, and update you with the latest version of the application as we go along. This allows you to make corrections and adjustments as we develop each feature, as opposed to suddenly start changing items at the end when everything has already been completed. The result is a faster, more efficient development process and higher-quality application itself.
As we develop the application through these stages, we keep testing each feature, and overall application behaviour, in similar iterative fashion. This approach has been shown to be significantly more effective than building the application first, and then doing all the quality assurance separately.
After all the required features have been implemented in the previous stage, the application is essentially complete. We perform final quality assurance on it, make any last-minute changes that you need so you are completely happy with the result, then deliver you the final, complete version of the application.
We also understand that no application on Earth can be completely bug-free (though some will claim that is possible), and so after the delivery of the final version to you we provide two weeks of complementary support and debugging. This ensures that even if some bugs slipped through our extensive and iterative testing process, you are not on the hook to pay for the fixes just because you discovered them too late - we will fix them for free within this period. Please kindly note that this does not include implementing new features, since that likely requires significant work - just fixing previously agreed-on features so they work as expected.
Unlike many other companies, we use whole-app pricing. This means that you describe to us what it is you want the application to do and its requirements, we give you the quote with a single price, and that is what you pay. This ensures that you have complete certainty over what the application development will cost you, and any unexpected R&D difficulties encountered will not cost you anything - we will solve them on our own time.
Optionally, if the application has uncertain requirements, we can do a a partial fixed cost quote for the smaller amount, and charge the rest of the development per hour, although these cases are more rare.
We also use staged payment process. This means that instead of paying one lump sum at the end, we charge a portion of the total price at each stage of the process described above. This results in a more fair process for both sides - at any point in the project, you have the results you have paid for on hand, and we are paid for the work we have done so far, but no more than that. Please also note that we charge an initial down payment sum, usually around 15-20%, before starting any work - this shows us that you are serious about the project and are as committed to it as we are.
Please contact us now to get a quote for the application you have in mind, and we'll be happy to provide you with customized quote.