Skip to content

Commit

Permalink
Tweaks to insights and resources
Browse files Browse the repository at this point in the history
  • Loading branch information
conjurer-rich committed Jan 14, 2025
1 parent 415e039 commit 9b69495
Show file tree
Hide file tree
Showing 8 changed files with 279 additions and 7 deletions.
2 changes: 1 addition & 1 deletion _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ plugins:
author:
name : "Rich Allen"
avatar : "/assets/images/Rich Allen Profile - Cropped Square - Colour.jpeg"
bio : "Team Topologies Valued Practitioner."
bio : "Creator of User Needs Mapping"
links:
- label: "Website"
icon: "fas fa-fw fa-link"
Expand Down
4 changes: 2 additions & 2 deletions _data/navigation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ main:
url: /docs/quick-start-guide
- title: "How can we help"
url: /how-can-we-help
- title: "Articles"
url: /articles
- title: "Insights"
url: /insights
- title: "Community"
url: /community
- title: "Contact"
Expand Down
9 changes: 6 additions & 3 deletions _pages/articles/articles.md → _pages/articles/insights.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,19 @@
---
title: "Articles and External Resources"
title: "Insights and other useful resources"
layout: collection
permalink: /articles/
permalink: /insights/
collection: articles
entries_layout: grid
author_profile: true
classes: wide
header:
overlay_color: "#0EA2F1"
overlay_filter: rgba(14,162,241,0.6)
overlay_image: /assets/images/workshop-writing.jpg
redirect_from:
- /articles
---

The following articles contain deep dives, case studies, and our thoughts on topics related to User Needs Mapping.
This page is the home of insights and articles. It contains deep dives, case studies, and our thoughts on topics related to User Needs Mapping.

We also curate a collection of [articles, videos, podcasts, etc. mostly by other authors](/resources).
2 changes: 1 addition & 1 deletion _pages/articles/resources.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
permalink: /resources
layout: single
layout: splash
title: Guides and resources
toc: true
toc_sticky: true
Expand Down
Empty file.
97 changes: 97 additions & 0 deletions _pages/docs/teamtopologies/teamtopologies-four-team-types.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
---
title: "The Four Team Types"
layout: single
description: "Learn about the four fundamental team types in Team Topologies and how they align with User Needs Mapping."
permalink: /docs/teamtopologies/four-team-types/
toc: true
toc_sticky: true
toc_label: "Overview of the Four Team Types"
sidebar:
nav: docs
---

**The Four Fundamental Team Types**
Team Topologies identifies four primary team types, each designed to fulfill specific roles within an organization. These team types enable fast delivery of value, reduce dependencies, and optimize team cognitive load. When combined with User Needs Mapping, these team types provide a framework for assigning ownership of capabilities and aligning teams with user needs.

---

## 1. Stream-Aligned Teams

**Definition:** Stream-aligned teams are dedicated to a single value stream, such as a specific user need, product, or feature set. Their primary focus is delivering value directly to end users or customers.

**Characteristics:**

- Aligned with specific user needs or capabilities (e.g., ticket purchasing, journey planning).
- Minimized dependencies to allow for fast, autonomous delivery.
- Cross-functional, encompassing all skills required to deliver their stream of work.

**Examples in User Needs Mapping:**

- A "Ticketing Team" managing the ticket purchasing system.
- A "Journey Planning Team" responsible for real-time journey updates.

---

## 2. Enabling Teams

**Definition:** Enabling teams provide expertise, tools, or support to stream-aligned teams to help them overcome obstacles and improve delivery capabilities. These teams typically engage with other teams on a temporary basis.

**Characteristics:**

- Focused on unlocking the potential of stream-aligned teams.
- Often composed of specialists in a particular domain (e.g., DevOps, data science).
- Operate in a facilitative mode, helping other teams acquire new skills or implement solutions.

**Examples in User Needs Mapping:**

- A "Data Insights Team" supporting a stream-aligned team by providing analytics expertise.
- A "DevOps Enablement Team" helping teams adopt continuous deployment practices.

---

## 3. Complicated Subsystem Teams

**Definition:** Complicated subsystem teams manage areas of high technical complexity requiring specialized knowledge. They focus on delivering and maintaining components that are difficult for other teams to handle effectively.

**Characteristics:**

- Responsible for specific subsystems or technologies requiring deep expertise.
- Often provide reusable components or services used by multiple teams.
- Typically interact with other teams in a collaboration or consuming mode.

**Examples in User Needs Mapping:**

- A "Machine Learning Models Team" managing complex algorithms for personalized recommendations.
- A "High-Performance Database Team" ensuring low-latency data storage and retrieval.

---

## 4. Platform Teams

**Definition:** Platform teams build and maintain foundational systems and services used by other teams. They enable stream-aligned teams to focus on delivering value by providing reliable and reusable capabilities.

**Characteristics:**

- Provide self-service APIs, infrastructure, or tools.
- Focus on creating a frictionless experience for consuming teams.
- Enable stream-aligned teams to operate independently.

**Examples in User Needs Mapping:**

- An "API Platform Team" maintaining APIs for ticketing and journey planning.
- An "Infrastructure Platform Team" providing scalable cloud resources.

---

## Applying Team Types with User Needs Mapping

When mapping user needs and capabilities, the four team types help assign ownership and reduce complexity:

- **Stream-Aligned Teams:** Own capabilities directly tied to user needs.
- **Complicated Subsystem Teams:** Handle highly technical areas or components critical to delivering value.
- **Platform Teams:** Provide reusable services and tools to minimize dependencies.
- **Enabling Teams:** Support stream-aligned teams in overcoming temporary challenges or adopting new practices - although we generally do not model them on a User Needs Map because they should not "own" a capability.

By aligning team types with the capabilities identified in your User Needs Map, you can create a clear, scalable structure that optimizes delivery and collaboration.

[Learn more about Team Topologies interaction modes.](/docs/teamtopologies/interaction-modes/)
100 changes: 100 additions & 0 deletions _pages/docs/teamtopologies/teamtopologies-interaction-modes.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
---
title: "Interaction Modes in Team Topologies"
layout: single
description: "Understand the three interaction modes in Team Topologies and how they enhance collaboration and delivery."
permalink: /docs/teamtopologies/interaction-modes/
toc: true
toc_sticky: true
toc_label: "Overview of Interaction Modes"
sidebar:
nav: docs
---

**Team Topologies Interaction Modes**
Effective collaboration between teams is essential for delivering value quickly and efficiently. Team Topologies defines three key interaction modes that help teams work together while minimizing friction and dependencies. These modes ensure that teams can collaborate purposefully, avoid unnecessary disruptions, and maintain focus on their goals.

---

## The Three Interaction Modes

### 1. Collaboration

**Definition:** Collaboration is a short-term, high-intensity interaction between two or more teams to solve a specific problem or deliver a shared outcome.

**When to Use:**

- Teams need to innovate together on a new solution.
- Cross-functional expertise is required to address a complex challenge.

**Characteristics:**

- Intense and time-bound.
- Requires clear goals and well-defined success criteria.
- Often used during the discovery or experimentation phases.

---

### 2. Facilitating

**Definition:** Facilitating is when one team provides guidance, expertise, or tools to help another team improve its capabilities or overcome a specific challenge.

**When to Use:**

- A team needs support to adopt a new technology or practice.
- Specialized expertise is required for skill-building or problem-solving.

**Characteristics:**

- Focused on enabling long-term improvement.
- Temporary and advisory in nature.
- Helps the receiving team gain independence over time.

**Examples in User Needs Mapping:**

- An Enabling Team helps a Stream-Aligned Team implement continuous deployment practices.
- A DevOps Enablement Team guides multiple Stream-Aligned Teams in adopting new infrastructure tools.

---

### 3. X-as-a-Service

**Definition:** X-as-a-Service is when one team provides services, APIs, or tools to be consumed by another team, typically in a self-service manner.

**When to Use:**

- Teams rely on reusable components or foundational systems.
- Consistent, predictable interactions are required without ongoing collaboration.

**Characteristics:**

- Low-friction and highly predictable.
- Requires well-documented and user-friendly services.
- Reduces the need for direct communication between teams.

---

## Applying Interaction Modes with User Needs Mapping

User Needs Mapping helps identify dependencies between capabilities, which can inform the interaction modes required between teams. By defining these modes:

- **Collaboration:** Teams can innovate and solve complex challenges together.
- **Facilitating:** Specialized teams can upskill others to reduce long-term dependencies.
- **X-as-a-Service:** Teams can focus on their streams of work by leveraging reliable, self-service tools and platforms.

Although we do not model the interaction modes on a User Needs Map, we can use the interaction modes to help us understand how teams should interact with each other.

**Example Workflow:**

1. Use your User Needs Map to identify dependencies between teams.
2. Assign the appropriate interaction mode based on the nature of the dependency i.e. Platform teams should typically seek to act in Collaboration or X-as-a-Service mode.
3. Regularly review and adjust interaction modes as teams evolve or new capabilities emerge.

---

## Key benefits of defined interaction modes

- Reduces unnecessary interruptions and confusion between teams.
- Ensures purposeful and effective collaboration.
- Enhances the flow of value across the organization.

[Learn more about Cognitive Load and its role in team design.](/docs/teamtopologies/cognitive-load)
72 changes: 72 additions & 0 deletions _pages/docs/teamtopologies/teamtopologies-overview.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
---
title: "Introduction to Team Topologies"
layout: single
description: "Discover the principles of Team Topologies and how they enhance the User Needs Mapping approach."
permalink: /docs/teamtopologies/
toc: true
toc_sticky: true
toc_label: "Overview of Team Topologies"
sidebar:
nav: docs
---

![Team Topologies Overview](/assets/images/teamtopologies/TeamTop_cover_RGB_flat_stroke.jpg){: style="width: 200px; float: right;"}

**Team Topologies: Designing Teams for Fast Flow**
Team Topologies provides a practical principles, patterns and practices for designing and structuring teams to optimize delivery speed and minimize cognitive load. These principles are key to creating effective team boundaries within any organization.

---

## Why Team Topologies?

Traditional team structures often create silos and inefficiencies, hindering value delivery. Team Topologies introduces a dynamic approach to team design based on two core principles:

1. **Fast flow of change:** Teams should be structured to deliver value quickly and with minimal friction.
2. **Cognitive load optimization:** Team responsibilities must be manageable without overwhelming members.

By aligning teams with these principles, organizations can achieve better collaboration, clearer ownership, and faster delivery.

Team Topologies was voted one of the best Project Management books of 2020.

![Team Topologies Book](/assets/images/teamtopologies/2019-11-29-bookauthority-best-new-management-books-for-2020.png){: style="width: 200px; float: right;"}

---

## Key Concepts

### The four fundamental team types

![The four fundamental team types](/assets/images/teamtopologies/tt-four-team-types.png)

- **Stream-Aligned Teams:** Deliver value directly to users or customers by focusing on a specific stream of work (e.g., ticketing system or journey planning platform).
- **Enabling Teams:** Support stream-aligned teams by providing expertise or removing obstacles (e.g., data integration or DevOps enablement).
- **Complicated Subsystem Teams:** Manage areas of high technical complexity requiring specialized skills (e.g., machine learning models).
- **Platform <del>Teams</del> Grouping** Build and maintain reusable services or systems that other teams rely on (e.g., API platforms).

Although in the book the term "Platform Teams" is used, Matthew Skelton and Manuel Pais recommend using the term "Platform Grouping" since it is highly unlikely there will on ever be a single team that owns the platform. An organiztion may be made of multiple platform groupings all containing multiple stream-aligned teams within them.

### The three interaction modes

![The three interaction modes](/assets/images/teamtopologies/tt-three-interaction-modes.png)

1. **Collaboration:** Short-term, intensive work between teams to solve a specific problem or deliver a shared outcome.
2. **Facilitating:** One team helps another gain new skills or capabilities.
3. **X-as-a-Service:** One team provides services or resources to be consumed by another in a self-service manner, such as platform tools or APIs.

---

## How it fits with User Needs Mapping

![How it fits with User Needs Mapping](/assets/images/teamtopologies/Movie-goer-wider-journey-revised-team-overlay.png)

User Needs Mapping helps identify capabilities required to meet user needs. Team Topologies provides a structured way to assign ownership of these capabilities to the right teams.

For example:

- **Stream-Aligned Teams** can own capabilities directly tied to user needs (e.g., managing ticketing or real-time updates).
- **Platform Teams** support these capabilities by ensuring the necessary infrastructure is robust and scalable.
- **Enabling Teams** help remove bottlenecks or provide temporary expertise as new needs emerge.

Together, these approaches ensure teams are aligned, responsibilities are clear, and dependencies are minimized.

[Learn more about applying Team Topologies principles.](/docs/teamtopologies/four-team-types/)

0 comments on commit 9b69495

Please sign in to comment.