Templates for popular drawing and diagramming software tools to represent the team types and team interaction modes in Team Topologies.
Based on some of the ideas in the book Team Topologies by Matthew Skelton @matthewskelton and Manuel Pais @manupaisable.
✨ For guidance on the principles behind the use of the Team Topologies team shape templates, see the article on Team Interaction Modeling. ✨
See teamtopologies.com for more details about Team Topologies.
Copyright © 2018-2021 Team Topologies - Licenced under CC BY-SA 4.0
Get printed, pre-cut versions of these team modeling shapes via Agile Stationery. These shapes are designed by the authors of Team Topologies; they are printed on high-quality card stock, and ready-cut for immediate use. CC BY-SA license.
![Photo of pre-cut printed modeling shapes](/TeamTopologies/Team-Shape-Templates/raw/main/resources/Team-Topologies-modeling-shapes--Agile-Stationery.png)
A self-printable PDF version of the card team modeling shapes is also available to download (but you will need to cut the shapes yourself using scissors or a craft knife). CC BY-SA license.
When using the team shapes to create your own diagrams there are a number of constraints that should be applied:
- There is always an implied flow of change from left to right in the diagram (with apologies to people more familiar with a right-to-left flow!).
- A key aspect of Stream-aligned teams is that they have end-to-end responsibility for a flow of change to the live services/systems, with no hand-offs to other teams. There should therefore be no other team between a Stream-aligned team and their customers/users (on the right of the diagram).
- Team shapes should be solid to represent their long-lived nature.
- Interaction mode shapes should be 50% transparency to represent the more short-lived nature of the interaction.
- Stream-aligned teams should generally never provide an X-as-a-Service directly. Instead, data or services from the Stream-aligned team should be made available "as a Service" via a platform of some kind.
- If an X-as-a-Service or Collaboration interaction crosses over multiple teams, it may be appropriate to use an black asterisk "*" to clarify which teams are interacting
Remember these guidelines:
- Use diagrams as a starting point for meaningful discussion; they are visuals to drive conversations around needs and evolution.
- Any diagrams you create will be a "snapshot" of your current landscape; use them to visualize and present potential issues that may need to be addressed.
The shapes have been designed with the specific intention of being usable by everyone including those that may have a color vision deficiency. For this reason, the following constraints should apply:
- Platform teams should always have square corners
- Stream-aligned teams should always be horizontally aligned with rounded corners
- Enabling teams should always be vertically aligned with rounded corners
- Complicated subsystem teams should always be an octagon
- An Undefined Team Type team should always be horizontally aligned with rounded corners and dotted border
- Collaboration should be indicated using a parallelogram
- Facilitation should be represented using a circle
- X-as-a-Service should be represented with a triangle, with the point of the triangle indicating the direction of the service being provided
The following images were generated using this color blindness simulator:
Normal | Proto | Deutero | Tritano | Monochrome |
---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
The image below is an example of the shapes you may have seen in the book. You may notice that there are some clear differences between the shapes shown above and those you may have previously seen in the book. There are a number of reasons for this which are explained below.
Book Shapes | Tool Shapes |
---|---|
![]() |
![]() |
- The X-as-a-Service interaction is a grey triangle instead of two white bars joining the two teams. The reason for the difference here is two-fold. First, the shape defined in the book does not indicate the direction of the interaction being provided; the point of the triangle now determines this (the triangle points towards the "customer" in the relationship). Second, the shape representing the X-as-a-Service interaction in the book was very difficult to re-create in a number of different diagramming tools; using a simple triangle makes this much easier.
- The Collaboration interaction is a parallelogram instead of a hatched square. Recreating the hatching in different diagramming tools was problematic so this was changed to use a parallelogram.
- The Facilitation interaction mode is a plain circle instead of a circle with dots. Recreating the dots in different diagramming tools was problematic so this was changed to use a circle.
The following team interaction modelling shapes are available:
- All shapes for the four fundamental team types (Stream-aligned, Enabling, Complicated Subsystem, and Platform)
- An undefined team type shape can be used to represent a team that currently has no team type determined
- X-as-a-Service, Collaboration and Facilitation interaction modes
- Flow of change
The source code for team shapes that are officially developed and maintained by Team Topologies can be found within this repository. If you find an issue with any of the following templates please let us know or even better raise a pull request. Team shape templates are officially supported by Team Topologies for the following tools:
See TeamTopologies.xml in the diagrams.net folder. This creates a Library with several shapes. The shapes are named - hover over a shape to see the description:
You have a couple of options, simply click the following link to pre-load the library:
Or
- Download TeamTopologies.xml from this repository
- Open diagrams.net in a browser
- File -> Open Library from -> Device
- Select the file TeamTopologies.xml
A new shape library should appear.
Open the template at Team Topologies Template for modelling - Google Draw and choose Make a copy
Then copy/paste the shapes as needed into Google Draw or Google Slides if needed.
Open the template at Team Topologies Template for modelling - Google Slides and choose Make a copy
Download the template from the Team Topologies Template for modelling - PowerPoint and start editing as needed
- Download the latest release of the Team Topologies Template for modelling - Miro package
- Open Miro and click on Upload from backup
- This will create a new board called Restored Team Topologies template for modelling - Miro
- Then simply rename the board and start using it by copy and pasting the different shapes as required
See the Miro Readme for more details on how to edit the shapes for Miro.
The team shape templates in this list have been developed and are maintained by members of the wider Team Topologies community. If you find an issue with these templates, please contact the relevant template author. Team shape templates are supported by the extended community for the following tools:
See the details in excalidraw/README.md for templates for use with Excalidraw.
Open the template at Team Topologies - Team shapes template - Figma Community and choose Duplicate
Open the template at Team Topologies Template - Lucid Chart and create a new document based on the template.
Here are some guidelines to follow if you would like to contribute a shape set for your favourite modelling tool:
Where possible the shapes should adhere to the following scheme:
Shape Name | Fill: HEX(#RGB) | Fill Transparency | Outline: HEX(#RGB) | Outline Style | Outline Weight |
---|---|---|---|---|---|
Stream-aligned team | #FFEDB8 | 0% | #FFD966 | Solid | 2px |
Enabling team | #DFBDCF | 0% | #D09CB7 | Solid | 2px |
Complicated Subsystem team | #FFC08B | 0% | #E88814 | Solid | 2px |
Platform team | #B7CDF1 | 0% | #6D9EEB | Solid | 2px |
Undefined Team Type | #EBEBEF | 0% | #9B99AF | Dotted | 2px |
Collaboration | #C6BEDF | 50% | #967EE2 | Dashed | 2px |
Facilitation | #C9DFBE | 50% | #78996B | Dashed | 2px |
X-as-a-Service | #B4B4B4 | 50% | #999696 | Dashed | 2px |
The contrast of the shapes will be better on a white background.
The following table shows some typically re-sizing actions that may be performed by the user, any shapes created should support this type of re-sizing.