SlideShare a Scribd company logo
1 of 22
Download to read offline
Hasso Plattner Institute, University of Potsdam, Germany
christoph.matthies@hpi.de
@chrisma0
Investigating Software Engineering Artifacts
in DevOps Through the Lens
of Boundary Objects
Christoph Matthies, Robert Heinrich, Rebekka Wohlrab
June 2023
Oulu
https://conf.researchr.org/home/ease-2023
Boundary Objects
2
A theory from sociology applied to engineering organizations
“
[...] have different meanings in different social
worlds but their structure is common enough
to more than one world to make them
recognizable, a means of translation [SG89]
”
[SG89] S. L. Star & J. R. Griesemer. 1989. Institutional Ecology, “Translations and Boundary Objects:
Amateurs and Professionals in Berkeley's Museum of Vertebrate Zoology”, 1907-39.
Social Studies of Science 19, 3 (aug 1989), 387–420
Boundary Objects
3
A real-world example (also used to explain in interviews)
Methodology
■ Exploratory multiple case study [Eas+08]
□ 9 study sites, 12 interviews with industry practitioners
□ Median 9.5 years of work experience
4
[Eas+08] S. Easterbrook, J. Singer, M.-A. Storey & D. Damian. 2008. “Selecting empirical methods for
software engineering research”. In Guide to advanced empirical software engineering. 285–311.
1. Collaboration practices, coordination of dev
and ops roles, significance of engineering artifacts
2. Introduction of Boundary Object concept
3. Reflection on concept in daily work
■ Semi-Structured Interviews
Boundary Objects
5
A real-world example (also used to explain in interviews)
Research Questions
RQ1 Categories of artifacts employed
as Boundary Objects?
6
Areas of inquiry within the research paper
RQ2 Which stakeholders are involved?
RQ3 Where do practitioners see concerns?
RQ4 What attributes influence
Boundary Object relevance?
Research Questions
RQ1 Categories of artifacts employed
as Boundary Objects?
7
Presented in this talk
RQ4 What attributes influence
Boundary Object relevance?
DevOps Boundary Objects
8
Categories of Boundary Objects identified by study participants
Dev. Ops.
DevOps Boundary Objects
9
Examples of Boundary Objects identified by study participants
Dev. Ops.
■ Sprint Backlog Entry
■ Pseudo-Code
■ Metrics Dashboard
■ Software Log File
■ Wiki Page
■ Code Review Comment
■ Checklists with steps
■ Operations Runbooks
Attributes of Boundary Objects
10
Seven attributes that influenced perceptions of relevance
DevOps
Boundary
Objects
Frequency of
Change
Connected-
ness
Criticality
Level of
Automation
Structured-
ness
Lifespan
Number of
Stakeholders
DevOps
Boundary
Objects
Frequency of
Change
Connected-
ness
Criticality
Level of
Automation
Structured-
ness
Lifespan
Number of
Stakeholders
Attributes of Boundary Objects
11
Relative to other objects in a given context, how frequent are updates?
DevOps
Boundary
Objects
Frequency of
Change
■ Notifications on updates
■ Obtained info
outdated quickly
■ “a map might be a
good Boundary Object
because its speed of change is manageable” [Interview K]
DevOps
Boundary
Objects
Frequency of
Change
Connected-
ness
Criticality
Level of
Automation
Structured-
ness
Lifespan
Number of
Stakeholders
Attributes of Boundary Objects
12
How many connections to other engineering artifacts are there?
DevOps
Boundary
Objects
Connected-
ness
■ Higher degree of detail without duplication
■ Higher effort to fully explore knowledge
■ Maintenance of links
DevOps
Boundary
Objects
Frequency of
Change
Connected-
ness
Criticality
Level of
Automation
Structured-
ness
Lifespan
Number of
Stakeholders
Attributes of Boundary Objects
13
To what degree will the performance degrade if the object is
unavailable?
DevOps
Boundary
Objects
Criticality
■ Described by “how many people can’t work”
■ Consequences of inadequate/missing quality (legal reqs):
“They will literally send you to jail” [Interview K]
DevOps
Boundary
Objects
Frequency of
Change
Connected-
ness
Criticality
Level of
Automation
Structured-
ness
Lifespan
Number of
Stakeholders
Attributes of Boundary Objects
14
How much repeated manual effort is required to update the object?
■ Automate as much as possible (in theory, less in practice)
■ “If communication is ad-hoc, it is slow, get rid of it and automate”
[Interview F]
■ Monitoring and
alerting of
stakeholders
DevOps
Boundary
Objects
Level of
Automation
DevOps
Boundary
Objects
Frequency of
Change
Connected-
ness
Criticality
Level of
Automation
Structured-
ness
Lifespan
Number of
Stakeholders
Attributes of Boundary Objects
15
To what degree does the object follow set standards?
■ Highly dependent on context
■ Reports via email vs. Jira task management
■ Structure enables faster understanding
DevOps
Boundary
Objects
Structured-
ness
DevOps
Boundary
Objects
Frequency of
Change
Connected-
ness
Criticality
Level of
Automation
Structured-
ness
Lifespan
Number of
Stakeholders
Attributes of Boundary Objects
16
When is the object created and for how long is it relevant?
■ May be used only for a specific development phase
■ Archived or set as read-only
■ May require data only
available later, e.g.
metrics dashboards
DevOps
Boundary
Objects
Lifespan
DevOps
Boundary
Objects
Frequency of
Change
Connected-
ness
Criticality
Level of
Automation
Structured-
ness
Lifespan
Number of
Stakeholders
Attributes of Boundary Objects
17
How many stakeholders derive value from the object during its lifespan?
■ Includes
non-technical roles
e.g. Product
Management
■ “If a microservice is to
be monetized, the
marketing team
must interact”
[Interview E]
DevOps
Boundary
Objects
Number of
Stakeholders
Conclusion
18
■ Previously identified Boundary Objects
present in DevOps contexts
□ E.g. checklists in medicine or software security [Gil+03]
□ No single central coordination objects
■ Starting points for collaboration and
connecting stakeholders
[Gil+03] D.P. Gilliam, T.L. Wolfe, J.S. Sherif, and M. Bishop. 2003. “Software Security
Checklist for the Software Life Cycle”. In Twelfth IEEE International Workshops on
Enabling Technologies (WET 2003). 243–248.
Conclusion
19
■ Object attributes inform
knowledge management
□ E.g. Object with two stakeholders,
low criticality, and lacking automation
→ might not be worth maintenance overhead
■ “management of the data generated by the
[DevOps] toolchain is still undervalued” [Col+21]
in practice
[Col+21] A. Colantoni, A. Garmendia, L. Berardinelli, M. Wimmer, and J. Brauer. 2021. “Leveraging
Model-Driven Technologies for JSON Artefacts”. In 24th Int. Conference on Model Driven Engineering
Languages and Systems. 250–260.
Conclusion
20
“the more an agile team operates according to
DevOps, the more it benefits from its artifacts [Fors+20]
”
[Fors+20] M. Forsberg Lie, M. Sánchez-Gordón, and R. Colomo-Palacios. 2020. “DevOps in an ISO
13485 Regulated Environment”. In 14th ACM/IEEE International Symposium on Empirical Software
Engineering and Measurement. 1–11.
but the more it needs to
consciously manage the
Boundary Objects that
facilitate collaboration
Summary
21
Image Sources
22
In order of appearance
■ area by Nithinan Tatah from Noun Project (CCBY3.0)
■ Document by Liberus from Noun Project (CCBY3.0)
■ Document by DinosoftLab from Noun Project (CCBY3.0)
■ Definition by Eko Purnomo from Noun Project (CCBY3.0)
■ explain by Iconographer from Noun Project (CCBY3.0)
■ Hiking Map (hiking-map_926245) by sclance.com
■ interview by Mutualism from Noun Project (CCBY3.0)
■ Architectural Design software diagram by heinzhafner.de
■ Question by Alzam from Noun Project (CCBY3.0)
■ conclusion by WEBTECHOPS LLP from Noun Project (CCBY3.0)

More Related Content

Similar to Investigating Software Engineering Artifacts in DevOps Through the Lens of Boundary Objects

Semantic technologies for the Internet of Things
Semantic technologies for the Internet of Things Semantic technologies for the Internet of Things
Semantic technologies for the Internet of Things PayamBarnaghi
 
Era ofdataeconomyv4short
Era ofdataeconomyv4shortEra ofdataeconomyv4short
Era ofdataeconomyv4shortJun Miyazaki
 
The Consolidated Digital Workplace
The Consolidated Digital WorkplaceThe Consolidated Digital Workplace
The Consolidated Digital WorkplaceDavid Lavenda
 
06 styles and_greenfield_design
06 styles and_greenfield_design06 styles and_greenfield_design
06 styles and_greenfield_designMajong DevJfu
 
From monolithic to microservices to serverless
From monolithic to microservices to serverlessFrom monolithic to microservices to serverless
From monolithic to microservices to serverlessDavide Taibi
 
Assignment Of Sensing Tasks To IoT Devices Exploitation Of A Social Network ...
Assignment Of Sensing Tasks To IoT Devices  Exploitation Of A Social Network ...Assignment Of Sensing Tasks To IoT Devices  Exploitation Of A Social Network ...
Assignment Of Sensing Tasks To IoT Devices Exploitation Of A Social Network ...Dustin Pytko
 
13 analysis of_software_architectures
13 analysis of_software_architectures13 analysis of_software_architectures
13 analysis of_software_architecturesMajong DevJfu
 
Python's Role in the Future of Data Analysis
Python's Role in the Future of Data AnalysisPython's Role in the Future of Data Analysis
Python's Role in the Future of Data AnalysisPeter Wang
 
ICSME 2016 keynote: An ecosystemic and socio-technical view on software maint...
ICSME 2016 keynote: An ecosystemic and socio-technical view on software maint...ICSME 2016 keynote: An ecosystemic and socio-technical view on software maint...
ICSME 2016 keynote: An ecosystemic and socio-technical view on software maint...Tom Mens
 
CodeCV - Mining Expertise of GitHub Users from Coding Activities - Online.pdf
CodeCV - Mining Expertise of GitHub Users from Coding Activities - Online.pdfCodeCV - Mining Expertise of GitHub Users from Coding Activities - Online.pdf
CodeCV - Mining Expertise of GitHub Users from Coding Activities - Online.pdfMatthias Trapp
 
Social Requirements Engineering and the RWTH Aachen University Test Bed
Social Requirements Engineering and the RWTH Aachen University Test BedSocial Requirements Engineering and the RWTH Aachen University Test Bed
Social Requirements Engineering and the RWTH Aachen University Test BedRalf Klamma
 
Big Data: the weakest link
Big Data: the weakest linkBig Data: the weakest link
Big Data: the weakest linkCS, NcState
 
SOFTWARE ENGINEERING AND SOFTWARE PROJECT MANAGEMENT
SOFTWARE ENGINEERING AND SOFTWARE PROJECT MANAGEMENTSOFTWARE ENGINEERING AND SOFTWARE PROJECT MANAGEMENT
SOFTWARE ENGINEERING AND SOFTWARE PROJECT MANAGEMENTARAVINDRM2
 
Digitalisation: How can we mix the "new oil" and the "old oil? The role of IT...
Digitalisation: How can we mix the "new oil" and the "old oil? The role of IT...Digitalisation: How can we mix the "new oil" and the "old oil? The role of IT...
Digitalisation: How can we mix the "new oil" and the "old oil? The role of IT...SIRIUS Centre, University of Oslo
 
La bi, l'informatique décisionnelle et les graphes
La bi, l'informatique décisionnelle et les graphesLa bi, l'informatique décisionnelle et les graphes
La bi, l'informatique décisionnelle et les graphesCédric Fauvet
 
Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.Lionel Briand
 
DCA Symposium 6 Feb 2023.pdf
DCA Symposium 6 Feb 2023.pdfDCA Symposium 6 Feb 2023.pdf
DCA Symposium 6 Feb 2023.pdfAlan Morrison
 
Distributed Trust Architecture: The New Reality of ML-based Systems
Distributed Trust Architecture: The New Reality of ML-based SystemsDistributed Trust Architecture: The New Reality of ML-based Systems
Distributed Trust Architecture: The New Reality of ML-based SystemsLiming Zhu
 

Similar to Investigating Software Engineering Artifacts in DevOps Through the Lens of Boundary Objects (20)

Semantic technologies for the Internet of Things
Semantic technologies for the Internet of Things Semantic technologies for the Internet of Things
Semantic technologies for the Internet of Things
 
Era ofdataeconomyv4short
Era ofdataeconomyv4shortEra ofdataeconomyv4short
Era ofdataeconomyv4short
 
The Consolidated Digital Workplace
The Consolidated Digital WorkplaceThe Consolidated Digital Workplace
The Consolidated Digital Workplace
 
06 styles and_greenfield_design
06 styles and_greenfield_design06 styles and_greenfield_design
06 styles and_greenfield_design
 
From monolithic to microservices to serverless
From monolithic to microservices to serverlessFrom monolithic to microservices to serverless
From monolithic to microservices to serverless
 
Assignment Of Sensing Tasks To IoT Devices Exploitation Of A Social Network ...
Assignment Of Sensing Tasks To IoT Devices  Exploitation Of A Social Network ...Assignment Of Sensing Tasks To IoT Devices  Exploitation Of A Social Network ...
Assignment Of Sensing Tasks To IoT Devices Exploitation Of A Social Network ...
 
13 analysis of_software_architectures
13 analysis of_software_architectures13 analysis of_software_architectures
13 analysis of_software_architectures
 
Python's Role in the Future of Data Analysis
Python's Role in the Future of Data AnalysisPython's Role in the Future of Data Analysis
Python's Role in the Future of Data Analysis
 
H1803044651
H1803044651H1803044651
H1803044651
 
ICSME 2016 keynote: An ecosystemic and socio-technical view on software maint...
ICSME 2016 keynote: An ecosystemic and socio-technical view on software maint...ICSME 2016 keynote: An ecosystemic and socio-technical view on software maint...
ICSME 2016 keynote: An ecosystemic and socio-technical view on software maint...
 
CodeCV - Mining Expertise of GitHub Users from Coding Activities - Online.pdf
CodeCV - Mining Expertise of GitHub Users from Coding Activities - Online.pdfCodeCV - Mining Expertise of GitHub Users from Coding Activities - Online.pdf
CodeCV - Mining Expertise of GitHub Users from Coding Activities - Online.pdf
 
Social Requirements Engineering and the RWTH Aachen University Test Bed
Social Requirements Engineering and the RWTH Aachen University Test BedSocial Requirements Engineering and the RWTH Aachen University Test Bed
Social Requirements Engineering and the RWTH Aachen University Test Bed
 
Big Data: the weakest link
Big Data: the weakest linkBig Data: the weakest link
Big Data: the weakest link
 
SOFTWARE ENGINEERING AND SOFTWARE PROJECT MANAGEMENT
SOFTWARE ENGINEERING AND SOFTWARE PROJECT MANAGEMENTSOFTWARE ENGINEERING AND SOFTWARE PROJECT MANAGEMENT
SOFTWARE ENGINEERING AND SOFTWARE PROJECT MANAGEMENT
 
Digitalisation: How can we mix the "new oil" and the "old oil? The role of IT...
Digitalisation: How can we mix the "new oil" and the "old oil? The role of IT...Digitalisation: How can we mix the "new oil" and the "old oil? The role of IT...
Digitalisation: How can we mix the "new oil" and the "old oil? The role of IT...
 
La bi, l'informatique décisionnelle et les graphes
La bi, l'informatique décisionnelle et les graphesLa bi, l'informatique décisionnelle et les graphes
La bi, l'informatique décisionnelle et les graphes
 
Semantics and Machine Learning
Semantics and Machine LearningSemantics and Machine Learning
Semantics and Machine Learning
 
Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.Software Engineering Research: Leading a Double-Agent Life.
Software Engineering Research: Leading a Double-Agent Life.
 
DCA Symposium 6 Feb 2023.pdf
DCA Symposium 6 Feb 2023.pdfDCA Symposium 6 Feb 2023.pdf
DCA Symposium 6 Feb 2023.pdf
 
Distributed Trust Architecture: The New Reality of ML-based Systems
Distributed Trust Architecture: The New Reality of ML-based SystemsDistributed Trust Architecture: The New Reality of ML-based Systems
Distributed Trust Architecture: The New Reality of ML-based Systems
 

More from Christoph Matthies

Automated Exercises & Software Development Data
Automated Exercises & Software Development DataAutomated Exercises & Software Development Data
Automated Exercises & Software Development DataChristoph Matthies
 
Challenges (and Opportunities!) of a Remote Agile Software Engineering Projec...
Challenges (and Opportunities!) of a Remote Agile Software Engineering Projec...Challenges (and Opportunities!) of a Remote Agile Software Engineering Projec...
Challenges (and Opportunities!) of a Remote Agile Software Engineering Projec...Christoph Matthies
 
Experience vs Data: A Case for More Data-informed Retrospective Activities
Experience vs Data: A Case for More Data-informed Retrospective ActivitiesExperience vs Data: A Case for More Data-informed Retrospective Activities
Experience vs Data: A Case for More Data-informed Retrospective ActivitiesChristoph Matthies
 
More than Code: Contributions in Scrum Software Engineering Teams
More than Code: Contributions in Scrum Software Engineering TeamsMore than Code: Contributions in Scrum Software Engineering Teams
More than Code: Contributions in Scrum Software Engineering TeamsChristoph Matthies
 
Agile Software Development Practices: Perceptions & Project Data
Agile Software Development Practices: Perceptions & Project DataAgile Software Development Practices: Perceptions & Project Data
Agile Software Development Practices: Perceptions & Project DataChristoph Matthies
 
The Road to Data-Informed Agile Development Processes
The Road to Data-Informed Agile Development ProcessesThe Road to Data-Informed Agile Development Processes
The Road to Data-Informed Agile Development ProcessesChristoph Matthies
 
Counteracting Agile Retrospective Problems with Retrospective Activities
Counteracting Agile Retrospective Problems with Retrospective ActivitiesCounteracting Agile Retrospective Problems with Retrospective Activities
Counteracting Agile Retrospective Problems with Retrospective ActivitiesChristoph Matthies
 
Using Data to Inform Decisions in Agile Software Development
Using Data to Inform Decisions in Agile Software Development Using Data to Inform Decisions in Agile Software Development
Using Data to Inform Decisions in Agile Software Development Christoph Matthies
 
An Additional Set of (Automated) Eyes: Chatbots for Agile Retrospectives
An Additional Set of (Automated) Eyes: Chatbots for Agile RetrospectivesAn Additional Set of (Automated) Eyes: Chatbots for Agile Retrospectives
An Additional Set of (Automated) Eyes: Chatbots for Agile RetrospectivesChristoph Matthies
 
Feedback in Scrum: Data-Informed Retrospectives
Feedback in Scrum: Data-Informed Retrospectives Feedback in Scrum: Data-Informed Retrospectives
Feedback in Scrum: Data-Informed Retrospectives Christoph Matthies
 
Beyond Surveys: Analyzing Software Development Artifacts to Assess Teaching E...
Beyond Surveys: Analyzing Software Development Artifacts to Assess Teaching E...Beyond Surveys: Analyzing Software Development Artifacts to Assess Teaching E...
Beyond Surveys: Analyzing Software Development Artifacts to Assess Teaching E...Christoph Matthies
 
Scrum2Kanban: Integrating Kanban and Scrum in a University Software Engineeri...
Scrum2Kanban: Integrating Kanban and Scrum in a University Software Engineeri...Scrum2Kanban: Integrating Kanban and Scrum in a University Software Engineeri...
Scrum2Kanban: Integrating Kanban and Scrum in a University Software Engineeri...Christoph Matthies
 
Should I Bug You? Identifying Domain Experts in Software Projects Using Code...
 Should I Bug You? Identifying Domain Experts in Software Projects Using Code... Should I Bug You? Identifying Domain Experts in Software Projects Using Code...
Should I Bug You? Identifying Domain Experts in Software Projects Using Code...Christoph Matthies
 
Introduction to Lean Software & Kanban
Introduction to Lean Software & KanbanIntroduction to Lean Software & Kanban
Introduction to Lean Software & KanbanChristoph Matthies
 
Lightweight Collection and Storage of Software Repository Data with DataRover
Lightweight Collection and Storage of  Software Repository Data with DataRoverLightweight Collection and Storage of  Software Repository Data with DataRover
Lightweight Collection and Storage of Software Repository Data with DataRoverChristoph Matthies
 
Pybelsberg — Constraint-based Programming in Python
Pybelsberg — Constraint-based Programming in PythonPybelsberg — Constraint-based Programming in Python
Pybelsberg — Constraint-based Programming in PythonChristoph Matthies
 
Git Tricks — git utilities that make life git easier
Git Tricks — git utilities that make life git easierGit Tricks — git utilities that make life git easier
Git Tricks — git utilities that make life git easierChristoph Matthies
 
How to reverse engineer Android applications—using a popular word game as an ...
How to reverse engineer Android applications—using a popular word game as an ...How to reverse engineer Android applications—using a popular word game as an ...
How to reverse engineer Android applications—using a popular word game as an ...Christoph Matthies
 
Beat Your Mom At Solitaire—Reverse Engineering of Computer Games
Beat Your Mom At Solitaire—Reverse Engineering of Computer GamesBeat Your Mom At Solitaire—Reverse Engineering of Computer Games
Beat Your Mom At Solitaire—Reverse Engineering of Computer GamesChristoph Matthies
 
Introduction to Homomorphic Encryption
Introduction to Homomorphic EncryptionIntroduction to Homomorphic Encryption
Introduction to Homomorphic EncryptionChristoph Matthies
 

More from Christoph Matthies (20)

Automated Exercises & Software Development Data
Automated Exercises & Software Development DataAutomated Exercises & Software Development Data
Automated Exercises & Software Development Data
 
Challenges (and Opportunities!) of a Remote Agile Software Engineering Projec...
Challenges (and Opportunities!) of a Remote Agile Software Engineering Projec...Challenges (and Opportunities!) of a Remote Agile Software Engineering Projec...
Challenges (and Opportunities!) of a Remote Agile Software Engineering Projec...
 
Experience vs Data: A Case for More Data-informed Retrospective Activities
Experience vs Data: A Case for More Data-informed Retrospective ActivitiesExperience vs Data: A Case for More Data-informed Retrospective Activities
Experience vs Data: A Case for More Data-informed Retrospective Activities
 
More than Code: Contributions in Scrum Software Engineering Teams
More than Code: Contributions in Scrum Software Engineering TeamsMore than Code: Contributions in Scrum Software Engineering Teams
More than Code: Contributions in Scrum Software Engineering Teams
 
Agile Software Development Practices: Perceptions & Project Data
Agile Software Development Practices: Perceptions & Project DataAgile Software Development Practices: Perceptions & Project Data
Agile Software Development Practices: Perceptions & Project Data
 
The Road to Data-Informed Agile Development Processes
The Road to Data-Informed Agile Development ProcessesThe Road to Data-Informed Agile Development Processes
The Road to Data-Informed Agile Development Processes
 
Counteracting Agile Retrospective Problems with Retrospective Activities
Counteracting Agile Retrospective Problems with Retrospective ActivitiesCounteracting Agile Retrospective Problems with Retrospective Activities
Counteracting Agile Retrospective Problems with Retrospective Activities
 
Using Data to Inform Decisions in Agile Software Development
Using Data to Inform Decisions in Agile Software Development Using Data to Inform Decisions in Agile Software Development
Using Data to Inform Decisions in Agile Software Development
 
An Additional Set of (Automated) Eyes: Chatbots for Agile Retrospectives
An Additional Set of (Automated) Eyes: Chatbots for Agile RetrospectivesAn Additional Set of (Automated) Eyes: Chatbots for Agile Retrospectives
An Additional Set of (Automated) Eyes: Chatbots for Agile Retrospectives
 
Feedback in Scrum: Data-Informed Retrospectives
Feedback in Scrum: Data-Informed Retrospectives Feedback in Scrum: Data-Informed Retrospectives
Feedback in Scrum: Data-Informed Retrospectives
 
Beyond Surveys: Analyzing Software Development Artifacts to Assess Teaching E...
Beyond Surveys: Analyzing Software Development Artifacts to Assess Teaching E...Beyond Surveys: Analyzing Software Development Artifacts to Assess Teaching E...
Beyond Surveys: Analyzing Software Development Artifacts to Assess Teaching E...
 
Scrum2Kanban: Integrating Kanban and Scrum in a University Software Engineeri...
Scrum2Kanban: Integrating Kanban and Scrum in a University Software Engineeri...Scrum2Kanban: Integrating Kanban and Scrum in a University Software Engineeri...
Scrum2Kanban: Integrating Kanban and Scrum in a University Software Engineeri...
 
Should I Bug You? Identifying Domain Experts in Software Projects Using Code...
 Should I Bug You? Identifying Domain Experts in Software Projects Using Code... Should I Bug You? Identifying Domain Experts in Software Projects Using Code...
Should I Bug You? Identifying Domain Experts in Software Projects Using Code...
 
Introduction to Lean Software & Kanban
Introduction to Lean Software & KanbanIntroduction to Lean Software & Kanban
Introduction to Lean Software & Kanban
 
Lightweight Collection and Storage of Software Repository Data with DataRover
Lightweight Collection and Storage of  Software Repository Data with DataRoverLightweight Collection and Storage of  Software Repository Data with DataRover
Lightweight Collection and Storage of Software Repository Data with DataRover
 
Pybelsberg — Constraint-based Programming in Python
Pybelsberg — Constraint-based Programming in PythonPybelsberg — Constraint-based Programming in Python
Pybelsberg — Constraint-based Programming in Python
 
Git Tricks — git utilities that make life git easier
Git Tricks — git utilities that make life git easierGit Tricks — git utilities that make life git easier
Git Tricks — git utilities that make life git easier
 
How to reverse engineer Android applications—using a popular word game as an ...
How to reverse engineer Android applications—using a popular word game as an ...How to reverse engineer Android applications—using a popular word game as an ...
How to reverse engineer Android applications—using a popular word game as an ...
 
Beat Your Mom At Solitaire—Reverse Engineering of Computer Games
Beat Your Mom At Solitaire—Reverse Engineering of Computer GamesBeat Your Mom At Solitaire—Reverse Engineering of Computer Games
Beat Your Mom At Solitaire—Reverse Engineering of Computer Games
 
Introduction to Homomorphic Encryption
Introduction to Homomorphic EncryptionIntroduction to Homomorphic Encryption
Introduction to Homomorphic Encryption
 

Recently uploaded

What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 

Recently uploaded (20)

What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 

Investigating Software Engineering Artifacts in DevOps Through the Lens of Boundary Objects

  • 1. Hasso Plattner Institute, University of Potsdam, Germany christoph.matthies@hpi.de @chrisma0 Investigating Software Engineering Artifacts in DevOps Through the Lens of Boundary Objects Christoph Matthies, Robert Heinrich, Rebekka Wohlrab June 2023 Oulu https://conf.researchr.org/home/ease-2023
  • 2. Boundary Objects 2 A theory from sociology applied to engineering organizations “ [...] have different meanings in different social worlds but their structure is common enough to more than one world to make them recognizable, a means of translation [SG89] ” [SG89] S. L. Star & J. R. Griesemer. 1989. Institutional Ecology, “Translations and Boundary Objects: Amateurs and Professionals in Berkeley's Museum of Vertebrate Zoology”, 1907-39. Social Studies of Science 19, 3 (aug 1989), 387–420
  • 3. Boundary Objects 3 A real-world example (also used to explain in interviews)
  • 4. Methodology ■ Exploratory multiple case study [Eas+08] □ 9 study sites, 12 interviews with industry practitioners □ Median 9.5 years of work experience 4 [Eas+08] S. Easterbrook, J. Singer, M.-A. Storey & D. Damian. 2008. “Selecting empirical methods for software engineering research”. In Guide to advanced empirical software engineering. 285–311. 1. Collaboration practices, coordination of dev and ops roles, significance of engineering artifacts 2. Introduction of Boundary Object concept 3. Reflection on concept in daily work ■ Semi-Structured Interviews
  • 5. Boundary Objects 5 A real-world example (also used to explain in interviews)
  • 6. Research Questions RQ1 Categories of artifacts employed as Boundary Objects? 6 Areas of inquiry within the research paper RQ2 Which stakeholders are involved? RQ3 Where do practitioners see concerns? RQ4 What attributes influence Boundary Object relevance?
  • 7. Research Questions RQ1 Categories of artifacts employed as Boundary Objects? 7 Presented in this talk RQ4 What attributes influence Boundary Object relevance?
  • 8. DevOps Boundary Objects 8 Categories of Boundary Objects identified by study participants Dev. Ops.
  • 9. DevOps Boundary Objects 9 Examples of Boundary Objects identified by study participants Dev. Ops. ■ Sprint Backlog Entry ■ Pseudo-Code ■ Metrics Dashboard ■ Software Log File ■ Wiki Page ■ Code Review Comment ■ Checklists with steps ■ Operations Runbooks
  • 10. Attributes of Boundary Objects 10 Seven attributes that influenced perceptions of relevance DevOps Boundary Objects Frequency of Change Connected- ness Criticality Level of Automation Structured- ness Lifespan Number of Stakeholders
  • 11. DevOps Boundary Objects Frequency of Change Connected- ness Criticality Level of Automation Structured- ness Lifespan Number of Stakeholders Attributes of Boundary Objects 11 Relative to other objects in a given context, how frequent are updates? DevOps Boundary Objects Frequency of Change ■ Notifications on updates ■ Obtained info outdated quickly ■ “a map might be a good Boundary Object because its speed of change is manageable” [Interview K]
  • 12. DevOps Boundary Objects Frequency of Change Connected- ness Criticality Level of Automation Structured- ness Lifespan Number of Stakeholders Attributes of Boundary Objects 12 How many connections to other engineering artifacts are there? DevOps Boundary Objects Connected- ness ■ Higher degree of detail without duplication ■ Higher effort to fully explore knowledge ■ Maintenance of links
  • 13. DevOps Boundary Objects Frequency of Change Connected- ness Criticality Level of Automation Structured- ness Lifespan Number of Stakeholders Attributes of Boundary Objects 13 To what degree will the performance degrade if the object is unavailable? DevOps Boundary Objects Criticality ■ Described by “how many people can’t work” ■ Consequences of inadequate/missing quality (legal reqs): “They will literally send you to jail” [Interview K]
  • 14. DevOps Boundary Objects Frequency of Change Connected- ness Criticality Level of Automation Structured- ness Lifespan Number of Stakeholders Attributes of Boundary Objects 14 How much repeated manual effort is required to update the object? ■ Automate as much as possible (in theory, less in practice) ■ “If communication is ad-hoc, it is slow, get rid of it and automate” [Interview F] ■ Monitoring and alerting of stakeholders DevOps Boundary Objects Level of Automation
  • 15. DevOps Boundary Objects Frequency of Change Connected- ness Criticality Level of Automation Structured- ness Lifespan Number of Stakeholders Attributes of Boundary Objects 15 To what degree does the object follow set standards? ■ Highly dependent on context ■ Reports via email vs. Jira task management ■ Structure enables faster understanding DevOps Boundary Objects Structured- ness
  • 16. DevOps Boundary Objects Frequency of Change Connected- ness Criticality Level of Automation Structured- ness Lifespan Number of Stakeholders Attributes of Boundary Objects 16 When is the object created and for how long is it relevant? ■ May be used only for a specific development phase ■ Archived or set as read-only ■ May require data only available later, e.g. metrics dashboards DevOps Boundary Objects Lifespan
  • 17. DevOps Boundary Objects Frequency of Change Connected- ness Criticality Level of Automation Structured- ness Lifespan Number of Stakeholders Attributes of Boundary Objects 17 How many stakeholders derive value from the object during its lifespan? ■ Includes non-technical roles e.g. Product Management ■ “If a microservice is to be monetized, the marketing team must interact” [Interview E] DevOps Boundary Objects Number of Stakeholders
  • 18. Conclusion 18 ■ Previously identified Boundary Objects present in DevOps contexts □ E.g. checklists in medicine or software security [Gil+03] □ No single central coordination objects ■ Starting points for collaboration and connecting stakeholders [Gil+03] D.P. Gilliam, T.L. Wolfe, J.S. Sherif, and M. Bishop. 2003. “Software Security Checklist for the Software Life Cycle”. In Twelfth IEEE International Workshops on Enabling Technologies (WET 2003). 243–248.
  • 19. Conclusion 19 ■ Object attributes inform knowledge management □ E.g. Object with two stakeholders, low criticality, and lacking automation → might not be worth maintenance overhead ■ “management of the data generated by the [DevOps] toolchain is still undervalued” [Col+21] in practice [Col+21] A. Colantoni, A. Garmendia, L. Berardinelli, M. Wimmer, and J. Brauer. 2021. “Leveraging Model-Driven Technologies for JSON Artefacts”. In 24th Int. Conference on Model Driven Engineering Languages and Systems. 250–260.
  • 20. Conclusion 20 “the more an agile team operates according to DevOps, the more it benefits from its artifacts [Fors+20] ” [Fors+20] M. Forsberg Lie, M. Sánchez-Gordón, and R. Colomo-Palacios. 2020. “DevOps in an ISO 13485 Regulated Environment”. In 14th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement. 1–11. but the more it needs to consciously manage the Boundary Objects that facilitate collaboration
  • 22. Image Sources 22 In order of appearance ■ area by Nithinan Tatah from Noun Project (CCBY3.0) ■ Document by Liberus from Noun Project (CCBY3.0) ■ Document by DinosoftLab from Noun Project (CCBY3.0) ■ Definition by Eko Purnomo from Noun Project (CCBY3.0) ■ explain by Iconographer from Noun Project (CCBY3.0) ■ Hiking Map (hiking-map_926245) by sclance.com ■ interview by Mutualism from Noun Project (CCBY3.0) ■ Architectural Design software diagram by heinzhafner.de ■ Question by Alzam from Noun Project (CCBY3.0) ■ conclusion by WEBTECHOPS LLP from Noun Project (CCBY3.0)