skip to main content
10.1145/2593850.2593854acmconferencesArticle/Chapter ViewAbstractPublication PagesicseConference Proceedingsconference-collections
Article

An exploratory study on reuse at google

Published: 01 June 2014 Publication History

Abstract

Software reuse is a challenging and multifaceted topic. Significant research effort has been spent to address technical and organizational aspects. However, adoption of proposed practices and novel approaches often proceeds slowly. Additionally, little is known on how reuse is currently effected in practice and which solutions have proven useful. This paper aims to shed light on the matter by studying the current practice of reuse at Google. We conduct an exploratory study with a total of 49 participants of which 39 answered our online questionnaire and 10 participated in our 1h interviews. We assess reuse practices, success factors and challenges and collect ideas for improvement. We distill our findings to provide practitioners with examples of scalable reuse practices and detail on prerequisites required to implement/tailor a similar reuse approach. Furthermore, we point out open issues to support researchers and practitioners alike to align their efforts for developing solutions.

References

[1]
S. Bajracharya, T. Ngo, E. Linstead, Y. Dou, P. Rigor, P. Baldi, and C. Lopes. Sourcerer: a search engine for open source code supporting structure-based search. In OOPSLA ’06.
[2]
V. Basili, G. Caldiera, and H. Rombach. The experience factory. Encyclopedia of software engineering, 1994.
[3]
V. Basili, G. Caldiera, and H. Rombach. The goal question metric approach. In Encyclopedia of Software Engineering. 1994.
[4]
V. Bauer, L. Heinemann, and F. Deissenboeck. A Structured Approach to Assess Third-Party Library Usage. In ICSM’12.
[5]
K. Charmaz. Constructing grounded theory: A practical guide through qualitative analysis. Pine Forge Press, 2006.
[6]
R. G. Fichman and C. F. Kemerer. Incentive compatibility and systematic software reuse. The Journal of Systems and Software, 2001.
[7]
W. Frakes and C. J. Fox. Quality improvement using a software reuse failure modes model. Software Engineering, IEEE Transactions on, 1996.
[8]
W. Frakes and K. Kang. Software reuse research: Status and future. In IEEE Transactions on Software Engineering, 2005.
[9]
W. Frakes and G. Succi. An industrial study of reuse, quality, and productivity. In Journal of Systems and Software, 2001.
[10]
R. L. Glass. Reuse: What’s wrong with this picture? IEEE Software, 1998.
[11]
O. Hummel and C. Atkinson. Using the web as a reuse repository. In Reuse of Off-the-Shelf Components. Springer, 2006.
[12]
R. Joos. Software reuse at motorola. In IEEE Software, 1994.
[13]
E.-A. Karlsson. Software reuse: a holistic approach. John Wiley & Sons, Inc., 1995.
[14]
Y. Kim and E. A. Stohr. Software reuse: Issues and research directions. In HICSS 1992.
[15]
B. Klatt, Z. Durdik, H. Koziolek, K. Krogmann, J. Stammel, and R. Weiss. Identify impacts of evolving third party components on long-living software systems. In CSMR’12.
[16]
R. Land, D. Sundmark, F. Lueders, I. Krasteva, and A. Causevic. Reuse with software components - a survey of industral state of practice. In ICSR’09, 2009.
[17]
W. Lim. Effects of reuse on quality, productivity, and economics. IEEE Software, 2002.
[18]
A. Lynex and P. J. Layzell. Organisational considerations for software reuse. Annals of Software Engineering, 1998.
[19]
M. McILROY. Mass produced soptware components. In NATO SE Conference Report, 1968.
[20]
H. Mili, F. Mili, and A. Mili. Reusing software: Issues and research directions. In IEEE Transactions on Software Engineering, 1995.
[21]
P. Mohagheghi and R. Conradi. Quality, productivity and economic benefits of software reuse: a review of industrial studies. Empirical Software Engineering, 2007.
[22]
M. Morisio, M. Ezran, and C. Tully. Success and failure factors in software reuse. Software Engineering, IEEE Transactions on, 2002.
[23]
S. Raemaekers, A. van Deursen, and J. Visser. Exploring Risks in the Usage of Third-Party Libraries. In SQM 2012.
[24]
M. P. Robillard and R. Deline. A field study of API learning obstacles. Empirical Software Engineering, 2011.
[25]
M. P. Robillard, R. Walker, and T. Zimmermann. Recommendation systems for software engineering. Software, IEEE, 2010.
[26]
K. Sherif and A. Vinze. Barriers to adoption of software reuse. a qualitative study. Information and Management, 2003.
[27]
O. P. N. Slyngstad, A. Gupta, R. Conradi, P. Mohagheghi, H. Rønneberg, and E. Landre. An empirical study of developers views on software reuse in statoil asa. In ISESE 2006.
[28]
M. Zand, V. Basili, I. Baxter, M. Griss, E.-A. Karlsson, and D. Perry. Reuse r&d: Gap between theory and practice. In SSR 1999.

Cited By

View all
  • (2025)Predicting software reuse using machine learning techniques—A case study on open-source Java software systemsPLOS ONE10.1371/journal.pone.031451220:2(e0314512)Online publication date: 13-Feb-2025
  • (2025)Refactoring to Standard C++20 ModulesJournal of Software: Evolution and Process10.1002/smr.273637:1Online publication date: 22-Jan-2025
  • (2022)Dependable workflow management system for smart farmsConnection Science10.1080/09540091.2022.208307834:1(1833-1854)Online publication date: 22-Jun-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SER&IPs 2014: Proceedings of the 1st International Workshop on Software Engineering Research and Industrial Practices
June 2014
41 pages
ISBN:9781450328593
DOI:10.1145/2593850
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

In-Cooperation

  • TCSE: IEEE Computer Society's Tech. Council on Software Engin.

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 June 2014

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Case study
  2. Empirical
  3. Industrial
  4. Practice
  5. Reuse
  6. Software

Qualifiers

  • Article

Conference

ICSE '14
Sponsor:

Upcoming Conference

ICSE 2025

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)12
  • Downloads (Last 6 weeks)0
Reflects downloads up to 20 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2025)Predicting software reuse using machine learning techniques—A case study on open-source Java software systemsPLOS ONE10.1371/journal.pone.031451220:2(e0314512)Online publication date: 13-Feb-2025
  • (2025)Refactoring to Standard C++20 ModulesJournal of Software: Evolution and Process10.1002/smr.273637:1Online publication date: 22-Jan-2025
  • (2022)Dependable workflow management system for smart farmsConnection Science10.1080/09540091.2022.208307834:1(1833-1854)Online publication date: 22-Jun-2022
  • (2022)API beauty is in the eye of the clientsJournal of Systems and Software10.1016/j.jss.2021.111134184:COnline publication date: 1-Feb-2022
  • (2021)Search4Code: Code Search Intent Classification Using Weak Supervision2021 IEEE/ACM 18th International Conference on Mining Software Repositories (MSR)10.1109/MSR52588.2021.00077(575-579)Online publication date: May-2021
  • (2021)A comprehensive study of bloated dependencies in the Maven ecosystemEmpirical Software Engineering10.1007/s10664-020-09914-826:3Online publication date: 25-Mar-2021
  • (2020)How Graduate Computing Students Search When Using an Unfamiliar Programming LanguageProceedings of the 28th International Conference on Program Comprehension10.1145/3387904.3389274(160-171)Online publication date: 13-Jul-2020
  • (2020)Understanding stack overflow code quality: A recommendation of cautionScience of Computer Programming10.1016/j.scico.2020.102516(102516)Online publication date: Jul-2020
  • (2018)Evaluating how developers use general-purpose web-search for code retrievalProceedings of the 15th International Conference on Mining Software Repositories10.1145/3196398.3196425(465-475)Online publication date: 28-May-2018
  • (2018)Code Reuse in Stack Overflow and Popular Open Source Java Projects2018 25th Australasian Software Engineering Conference (ASWEC)10.1109/ASWEC.2018.00027(141-150)Online publication date: Nov-2018
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media