What you can Expect
After an initial conversation, we will send you an NDA (Non Disclosure Agreement) and then work closely with you to gain a deep understanding of your needs. The initial contact will be made by a project coordinator who will become your primary business contact for the full duration of the project. They will usually involve a developer at this initial stage with an appropriate background to understand your needs and prepare an estimate.
Depending upon the size of the project, we may break the estimation process into 2 steps, an initial rough and broad ballpark estimate for planning purposes and a detailed design phase to determine your exact needs. The results of this design phase are a detailed execution plan of exactly what is to be created and how. At this point a very accurate estimate can be created.
For the initial estimate, we break down your project needs into well defined units and then place a best and worst case estimate of time. These are summed up to a range of time and additional time for Testing, Project management and Bug fixes are added. This creates an overall range for the project. Depending upon the nature of the project we may add an additional safety factor to account for unknowns and risks. As there are always unexpected elements to a project, we weigh the final estimate somewhat towards the top end of the range to create a project estimate.
We charge by the hour for our services. Our clients own the work product, source code and all the background files. We have a standard services agreement and work with our clients and their lawyer to fine tune it to our clients needs.
Once the project is agreed to, we assign staff and can usually start the project within a few weeks to a month. Throughout the entire life of the project the lead developer and the original project coordinator remain the primary points of contact. It is normal for our clients to have a close and direct connection with their lead developer as the project evolves.
We strongly favor the agile, iterative approach to design and develop a project. This approach allows the project to evolve through a set of working prototypes that are given to our client to provide us with feedback. As the project evolves, the prototype become more sophisticated and tuned to the clients needs. This allows our clients to provide us hands on feedback and guide the development of the user interface as the project matures.
We are qualified as a company to create high integrity software for the medical industry. While most of our projects do not need this rigorous a manufacturing process, we use a subset of this process for all our projects. This ensures the project is documented, properly designed, the code is written to a set of standards, that unit testing is conducted, that a peer code review is done and that the testing is designed to properly validate the program and ensure it is robust.
Once the project is complete and has been released, we remain available as a long term resource to our clients as they need.