Business requirements are constantly evolving, so we use an agile approach to support and encourage these natural course changes. Our approach paints a sharp contrast to the fixed scope, change-order driven constructs commonplace in outsourced development.
Gathering the requirements
We will work with you to blueprint a system that can be built efficiently to meet your needs. The idea is to help you define a minimal viable product — the first usable form of your application.
Writing user stories
Your requirements are broken into small parts known as "user stories". Each story describes a small piece of work needed to achieve results. This is where we start to get a sense of the amount of work involved.
Estimating time and costs
The time and price estimate for your new application is based on estimates for each story. Summing it all up gives us the estimated completion date. Stories can be added or changed at any time.
Adding tasks to the backlog
Before development starts, all user stories are added to the product backlog - a list of requirements for a product. Features, bug fixes, all the things needed to successfully deliver a viable product.
Sprinting for the long run
A sprint (or iteration) is the basic unit of development. It usually lasts for a week or two, and aims to implement a fixed number of backlog items. The goal of each sprint is to have a system that is integrated and potentially shippable.
At the end of a sprint, the team reviews the sprint to articulate lessons learned and check progress. A new set of backlog items is choosen for the next sprint, and the work continues until the product is ready for the market.