How to break an API: Cost negotiation and community values in three software ecosystems

Change introduces conict into software ecosystems: breaking changes may ripple through the ecosystem and trigger rework for users of a package, but often developers can invest additional effort or accept opportunity costs to alleviate or delay downstream costs. We performed a multiple case study of...

Full description

Saved in:
Bibliographic Details
Main Authors: Bogart, Christopher, K\303\244stner, Christian, Herbsleb, James, FERDIAN THUNG
Format: text
Language:English
Published: Institutional Knowledge at Singapore Management University 2016
Subjects:
Online Access:https://ink.library.smu.edu.sg/sis_research/3621
https://ink.library.smu.edu.sg/context/sis_research/article/4622/viewcontent/HowtoBreakAPI_2016_FSE.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Singapore Management University
Language: English
id sg-smu-ink.sis_research-4622
record_format dspace
spelling sg-smu-ink.sis_research-46222017-04-10T08:47:15Z How to break an API: Cost negotiation and community values in three software ecosystems Bogart, Christopher K\303\244stner, Christian Herbsleb, James FERDIAN THUNG, Change introduces conict into software ecosystems: breaking changes may ripple through the ecosystem and trigger rework for users of a package, but often developers can invest additional effort or accept opportunity costs to alleviate or delay downstream costs. We performed a multiple case study of three software ecosystems with different tooling and philosophies toward change, Eclipse, R/CRAN, and Node.js/npm, to understand how developers make decisions about change and change-related costs and what practices, tooling, and policies are used. We found that all three ecosystems differ substantially in their practices and expectations toward change and that those differences can be explained largely by different community values in each ecosystem. Our results illustrate that there is a large design space in how to build an ecosystem, its policies and its supporting infrastructure; and there is value in making community values and accepted tradeos explicit and transparent in order to resolve conicts and negotiate change-related costs. 2016-11-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/3621 info:doi/10.1145/2950290.2950325 https://ink.library.smu.edu.sg/context/sis_research/article/4622/viewcontent/HowtoBreakAPI_2016_FSE.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Collaboration Dependency Management Qualitative Research Semantic Versioning Software Ecosystems Computer Sciences Software Engineering
institution Singapore Management University
building SMU Libraries
continent Asia
country Singapore
Singapore
content_provider SMU Libraries
collection InK@SMU
language English
topic Collaboration
Dependency Management
Qualitative Research
Semantic Versioning
Software Ecosystems
Computer Sciences
Software Engineering
spellingShingle Collaboration
Dependency Management
Qualitative Research
Semantic Versioning
Software Ecosystems
Computer Sciences
Software Engineering
Bogart, Christopher
K\303\244stner, Christian
Herbsleb, James
FERDIAN THUNG,
How to break an API: Cost negotiation and community values in three software ecosystems
description Change introduces conict into software ecosystems: breaking changes may ripple through the ecosystem and trigger rework for users of a package, but often developers can invest additional effort or accept opportunity costs to alleviate or delay downstream costs. We performed a multiple case study of three software ecosystems with different tooling and philosophies toward change, Eclipse, R/CRAN, and Node.js/npm, to understand how developers make decisions about change and change-related costs and what practices, tooling, and policies are used. We found that all three ecosystems differ substantially in their practices and expectations toward change and that those differences can be explained largely by different community values in each ecosystem. Our results illustrate that there is a large design space in how to build an ecosystem, its policies and its supporting infrastructure; and there is value in making community values and accepted tradeos explicit and transparent in order to resolve conicts and negotiate change-related costs.
format text
author Bogart, Christopher
K\303\244stner, Christian
Herbsleb, James
FERDIAN THUNG,
author_facet Bogart, Christopher
K\303\244stner, Christian
Herbsleb, James
FERDIAN THUNG,
author_sort Bogart, Christopher
title How to break an API: Cost negotiation and community values in three software ecosystems
title_short How to break an API: Cost negotiation and community values in three software ecosystems
title_full How to break an API: Cost negotiation and community values in three software ecosystems
title_fullStr How to break an API: Cost negotiation and community values in three software ecosystems
title_full_unstemmed How to break an API: Cost negotiation and community values in three software ecosystems
title_sort how to break an api: cost negotiation and community values in three software ecosystems
publisher Institutional Knowledge at Singapore Management University
publishDate 2016
url https://ink.library.smu.edu.sg/sis_research/3621
https://ink.library.smu.edu.sg/context/sis_research/article/4622/viewcontent/HowtoBreakAPI_2016_FSE.pdf
_version_ 1770573348883922944