Roles in scrum are Product Owner, Scrum Master, and Scrum Team. A user story should also break down into smaller pieces called tasks. A task seems to have four phases, namely, definition, assignment, implementation, and following.

Who should do what in Scrum about tasks? Is it the responsibility of scrum master to update remaining hours of a task, or is it the responsibility of the developer (scrum team)? Should developers assign tasks to themselves or is it the responsibility of scrum master accompanied by product owner?

5 Answers
5

Agile follows several principles. One of them is: Empower people. Because of that tasks should be defined by team and tasks should be selected by team members. Tasks should not be assigned to team member. The team should be self organizing and because of that distribution of hard / easy / interesting / boring tasks should be even.

Scrum master should ensure that team follows Scrum principles. He is not a project manager.

This is theory and it works for mature teams. For Scrum beginners it can be sometimes hard but you should at least insist that team members will select task themselves instead of assign them.

update remaining hours of a task

In my opinion estimating tasks and maintaining remaining time is waste. You did commitment on set of user stories so it doesn't matter how long will each task take. The only important is if user story will be completed or not.

I disagree that estimating tasks and maintaining remaining time is a waste. I found that that the "remaining time" is the best early warning sign you can get when things start going unexpectedly. It doesn't have to be super accurate, but the Scrum master needs to be aware if an estimate is A) not changing or B) increasing. This can often happen if there is a hidden (even to the developer) impediment. In a new scrum team this helps with the transparency also, and helps prevent the "I did x yesterday, I'm going to do more x today" stand up.
–
BrookAug 1 '11 at 14:59

@Brook: That is the reason why Scrum uses Burndown chart. If you use burndown chart to show completed user stories (with complexity defined by story points) you will still have such feedback. In my experience that feedback will be even better because you will not end (example) with 10 hours of not completed work which means 10 user stories with each 1 hour missing.
–
Ladislav MrnkaAug 1 '11 at 15:05

If I could I would give this answer +10. Spot on, absolutely correct.
–
wolfgangszAug 1 '11 at 15:41

@Ladislav Mrnka: You will get similar data out of the burn down, but having the work remaining gives you finer detail, and can warn you sooner. It's a moot point if all your tasks take < day, but occasionally when a task does take > 1 day, the work remaining can give a quick indicator as to whether or not to be worried. I typically don't ask people to give it a ton of thought, just whatever their gut feel is, so it's not that cumbersome of a metric to add.
–
BrookAug 1 '11 at 18:23

Sooner? Sprint should be "short" - how sooner should you be warned? I used very simple rule. If we don't have at least 1/3 of user stories (story points) done at the half of the sprint we will most probably not be able to deliver everything we committed. It worked quite well and we didn't have to estimate anything. With sprints taking 2 or 3 weeks you don't need much more.
–
Ladislav MrnkaAug 2 '11 at 19:59

+1 - for someone having the final say. Someone has to be in charge.
–
JeffOAug 1 '11 at 12:32

2

I appreciate that a certain pragmatism is a useful thing, but assigning tasks to developers is definitely NOT the Scrum way of doing things.
–
wolfgangszAug 1 '11 at 15:39

@ChrisF: Can you clarify where in Scrum it says that ScrumMaster has overruling authority and that others are allowed to assign tasks for the developers?
–
Martin WickmanAug 1 '11 at 21:04

@Martin - no I can't. Mainly because it's been a while since I worked with Scrum. However, the pragmatist in me states that at some point someone will have to make a decision.
–
ChrisF♦Aug 1 '11 at 22:34

A little late in the game, but my 2¢ - I think if some tasks are left to the end when they should have been done first that means that your Scrum Master (and Product Owner) aren't putting enough emphasis on those tasks.
–
Wayne WernerFeb 1 '12 at 19:31

The tasks are defined by the group of developers, who most likely will be implementing the user story.

At least two developers are responsible for the implementation of a user story, hence they will be assigned to the tasks automatically (if they can work in parallel, they will take a task most suited to them according to their knowledge and personal flavor. Otherwise they will pair program).

Everything to do with tasks is the responsibility of the team in Scrum. The team will generally come up with a decomposition of stories into tasks during the second half of the sprint planning meeting but new tasks can be introduced or tasks can be removed at any time during the sprint as new information comes to light. In my opinion, this daily feedback loop is an important part of Scrum.

The ScrumMaster is not the team lead or its manager. The role of the ScrumMaster is to facilitate the Scrum process and remove impediments. The ScrumMaster does not assign tasks to developers. The product owner does not assign tasks to developers. The team delivers value to the produt owner (and by extenstion the customer) by implementing the user stories.

The team is responsible for all estimates. So it owns the estimates for the tasks (and stories) on the board.