This section covers how teams at Code Collective are formed and how they deal with change. We have formalised interactions for some of the more typical formation and change scenarios.
You can also read through a summary of all our team interactions for a higher level view.
Team Formation Interactions
When one or more people join the team, the team will run through our team formation interactions.
Team Roles and Responsibilities
The team will decide on their roles and responsibilities. Each person decides which roles and responsibilities best suit their skills (in the context of the team). Once this has been done the scrum master will identify any areas that need discussing. For example any required responsibilities that weren’t covered will be discussed and any responsibilities best suited to a single person where multiple people have indicated an interest will be discussed.
This process results in a team that self assigns responsibility as much as is possible (which we think helps with ownership and accountability).
Team working surface
The team will discuss how they plan to work together. This discussion covers things like
- working hours
- pair / mob programming approach
- best times for scheduling agile interactions
The purpose is to uncover and address any obvious impediments to the team’s working environment and expected interaction style.
Super power overview
The team may run through each person’s strengths as they relate to the types of objectives the team is likely to tackle.
Code and product overviews
When the sprint starts it is important to introduce the product and code to any people who have not yet been exposed to them – or to any one who feels an overview would be valuable. The team may also discuss the objectives as they relate to the team’s strengths.
Both the functional overview and code overview are time-boxed, even for team members who have had no exposure to the systems. The theory is knowledge will be gained iteratively. Someone new to a very complex system should continue to request these meetings as new sprints kick off in order to build up their knowledge over time.
A stable team will eventually often skip these and this is the reason they are not part of our more ritualistic agile interactions and ceremonies.
Business value and functional overview – 1 hour
Sometimes the product owner will run through a high level overview of the product the team is about to start work on.
This presentation occurs when there is someone in the team who hasn’t had exposure to the product. Or perhaps there is someone in the team who would like a refresher. The meeting is mandatory when the team has someone with no exposure to the product. Anyone on the team, even those experience with the product, can always request this meeting.
Code overview – 1 hour
The lead developer will run through some high level code structures that relate to the product the team is about to start work on.
This presentation occurs when a developer on the team hasn’t had exposure to the product. As with the functional overview, this meeting would occur when there is a member on the team with no exposure to the product, or if anyone requests it.
This presentation may also have a more targeted approach and may be called when the team is about to start work on a particular part of the system.