SlideShare a Scribd company logo
Why Do We Break APIs?
First Answers from Developers
Laerte Xavier, André Hora, Marco Tulio Valente
Federal University of Minas Gerais, Brazil
SANER 2017
ERA Track
2
Breaking API contracts is
a common practice!
API changes break
compatiblity
28%
Historical and Impact Analysis of API Breaking Changes:
A Large-Scale Study, SANER, 2017
3
4
The rate of breaking changes
increases
over time!
Historical and Impact Analysis of API Breaking Changes:
A Large-Scale Study, SANER, 2017
5
What specific reasons motivate
API breaking changes?
6
RQ1: Why do developers break API contracts?
RQ2: Are developers aware of the impact of
breaking changes on client applications?
Research Questions
7
TOP-317
GITHUB JAVA LIBRARIES
8
TOP-317
GITHUB JAVA LIBRARIES
90
LIBRARIES WITH MORE
THAN 50 BREAKING
CHANGES
9
TOP-317
90
49
EMAILS FROM MAJOR
CONTRIBUTORS
GITHUB JAVA LIBRARIES
LIBRARIES WITH MORE
THAN 50 BREAKING
CHANGES
49
EMAILS
SENT 10
49
EMAILS
SENT
14
ANSWERS
RECEIVED 11
49
EMAILS
SENT
14
ANSWERS
RECEIVED
28%
RESPONSE
RATE 12
13
49
EMAILS
SENT
14
ANSWERS
RECEIVED
7
EMAILS
SELECTED
RESPONSE
RATE
28%
14
15
16
17
18
19
RQ1: Why do developers break API contracts?
RQ2: Are developers aware of the impact of
breaking changes on client applications?
Research Questions
20
Five main reasons
21
“The change leads to better and more developer-friendly
code (for example, to more fluent code).” [D2]
22
“The classes/methods/fields are not removed all, they are
just refactored to a better package signature.” [D6]
23
“Bugfix. For example some of the items shouldn’t be
accessible and were made private.” [D3]
24
“We switched the assertion library on which the library
was based.” [D4]
25
“It’s a deliberate policy. bitcoinj has never done a 1.0
release that would have posted API stability.” [D7]
26
RQ1: Why do developers break API contracts?
RQ2: Are developers aware of the impact of
breaking changes on client applications?
Research Questions
27
SEVEN
ANSWERS
28
FIVE
AWARE
SEVEN
ANSWERS
29
FIVE
AWARE
TWO
UNCLEAR
SEVEN
ANSWERS
30
FIVE
AWARE
TWO
UNCLEAR
SEVEN
ANSWERS
“Once one client asked to
use @Deprecated on old
methods, but we simply
don’t have enough resources
to maintain all deprecated
methods.” [D2]
31
FIVE
AWARE
TWO
UNCLEAR
SEVEN
ANSWERS
“Yes. But we are not Spring
yet. [...] Being a
small-to-middle library has
it’s benefits.” [D2]
32
Five main reasons why developers break APIs
33
Five main reasons why developers break APIs
Most developers are aware of the impact
34
Five main reasons why developers break APIs
Most developers are aware of the impact
In some cases, they adopt strategies to mitigate
35
Five main reasons why developers break APIs
Most developers are aware of the impact
In some cases, they adopt strategies to mitigate
New study contacting developers right after a
commit with a breaking change
Why do you break
APIs?
36
Why do you break
APIs?
37
Are you aware about
the impact?
Why Do We Break APIs?
First Answers from Developers
Laerte Xavier, André Hora, Marco Tulio Valente
Federal University of Minas Gerais, Brazil
SANER 2017
ERA Track

More Related Content

PDF
Brief oncontinuousperformancetesting
PPTX
Unbloat your SDLC
PPTX
Migrate to microservices
PDF
Getting Started with IT Service Intelligence
PPTX
Findings Revealed: 2015 State of the Software Supply Chain
PDF
Scale DevSecOps with your Continuous Integration Pipeline
PPTX
Maturing your path toward DevOps with Continuous Testing
PDF
Is BDD Worth It? Considerations for Advanced Test Automation
Brief oncontinuousperformancetesting
Unbloat your SDLC
Migrate to microservices
Getting Started with IT Service Intelligence
Findings Revealed: 2015 State of the Software Supply Chain
Scale DevSecOps with your Continuous Integration Pipeline
Maturing your path toward DevOps with Continuous Testing
Is BDD Worth It? Considerations for Advanced Test Automation

What's hot (20)

PDF
The DevOps Challenge: Open Source Security at Scale
PPTX
DevOps Friendly Doc Publishing for APIs & Microservices
PDF
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene Gotimer
PPTX
The Evolving Role of the Developer in 2021
PDF
Cloud Native Debugging in Production - Dig Deep into your agents
PPTX
Pull requests and testers can be friends
PDF
DevOps Powered by Splunk Hands-On
PDF
Better Governance Banking on Continuous Delivery
PDF
RSAC DevSecOpsDays 2018 - We are all Equifax
PPTX
Continuous Acceleration with a Software Supply Chain Approach
PPTX
The State of Testing 2017
PPTX
A "Firewall" for Bad Binaries
PPTX
Accelerating Innovation with Software Supply Chain Management
PPTX
DevSecOps Days SF at RSA Conference 2018
PPTX
DevOps at Lean Apps
PPTX
Shifting Left: The Top 5 Reasons to Test APIs and Components Early
PDF
Scale DevSecOps with your Continuous Integration Pipeline
PPTX
Continuous integration
PDF
Funny stories and anti-patterns from DevOps landscape
PPTX
DevOps and Splunk
The DevOps Challenge: Open Source Security at Scale
DevOps Friendly Doc Publishing for APIs & Microservices
DevOpsDays Baltimore 2018: A Definition of Done for DevSecOps - Gene Gotimer
The Evolving Role of the Developer in 2021
Cloud Native Debugging in Production - Dig Deep into your agents
Pull requests and testers can be friends
DevOps Powered by Splunk Hands-On
Better Governance Banking on Continuous Delivery
RSAC DevSecOpsDays 2018 - We are all Equifax
Continuous Acceleration with a Software Supply Chain Approach
The State of Testing 2017
A "Firewall" for Bad Binaries
Accelerating Innovation with Software Supply Chain Management
DevSecOps Days SF at RSA Conference 2018
DevOps at Lean Apps
Shifting Left: The Top 5 Reasons to Test APIs and Components Early
Scale DevSecOps with your Continuous Integration Pipeline
Continuous integration
Funny stories and anti-patterns from DevOps landscape
DevOps and Splunk
Ad

Viewers also liked (19)

PDF
Why roommates matter
PDF
Historical and Impact Analysis of API Breaking Changes: A Large-Scale Study
PDF
PDF
Informe de Coyuntura de la Construcción. Nro 136
PPTX
All love.com
PPTX
مبانی انگیزه کارکنان
PPTX
IDCC workshop: OpenAIRE services and tools for Open Research Data in H2020
PDF
Mitos y realidades sobre Álvaro Uribe Vélez
PPTX
I GUERRA MUNDIAL (versão 2017)
PDF
The promises and perils of microservices
PPTX
Data driven design (in English!)
PDF
Augustin joly - Curriculum Vitae
PPTX
Fastura technologies
ODP
Sharding and scale out
PDF
Cancun COP16 report from JUCCCE Advisor Robert Allender
PDF
Медийная реклама // Display advertising
PDF
Boosting Beer Sales by Mapping the In-store Journey
PDF
نہ جائے ماندن نہ پائے رفتن منسانہ)
Why roommates matter
Historical and Impact Analysis of API Breaking Changes: A Large-Scale Study
Informe de Coyuntura de la Construcción. Nro 136
All love.com
مبانی انگیزه کارکنان
IDCC workshop: OpenAIRE services and tools for Open Research Data in H2020
Mitos y realidades sobre Álvaro Uribe Vélez
I GUERRA MUNDIAL (versão 2017)
The promises and perils of microservices
Data driven design (in English!)
Augustin joly - Curriculum Vitae
Fastura technologies
Sharding and scale out
Cancun COP16 report from JUCCCE Advisor Robert Allender
Медийная реклама // Display advertising
Boosting Beer Sales by Mapping the In-store Journey
نہ جائے ماندن نہ پائے رفتن منسانہ)
Ad

Similar to Why Do We Break APIs? First Answers from Developers (20)

PDF
JavaScript API Deprecation in the Wild: A First Assessment (SANER 2020)
PPTX
APIs, APIs and more APIs
PDF
Versioning Best Practices for API Architecture.pdf
PDF
API Deprecation: A Systematic Mapping Study
PDF
How Libraries Evolve. A Survey of Two Industrial Companies and an Open-Source...
PPTX
Versioning APIs
PDF
Thesis+of+wei+wu.ppt
PDF
7 New Tools Java Developers Should Know
PDF
A Look At API Economy Trends In 2024 - by Bill Doerrfeld, Nordic APIs
PDF
Apidays Paris 2023 - Real-Life REST API Versioning, Alexandre Touret, Worldline
PPTX
How to deal with REST API Evolution
PDF
API Design for Your Packaged App
PPTX
Lessons learned on the Azure API Stewardship Journey.pptx
PPTX
Your API is a Product, so why doesn't it have a Product Manager?
PPTX
Patterns for automating API delivery. API conference
DOCX
The Importance of Java Programming Language for Industry Projects in 2024.docx
PPTX
Oops, I broke my API
PPTX
How APIs are Changing Software Development
PPTX
7 Global Movements That Are Evolving The Story of APIs
PPTX
Versioning rest api's
JavaScript API Deprecation in the Wild: A First Assessment (SANER 2020)
APIs, APIs and more APIs
Versioning Best Practices for API Architecture.pdf
API Deprecation: A Systematic Mapping Study
How Libraries Evolve. A Survey of Two Industrial Companies and an Open-Source...
Versioning APIs
Thesis+of+wei+wu.ppt
7 New Tools Java Developers Should Know
A Look At API Economy Trends In 2024 - by Bill Doerrfeld, Nordic APIs
Apidays Paris 2023 - Real-Life REST API Versioning, Alexandre Touret, Worldline
How to deal with REST API Evolution
API Design for Your Packaged App
Lessons learned on the Azure API Stewardship Journey.pptx
Your API is a Product, so why doesn't it have a Product Manager?
Patterns for automating API delivery. API conference
The Importance of Java Programming Language for Industry Projects in 2024.docx
Oops, I broke my API
How APIs are Changing Software Development
7 Global Movements That Are Evolving The Story of APIs
Versioning rest api's

Recently uploaded (20)

PDF
How to Migrate SBCGlobal Email to Yahoo Easily
PDF
Design an Analysis of Algorithms I-SECS-1021-03
PPTX
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
PPTX
Transform Your Business with a Software ERP System
PPTX
Essential Infomation Tech presentation.pptx
PDF
Internet Downloader Manager (IDM) Crack 6.42 Build 41
PDF
Which alternative to Crystal Reports is best for small or large businesses.pdf
PPTX
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
PPTX
Reimagine Home Health with the Power of Agentic AI​
PPTX
L1 - Introduction to python Backend.pptx
PDF
Adobe Illustrator 28.6 Crack My Vision of Vector Design
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
VVF-Customer-Presentation2025-Ver1.9.pptx
PDF
Understanding Forklifts - TECH EHS Solution
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PDF
top salesforce developer skills in 2025.pdf
PDF
AI in Product Development-omnex systems
PDF
How Creative Agencies Leverage Project Management Software.pdf
PDF
Softaken Excel to vCard Converter Software.pdf
PDF
Navsoft: AI-Powered Business Solutions & Custom Software Development
How to Migrate SBCGlobal Email to Yahoo Easily
Design an Analysis of Algorithms I-SECS-1021-03
Agentic AI : A Practical Guide. Undersating, Implementing and Scaling Autono...
Transform Your Business with a Software ERP System
Essential Infomation Tech presentation.pptx
Internet Downloader Manager (IDM) Crack 6.42 Build 41
Which alternative to Crystal Reports is best for small or large businesses.pdf
Oracle E-Business Suite: A Comprehensive Guide for Modern Enterprises
Reimagine Home Health with the Power of Agentic AI​
L1 - Introduction to python Backend.pptx
Adobe Illustrator 28.6 Crack My Vision of Vector Design
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
VVF-Customer-Presentation2025-Ver1.9.pptx
Understanding Forklifts - TECH EHS Solution
Wondershare Filmora 15 Crack With Activation Key [2025
top salesforce developer skills in 2025.pdf
AI in Product Development-omnex systems
How Creative Agencies Leverage Project Management Software.pdf
Softaken Excel to vCard Converter Software.pdf
Navsoft: AI-Powered Business Solutions & Custom Software Development

Why Do We Break APIs? First Answers from Developers