Slide 1

Slide 1 text

Rediscover Agile Values with Sociotechnical Design Xin Yao, Keynote Agile Tour Vienna 2024

Slide 2

Slide 2 text

DDD & architecture consultancy DDD Output + Reflective conversations + Collective change capacity + [A little about me] Change Smuggler, through DDD and architecture Xin Yao @settling_mud [email protected] @[email protected] /in/xinxin/ delay + delay Independent consultant delay Perceived software quality + delay + Technical improvement Social improvement DDD

Slide 3

Slide 3 text

Work as a complex social system with technical parts Agile values & Agile reality Probe social patterns in technical context Today's path Rediscover agile values with sociotechnical design Sociotechnical agility

Slide 4

Slide 4 text

Work as a complex social system with technical parts Agile values & Agile reality Today's path Rediscover agile values with sociotechnical design Probe social patterns in technical context Sociotechnical agility

Slide 5

Slide 5 text

Responding to change Working software Individuals and interactions Customer collaboration over over over over Agile values are born social and technical: A collaborative capacity to respond to change Software Aptitude (XP, TDD, CI/CD, iterations, feedback loops, automation) Humane Attitude (Humans talking to humans, autonomy, co-​ creation) TECHNICAL SOCIAL

Slide 6

Slide 6 text

In 2024, how heavy, or light, do Agile practices feel to you? And why do you think it has become so? Before 2001, Agile went by the name of Lightweight Methods

Slide 7

Slide 7 text

How do we "move a couch" within a scaled agile organization? Credit: Gene Kim & Steven Spear Gene Steve

Slide 8

Slide 8 text

A true "moving the couch" story involving 26 teams, deeply nested API call chains & event choreography [Anno 2022]

Slide 9

Slide 9 text

A true "moving the couch" story involving 26 teams, deeply nested API call chains & event choreography [Anno 2022] And this was supposed to be a scaled safe-​ to-​ fail experiment

Slide 10

Slide 10 text

[Two decades since the manifesto] Legacy organizations struggle with legacy systems Software industry matures Every business is a software business Aging companies with aging software Compounding sociotechnical complexity

Slide 11

Slide 11 text

Has complexity made value increment an x-​ legged race? Otherwise teams will move in an uncoordinated way - we can't have that. Surely, the more complex the world is, the more planning (aka. alignment) we need?

Slide 12

Slide 12 text

Is lightweight operating model an illusion as companies and software both grow larger, and older?

Slide 13

Slide 13 text

Work as a complex social system with technical parts Agile values & Agile reality Today's path Rediscover agile values with sociotechnical design Probe social patterns in technical context Sociotechnical agility

Slide 14

Slide 14 text

Many shades of complexity in software work How do we talk about things being complex in different ways?

Slide 15

Slide 15 text

Complex is not the same as Complicated A B C A B C D System properties predictable The whole is greater than the sum of its parts Knowable through analysis ("Sense, Analyze") Many moving parts sum up to the whole Plans & Policies ("Respond") Knowable through interaction ("Probe") System properties emergent, unpredictable Experiments & Patterns ("Sense, Respond") Repeatable, Consistent ("Scale best practice") Unrepeatable ("Hindsight does not lead to foresight") A B C D E x emergent new element disappeared relation emergent relation Cause->Effect A B C Complicated Complex Emergence unintended change in relation Credit: Cynefin, Dave Snowden new element new relation unintended change in element

Slide 16

Slide 16 text

A B C A B C D Systems properties predictable The whole is greater than the sum of its parts Knowable through analysis ("Sense, Analyze") Many moving parts sum up to the whole Plans & Policies ("Respond") Knowable through interaction ("Probe") System properties emergent, unpredictable Experiments & Patterns ("Sense, Respond") Repeatable, Consistent ("Scale past practice") Unrepeatable ("Hindsight does not lead to foresight") A B C D E x emergent new element disappered relation emergent relation Cause->Effect A B C D Complicated Complex Emergence unintended change in relation Credit: Cynefin, Dave Snowden new element new relation unintended change in element Ferrari vs. Brazilian rain forest

Slide 17

Slide 17 text

Are organizations working with software more like complex or complicated systems?

Slide 18

Slide 18 text

Are organizations working with software often managed as complex or complicated systems?

Slide 19

Slide 19 text

Is a software system more of a complex or complicated system?

Slide 20

Slide 20 text

Organizations are open, sociotechnical systems Social systems (Complex) Technical systems (Complicated/Liminal*) [software] [organization] The environment (Complex) *liminal: in between complex and complicated (credit: Dave Snowden) Work is a complex social system with technical subsystems as parts

Slide 21

Slide 21 text

(Example: governance process in a corporate change initiative) Our default social intervention mode is analytical divide-​ and-​ conquer

Slide 22

Slide 22 text

The traits of complexity are anxiety inducing. Our human brain is hard-​ wired to fear the uncertain, unpredictable, uncontrollable, ambiguous. We don't want to think of our work as a Brazilian rain forest a randomly evolving mess of emergent relations that keep changing

Slide 23

Slide 23 text

We would rather treat organizations as complicated systems - many moving parts and relations, but predictable, plannable, controllable. We wish we could divide-​ and-​ conquer human communication as decomposable software APIs. We wish our organizations were complicated Ferraris

Slide 24

Slide 24 text

Planning and process - a collective defense against our anxiety about uncertainty No one loves big, hairy plans. But, reality gets more complex & uncertain - inducing stress We need plans to break big problems into small parts We cannot step into the future without a plan ... and processes to align the many moving parts, people and tasks Plans & processes make us feel safer, in control, on the same page Credit: Steve Hearsum

Slide 25

Slide 25 text

We identify with our "roles" and feel alienated playing our "part" at the same time The planning roles The executing roles (Example: governance process in a corporate change initiative)

Slide 26

Slide 26 text

Org Design: can we technicalize the social complexity? Large-​ scale Agile practice Sociotechnical mirroring Agile frameworks Inverse Conway Spotify model Learned helplessness Skepticism Unknowability A big divide Pessimism Dehumanizing Lack of agency Reorg Transformation initiative

Slide 27

Slide 27 text

Human systems are too complex to manage Let's have the next joke about SAFe, anyone?

Slide 28

Slide 28 text

Wardley Map - technical practice vs. social practice fluency Evolution Genesis Custom Product Commodity (+rental) (+utility) 1 2 3 4 Technical innovation Mature technical practice Everything evolves with time Social practice? Sociotech practice? ?

Slide 29

Slide 29 text

If the ancient Greeks could come back now and walk among us, they would not understand much of our technology and our science. It would be very foreign. But they would be quite at home in our social problems - wars, politics, economics, various kinds of difficulties. ~ Jay Forrester We haven't evolved much in our understanding of social systems

Slide 30

Slide 30 text

The next great frontier is to understand human systems. ~Jay Forrester

Slide 31

Slide 31 text

Work as a complex social system with technical parts Agile values & Agile reality Sociotechnical agility Today's path Rediscover agile values with sociotechnical design See the social system Share the social system Probe social patterns in technical context Change the social system

Slide 32

Slide 32 text

See the social system Visual modeling of social architecture

Slide 33

Slide 33 text

YOU CAN'T FIX WHAT YOU CAN'T SEE

Slide 34

Slide 34 text

We need models to help us design the WHOLE work Where does my work come from? Where does my work go? What skills, materials and meanings do we share? Credit: Jabe Bloom Event Storming Northstar Framework Value Stream Mapping My place in the story

Slide 35

Slide 35 text

Credit: Jim Benson See the whole system Tactical info Strategic Info Cultural Info what is going on? what needs attention now? Where are we going? Where is my place in the story? How is my team a team? What does good look like? What is meaningful for me? (Agency) Example: 7 Elements of Visual Management Purposeful models My part in the whole Discoveries Decisions Shared Meaning State Triggers Visualized work Direction Narrative Culture Professionalism Identity Emergencies Action Improvement Opportunity Discovery need Shared work Complex work Current WIP Who is working Who is collaborating What is ready for release What is stuck Backlog Strategy Plans Upcoming work options Onboarding Upskilling Team identity Interaction & meetings Human repair Social contracts Improvement Correction Learning Quality Who am I and what are my values? How is work meaningful? How is work developmental? Agency Spheres of influence Affordance Visualizing work as a sociotechnical architecture (Presentation layer) (Business layer) (Infrastructure layer)

Slide 36

Slide 36 text

Visual thinking & visual models Thinking across The WHOLE sociotechnical system is a lot to hold in mind Visual models (sketches, diagrams etc.) create an external memory Visual thinking expands our mental capacity Inspiration: Ruth Malan for social & technical systems [Sociotechnical pattern]

Slide 37

Slide 37 text

Are we aligned after a townhall or all-​ hands Illustration : Jeff Patton with visual models for strategy, plan, org structure?

Slide 38

Slide 38 text

Having a visualization is no guarantee that everyone has the same interpretation of what's visualized.

Slide 39

Slide 39 text

Share the social system Surface mental models Collaborative modeling & sense making

Slide 40

Slide 40 text

Visual model Shared understanding A visual model what I see what you see

Slide 41

Slide 41 text

Org chart A social system's runtime behavior Jesper There have been 10+ reorgs in my tenure here. But it's always the same people you need to know to pool knowledge together and get stuff done. That's my knowledge network. "Mainframe specialist in a big bank" (+roadmap, plan, backlog)

Slide 42

Slide 42 text

A social system is continuously regenerated by recurring relational patterns Relational patterns are shaped by local and collective mental models (i.e. habits of thoughts & actions) To share the system, we need to have a way to surface mental models Mental models are the infrastructure layer of social system runtime To change the system, we need to have a way to unfreeze mental models E.g. Knowledge network as a relational pattern E.g. Mental model of my fastest path to knowledge and help

Slide 43

Slide 43 text

Who work and create value together? Who else do we need to align understanding with? DDD Collaborative modeling - make the implicit explicit Credit: Paul Rayner, Eric Evans What software are we building? Why are we building it? How do we build and connect software - for long-​ term changeability? Strategic Design Tactical design Visual Collaborative Modeling (models) (models) Ubiquitous (attention to) Language DDD to "smuggle in" social sensemaking

Slide 44

Slide 44 text

Smuggle social sense-​ making in technical design process (e.g. collaborative modeling sessions)

Slide 45

Slide 45 text

Collaborative Modeling & Sense Making [Sociotechnical pattern from DDD] See the forest and the trees

Slide 46

Slide 46 text

Collaborative Modeling Reflective Conversations does not necessarily lead to To share the system, we need to have a way to surface mental models To change the system, we need to have a way to unfreeze mental models

Slide 47

Slide 47 text

Let's edit out the uncomfortable elements [Sociotechnical pattern inspired by DDD] Make the implicit explicit [technical design pattern] Make the undiscussable discussable [social design pattern] Collaborative Modeling --> Reflective Conversation Shame Guilt Anxiety Fear Resentment Blame

Slide 48

Slide 48 text

Change the social system Reflective conversations Make the undiscussable discussable Languaging & emotioning

Slide 49

Slide 49 text

discussion Reflective conversation Credit: David Bohm, Peter Senge, Chris Argyris reflective advocacy Here are the data and events I see. I know I don't see the whole picture, how do you see it? This is what they mean to me, and how they make me feel. That's a perspective I haven't considered - tell me more! How do you feel about what's going on right now? I prefer that we do it this way - here is my reasoning. [Reflective]: being self-​ aware [Conversation]: open dialog inquiry advocacy advocacy dialog reflective inquiry Psychological Safety

Slide 50

Slide 50 text

Language Languaging Emotioning Knowledge transfer Knowledge processing Change the itinerary of knowledge from language to languaging (and emotioning) [Sociotechnical pattern from complexity theory] Credit: Humberto Maturana

Slide 51

Slide 51 text

My worst event storming workshop Workshop retrospective You are too in love with your model :-). We don't see the forest, only trees You=Me model=event storming

Slide 52

Slide 52 text

What is it about this situation, and about me or others, that is making open exchange difficult? The questions that got us unstuck What are you most passionate about contributing to in this domain? What is the future we dream of for this domain? Make the undiscussable discussable [social design pattern] Shame Guilt Anxiety Fear Blame Languaging Emotioning Resentment

Slide 53

Slide 53 text

Conversation is a dance of languaging and emotioning. What I say in an open conversation, is an invitation to participate with the other(s) in a domain of experiential coherence. Conversation is a dance of languaging and emotioning

Slide 54

Slide 54 text

The system changes itself in open, reflective conversations * I am contextually informed * I feel seen, heard and understood * I feel connected with others in co-​ creation * I feel powerful making my contributions to the whole Experiential Coherence (Social experience of coherence) (Mental positions become changeable in the moment)

Slide 55

Slide 55 text

What happens to visions, plans, processes, and org structures (Conventional view) A good vision, plan, process design time run time implemented by people in the org Org then becomes what the plan etc. says it will become

Slide 56

Slide 56 text

Meaning and effect of plan, process, etc. is emergent and unpredictable A good vision, plan, process design time run time mixed with competing priorities, localized meanings, actions and interactions Ideally, desirable social patterns emerge, coalesce, and are multiply realized in a system-​ wide architecture with coherent dynamics ? Credit: Humberto Maturana, Alicia Juarrero, Ralph Stacey Mission drift

Slide 57

Slide 57 text

Systemic interventions require descaled conversations A vision, plan, process etc. as probe design time run time mixed with competing priorities, localized meanings, actions and interactions Ideally, coherent social patterns (enabling constraints) are multiply realizable and persisted in a system-​ wide architecture of social dynamics. +Social pattern probes Credit: Humberto Maturana, Alicia Juarrero, Ralph Stacey, Dave Snowden (Experiential coherence is needed for change) Experiential coherence Reflective conversations

Slide 58

Slide 58 text

Complex Systems scale by decomposition to the lowest consistent level of granularity, and recombination, not by aggregation or imitation. -- Dave Snowden The way to scale is to descale Granular discovery Distributed cognition Dis-​ intermediation of data Principles of managing social complexity (Conversational Leadership) (Credit: Dave Snowden, Carolyn Baldwin, David Gurteen)

Slide 59

Slide 59 text

Prompts for dialog Roadmaps Backlogs Plans Dailys Meetings Retrospectives Workshops Design artifacts, events, processes as

Slide 60

Slide 60 text

Daily reflective conversation Credit: Milestone Systems, Systems Architecture Team Team daily stand-​ up prompts what is going on? what needs attention now? Where are we going? Where is my place in the story? How is my team a team? What does good look like? What is meaningful for me? (Agency) Example: 7 Elements of Visual Management Purposeful models Software-​ centric design Discoveries Decisions Shared understanding Tactical Cultural Strategic

Slide 61

Slide 61 text

Work as a complex social system with technical parts Agile values & Agile reality Sociotechnical agility Today's path Rediscover agile values with sociotechnical design Probe social patterns in technical context

Slide 62

Slide 62 text

A cautionary note for people with a passion for modeling and models Stay in discovery mode Hold on lightly to your favorite models Be ready to kill your darlings True agility is to detach from fixed mental positions Let go of expecting a fixed outcome

Slide 63

Slide 63 text

Agile was born a sociotechnical practice SocioTECHNICAL A collaborative capacity to respond to change in technical systems A collaborative capacity to respond to change and become the change in social systems 2001 2024 technical SOCIO The transition to higher social awareness

Slide 64

Slide 64 text

Beware of reducing social complexity to technical complication technical SOCIO Reduce social systems to technical structures & processes SocioTECHNICAL A collaborative capacity to respond to change in technical systems A collaborative capacity to respond to change and become the change in social systems 2001 2024 medium.com The Structure and Process Fallacy "If our teams were just organized in the right way, and we adopted the agile process, we'd be so much more efficient." Credit: Nick Tune

Slide 65

Slide 65 text

Let's not containerize ourselves as repeatable deployment units Let's not treat each other as abstractions Monoculture is bad for living systems Let's not forget descaled conversations in the pursuit of scaled processes

Slide 66

Slide 66 text

Rediscover social agility through our work with software We are at an important edge. Our rich and messy work is a challenge but also an opportunity. Complexity means we depend on each other to succeed, and we need to work this out together. We have developed many good habits of learning together in software system design. Time to build our collaborative change capacity, and agility, in the social systems we are part of.

Slide 67

Slide 67 text

Crafting software can be developmental and reparative Maybe software design and modeling is just an excuse to have the reflective conversations, no one has time for otherwise. Maybe software development (in all its complexity and yearning for agility) is just an excuse for humans to find our way back to each other. Working together with complex software in complex organizations, gives us a valid context to rediscover our agility and humanity. [Final reflection]

Slide 68

Slide 68 text

Thank you [email protected] @[email protected] /in/xinxin/ @settling_mud