The Agile Team and what is a Backlog? What are they for and why are they important?
This blog continues on the last week’s blog about introducing Agile to newcomers to the practice. The focus this week is on 2 things – The agile team and the artifacts that they work on, namely “backlogs”.
Agile team is a self contained team that can by itself complete a user story in the backlog. Let’s take the example of “Scrum” which is a popular Agile framework. In scrum, there could be dependencies with external teams. But it is up to the Scrum Master to resolve these dependencies. Otherwise, the team would flag such User Stories as having ‘impediments’ and move on to the next one.
Typically a Scrum team consists of the following roles
- Scrum Master – Person who is in charge of the sprints
- Product Owner – Person who represents the stakeholders
- Team – Consists of different people who collectively have skills to complete tasks in the backlog.
Below is a short summary of responsibilities for each role.
- Manages 1 sprint at a time
- Facilitates Sprint Planning, Review & Retrospective
- Finds and works to remove roadblocks
- Helps to motivate the team and keep them excited
- Protects team from outside distractions
- Facilitates communication between roles for every aspect of the project
- Responsible for keeping release/project information consolidated, organized and up to date
- Drives the cross-functional team at all levels
- Responsible for throughput
- Drives the execution of sprint items
- Responsible for market, business case, and competitive analysis
- Responsible for long and short term product vision
- Responsible for ROI and Net Profit
- Prioritizes features for releases based upon expected ROI
- Writes Acceptance Criteria
- Writes user stories
- Makes tradeoff decisions between scope and schedule
- Responsible for implementation of the backlog items as per the acceptance criteria
- The team could contain people with specialized skills
- Architect to define the design and ensure that best practices are followed.
- Developers to develop and unit test the features
- Quality engineers to test the features and ensure that they have been done as per the acceptance criteria
- User Experience Designers to take care of the human interaction perspective
The product backlog in Scrum is a list of features that are desired for a product at that point in time. Features are short descriptions of the functionality that is needed and these are prioritized. They could contain new features, bugs, technical debt..etc. Typically a team picks few features from the top of the list during ‘Sprint Grooming’ sessions. During ‘Sprint Planning’, the product owner shows up with the prioritized list and the team take these, estimates and locks the features that could be accomplished in a sprint (called ‘Sprint backlog’).
-  – Sanders, A. (2008, August 12). Agile Team Members : Roles and Responsibilities. Retrieved September 16, 2014, from http://aaron.sanders.name/agile-team-members-roles-and-responsibilities/
-  – Cohn, M. (n.d.). Topics in Scrum. Retrieved September 18, 2014, from http://www.mountaingoatsoftware.com/agile/scrum/product-backlog