2

We are currently setting up a development team that will deliver Web and iOS/Android App functionality. The team will stream their work in scrum sprints. The team will rely on an API managed by another team outside of the web/app team.

To ensure that we can develop as a feature team we rely on the support of the API team.

The question is how best to facilitate this?

Should the API developers be embedded and collocated with the web/app team and attend all the scrum ceremonies with the ability to effect the API on the web/app team's behalf?

Or

Is it possible to have an SLA in place whereby key API individuals work within the confines of the API team but are dedicated to any requests that flow from the web/app team either through release planning or work identified in technical tasks. The API team have to synch their release schedule with that of the web/api team?

Without a degree of control or visibility of the required changes being made to the API the web/app team will be at the risk of being blocked.

1

I actually see two questions, here:

1) Should the two teams (API and application) be part of the same Scrum Team?

2) Should the Scrum Team be sat/work closely together?

Going strictly by 'best practices', the answer to both is 'yes'.

Because Scrum Teams should be cross-functional, both groups should be part of the same Scrum Team (and therefore part of the same Development Team). If they aren't, then members outside of the Team can become roadblocks, causing any interaction with them to incur risk. Of course, this is for the ideal case - it may be that in reality, the API group is working alongside a dozen other teams and so this is infeasible.

Likewise, all members of a Development Team should be sat together. While it may or may not be realistically possible to physically co-locate the Team, at the very least all members of the Development Team should be working tightly coupled to each other. They are, after all, part of the same Team. All Development-Team activities should involve all members of the Development Team. For example, estimation and commitment. Since these are done on behalf of the entire Team, it would be pretty infeasible, for example, for the application team to commit to completing a story in a day when, if the API-team had a say, they would be pointing out that their development on that story would require a full week.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.