Scrum is best for teams with generalists members, that is teams where 2 people at least can do the same tasks. My main concern is to find good solutions to adapt scrum (what to keep, what to remove, what to improve) for teams made of specialists?
Suppose you have a team of 5 developers (not real, just for the example):
- One mathematician with strong skills in C;
- One DB developer;
- One Web Developer;
- One UX/GUI developer;
- One software architect;
Here, all are specialists and no one can replace someone else (I don't care about the risks of building such a team, I want to focus on scrum). So, in a scrum context, here are my thoughts:
- Useless spring plannings: indeed, when the mathematician says that a specific task is worth 2 points, nobody can vote against him;
- Useless team velocity metric: as everybody can allocate any number of points to his own tasks, computing velocity makes not sense;
- Replace daily scrum meetings with weekly (longer) scrum meetings: as each member of the team is working on his own tasks, daily scrum meetings should be really important to keep a "team spirit". However, daily scrum meetings are supposed to last around 15 minutes. This is clearly not sufficient to understand what the others are doing and will do. Moreover, the mathematician will most of the time answer the same things: "I am still doing %&Lo( + ?$$+&)"... Weekly meetings would give more time. To keep the same meetings time between "initial" scrum meetings and "weekly" scrum meetings, each weekly scrum meeting should last (5 days a week, with 4 weeks sprints, with sprint meetings lasting 4 hours and daily meetings lasting 15 minutes): (4*60 + 20*15)/ 4 => 2h-2h30 which seems reasonable.
Or is scrum still usable? Maybe another agile technique should be used?