Slide 1

Slide 1 text

Bridging the Design Gap: How Collaborative Modelling removes blockers to flow @kenny_baas @[email protected] Photo by Agnieszka Ziomek on Unsplash

Slide 2

Slide 2 text

@kenny_baas @[email protected] Photo by Bernard Hermant on Unsplash

Slide 3

Slide 3 text

@kenny_baas @[email protected] In the meantime at a grocery shop around the corner from Evelyn Context changes everything

Slide 4

Slide 4 text

@kenny_baas @[email protected] Home deliveries Flow of change Restaurant POS Photo by Ana Vieira on Unsplash The Takeout Customer wants to know an accurate ETA before completing the order Some Stakeholder Payment team Who will they ask? *note: this is a made up example!

Slide 5

Slide 5 text

Restaurant POS Home deliveries @kenny_baas @[email protected] Home deliveries Restaurant POS Payments Restaurant POS Home deliveries restaurant system Takeout app 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 Enabling team This is quirky! Quirky, why is delivery broker not with the other team? The landscape is never "aligned" *note: this is a made up example!

Slide 6

Slide 6 text

@kenny_baas @[email protected] Photo by Simon Kadula on Unsplash Everyone who communicates within an organisation that is building software is a software designer!

Slide 7

Slide 7 text

@kenny_baas @[email protected] indiyoung.com X Explanations Problem Space The problem space is a person's domain. It's where they are addressing something they want to make progress on, or put off, or just think about. The problem space is separate from your solutions, although the person may reach out for your tool along the… https://indiyoung.com/explanations-​ problem-​ space/ 💡Software design starts HERE However stream-​ aligned teams are usually involved somewhere here

Slide 8

Slide 8 text

@kenny_baas @[email protected] https://amplitude.com/blog/journey-​ to-​ product-​ teams-​ infographic AKA blockers to flow

Slide 9

Slide 9 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 Team first! @kenny_baas @[email protected] 💡You DESIGN it, you build it and you run it! Stream aligned teams, should aim to become product teams!

Slide 10

Slide 10 text

@kenny_baas @[email protected] Software team Stakeholders design, build, run solution(s) Express purpose, needs and problems Feedback The delayed feedback loop creates a knowledge gap between the implemented solution and the stakeholders' understanding. At times, there is a product owner, architect, UX designer, or other role acting as an intermediary. Individuals or groups, either within or outside the organization, who are invested in the outcome of solving these business problems 💡Stop managing dependencies start unblocking flow Code Tests Diagrams Documentation Observability

Slide 11

Slide 11 text

Projected in @kenny_baas @[email protected] Software team Stakeholders design, build, run solution Pool of shared meaning the sum total of knowledge, perspectives, opinions, meaning and feelings that participants in a conversation have regarding the topic at hand 💡The pool can vary in size. The delayed feedback loop creates a knowledge gap between the implemented solution and the stakeholders' understanding. Not all knowledge is returned, like technical knowledge Code Tests Diagrams Documentation Observability

Slide 12

Slide 12 text

@kenny_baas @[email protected] Unblocking team flow requires continuously cultivating the shared pool of meaning. And that cultivations happens in interactions Photo by Dragan Miljkovic on Unsplash

Slide 13

Slide 13 text

@kenny_baas @[email protected] Software team Code Tests Stakeholders design, build, run solution The delayed feedback loop creates a knowledge gap between the implemented solution and the stakeholders' understanding. Pool of shared meaning Projected in Market User research Strategy Projected in The delayed feedback loop creates a knowledge gap between the implemented solution and the stakeholders' understanding. Not all knowledge is put into the pool 💡User experience design of the product should be part of the team! Diagrams Documentation Observability

Slide 14

Slide 14 text

@kenny_baas @[email protected] The pool can quickly become a whirlpool when navigating the problem space Photo by heraldscotland

Slide 15

Slide 15 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.

Slide 16

Slide 16 text

Domain is a sphere of knowledge, influence, or activity. The subject area to which the user applies a program is the domain of the software. An area of interest or an area over which a person has control It is all about grouping concepts. Within Domain-​ Driven Design we call the entire problem space we are modelling the Domain. We decompose that space into several subdomains. If the space is big enough those subdomains can be potentially split into several subdomains again. @kenny_baas @[email protected] Using it for Domain Modelling

Slide 17

Slide 17 text

@kenny_baas @[email protected] Use collaborative modelling to create a shared understanding

Slide 18

Slide 18 text

@kenny_baas @[email protected] Users and stakeholders Code Stream-​Aligned Team Tests Domain Model Other people possibly involved in designing and building software Managers Architects User researcher .....

Slide 19

Slide 19 text

DDD is a discipline rooted in the belief that creating good software systems for problems in the complex domain cannot be done without a deep understanding of the business problems you are trying to solve in the domain. @kenny_baas @[email protected] Domain-​ Driven Design

Slide 20

Slide 20 text

@kenny_baas @[email protected] We share context, meaning and categorise business needs, purpose and problems. Through that we DESIGN a language and model to solve complex business problems Photo by Travel by Kilts

Slide 21

Slide 21 text

@kenny_baas @[email protected] Home deliveries Restaurant POS Payment team Flow of change Bring User Experience and User interface design (UX/UI) in Teams Enable or off-​load User research Home deliveries Restaurant POS Payment team Flow of change User research Enablers User researchers Facilitating Facilitating Facilitating 💡When user research are initiatives 💡When user research is done continuously. Alternate between these two User researchers Xaas Collaboration

Slide 22

Slide 22 text

@kenny_baas @[email protected] @EvelynvanKelle What could possibly go wrong?! Let's go!

Slide 23

Slide 23 text

@kenny_baas @[email protected] What could possibly go wrong! RIGHT?

Slide 24

Slide 24 text

@kenny_baas @[email protected]

Slide 25

Slide 25 text

@kenny_baas @[email protected] Humans and their interaction Humans and their interpersonal relationships Humans and their sense of hierarchy and ranking Humans and their assumptions Humans and their personal feelings and opinions Humans and their personal interest …. Humans.

Slide 26

Slide 26 text

@kenny_baas @[email protected] Ranking theory Conflict & Resistance Cognitive bias Polarities ... Behavior!

Slide 27

Slide 27 text

@kenny_baas @[email protected] Photo by ESIGNECOLOGIST A lot of problems exist because people are ignoring the “socio” in sociotechnical systems

Slide 28

Slide 28 text

@kenny_baas @[email protected] 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/

Slide 29

Slide 29 text

@kenny_baas @[email protected] Collaborative Modeling is a sociotechnical happening

Slide 30

Slide 30 text

@kenny_baas @[email protected] Choosing a certain technology might increase a skill gap that needs to be managed Defining boundaries of bounded contexts might imply team changes Decisions will (most likely...) lead to resistance and conflict ... Technical choices have social consequences and vice versa

Slide 31

Slide 31 text

@kenny_baas @[email protected] Who's taking the lead? Who talks first? Who talks a lot? Who isn't talking? Which subgroups emerge during the sessions? Are there a lot of discussions going on? Are people understanding each other? Who is moving stickies around? How much detail is required in this session? How is the group handling decision making? Lots of people in a room...

Slide 32

Slide 32 text

@kenny_baas @[email protected] A facilitator! (That can be anyone!) Who you gonna call?

Slide 33

Slide 33 text

@kenny_baas @[email protected] Collaborative software design Catalyst What do you need to go along with this decision?

Slide 34

Slide 34 text

@selketjah @kenny_baas @EvelynvanKelle @kenny_baas @[email protected]

Slide 35

Slide 35 text

@kenny_baas @[email protected] Thank You #CatTax kenny@weave-​ it.org - weave-​ it.org Get the book here