Sociotechnical Engineering at IT Meetup Bruchsal 19.09.2024 by Yevgen Nebesov
YevgenNebesov
51 views
49 slides
Sep 22, 2024
Slide 1 of 49
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
About This Presentation
In software projects, individuals and technical artifacts mutually influence each other, forming complex sociotechnical systems that necessitate a holistic approach. Despite their complexity, we can approach these systems similarly to how we approach technical systems: by eliciting requirements, des...
In software projects, individuals and technical artifacts mutually influence each other, forming complex sociotechnical systems that necessitate a holistic approach. Despite their complexity, we can approach these systems similarly to how we approach technical systems: by eliciting requirements, designing, troubleshooting, and even testing them. The talk will demonstrate how these systems engineering activities can be reinterpreted in sociotechnical systems.
Size: 57.87 MB
Language: en
Added: Sep 22, 2024
Slides: 49 pages
Slide Content
ComplexityNavigator.rocks
Sociotechnical
Engineering
19.09.2024
For kids between
8 and 88 years
old
ABOUT ME
KHARKIV
Systems architecture
in real life
Systems architecture
in books
Systems
Architect
Technical
System
Social
System
He is thinking about
another woman
People and matter are
interconnected and have
agency upon each other
SOCIOMATERIALITY
SYSTEMS ARCHITECTURE IS...
...the navigation of
complexity in projects
Four Horsemen of the Apocalypse Uncertainty
Technical
Uncertainty
Domain
Uncertainty
Political
Uncertainty
Operational
Uncertainty
DOMAIN
DRIVEN
DESIGN
TEAM
TOPOLOGIES
"Needless to say, Politics Systems Architecture is
too important to be left to the politicians
Systems Architects."
Charles de Gaulle
Yes, he really
said it!
A HOLISTIC APPROACH TO
ADDRESS MULTIDIMENSIONAL
COMPLEXITY
SYSTEMS THINKING
FOR SOCIO-TECHNICAL SYSTEMS
HOW SYSTEMS
ARCHITECTS
CALL IT?
HOW STRATEGY
CONSULTANTS
CALL IT?
Sociotechnical Systems
are systems, and can be
engineered like other
systems
Systems Engineering for Sociotechnical Systems
REQUIREMENTS
DESIGN
TROUBLESHOOTING
Sociotechnical
Engineering is
not a method
Systems Engineering for Socio-Technical Systems
REQUIREMENTS
DESIGN
TROUBLESHOOTING
Functional
Non-
functional
We are here
Functional
Requirements
FUNCTIONAL VS NON-FUNCTIONAL REQUIREMENTS
Non-functional
Requirements
Ich bin ein
Build the Product Y,
please. Nothing else.
There are project
artifacts to be created.
Functional Requirements: Examples
THE PROJECT X
SHOULD
DEVELOP THE
PRODUCT Y
Functional Requirements: Examples
We want to sink
costs by 40%
We want to build a
platform for other
products
Systems Engineering for Sociotechnical Systems
REQUIREMENTS
DESIGN
TROUBLESHOOTING
Functional
Non-
Functional
We are here
DEVELOPMENT AVAILABILITY
We want to be able to make
technical decisions without
relying on a single person
for approval.
Non-Functional Requirements: Examples
WE WANT TO INCREASE
PRODUCTIVITY BY
HIRING MORE PEOPLE
DEVELOPMENT SCALABILITY
Non-Functional Requirements: Examples
WE WANT OUR ENGINEERS TO BE
SATISFIED AND HAPPY WHILE
WORKING ON THE PROJECT
DEVELOPERS’ SATISFACTION
Non-Functional Requirements: Examples
BEWARE OF
SOCIAL DEBT
Our budget is €2,000,000,
and the time to market is
3 years.
Non-Functional Requirements: Examples
FINANCIAL AND TIME CONSTRAINTS
REQUIREMENTS HELP REDUCE
POLITICAL COMPLEXITY AND NAVIGATE
SOCIAL AND TECHNICAL DECISIONS
This sheet
is 2 dip
Requirement: Conclusion
Systems Engineering for Socio-Technical Systems
REQUIREMENTS
DESIGN
TROUBLESHOOTING
We are here
System Design
System Elements Arrangement Decisions
SYSTEM DESIGN INVOLVES MAKING
ARRANGEMENT DECISIONS ABOUT
SYSTEM ELEMENTS.
Tactics and
Design Patterns
System Elements
“People work on artefacts according
to their roles.”
Cassandra Lead ArchitectLead ArchitectLead Architect
Software Architecture
Documentation
Software EngineerSoftware EngineerSoftware Engineer
REQUIREMENTS
System Elements
Arrangement Decisions
Patterns & Tactics
Systems Engineering for Socio-Technical Systems
DESIGN
TROUBLESHOOTING
We are here
Don’t show me
Roman numbers.
Romans are not
invented yet.
PATTERNS & TACTICS
Designing
solution from
scratch
Reusing
someone else’s
work
EXAMPLE: AVAILABILITY
EXAMPLE: AVAILABILITY
Redundant Spare
REDUNDANT
SELF-TEST + REMOVAL FROM SERVICE
GIVEN the allocated Lead Software Architect is on
vacation
WHEN an external software architecture audit for the
project is requested
THEN the audit should not result in any major findings
REQUIREMENTS
Systems Engineering for Socio-Technical Systems
DESIGN
TROUBLESHOOTING
We are
here
It’s not a bug,
it’s a feature.
Eat, pray,
TROUBLESHOOT
IDEA NUMERO UNO:
BUGS ARE RELATIVE
IDEA NUMERO UNO: BUGS ARE RELATIVE
IDEA NUMERO UNO: BUGS ARE RELATIVE
IDEA NUMERO UNO: BUGS ARE RELATIVE
BUGS VS PERCEIVED BUGS
FIXING PERCEIVED BUGS MEANS
CHANGING SOCIOTECHNICAL
REQUIREMENTS
IDEA NUMERO DUO: DISSOLVING MESSES
Russel Ackoff
“Messes are
systems of
interconnected
problems”
Solving
problems
Dissolving
messes
HOW NOT TO SOLVE THE MEETING PROBLEM?
Let’s make meeting more
efficient by
appointing a moderator
and sending an agenda
upfront
Le’t cluster all meetings
in the morning
Let’s allow people decline
meetings if they have
nothing to contribute
HOW TO DISSOLVE THE MEETING MESS?
REQUIREMENTS
Systems Engineering for Socio-Technical Systems
DESIGN
TROUBLESHOOTING