Nick Forneris / Development / May 5th, 2014

We May Take Your Order – Why Your Development Team Is Your Best Wingman

By now, we’ve talked enough about how agile development is different – but let’s walk through why having a team dedicated to your project is so important. Better buckle up.

Last week you met your new agile software development team for the first time. Together you set the stage for an exciting 10 week engagement to build your new product. Your first day of Sprint 0 was a success. The backlog is groomed with bonsai precision, all effort points assigned. Your chi is harnessed and the stars have aligned. Your development power team is assembled and ready to rock.

This is where we take our fancy to-do list, go pedal to the metal, and start hammering away at the project backlog: 1, 2, 3, 4, 5 – right? Time to pump the brakes, partner.

Just like any roadtrip, we have to decide on a route. In this case,  we have to prioritize your stories with you. If we don’t take this important step before we mash the gas, we’re likely to fishtail into a wall and burst into flames before sprinting has even begun.

We’ll call that a false start.

Let the Team Be Your Guide

After Sprint 0, each team is in a unique position to help you determine the importance of each story, weighing value versus effort. You know your business, and we know the intricacies of development. By immersing us in the intimacy you share with your product, we can help drive development forward with the most important features first.

Each project we undertake is different, but our teams have built experience in researching, developing and testing what we build. Our cumulative expertise allows us to identify possible relationships between user stories and contain any unknowns that could constrain certain workflows.  But luckily, we’re not alone in this process.

Change Is An Ongoing Process

Our efforts to rank tasks begin during Sprint 0 and continue in each sprint’s subsequent planning session. The entire team will be involved, typically stepping through the backlog story-by-story, offering thoughts behind the relative points for each, any previously unknown dependencies and suggestions on stack rank. Ultimately, you – the product owner – make the final decision, but your agile team is there to offer expertise and experience at every turn.

Developers are not the only members contributing to prioritizing your backlog – during sprints we may consult with our marketing analysis teams, schedule interviews with your stakeholders, or conduct critical user-testing. Every story in your backlog has its own factors, necessitating productive and varied perspectives to each. We empower ourselves with the space to engage in productive sprint planning, efficient sprinting and superior software releases.

As we work, iterative patterns of form and function emerge that will allow us to better navigate our current development. If we stumble upon an idea too large to digest, we break it apart and collate the pieces. If we’re headed towards a black hole, we back up and prove a concept. We decide well, and we decide often. But each of these decisions are made, not just with the client in mind, but with client participation.

Pain Don’t Hurt

At times these decisions may seem obvious, other times perplexing. Sometimes they hurt. We hate to sacrifice features just as much as we could never pick a favorite child or pet (or ice cream flavor). Sometimes we even make bad decisions, but the flexibility of agile allows us to react quickly and adjust. The stack ranking of tasks and stories is an on-going process, and as we finish stories and iterate, new priorities arise. We keep a keen eye on all approaching stories – whether already in the backlog or waiting to be written.

Sometimes factors beyond our control divert our decisions. Does the API we initially picked no longer scale with our budget? Did we discover a security loophole we didn’t know existed? Can we halt development for a certain platform based on new usage data? The developers on your team are there to help you adapt to evolving changes. We are vital to understanding (and inevitably transforming) technology that is mutating rapidly.

Change – and sometimes sacrifice – are built into the agile process, and your development team is always with you to ensure that change is always for the best. We may take your order, but we’re happy to build a menu suited directly to you.