Slide 1

Slide 1 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com Collaborative Software Design: How to facilitate domain modelling decisions Photo by Agnieszka Ziomek on Unsplash

Slide 2

Slide 2 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com Photo by Felix Mooneeram on Unsplash What is happening at BigScreen?

Slide 3

Slide 3 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 4

Slide 4 text

Features take longer and longer, or to expensive to implement, or not possible at all! We would like to extend movies Photo by Felix Mooneeram on Unsplash Sorry, we can't do that right now. @gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 5

Slide 5 text

Frustrations and polarisation Photo by Felix Mooneeram on Unsplash @gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com When will we get the new feature? They said it wasn't possible... AGAIN

Slide 6

Slide 6 text

For everyone.... Photo by Felix Mooneeram on Unsplash @gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com How was the meeting? I had to say "we can't do that right now", AGAIN

Slide 7

Slide 7 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 8

Slide 8 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com @kenny.weave-​ it.org Independent consultant and trainer in Software architecture, technical leadership, and sociotechnical systems design @gienverschatse.com Consultant @ Aardling

Slide 9

Slide 9 text

© Collaborative-​ software-​ design.com Purpose, needs & Problems Value stream: All activities a team performs from understanding the purpose & problem to building that solution without being blocked Stream-​aligned team: Long-​term design + build + run for software-​enriched services in a small, stable team of around ~5-9 people Solution Feedback 💡You DESIGN it, you build it and you run it! @gienverschatse.com | @kenny.weave-​ it.org

Slide 10

Slide 10 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com https://amplitude.com/blog/journey-​ to-​ product-​ teams-​ infographic

Slide 11

Slide 11 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com Game of Telephone - 3 guys draw on each others back - Try to … YouTube

Slide 12

Slide 12 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com It is not the domain experts knowledge that goes to production, it is the assumption of the developers that goes to production — Alberto Brandolini, Creator of Eventstorming

Slide 13

Slide 13 text

collaborative modelling "a visualization technique to analyze complex and conflict-​ laden decision-​ making processes with all relevant stakeholders and decision-​ makers to create a shared understanding." @gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 14

Slide 14 text

"a visualization technique to analyze complex and conflict-​ laden decision-​ making processes with all relevant stakeholders and decision-​ makers to create a shared understanding." @gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com A visualisation technique Shared understanding with all relevant stakeholders... Decision-​ making processes Analyze complex and conflict-​ laden ... 1. 2. 3. 4. collaborative modelling

Slide 15

Slide 15 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com 1. A visualisation technique Time and date where selected theather selected number of ticket selected seats choosen seats got allocated no seats got seleceted 1 tickets for seats

Slide 16

Slide 16 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com Example mapping Core domain chats Context mapping and many more... Bounded context canvas There are many tools out there!

Slide 17

Slide 17 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com In collaborative modelling, the right tool should eliminate the friction that blocks knowledge sharing. Simplicity is key, as it allows for the unhindered exchange of wisdom and promotes the development of a shared understanding, built upon the foundation of diverse perspectives Photo by Katarzyna Pypla on Unsplash

Slide 18

Slide 18 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com 2. Shared understanding with all relevant stakeholders... 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. AKA Domain Modelling

Slide 19

Slide 19 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 20

Slide 20 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com Seats Reserved Tickets Received Payment Completed Ticket sold Movie selected 4 normal pricing selected Total price calculated Seat reservation suggested View time selected Payment details provided Seats moved Seats confirmed 4 friends want to watch the new Marvel movie Website opened Country selected Language selected Theater picked Date picked Domain event Legend Use Collaborative Modelling for design activities....

Slide 21

Slide 21 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 22

Slide 22 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 23

Slide 23 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com 💡There is a lot more design activities usually needed between decompose and getting to this design!

Slide 24

Slide 24 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com 3. Decision-​ making processes

Slide 25

Slide 25 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 26

Slide 26 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 27

Slide 27 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 28

Slide 28 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 29

Slide 29 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 30

Slide 30 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 31

Slide 31 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 32

Slide 32 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 33

Slide 33 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 34

Slide 34 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 35

Slide 35 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 36

Slide 36 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 37

Slide 37 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 38

Slide 38 text

gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 39

Slide 39 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 40

Slide 40 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com What could possibly go wrong?! Let's go!

Slide 41

Slide 41 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com What could possibly go wrong! RIGHT?

Slide 42

Slide 42 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com 💡Everyone can facilitate if allowed, it does not have to be 1 person. 4. Analyze complex and conflict-​ laden ...

Slide 43

Slide 43 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 44

Slide 44 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com Why Do Some Voices Dominate?

Slide 45

Slide 45 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 46

Slide 46 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com Symbolic violence is the invisible forms of power that manifest in everyday practices, language, and cultural norms (The shadows), leading individuals to accept and internalize their social status and the dominance of more powerful groups. Photo by Raghuvansh Luthra on Unsplash

Slide 47

Slide 47 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com Higher-​ ranking individuals may suffer from dominance blindness, where they fail to recognize or acknowledge the privileges and advantages they have and fail to understand the daily effect it has on someone with lower ranking. Photo by Tomas Martinez on Unsplash

Slide 48

Slide 48 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com Photo by Spencer Davis on Unsplash Own your rank: Recognize and take responsibility for your personal power, privileges, and biases. Play your rank: Actively navigating and utilizing one's position or status, understanding its fluidity, and influencing interpersonal dynamics through subtle non-​ verbal behaviors and interactions. Share your rank Using your position, power, or privilege to amplify marginalized voices and ensure that all perspectives are considered. Dear CoMo

Slide 49

Slide 49 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 50

Slide 50 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 51

Slide 51 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 52

Slide 52 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 53

Slide 53 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 54

Slide 54 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 55

Slide 55 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com When you notice somebody is resisting a new technology, dig deeper into why this person is objecting to adapting it. Have a coffee with this person, show that you are actively listening to them Photo by Jon Tyson on Unsplash Dear CoMo

Slide 56

Slide 56 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com Track discussions during collaborative modelling: You know when a conflict turns dysfunctional when dialogues or discussions move towards the notion of right or wrong. Photo by Kenny Eliason on Unsplash Dear CoMo

Slide 57

Slide 57 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com So who can decide now?

Slide 58

Slide 58 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com The decision-​ maker is the person that has the authority and the permission to allocate the resources when an alternative has been chosen. They can place the decision with the group that has to live with the consequences of the decision. Understanding Influence for Better Decisions

Slide 59

Slide 59 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 60

Slide 60 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com Gain all Views Find the alternative view and make it safe to say no Spread the alternative view What will it take to come along Go Fishing - the argument (Say what needs to be said) 1. 2. 3. 4. 5. Vote for majority Vote for inclusion 💡A majority vote is only when more than half voted on 1 alternative. 💡When you did not reach a decision for 3 rounds of step 1-4, then you go to 5 Facilitate Deeper Democratic Decisions

Slide 61

Slide 61 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com Regardless of how or who made the decision is ... ask: What do you need to go along with this decision? Dear CoMo

Slide 62

Slide 62 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 63

Slide 63 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 64

Slide 64 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 65

Slide 65 text

@gienverschatse.com | @kenny.weave-​ it.org © Collaborative-​ software-​ design.com

Slide 66

Slide 66 text

© Collaborative-​ software-​ design.com Get the BOOK! 45% off csdoop45 https://collaborative-​ software-​ design.com/faq/ Dear CoMo LEAVE THE JUDGING TO THE CATS!! https://weave-​ it.org @kenny.weave-​ it.org /in/kenny-​ baas/ https://www.aardling.eu @gienverschatse.com /in/gien-​ verschatse/