[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
research-article

Inner Source in Platform-Based Product Engineering

Published: 01 December 2016 Publication History

Abstract

Inner source is an approach to collaboration across intra-organizational boundaries for the creation of shared reusable assets. Prior project reports on inner source suggest improved code reuse and better knowledge sharing. Using a multiple-case case study research approach, we analyze the problems that three major software development organizations were facing in their product line engineering efforts. We find that a root cause, the separation of product units as profit centers from a platform organization as a cost center, leads to delayed deliveries, increased defect rates, and redundant software components. All three organizations assume that inner source can help solve these problems. The article analyzes the expectations that these companies were having towards inner source and the problems they were experiencing in its adoption. Finally, the article presents our conclusions on how these organizations should adapt their existing engineering efforts.

References

[1]
N. I. Altintas, and S. Cetin, “ Managing large scale reuse across multiple software product lines,” in Proc. 10th Int. Conf. High Confidence Software Reuse Large Syst., 2008, pp. 166–177.
[2]
C. Atkinson, Component-Based Product Line Engineering with UML . Upper Saddle River, NJ, USA: Pearson Education, 2002.
[3]
D. Batory, C. Johnson, B. MacDonald, and D. Von Heeder, “ Achieving extensibility through product lines and domain-specific languages: A case study,” ACM Trans. Software Eng. Methodology, vol. Volume 11, no. Issue 2, pp. 191–214, 2002.
[4]
J. Bayer, O. Flege, P. Knauber, R. Laqua, D. Muthig, K. Schmid, and J. M. DeBaud, “ PuLSE: A methodology to develop software product lines,” in Proc. Symp. Software Reusability, 1999, pp. 122–131.
[5]
J. Bosch, Design and use of software architectures: Adopting and evolving a product line approach,Upper Saddle River, NJ, USA: Pearson Education, 2000.
[6]
J. Bosch, “ The challenges of broadening the scope of software product families,” Commun. ACM, vol. Volume 49, no. Issue 12, pp. 41–44, 2006.
[7]
J. Bosch, “ Expanding the scope of software product families: Problems and alternative approaches,” Lecture Notes in Computer Science, p. pp.4034, vol. Volume 4, 2006.
[8]
J. Bosch, and P. Bosch-Sijtsema, “ From integration to composition: On the impact of software product lines, global development and ecosystems,” J. Syst. Software, vol. Volume 83, no. Issue 1, pp. 67–76, 2010.
[9]
L. J. Bourgeois III, and K. M. Eisenhardt, “ Strategic decision processes in high velocity environments: Four cases in the microcomputer industry,” Management Sci., vol. Volume 34, no. Issue 7, pp. 816–835, 1988.
[10]
T. Berger, D. Nair, R. Rublack, J. M. Atlee, K. Czarnecki, and A. Wąsowski, “ Three cases of feature-based variability modeling in industry,” in Proc. Model-Driven Eng. Languages Syst., 2014, pp. 302–319.
[11]
T. Berger, R. H. Pfeiffer, R. Tartler, S. Dienst, K. Czarnecki, A. Wąsowski, and S. She, “ Variability mechanisms in software ecosystems,” Inform. Software Technol., vol. Volume 56, no. Issue 11, pp. 1520–1535, 2014.
[12]
S. Buhne, K. Lauenroth, and K. Pohl, “ Modelling requirements variability across product lines,” in Proc. 13th IEEE Int. Conf. Requirements Eng., 2005, pp. 41–50.
[13]
E. Capra, and A. I. Wasserman, “ A framework for evaluating managerial styles in open source projects,” in Proc. Open Source Develop. Communities Quality, 2008, pp. 1–14.
[14]
A. L. Cavaye, “ Case study research: A multi-faceted research approach for IS,” Inform. Syst. J., vol. Volume 6, no. Issue 3, pp. 227–242, 1996.
[15]
K. Charmaz, Constructing Grounded Theory . Thousand Oaks, CA, USA: Sage, 2014.
[16]
G. Chastek, and J. D. McGregor, “ Guidelines for developing a product line production plan,” Software Eng. Inst., Carnegie Mellon Univ., Tech. Rep. CMU/SEI-2002-TR-006),2002.
[17]
G. Chastek, P. Donohoe, and J. D. McGregor, “ A study of product production in software product lines,” Software Eng. Inst., Carnegie Mellon Univ., Tech. Rep. CMU/SEI-2004-TN-012, 2004.
[18]
P. Clements, and L. Northrop, Software Product Lines: Practices and Patterns . Reading, MA, USA: Addison-Wesley, 2002.
[19]
J. Corbin, and A. Strauss, Basics of Qualitative Research: Techniques and Procedures for Developing Grounded Theory. Thousand Oaks, CA, USA: Sage publications, 2014.
[20]
K. Crowston, K. Wei, J. Howison, and A. Wiggins, “ Free/Libre open-source software development: What we know and what we do not know,” ACM Comput. Surveys, vol. Volume 44, no. Issue 2, p. pp.7, 2012.
[21]
K. Czarnecki, and U. W. Eisenecker, Generative Programming: Methods, Tools, and Applications . Reading, MA, USA: Addison-Wesley, 2000.
[22]
K. Czarnecki, S. Helsen, and U. Eisenecker, “ Formalizing cardinality-based feature models and their specialization,” Software Process: Improvement and Practice, vol. Volume 10 . no. Issue 1, pp. 7–29, 2005.
[23]
P. Darke, G. Shanks, and M. Broadbent, “ Successfully completing case study research: Combining rigour, relevance and pragmatism,” Inform. Syst. J., vol. Volume 8, no. Issue 4, pp. 273–289, 1998.
[24]
S. Deelstra, M. Sinnema, and J. Bosch, “ Product derivation in software product families: A case study,” J. Syst. Software, vol. Volume 74, no. Issue 2, pp. 173–194, 2005.
[25]
D. Dhungana, P. Grünbacher, R. Rabiser, and T. Neumayer, “ Structuring the modeling space and supporting evolution in software product line engineering,” J. Syst. Software, vol. Volume 83 . no. Issue 7, pp. 1108–1122, 2010.
[26]
J. Dinkelacker, P. K. Garg, R. Miller, and D. Nelson, “ Progressive open source,” in Proc. 24th Int. Conf. Software Eng., 2002, pp. 177–184.
[27]
S. Easterbrook, J. Singer, M. A. Storey, and D. Damian, “ Selecting empirical methods for software engineering research,” in Proc. Guide Adv. Empirical Software Eng., 2008, pp. 285–311.
[28]
K. M. Eisenhardt, “ Building theories from case study research,” Acad. Manag. Rev., vol. Volume 14, no. Issue 4, pp. 532–550, 1989.
[29]
K. M. Eisenhardt, and M. E. Graebner, “ Theory building from cases: Opportunities and challenges,” Acad. Manag. J., vol. Volume 50, no. Issue 1, pp. 25–32, 2007.
[30]
K. Fogel, Producing Open Source Software: How to Run a Successful Free Software Project . Sebastopol, CA, USA: O'Reilly Media, Inc, 2005.
[31]
G. Gaughan, B. Fitzgerald, and M. Shaikh, “ An examination of the use of open source software processes as a global software development solution for commercial software engineering,” in Proc. 35th Euromicro Conf. Software Eng. Adv. Appl., 2009, pp. 20–27.
[32]
B. G. Glaser, “ The constant comparative method of qualitative analysis,” Social Problems, pp.436–445, 1965.
[33]
E. G. Guba, and Y. S. Lincoln, Fourth Generation Evaluation. Thousand Oaks, CA, USA:Sage publications, 1989.
[34]
G. Guest, A. Bunce, and L. Johnson, “ How many interviews are enough? An experiment with data saturation and variability,” Field Methods, vol. Volume 18, no. Issue 1, pp. 59–82, 2006.
[35]
L. A. Guion, D. C. Diehl, and D. McDonald. “ Triangulation: Establishing the validity of qualitative studies,” in Proc. Int. Conf. Foundations Comput. Sci., 2011.
[36]
V. K. Gurbani, A. Garvert, and J. D. Herbsleb, “ A case study of a corporate open source development model,” in Proc. 28th Int. Conf. Software Eng., 2006, pp. 472–481.
[37]
V. K. Gurbani, A. Garvert, and J. D. Herbsleb, “ Managing a corporate open source software asset,” Commun. ACM, vol. Volume 53 . no. Issue 2, pp. 155–159, 2010.
[38]
K. Ishikawa, Introduction to Quality Control . New York, NY, USA: Taylor & Francis, 1990.
[39]
H. P. Jepsen, J. G. Dall, and D. Beuche, “ Minimally invasive migration to software product lines,” in Proc. 11th Int. Software Product Line Conf., 2007, pp. 203–211.
[40]
P. Keyani. The All-Night Hackathon Is Back! Retrieved March 12, 2015, from https://code.facebook.com/posts/ 573666012669084/the-all-night-hackathon-is-back-/, 2008.
[41]
J. Lindman, M. Rossi, and P. Marttiin, “ Applying open source development practices inside a company,” in Proc. IFIP 20th World Computer Congress Open Source Develop. Communities Quality, 2008, pp. 381–387.
[42]
J. Lindman, M. Rossi, and P. Marttiin, “ Open source technology changes intra-organizational systems development—a tale of two companies,” in Proc. Eur. Conf. Inform. Syst., 2010.
[43]
J. Lindman, M. Riepula, M. Rossi, and P. Marttiin, “ Open source technology in intra-organisational software development—private markets or local libraries,” in Managing Open Innovation Technologies, Berlin, Heidelberg, Germany: Springer, 2013, pp. 107–121.
[44]
M. Lombard, J. Snyder-Duch, and C. C. Bracken, “ Content analysis in mass communication: Assessment and reporting of intercoder reliability,” Human Commun. Res., vol. Volume 28, no. Issue 4, pp. 587–604, 2002.
[45]
K. Martin, and B. Hoffman, “ An open source approach to developing software in a small organization,” IEEE Software, vol. 24, no. Issue 1, pp. 46–53, 2007.
[46]
C. Melian, and M. Mähring, “ Lost and gained in translation: Adoption of open source software development at Hewlett-Packard,” in Proc. IFIP 20th World Comput. Congress Open Source Develop. Communities Quality, 2008, pp. 93–104.
[47]
C. Melian, C. B. Ammirati, P. Garg, and G. Sevon, “ Building networks of software communities in a large corporation. technical report,” Hewlett Packard, 2002.
[48]
A. Neus, and P. Scherf, “ Opening minds: Cultural change with the introduction of open-source collaboration methods,” IBM Syst. J., vol. Volume 44, no. Issue 2, pp. 215–225, 2005.
[49]
L. Passos, K. Czarnecki, S. Apel, A. Wąsowski, C. Kästner, and J. Guo, “ Feature-oriented software evolution,” in Proc. 7th Int. Workshop Variability Modelling Software-Intensive Syst., 2013, p. pp.17.
[50]
K. Pohl, G. Böckle, and F. J. van der Linden, Software Product Line Engineering: Foundations, Principles and Techniques . Berlin, Germany: Springer, 2005.
[51]
E. Raymond, “ The cathedral and the bazaar,” Knowl. Technol. Policy, vol. Volume 12, no. Issue 3, pp. 23–49, 1999.
[52]
D. Riehle, J. Ellenberger, T. Menahem, B. Mikhailovski, Y. Natchetoi, B. Naveh, and T. Odenwald, “ Open collaboration within corporations using software forges,” IEEE Software, vol. Volume 26, no. Issue 2, pp. 52–58, 2009.
[53]
D. Riehle, “ The economic case for open source foundations,” IEEE Comput., vol. Volume 43, no. Issue 1, pp. 86–90, 2010.
[54]
D. Riehle, and D. Kips, “ Geplanter Inner Source: Ein Weg zur Profit-Center-übergreifenden Wiederverwendung,” Comput. Sci. Dept., Friedrich-Alexander-Univ. Erlangen-Nürnberg, Tech. Rep. CS-2012—05, 2012.
[55]
A. B. Sánchez, S. Segura, and A. Ruiz-Cortés, “ The Drupal framework: A case study to evaluate variability testing techniques,” in Proc. 8th Int. Workshop Variability Modelling Software-Intensive Syst., 2014, p. pp.11.
[56]
K. Schmid, “ A comprehensive product line scoping approach and its validation,” in Proc. 24th Int. Conf. Software Eng., 2002, pp. 593–603.
[57]
C. Schwanninger, I. Groher, C. Elsner, and M. Lehofer, “ Variability modelling throughout the product line lifecycle,” in Proc. 12th Int. Conf. Model Driven Eng. Languages Syst., 2009, pp. 685–689.
[58]
S. Sharma, V. Sugumaran, and B. Rajagopalan, “ A framework for creating hybrid-open source software communities,” Inform. Syst. J., vol. Volume 12, no. Issue 1, pp. 7–25, 2002.
[59]
S. She, R. Lotufo, T. Berger, A. Wasowski, and K. Czarnecki, “ The variability model of the Linux kernel,” VaMoS, vol. Volume 10, pp. 45–51, 2010.
[60]
M. Sinnema, and S. Deelstra, “ Classifying variability modeling techniques,” Inform. Software Technol., vol. Volume 49, no. Issue 7, pp. 717–739, 2007.
[61]
P. Smith, and C. Garber-Brown, “ Traveling the open road: Using open source practices to transform our organization,” in Proc. IEEE Agile Conf., 2007, pp. 156–161,.
[62]
K. J. Stol, M. A. Babar, P. Avgeriou, and B. Fitzgerald, “ A comparative study of challenges in integrating open source software and inner source software,” Inform. Software Technol., vol. Volume 53 . no. Issue 12, pp. 1319–1336, 2011.
[63]
K. J. Stol, P. Avgeriou, M. A. Babar, Y. Lucas, and B. Fitzgerald, “ Key factors for adopting inner source,” ACM Trans. Software Eng. Methodology, vol. Volume 23, no. Issue 2, p. pp.18, 2014.
[64]
R. Torkar, P. Minoves, and J. Garrigós, “ Adopting free, libre, open source software practices, techniques and methods for industrial use,” J. Assoc. Inform. Syst., vol. Volume 12, no. Issue 1, pp. 88–122, 2011.
[65]
F. J. van der Linden, K. Schmid, and E. Rommes, Software Product Lines in Action: The Best Industrial Practice in Product Line Engineering . Berlin, Germany: Springer, 2007.
[66]
F. van der Linden, “ Applying open source software principles in product lines,” Upgrade, vol. Volume 10, pp. 32–41, 2009.
[67]
F. van der Linden, “ Inner source product line development,” in Proc. 13th Int. Software Product Line Conf., 2009, p. 317.
[68]
F. van der Linden, B. Lundell, and P. Marttiin, “ Commodification of industrial software: A case for open source,” IEEE Software, vol. Volume 26, no. Issue 4, pp. 77–83, 2009.
[69]
F. van der Linden, “ Open source practices in software product line engineering,” in Proc. Int. Summer Schools Software Eng., 2013, pp. 216–235.
[70]
P. Vitharana, J. King, and H. S. Chapman, “ Impact of internal open source development on reuse: Participatory reuse in action,” J. Manag. Inform. Syst., vol. Volume 27, no. Issue 2, pp. 277–304, 2010.
[71]
J. Wesselius, “ The bazaar inside the cathedral: Business models for internal markets,” IEEE Software, vol. Volume 25, no. Issue 3, pp. 60–66, 2008.
[72]
J. A. Whittaker, J. Arbon, and J. Carollo, How Google Tests Software . Reading, MA, USA: Addison-Wesley, 2012.
[73]
R. K. Yin, Case Study Research: Design and Methods . Thousand Oaks, CA, USA : Sage, 2013.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering  Volume 42, Issue 12
December 2016
101 pages

Publisher

IEEE Press

Publication History

Published: 01 December 2016

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 22 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Making Sense of AI Systems DevelopmentIEEE Transactions on Software Engineering10.1109/TSE.2023.333885750:1(123-140)Online publication date: 1-Jan-2024
  • (2023)The Business Impact of Inner Source and How to Quantify ItACM Computing Surveys10.1145/361164856:2(1-27)Online publication date: 29-Jul-2023
  • (2023)Full Spec Software via Platform EngineeringProceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering10.1145/3593434.3593440(172-175)Online publication date: 14-Jun-2023
  • (2022)Collaborative Software Engineering Model Dependent on Deep Recursive Least SquaresMobile Information Systems10.1155/2022/54011032022Online publication date: 1-Jan-2022
  • (2022)Knights and Gold Stars: A Tale of InnerSource IncentivizationIEEE Software10.1109/MS.2022.319264739:6(88-98)Online publication date: 1-Nov-2022
  • (2022)An Ecosystem for the Large-Scale Reuse of Microservices in a Cloud-Native ContextIEEE Software10.1109/MS.2022.316744739:5(68-75)Online publication date: 1-Sep-2022
  • (2018)An Investigation into Inner Source Software DevelopmentProceedings of the 14th International Symposium on Open Collaboration10.1145/3233391.3233529(1-10)Online publication date: 22-Aug-2018

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media