Our Agile Development Process

The agile software development methodology is a an approach to developing software that focuses on iterative, incremental development and encourages teams to be flexible and adaptive to change.

For the specific process we follow, we've selected several strategies that we feel work well for developing software quickly and efficiently, but we add and remove strategies based on the client and the team involved. We also constantly evaluate our process and make incremental changes to improve how we work.

In a nutshell, our primary focus is on communication and working software. If you want to know more specific details about how we work, please keep reading :)

So, how does it work? The nitty-gritty details.

  • We start with a story workshop, where we'll capture all of the functionality required in the system. We try to extract every idea you've thought of, and some you may have missed, to get a comprehensive list of features for your product.

    The story workshop process usually takes between 1-2 hours depending on the complexity of the system. It gives us a deep understanding of the feature set, your goals, your thought process and even gives us an idea of how well we might work together.

    We love this part of the process, and we think you will too.

  • Once we begin working together, you can expect to hear from us daily. That could be through a daily standup via phone, an email status, video conference, instant message or text message. We try to use the forms of communication that fit each client.

    This is also when we'll begin working with you to gather more specific information about each story, called acceptance criteria (AC). The AC lets us know exactly what needs to be accomplished for a story to be considered complete.

  • We only take on a small sets of features in a given time period, called an iteration. We like our iterations to be 1 week long. At the beginning of each iteration is a short planning session that identifies the stories to be worked on for that week.

  • You'll see progress daily as we work through stories in the current iteration. One of the goals we set for the first day is to have a staging server available with the first features deployed.

    You'll be able to check the staging server at any time to see our progress and provide feedback on functionality that is complete. We deploy early and often because we believe that working software is the primary measure of progress.

  • Features aren't the only thing we're developing. Behind the scenes, we're also creating an automated test suite that is intended to minimize bugs and ensure that future changes don't break the existing functionality.

    These tests are added to and run continuously as we develop the software. If you were to read them, you might notice that they align with the stories and acceptance criteria we captured earlier.

Building software is as much about the journey as it is the destination and we strive to provide an environment that makes it painless to realize your vision. If this sounds appealing to you, then let's talk.

Ready? Let's get started!