
We prefer to use an Agile web development process whenever possible. It's a well-designed, flexible and efficient method that results in powerful and successful web software. The Agile method involves a lot of collaboration, and we often work in small teams to take advantage of the breadth of knowledge, experience and ideas from our different developers. Clients are involved in the process every step of the way to insure that the application is meeting their needs. You’ll be able to use the site as early as two weeks into the development process, which allows you to give us early feedback and verify that we’re building the right solution for your needs.
Agile development makes it easy to incorporate changes to a project midstream if the client's requirements or ideas move in a different direction. This flexibility is a key benefit and prevents the common and unpleasant “that’s not in the specs” discussion.
We use automated testing to ensure that the software that we write always works as intended, not just when it’s first written. Having a library of automated tests allows us to make changes freely without having to worry about breaking things elsewhere in the software. The tests will tell us if anything needs attention after a change.
Our Agile process looks like this:
We’ll repeat steps 4-7 as many times as necessary. You can re-prioritize User Stories or add new ones at any time.
With Agile methods, we create our estimates for the entire job by breaking the job into User Stories, which are small, independent tasks that add value to the project. We then estimate each User Story, working in a two-programmer team to broaden our perspective. These estimates are counted in Story Points, which generally correspond to a half-person-day of work. The User Stories are intentionally brief and short on detail. This allows us to defer lots of decision-making until we're ready to actually do the work and our collective knowledge of the project is much greater. At that point, the decisions we make about the project will be much more accurate. Agile acknowledges the fact that it's usually not practical to know everything about a project before you've even started it!
Key benefits of this process are: