4.3 Development Team
The development team is the core group that builds, tests and documents the sprint delivery, but that can be a bit confusing as there might be people with skills that are not programming skills, like testers, test coaches, IT architects, domain experts, etc. The team is a group of individuals who together to commit to work on the user stories in the sprint backlog to create a valuable shippable delivery for the customer.
Often, we talk about the whole team or the 3 amigos, which should be the perfect combination of skills for building high quality software.
Figure: The Whole-Team Approach. Teams consist of Programmers, Domain Experts, and Testers.
The whole-team approach, also called team-based approach, is a strategy for project management in which everyone on the project team is held equally responsible for the quality and success of the project. A good analogy is the “The Three Musketeers” and their motto "all for one, one for all”.
How to do this?
- Involve everyone with necessary knowledge and skills
- Five to nine people (including business stakeholders)
- Ideally positioned
- Daily stand-up meetings
- Every member is responsible for quality. Testers collaborate with:
- business representatives on acceptance tests;
- developers on the testing strategy and test automation.
- The whole-team approach (power of three) keys:
- transferral of knowledge within the team
- increase of communication and collaboration
- avoiding unnecessary documentation
- leverage of everyone’s skills
The responsibilities of the Development Team in various scrum processes:
Process |
Development Team Responsibilities |
Formation of the Development Team |
Provides inputs for creation of the Collaboration Plan and the Team Building Plan |
Development of Epic(s) |
Ensures a clear understanding of Epic(s) and Personas |
Creation of Prioritized Product Backlog |
Understands the User Stories in the Prioritized Product Backlog |
Conducting Release Planning |
■ Agrees with other Scrum Core Team members on the Length of Sprint ■ Seeks clarification of possible new products or changes in the existing products in the refined Prioritized Product Backlog |
Creation of User Stories |
Provides inputs to the Product Owner on creation of User Stories |
Estimation of User Stories |
Estimates User Stories approved by the Product Owner |
Commitment to User Stories |
Chooses User Stories to be committed to in a Sprint |
Identification of Tasks |
Develops Task List based on agreed User Stories and Dependencies |
Estimation of Tasks |
Estimates effort for tasks identified, and updates the Task List if necessary |
Creation of Sprint Backlog |
Develops the Sprint Backlog and the Sprint Burn down Chart |
Creation of Deliverables |
■ Creates Deliverables ■ Identifies risks and implements possible risk mitigation actions ■ Updates Impediment Log and Dependencies |
Coordination of Daily Scrum Meeting |
■ Updates Burn down Chart, Scrum board, and Impediment Log ■ Discusses issues faced by individual members and seeks solutions to motivate the team ■ Identifies possible risks ■ Submits Change Requests, if required |
Refining of Prioritized Product Backlog |
Participates in Prioritized Product Backlog Review Meetings |
Presentation and Validation of Sprints |
Demonstrates completed deliverables to the Product Owner for approval |
Sprint Retrospection |
Identifies potential improvement opportunities from the current Sprint and agrees on an improvement action plan for the next Sprint |
Project Retrospection |
Participates in the Retrospect Project Meeting |