Scrum for Specialist Teams – Effective Implementation

agilescrum

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):

  1. One mathematician with strong skills in C;
  2. One DB developer;
  3. One Web Developer;
  4. One UX/GUI developer;
  5. 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:

  1. Useless spring plannings: indeed, when the mathematician says that a specific task is worth 2 points, nobody can vote against him;
  2. Useless team velocity metric: as everybody can allocate any number of points to his own tasks, computing velocity makes not sense;
  3. 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?

Best Answer

Scrum is not a silver bullet. Not every project has to use Scrum in order to succeed. The situation you are describing however sounds like a great fit for Lean / Kanban. You may wish to check it out.

Kanban basically asks you to do only a few things, none of which are at odds with the kind of team you are describing:

  • Visualize the flow of value, i.e. the Kanban board. The Scrum board is a specific application of a Kanban board; It is possible to adapt it to allow for specialization.
  • Limit the Work In Progress (WIP), so that the amount of work assigned to the team is just enough to keep the work constantly flowing - i.e. no "blockage" on either the start of the stream (design) or the end (deployment).

You might want to check out some references about Kanban: