Creating Tasks for Developers
The word “task” is thrown around in Agile software development all the time. However, do the members of a Scrum team really know what a task is or how it is created? To be an effective team member, it is important to know the jargon used in Agile. Not only that, it helps to know the process of how tasks are created and worked on. Even the role of the developer can benefit from understanding the creation of Agile tasks.
What are Tasks?
Tasks are the smallest building blocks of an Agile project. It is the most granular level of defining work that must be done. Anything smaller is not a complete action. Anything larger can be broken down further, for better estimation. A list of tasks tells the Scrum team exactly what needs to be done for the project to be complete. These tasks can be checked off as they are finished, and show the progress of the team at any point.
User stories are another commonly used term in Agile software development. To a novice, they may seem similar to tasks. However, user stories and tasks are distinct concepts. A user story is a feature to be added to the product. It has to be an action or behavior, a way to describe what the software can do. User stories are almost always referenced from the stakeholders’ point of view. They do not need to know the technical details of the product, simply what it does.
Tasks represent work that must be done by the Scrum team. Whether it is a new development, testing, or meetings, tasks are what the team must do to finish the project. While user stories come from the perspective of the stakeholders, tasks are from the perspective of the Scrum team. Any single task might not result in any functional change to the product. New features often require several tasks to be properly implemented.
Breaking Down and Refining User Stories
Another way to look at tasks and user stories is to determine how many people will be working on them. User stories may involve several people and roles to complete. Analysts look at the technical requirements, while developers write the code, and QA technicians make sure the feature works as designed. Tasks are the responsibility of a single person or role. Each part of the user story can be broken down into a distinct task.
Developer Role in Creating Tasks
With developers handling only tasks for writing and maintaining code, it may seem like they have no part in creating the tasks. However, the developer role has expertise that no other role on a Scrum team has. They can be valuable in making sure tasks are created properly, with logical divisions. The entire process of creating tasks benefits from the input of developers and other roles of the Scrum team.
Committing User Stories
The first step in the creation of tasks is committing user stories. As the product owner researches what stakeholders want, they add user stories to the product backlog. Once the product backlog has all the user stories that the stakeholders want, they must be prioritized. Before the sprint begins, user stories are committed to a sprint. This locks down an estimate for which user stories the Scrum team believes they can finish before the sprint ends.
What does the developer role get from the committing stage? Being present in meetings about committing user stories gives developers a heads up about what they will be working on. This gives them the opportunity to research the features, and analyze what needs to be done. When tasks are broken out and estimated, developers will need to know details. Getting an advance notice from the committing process allows developers to anticipate the next steps.
Our Favourite Agile Books
We found these books great for finding out more information on Agile Scrum: