Slide 1

Slide 1 text

@kenny_baas @[email protected] Collaborative software design for team cognitive load Check-​ in Introduction Hands-​ on Software design challenge Introduction to Team Topologies Mapping out the designs Team Topologies interaction 1. 2. 3. 4. 5.

Slide 2

Slide 2 text

@kenny_baas @[email protected] Check-​in We'll do a check-​ in with an activity called 'Impromptu Networking.' This exercise is structured into three dynamic rounds, each lasting five minutes. In each session, you'll need to randomly pair yourself with 2-3 other participants. The goal is to interview each other with the questions below. At the end of the rounds we will ask the group to share what you heard from others. Questions: Who are you and what do you do? (Quickly introduce yourself) Why did you choose this workshops? What do you know about collaborative modelling and team cognitive load? What challenges do you have designing software collaboratively?

Slide 3

Slide 3 text

@kenny_baas @[email protected]

Slide 4

Slide 4 text

@kenny_baas @[email protected]

Slide 5

Slide 5 text

restaurant system Takeout app @kenny_baas @[email protected] Home delivery ordering Takeout Customer Select products for home delivery Know delivery time Legend / Key User Need capability External capability User Depends on Process Software System Make an order for home delivery Pay For home delivery order Home delivery Fulfilment Restaurant employee Accept order Request food deliverer for a specific time Prepare order for home delivery Hand over order to deliverer Product page Home delivery order page Payment module Home delivery service restaurant service Payment service This is a fixed time configured in the restaurant service Payment provided Restaurant service Delivery broker Takeout app Takeout Customer When does my delivery arrive? What orders do I need to prepare Home delivery service Food delivery services Restaurant backoffice SPA Food Deliverer Deliver food Home delivery service Restaurant service The home delivery service can query the restaurant service for the statis of the order which changes based on the activities Based on order status change in the restaurant service the home delivery service makes a simple ETA. Go fix: Create a software design that will give an accurate ETA before completing the order. And if you can improve the delivery ETA at the same time that is even better! learnwardleymapping.com Landscape A map of physical terrain is visual, specific to the battle at hand, and includes the position of troops and obstacles relative to an anchor (magnetic North).

Slide 6

Slide 6 text

@kenny_baas @[email protected] Photo by Kaylah Matthews on Unsplash Break

Slide 7

Slide 7 text

Purpose, needs & Problems Value stream: All activities a team performs from understanding the purpose & problem to building that solution without being blocked Solution Feedback Stream-​aligned team: Long-​ term design + build + run for software-​ enriched services in a small, stable team of around ~5-9 people What we want @kenny_baas @[email protected] 💡Stop managing dependencies start unblocking flow 💡You DESIGN it, you build it and you run it! @EvelynvanKelle 💡Teams are long lived, people in the teams do not necessarily

Slide 8

Slide 8 text

@kenny_baas @[email protected] Collaborative modelling is a visualisation technique to analyse complex and conflict-​ laden decision-​ making processes with all relevant stakeholders and decision-​ makers to create a shared understanding. @EvelynvanKelle

Slide 9

Slide 9 text

Home delivery ap teams Restaurant POS team Payment team Restaurant POS team Home delivery ap teams restaurant system Takeout app @kenny_baas @[email protected] Home delivery ordering Takeout Customer Select products for home delivery Know delivery time Legend / Key User Need capability External capability User Depends on Process Software System Make an order for home delivery Pay For home delivery order Home delivery Fulfilment Restaurant employee Accept order Request food deliverer for a specific time Prepare order for home delivery Hand over order to deliverer Product page Home delivery order page Payment module Home delivery service restaurant service Payment service Payment provided Restaurant service Delivery broker Takeout app Takeout Customer When does my delivery arrive? What orders do I need to prepare Home delivery service Food delivery services Restaurant backoffice SPA Food Deliverer Deliver food Home delivery service Restaurant service teamtopologies.… Exploring team and service boundaries with User Needs Mapping - Team Topologies User Needs Mapping refers to the first four steps of the Wardley Mapping process that can provide significant value when helping understand users/customers, their needs and the dependencies required to deliver those needs within an organization. By mapp… Stream-​ aligned team Platform team Complicated Subsystem team 4 fundamental Team types Enabling team This is quirky! Quirky, why is delivery broker not with the other team?

Slide 10

Slide 10 text

Home delivery app teams Takeout app Home delivery service Foundation Payment team Restaurant POS team Flow of change Cloud service team Continuous delivery team Payment provider Containerization Continuous delivery pipeline Xaas Xaas Xaas We do not consume google pay yet Google pay is consumed by the home delivery @kenny_baas @[email protected] Legend / Key User Stream-​ aligned team Platform team Complicated Subsystem team Enabling team Collaboration Facilitating Xaas We want to pay with google pay in the restaurant The three interactions modes Restaurant service Delivery broker Restaurant Backoffice SPA Restaurant app Xaas Xaas Case 1: There is already google pay used by another team

Slide 11

Slide 11 text

Foundation Payment team Restaurant POS team Flow of change Cloud service team Continuous delivery team Payment service Restaurant service Delivery broker Containerization Continuous delivery pipeline Home delivery app teams Takeout app Xaas @kenny_baas @[email protected] Legend / Key User Stream-​ aligned team Platform team Complicated Subsystem team Enabling team Collaboration Facilitating Xaas We want to pay with google pay in the restaurant Restaurant Backoffice SPA Restaurant app Home delivery service Case 2: There is no google pay yet! Xaas Xaas Interaction can change over time We want to go to x-​ as-​ a-​ service

Slide 12

Slide 12 text

Foundation New wish Payment team Home deliveries teams Restaurant team Flow of change Xaas Cloud service team Continuous delivery team Xaas Xaas Containerization Continuous delivery pipeline @kenny_baas @[email protected] Legend / Key User Platform team Complicated Subsystem team Enabling team Collaboration Facilitating Xaas Teams have cognitive load! Restaurant service Delivery broker Restaurant Backoffice SPA Restaurant app Payment service Takeout app Home delivery service 💡This is the general way the teams are now collaborating Now map your design on the TT interactions of the teams and see what effect it has on your design!

Slide 13

Slide 13 text

Sustainable design decisions are decisions that consider the sociotechnical impact of the alternatives. After designing and analysing the alternatives, you pick the one that gives you the best sociotechnical trade-​ off with the information that is available. You create a feedback loop into your design process to improve it along the way. Over time, you will find yourself making decisions in a similar way. This is when your decisions become sustainable. Complex Environment Sociotechnical System Structure (Organization) Adapted from "Assessing the impact of new technology on complex sociotechnical systems", South African Journal of Industrial Engineering August 2016 Vol 27(2), pp 15-29, R. Oosthuizen & L. Pretorius https://www.researchgate.net/publication/306242078_Assessing_the_impact_of_new_technology_on_complex_sociotechnical_systems Licensed under https://creativecommons.org/licenses/by-​ sa/4.0/ People (Cognitive & Social) Physical System (Hardware, Software, Facilities) Task (Work) @kenny_baas @[email protected] Summary