Comparison of release
engineering practices in a large
mature company and a startup
Eero Laukkanen, Maria Paasivaara, Juha Itkonen, Casper Lassenius
eero.laukkanen@solita.fi
+
Why is this study important?
Context in software engineering (Dybå et al. 2012)
- Software engineering phenomena are essentially context-specific
- Attempts to produce universal results often lead to hasty generalization
- It is important to link research findings to the context they are found in
Adoption of modern release engineering and context (Laukkanen et al. 2017)
- Few studies on the effect of the context on release engineering practices
- Product context: Few reported successes outside web application domain
- Organization context: Few reported successes in large companies and startups
What is modern release engineering?
Release engineering: everything from source code change to being used
Modern release engineering (Adams and McIntosh 2016)
- Fast and frequent release cycles
- Extensive version control
- Build, test and deployment automation
- End-to-end organizational collaboration (DevOps)
- Defect detection during and after production deployments, automated rollbacks
What did we study?
Goal: Understand how the organizational context affects release engineering practices in
a startup compared to a large mature company
RQ1. What release engineering practices had the case organizations implemented?
RQ2. What outcomes did the implemented release engineering practices have for the case
organizations?
RQ3. What were the reasons for differences in release engineering practices in the case
organizations?
Who were studied?
Theme Case BigCorp Case SmallOrg
Organizational context Product development unit in a large mature
company
Startup company
Company size > 20,000 50
Case organization size 180 50
Distribution of the
organization
Two sites in Europe, one site in Asia One site in North
America
Organizations developed competing products
BigCorp acquired SmallOrg after losing new customers to it
What research methods were used?
What research methods were used?
18 qualitative interviews with a flexible interview guide, inductive coding
Continuous integration data (2600+ builds during 24 weeks)
Preliminary research in BigCorp (1 background interview, 2 group interviews)
Triangulation by
- multiple researchers
- multiple data collection methods
- interviewees from different roles
- case representative agreement
Results
What kind of product was developed?
Early market, ambiguous requirements, substantial growth expected
Installed to customer premises, integrated with customer-specific production systems
Customer production environments vary significantly
Sales process starts with proof of concept in the customer environment
During proof of concepts, customer-specific changes are often requested
After full production deployment, most customers do not want very frequent releases (6-12
months is OK)
Some of defects can be only discovered in the customer production environments
What kind of organizations were
developing the products?
Theme Case BigCorp Case SmallOrg
Customers Tens One, Friendly
Organizational
structure
Large, Distributed, Functional Small, Co-located,
Collaborative
Resources Sufficient workforce and Test
equipment
Limited workforce and Test
equipment
What release engineering practices had
the case organizations implemented?
What release engineering practices had
the case organizations implemented?
What release engineering practices had
the case organizations implemented?
Metric (mean) Case BigCorp Case SmallOrg
Green builds / week 1.6 (min–max: 0–10) 24.3 (min–max: 8–44)
Build success rate 1.9% (weekly min–max: 0–14%) 76.7% (weekly min–max: 38–97%)
CI execution time 2.7 h (weekly min–max: 0.23–5.0 h) 22 min (weekly min–max: 16–41 min)
What release engineering practices had
the case organizations implemented?
Case BigCorp Case SmallOrg
No systematic code review All code is reviewed through pull requests
Slow CI, broken most of the time Fast CI, unbroken most of the time
Strict definition of done, dedicated testers,
integration and non-functional testing in test
labs
No definition of done, no dedicated testers, low unit test
coverage, lack of integration and non-functional testing
Pilots with existing customers performed by
other organization than development, low
feedback from production use
Extensive testing in customer labs and production
environment by domain experts and service team
members, fast feedback to development
What outcomes did the release
engineering practices have?
Case BigCorp Case SmallOrg
Low feedback from the production use Frequent feedback from the production use
Low number of defect reports High number of defect reports
Elementary programming mistakes revealed with
new customers
Scalability and other issues with new customers
What were the reasons for differences in
release engineering practices?
What can be learned from the study?
Adopting modern release engineering practices requires different things in different contexts
In large companies, the adoption can require extensive changes in the organization
In startups, extensive automation can be difficult to achieve due to low resources
Internal verification and frequent customer validation seem to have positive effects on the
customer satisfaction
References
Adams, Bram, and Shane McIntosh. "Modern release engineering in a nutshell--why researchers
should care." Software Analysis, Evolution, and Reengineering (SANER), 2016 IEEE 23rd
International Conference on. Vol. 5. IEEE, 2016.
Dybå, Tore, Dag IK Sjøberg, and Daniela S. Cruzes. "What works for whom, where, when, and
why?: on the role of context in empirical software engineering." Proceedings of the ACM-IEEE
international symposium on Empirical software engineering and measurement. ACM, 2012.
Laukkanen, Eero, Juha Itkonen, and Casper Lassenius. "Problems, causes and solutions when
adopting continuous delivery—A systematic literature review." Information and Software Technology
82 (2017): 55-79.
+
Eero Laukkanen
eero.laukkanen@solita.fi

More Related Content

PPTX
'What the top 10 Most Disruptive Technology Trends Mean for QA and Testing' b...
PDF
Doron Reuveni - The Mobile App Quality Challenge - EuroSTAR 2010
PPTX
Business Value
PPTX
'Mixing Open And Commercial Tools' by Mauro Garofalo
PPTX
The Netizen Approach to Security and Innovation
PPTX
Requirements Driven Risk Based Testing
PPTX
'Test Data Management and Project Quality Go Hand In Hand' by Kristian Fische...
PDF
Dirk Van Dael - Test Accounting - EuroSTAR 2010
'What the top 10 Most Disruptive Technology Trends Mean for QA and Testing' b...
Doron Reuveni - The Mobile App Quality Challenge - EuroSTAR 2010
Business Value
'Mixing Open And Commercial Tools' by Mauro Garofalo
The Netizen Approach to Security and Innovation
Requirements Driven Risk Based Testing
'Test Data Management and Project Quality Go Hand In Hand' by Kristian Fische...
Dirk Van Dael - Test Accounting - EuroSTAR 2010

What's hot (18)

PPTX
Testing fundamentals in a changing world (annotated slides)
PPTX
Requirement Gathering
PPT
Graham Bath - SOA: Whats in it for Testers?
PPTX
Ben Walters - Creating Customer Value With Agile Testing - EuroSTAR 2011
PDF
Value of software testing
PDF
Controlling Project Performance by Using a Defect Model - SEPG NA 2008 - Ben ...
PDF
Testing in an agile environment
PPT
Neil Pandit - A Visual Approach to Risk Based Integration Testing
PPTX
Software Development Metrics-JPayne
PPT
Otto Vinter - Analysing Your Defect Data for Improvement Potential
PPTX
Agile Requirements Engineering Practices: An Empirical Study
PDF
Derk-Jan de Grood - 9 Causes of losing valuable testing time - EuroSTAR 2010
PPT
James Brodie - Outsourcing Partnership - Shared Perspectives
PDF
Controlling Project Performance using PDM - PSQT2005 - Ben Linders
PPT
Agile Requirements
PPTX
Testing Metrics: Project, Product, Process
PPTX
Software Testing ppt
Testing fundamentals in a changing world (annotated slides)
Requirement Gathering
Graham Bath - SOA: Whats in it for Testers?
Ben Walters - Creating Customer Value With Agile Testing - EuroSTAR 2011
Value of software testing
Controlling Project Performance by Using a Defect Model - SEPG NA 2008 - Ben ...
Testing in an agile environment
Neil Pandit - A Visual Approach to Risk Based Integration Testing
Software Development Metrics-JPayne
Otto Vinter - Analysing Your Defect Data for Improvement Potential
Agile Requirements Engineering Practices: An Empirical Study
Derk-Jan de Grood - 9 Causes of losing valuable testing time - EuroSTAR 2010
James Brodie - Outsourcing Partnership - Shared Perspectives
Controlling Project Performance using PDM - PSQT2005 - Ben Linders
Agile Requirements
Testing Metrics: Project, Product, Process
Software Testing ppt
Ad

Similar to Comparison of release engineering practices in a large mature company and a startup (20)

PPT
Agile Methods: Fact or Fiction
PPT
April 08
PPT
Requirements Engineering Process Improvement
PPT
The Challenges Of, And Advantages In, Establishing A Consistent Architectural...
PPT
Risk Driven Testing
PDF
Using the power of OpenAI with your own data: what's possible and how to start?
PPT
Essential Elements Of Distributed Agile
DOCX
Software development life cycle
PPT
Impetus qLabs Solutions
PPTX
Software Engineering Thesis Topics In Oxford.pptx
PDF
The value of benchmarking software projects
PDF
Webinar - Design Thinking for Platform Engineering
PDF
Asset Finance Systems: Project Initiation "101"
PDF
STS. Smarter devices. Smarter test systems.
PDF
NI Automated Test Outlook 2016
PPTX
Performance Continuous Integration
PDF
IBM Innovate - Uderstanding DevOps
PDF
Developer Velocity
PPT
P4 Branching Overview
PPT
Tomas Butkus: Agile Practices in Enterprise Environment
Agile Methods: Fact or Fiction
April 08
Requirements Engineering Process Improvement
The Challenges Of, And Advantages In, Establishing A Consistent Architectural...
Risk Driven Testing
Using the power of OpenAI with your own data: what's possible and how to start?
Essential Elements Of Distributed Agile
Software development life cycle
Impetus qLabs Solutions
Software Engineering Thesis Topics In Oxford.pptx
The value of benchmarking software projects
Webinar - Design Thinking for Platform Engineering
Asset Finance Systems: Project Initiation "101"
STS. Smarter devices. Smarter test systems.
NI Automated Test Outlook 2016
Performance Continuous Integration
IBM Innovate - Uderstanding DevOps
Developer Velocity
P4 Branching Overview
Tomas Butkus: Agile Practices in Enterprise Environment
Ad

More from Eero Laukkanen (6)

PPTX
Towards continuous delivery by reducing the feature freeze period: a case study
PDF
Practical usage of OPC UA information models
PDF
Bottom-up Adoption of Continuous Delivery in a Stage-gate Managed Software Or...
PDF
Continuous Integration, Delivery and Deployment
PPTX
Stakeholder Perceptions of the Adoption of Continuous Integration – A Case Study
PDF
Build waiting time in continuous integration
Towards continuous delivery by reducing the feature freeze period: a case study
Practical usage of OPC UA information models
Bottom-up Adoption of Continuous Delivery in a Stage-gate Managed Software Or...
Continuous Integration, Delivery and Deployment
Stakeholder Perceptions of the Adoption of Continuous Integration – A Case Study
Build waiting time in continuous integration

Recently uploaded (20)

PPT
Mutation in dna of bacteria and repairss
PPTX
Presentation1 INTRODUCTION TO ENZYMES.pptx
PDF
CHAPTER 3 Cell Structures and Their Functions Lecture Outline.pdf
PPTX
endocrine - management of adrenal incidentaloma.pptx
PPTX
Probability.pptx pearl lecture first year
PPT
Enhancing Laboratory Quality Through ISO 15189 Compliance
PPT
Animal tissues, epithelial, muscle, connective, nervous tissue
PPTX
INTRODUCTION TO PAEDIATRICS AND PAEDIATRIC HISTORY TAKING-1.pptx
PDF
Warm, water-depleted rocky exoplanets with surfaceionic liquids: A proposed c...
PPTX
BODY FLUIDS AND CIRCULATION class 11 .pptx
PDF
Is Earendel a Star Cluster?: Metal-poor Globular Cluster Progenitors at z ∼ 6
PPTX
limit test definition and all limit tests
PPT
LEC Synthetic Biology and its application.ppt
PPTX
Microbes in human welfare class 12 .pptx
PDF
CHAPTER 2 The Chemical Basis of Life Lecture Outline.pdf
PPT
Biochemestry- PPT ON Protein,Nitrogenous constituents of Urine, Blood, their ...
PPT
THE CELL THEORY AND ITS FUNDAMENTALS AND USE
PPTX
Seminar Hypertension and Kidney diseases.pptx
PPTX
perinatal infections 2-171220190027.pptx
PDF
Social preventive and pharmacy. Pdf
Mutation in dna of bacteria and repairss
Presentation1 INTRODUCTION TO ENZYMES.pptx
CHAPTER 3 Cell Structures and Their Functions Lecture Outline.pdf
endocrine - management of adrenal incidentaloma.pptx
Probability.pptx pearl lecture first year
Enhancing Laboratory Quality Through ISO 15189 Compliance
Animal tissues, epithelial, muscle, connective, nervous tissue
INTRODUCTION TO PAEDIATRICS AND PAEDIATRIC HISTORY TAKING-1.pptx
Warm, water-depleted rocky exoplanets with surfaceionic liquids: A proposed c...
BODY FLUIDS AND CIRCULATION class 11 .pptx
Is Earendel a Star Cluster?: Metal-poor Globular Cluster Progenitors at z ∼ 6
limit test definition and all limit tests
LEC Synthetic Biology and its application.ppt
Microbes in human welfare class 12 .pptx
CHAPTER 2 The Chemical Basis of Life Lecture Outline.pdf
Biochemestry- PPT ON Protein,Nitrogenous constituents of Urine, Blood, their ...
THE CELL THEORY AND ITS FUNDAMENTALS AND USE
Seminar Hypertension and Kidney diseases.pptx
perinatal infections 2-171220190027.pptx
Social preventive and pharmacy. Pdf

Comparison of release engineering practices in a large mature company and a startup

  • 1. Comparison of release engineering practices in a large mature company and a startup Eero Laukkanen, Maria Paasivaara, Juha Itkonen, Casper Lassenius eero.laukkanen@solita.fi +
  • 2. Why is this study important? Context in software engineering (Dybå et al. 2012) - Software engineering phenomena are essentially context-specific - Attempts to produce universal results often lead to hasty generalization - It is important to link research findings to the context they are found in Adoption of modern release engineering and context (Laukkanen et al. 2017) - Few studies on the effect of the context on release engineering practices - Product context: Few reported successes outside web application domain - Organization context: Few reported successes in large companies and startups
  • 3. What is modern release engineering? Release engineering: everything from source code change to being used Modern release engineering (Adams and McIntosh 2016) - Fast and frequent release cycles - Extensive version control - Build, test and deployment automation - End-to-end organizational collaboration (DevOps) - Defect detection during and after production deployments, automated rollbacks
  • 4. What did we study? Goal: Understand how the organizational context affects release engineering practices in a startup compared to a large mature company RQ1. What release engineering practices had the case organizations implemented? RQ2. What outcomes did the implemented release engineering practices have for the case organizations? RQ3. What were the reasons for differences in release engineering practices in the case organizations?
  • 5. Who were studied? Theme Case BigCorp Case SmallOrg Organizational context Product development unit in a large mature company Startup company Company size > 20,000 50 Case organization size 180 50 Distribution of the organization Two sites in Europe, one site in Asia One site in North America Organizations developed competing products BigCorp acquired SmallOrg after losing new customers to it
  • 7. What research methods were used? 18 qualitative interviews with a flexible interview guide, inductive coding Continuous integration data (2600+ builds during 24 weeks) Preliminary research in BigCorp (1 background interview, 2 group interviews) Triangulation by - multiple researchers - multiple data collection methods - interviewees from different roles - case representative agreement
  • 9. What kind of product was developed? Early market, ambiguous requirements, substantial growth expected Installed to customer premises, integrated with customer-specific production systems Customer production environments vary significantly Sales process starts with proof of concept in the customer environment During proof of concepts, customer-specific changes are often requested After full production deployment, most customers do not want very frequent releases (6-12 months is OK) Some of defects can be only discovered in the customer production environments
  • 10. What kind of organizations were developing the products? Theme Case BigCorp Case SmallOrg Customers Tens One, Friendly Organizational structure Large, Distributed, Functional Small, Co-located, Collaborative Resources Sufficient workforce and Test equipment Limited workforce and Test equipment
  • 11. What release engineering practices had the case organizations implemented?
  • 12. What release engineering practices had the case organizations implemented?
  • 13. What release engineering practices had the case organizations implemented? Metric (mean) Case BigCorp Case SmallOrg Green builds / week 1.6 (min–max: 0–10) 24.3 (min–max: 8–44) Build success rate 1.9% (weekly min–max: 0–14%) 76.7% (weekly min–max: 38–97%) CI execution time 2.7 h (weekly min–max: 0.23–5.0 h) 22 min (weekly min–max: 16–41 min)
  • 14. What release engineering practices had the case organizations implemented? Case BigCorp Case SmallOrg No systematic code review All code is reviewed through pull requests Slow CI, broken most of the time Fast CI, unbroken most of the time Strict definition of done, dedicated testers, integration and non-functional testing in test labs No definition of done, no dedicated testers, low unit test coverage, lack of integration and non-functional testing Pilots with existing customers performed by other organization than development, low feedback from production use Extensive testing in customer labs and production environment by domain experts and service team members, fast feedback to development
  • 15. What outcomes did the release engineering practices have? Case BigCorp Case SmallOrg Low feedback from the production use Frequent feedback from the production use Low number of defect reports High number of defect reports Elementary programming mistakes revealed with new customers Scalability and other issues with new customers
  • 16. What were the reasons for differences in release engineering practices?
  • 17. What can be learned from the study? Adopting modern release engineering practices requires different things in different contexts In large companies, the adoption can require extensive changes in the organization In startups, extensive automation can be difficult to achieve due to low resources Internal verification and frequent customer validation seem to have positive effects on the customer satisfaction
  • 18. References Adams, Bram, and Shane McIntosh. "Modern release engineering in a nutshell--why researchers should care." Software Analysis, Evolution, and Reengineering (SANER), 2016 IEEE 23rd International Conference on. Vol. 5. IEEE, 2016. Dybå, Tore, Dag IK Sjøberg, and Daniela S. Cruzes. "What works for whom, where, when, and why?: on the role of context in empirical software engineering." Proceedings of the ACM-IEEE international symposium on Empirical software engineering and measurement. ACM, 2012. Laukkanen, Eero, Juha Itkonen, and Casper Lassenius. "Problems, causes and solutions when adopting continuous delivery—A systematic literature review." Information and Software Technology 82 (2017): 55-79.