14 June 2021

The Scrum framework (3) : Development Team

Scrum Rules :

  • According to the Scrum Guide, mandatory rules and principles of Scrum are Scrum Roles, Scrum Events, Sprint Goal, Product Backlog, Sprint Backlog, Increment, Definition of Done, and Monitoring progress in Sprint and Project levels. Other things are practices that could employ in the Scrum framework and are up to the team and project and are not mandatory.
  • In The 2020 Scrum Guide Roles are remplaced by Accountabilities.

Scrum Team composition :

  • Self-organizing team consisting of the Product Owner, Development Team, and Scrum Master.
  • 1. Product Owner
  • 2. Development Team
  • 3. Scrum Master
  • The Scrum Team consists only of the following roles. No other roles, no Project Managers or Functional Managers exist within the Scrum Team.
  • According to the Scrum rules, there are just three roles in a Scrum Team as the Scrum Master, the Product Owner, and the Development Team and nothing else. The project manager’s duties are distributed among three pre-defined Scrum roles.
  • All team members could be part-time or full-time but dedicated members are recommended for the Development Team members. On the other hand, these are the roles not assigned people. It means one member could have two roles at the same time for example as a Product Owner and a Development Team member.

Development Team :

  • The Development Team is the role within the Scrum Team accountable for managing, organizing, and doing all development work required to create a releasable Increment of product every Sprint.
  • The Development Team is constitued by the Developers, who do the work that will deliver a releasable increment of “done” at the end of each sprint.
  • Everyone on the Development Team is known as a Developer regardless of the work being done by the person : Developer = any member of the Development Team regardless of technical, functional, or other specialty.
  • Developers structured and empowered by the organization to organize and manage their own work.
  • Development team having all of the skills necessary to create a product increment makes them a cross-functional team.
  • In the Development Team accountability belongs to the Development Team as a whole
  • The Development Team works to forecast the functionality that will be developed during the Sprint.
  • The Development Team decides how to turn the Sprint Goal and Product Backlog items into a “done” product increment during the Sprint.
  • The Development Team approaches the “how” of getting the work done by designing the system/work needed to convert the Product Backlog into a working Product Increment.

Self-organization :

  • Self-organization is the management principle that teams autonomously organize their work. This happens within boundaries and against given goals.

Self-organized Development Team :

  • The Development Team is self-organized to undertake the work in the Sprint Backlog during the Sprint Planning and (as needed) throughout the Sprint : Teams that choose how to best accomplish work, rather than having external direction.
  • The Development Team is a self-organizing role within the Scrum Team accountable for managing, organizing, and doing all work required to create a releasable increment of Product every Sprint.
  • Development teams is self-organized and can decided how to turn the Product Backlog into an increment of potentially releasable functionality.
  • The Development Team has many characteristics as following: Have no titles, Preferably full-time, with no sub-teams, Autonomous, Self-organizing and Cross-functional.
  • The Development Team is self-organizing so can add or remove members by itself. There is no hierarchical management manner in removing a member in the Scrum, for example, hiring manager, CEO, or other top managers. In addition, if removing a member converts to an impediment, the Scrum Master can intervene to help the Development Team removing that person.
  • Because there is no such role as a “Project Manager”, the Development team members themselves are self-governing and responsible for managing and execution of their own work.
  • A self-organizing Development Team has many responsibilities as following: Developing and creating Increments, Estimating the Product Backlog Items and tasks, Selecting Items for the Sprint Backlog, Decomposing Sprint Backlog Items to tasks, Measuring Sprint performance, and productivity, Calculating velocity, Resolving team internal conflicts, Composing / Refining the DoD, Making technical decisions, etc.
  • The Development Team is self-organizing and assigns tasks to themselves with an agreement by all teammates. In addition, nobody (e.g. the Product Owner, the Scrum Master, and the Project Manager) should assign tasks to them or order them how to do their work.
  • Development Team should be fast and nimble through its productive processes and individuals’ skills not by working overtime or organizational policies or forces. Overtime is a symptom that there are some problems in the process or environment. On the other hand, establishing a balance between work and personal life leads to better productivity that occurs via a sustainable pace. This sustainable pace is usually between 6 to 8 hours per day.
  • The Development Team is self-organizing so can add or remove members by itself. There is no hierarchical management manner in removing a member in the Scrum, for example, hiring manager, CEO, or other top managers. In addition, if removing a member converts to an impediment, the Scrum Master can intervene to help the Development Team removing that person.
  • The Development Team is self-organizing which means they manage all required work to implement and convert the Product Backlog into the releasable Increments without receiving orders from outside the team. In addition, the Development Team knows best about creating usable Increments so they decide all technical concerns as a whole (the Development Team).

Cross-Functional Development Team :

  • Development Team is self-organizing and no one tells them how to perform work and turn the Product Backlog into Increments of potentially releasable functionalities. In addition, Development Teams are cross-functional with all required skills to create a product Increment.
  • Cross-Functional means that the characteristics of a team holding that all the skills required to successfully produce a releasable Increment in a Sprint are available within the Team.
  • Development Teams having all competencies needed to accomplish work without depending on external resources.
  • Cross-functionality means the Development Team as a whole should have all the required skills to create potentially releasable Increments without any dependency on others outside the team. Individual Development Team members may have some specialized skills or some focused areas of expertise but they do not need to be cross-functional one by one.
  • Development Team is responsible for doing all the required tasks to create a potentially releasable Increment. Writing tests like other tasks is a part of the development. On the other hand, each Scrum Team should be cross-functional so having a dependency on other teams violates this rule. Therefore, the Development Team is responsible for writing tests.
  • In addition, in a Scrum Development Team, there is no title and no sub-team. All members are a developer. Therefore, having an architect role or architecture sub-team is not acceptable.
  • There is no assigned Role (e.g. QA) who conducts the Test Cases. Members of the Development Team are responsible for writing and executing the Test Cases.
  • There is no assigned Role (e.g. a software architect) who makes sure a consistent architecture is developed. The entire development team makes sure that the architecture evolves based on the needs.
  • The Development Team plans some time each Sprint to discuss the architecture needed for the features planned in that Sprint.

Development Team size :

  • The optimal size for a development team is 3-9 people but is not mandatory.
  • Who is included when counting the size of the development team ? Only the people executing the work in the Sprint Backlog, usually excludes the Product Owner and Scrum Master.

Development Team practice :

  • 5 activities that are the responsibility of the development team in Scrum :
    • 1. Volunteer for tasks
    • 2. forecasts delivery of PBIs
    • 3. Designs Software
    • 4. Provides Estimates
    • 5. Makes technical decisions
  • Remember, all the test cases and testing is performed by Members of the Development Team. Scrum does not approve roles such as Quality Analyst or Sub Teams (Testing Team, Business Team etc).
  • The Development Team decides how it will build the functionalities into a “Done” product Increment during the Sprint.
  • Developers do write tests and documentations in Scrum. There are no special designated Testers or Documenters in a Scrum Team. Members of the development teams are responsible for writing test and documentation.

Whole Team :

  • Whole Team means that all skills that are required to turn the selected stories into a releasable software must be on the team, present across all the team members.

More informations for the Scrum PSD certification here.

Leave a Reply

Your email address will not be published. Required fields are marked *