Internal marketplace as a mechanism for promoting software reuse

Reuse is one of the classic ways to improve productivity in software development. Indeed, benefiting from software components, patterns, and solutions that have been developed in the company potentially leads to savings in all phases of software intensive work. However, putting such an approach to practice is far from being simple. In particular, when considering software companies that specialize in customer-specific software projects, it is common that similar designs and technology choices are made in parallel without project-crossing knowledge. In such settings, there is a lack of a systematic approach between projects to spread good practices or to eliminate bad ones. In this paper, we propose solving such problems with an information system that acts as a marketplace for promoting software reuse within a project organization, much to the same flavor as app stores are used to promote mobile applications. The paper provides insight to the design of our prototype system, as well as contains preliminary views from users in one organization.

[1]  Said Ghoul,et al.  CLASSIFYING SOFTWARE FOR REUSABILITY , 2001 .

[2]  Johannes Sametinger,et al.  Software Engineering with Reusable Components , 1997, Springer Berlin Heidelberg.

[3]  Ken Schwaber,et al.  SCRUM Development Process , 1997 .

[4]  David J. Anderson Agile Management for Software Engineering: Applying the Theory of Constraints for Business Results , 2003 .

[5]  Sadahiro Isoda,et al.  Success factors of systematic reuse , 1994, IEEE Software.

[6]  Muhammad Ali Babar,et al.  A comparative study of challenges in integrating Open Source Software and Inner Source Software , 2011, Inf. Softw. Technol..

[7]  Silvana Castano,et al.  Reusing Process Specifications , 1993, Information System Development Process.

[8]  Barry W. Boehm,et al.  Managing Software Productivity and Reuse , 1999, Computer.

[9]  Sherzod Turaev,et al.  Reusable software component life cycle , 2011 .

[10]  Wayne C. Lim,et al.  Effects of reuse on quality, productivity, and economics , 1994, IEEE Software.

[11]  Barbara Paech,et al.  Managing Componentware Development - Software Reuse and the V-Modell Process , 1999, CAiSE.

[12]  Ivar Jacobson,et al.  Software Reuse: Architecture, Process And Organization For Business Success , 1998, Proceedings. Technology of Object-Oriented Languages. TOOLS 26 (Cat. No.98EX176).

[13]  D. Bauer Technical forum: a reusable parts center , 1993 .

[14]  Muhammad Ali Babar,et al.  Key factors for adopting inner source , 2014, ACM Trans. Softw. Eng. Methodol..

[15]  William B. Frakes,et al.  An Empirical Study of Representation Methods for Reusable Software Components , 1994, IEEE Trans. Software Eng..

[16]  Charles W. Krueger,et al.  Software reuse , 1992, CSUR.

[17]  David M. Weiss,et al.  Software Product Line Engineering , 2005, SEKE.

[18]  Dirk Riehle,et al.  Open Collaboration within Corporations Using Software Forges , 2009, IEEE Software.

[19]  Richard P. Gabriel,et al.  Innovation happens elsewhere - open source as business strategy , 2005 .

[20]  Jacco H. Wesselius,et al.  The Bazaar inside the Cathedral: Business Models for Internal Markets , 2008, IEEE Software.

[21]  Pankaj K. Garg,et al.  Progressive open source , 2002, ICSE '02.

[22]  David Garlan,et al.  Architectural Mismatch: Why Reuse Is So Hard , 1995, IEEE Softw..