Abstract
The success of Component-Based Software Development is based on the ability of an implementer team to select, assemble and integrate third-party and other components with own application software, in order to create a software system that satisfies (most of) the customer/client’s stated needs in an economic and flexible way. Nowadays, the reuse of Open Source Software (OSS) components available from the Internet is playing a strategic role in the industry. This chapter aims at providing empirical evidence on current industrial OSS selection practices based on semi-structured interviews performed in 17 European organizations. In particular, the study tackles the following activities: (1) initial identification of available OSS components, (2) closer evaluation of the identified components, (3) conclusive decision-making of the chosen ones, and (4) updating of OSS-relevant experience and knowledge for the actual company. For simplicity we have omitted system-wide integration and testing activities. The results of this study ought to be valuable not just for researchers, as a sobering basis in their quest for practical selection methods; but also for practitioners that regularly drive OSS selection processes with potential to learn from other colleagues’ work.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
“A software component is a unit of composition with contractually specified interfaces and explicit context dependencies only and can be composed according to a component model by third party without modification [48]”.
- 2.
A classification schema corresponds to an ontology or taxonomy. Consider the joint work by WHO and the National Institutes of Health in USA on a common term base for medicine, currently with over 1.8 million terms. So, coping with the size, evolution, consistency, and up-front costs of many classification schemas represent formidable challenges. In addition comes the more fundamental, “cultural-political” issues behind missing standardization or agreement on many terms, simply due to incompatible perceptions of the world at large [12].
References
Aguirre, J.: IPSComp: Intelligent portal for searching components. Master Thesis. Vrije Universiteit Brussel - Belgium (2005)
Ankolekar, A., Herbsleb, J., and Sycara, K.: Addressing challenges to open source collaboration with semantic web. Proc. 3rd Workshop on Open Source Software Engineering (colocated with 25th Intl. Conf. on Software Engineering), pp. 9–14, IEEE CS Press (2003)
Ayala, C.:Systematic construction of goal-oriented COTS taxonomies. Doctoral Thesis. Technical University of Catalunya (2008)
Ayala, C., Hauge, Ø., Conradi, R., Franch, X., Li, J., and Sandanger-Velle, K.: Challenges of the open source component marketplace in the industry. Proc. 5th Intl. Conf. on Open Source Systems (OSS’09), pp. 213–224, Springer Verlag (2009)
Ayala, C., Hauge, Ø., Conradi, R., Franch, X., and Li, J.: Selection of third party software in off-the-shelf-based software development - an interview study with industrial practitioners. Journal of Systems and Software. 84(4), 620–637 (2011)
Basili, V.R. and Elbaum, S.: Empirically driven SE research: state of the art and required maturity. Proc. 28th Intl. Conf. on Software Engineering, pp. 32, IEEE CS Press (2006)
Bertoa, M., Troya, J. M., and Vallecillo, A.: Measuring the usability of software components. Journal of Systems and Software. 79(3), 427–439 (2006)
Birkmeier, D. and Overhage, S.: On component identification approaches - classification, state of the art, and comparison. Proc. Intl. Conf. on Component-Based Software Engineering, pp. 1–18, Springer Verlag (2009)
Boegh, J.: Certifying software component attributes. IEEE Software. 23(3), 74–81 (2006)
Bonaccorsi, A. and Rossi, C.: Comparing motivations of individual programmers and firms to take part in the open source movement: from community to business. Knowledge, Technology, and Policy. 18(4), 40–64 (2006)
Bonaccorsi, A., Piscitello, L., Merito, M. and Rossi, C.: How is it possible to profit from innovation in the absence of any appropriability? Proc. 2nd Intl. Conf. on Open Source Software (OSS’06), pp. 333–334, Springer Verlag (2006)
Bowker, G. C. and Star, S. L.: Sorting things out - classification and its consequences. MIT Press (2000)
Cechich, A., Requile-Romanczuk, A., Aguirre, J. and Luzuriaga J. M.: Trends on COTS component identification. Proc. 5th Intl. Conf. on Commercial-Off-The-Shelf (COTS)-Based Software Systems (ICCBSS’06), pp. 90–99, IEEE CS Press (2006)
Chen, W., Li, J., Ma, J., Conradi, R., Ji, J. and Liu, C.: An empirical study on software development with open source components in the Chinese software industry. Software Process: Improvement and Practice. 13(1), 89–100 (2008)
Ciokolwski, M. and Soto, M.: Towards a comprehensive approach for assessing open source projects. Proc. Intl. Conf. on Software Process and Product Measurement, pp. 316–330, Springer Verlag (2008)
Clark, J., Clarke, C., De Panfilis, S., Granatella, G., Predonzani, P., Sillitti, A., Succi, G. and Vernazza, T.: Selecting components in large COTS repositories. Journal of Systems and Software. 73(2), 323–331 (2004)
Cruz, D., Wieland, T., and Ziegler, A.: Evaluation criteria for free/open source software products based on project analysis. Software Process: Improvement and Practice. 11(2), 107–122 (2006)
DelBianco, V., Lavazza, L., Morasca, S., and Taibi, D.: Quality of open source software: The QualiPSo trustworthiness model. Proc. 5th Intl. Conf. on Open Source Systems (OSS’09), pp. 199–212, Springer Verlag (2009)
Finkelstein, A., Spanoudakis, G., and Ryan, M.: Software package requirements & procurement. Proc. Intl. Workshop on Software Specification and Design (IWSSD), pp. 141–145, IEEE CS Press(1996)
Fitzgerald B.: The transformation of open source software. MIS Quarterly. 30(3), 587–598 (2006)
Frakes, W. B. and Kang, K.: Software reuse research: status and future. IEEE Trans. on Software Engineering. 31(5), 529–536 (2005)
Gallardo-Valencia, R. E. and Sim, S. E.: Internet-scale code search. Proc. Workshop on Search-Driven Development-Users, Infrastructure, Tools and Evaluation (ICSE-SUITE’09), pp. 49–52, IEEE CS Press(2009)
Ghosh R. A.: Study on the economic impact of open source software on innovation and the competiveness of the information and communication technologies (ICT) Sector in the EU. Technical report. UNU-MERIT (2006)
Golden, B.: Succeeding with open source. Addison-Wesley Professional (2004)
Hauge, Ø., Sørensen, C. F., and Conradi, R.: Adoption of open source in the software industry. Proc. 4th Intl. Conf. on Open Source Software (OSS’08), pp. 211–222, Springer Verlag (2008)
Hauge, Ø., Ayala, C. P., and Conradi, R.: Adoption of open source software in software-intensive organizations - a systematic literature review. Information & Software Technology. 52(11), 1133–1154 (2010)
Jaaksi, A.: Experiences on product development with open source software. Proc. 3rd Intl. Conf. on Open Source Software (OSS’07), pp. 85–96, Springer Verlag (2007)
Jadhav, A. S. and Sonar, R. M.: Evaluating and selecting software packages: a review. Information & Software Technology. 51(3), 555–563 (2009)
Jansen, S., Brinkkemper, S., Hunink, I., and Demir, C.: Pragmatic and opportunistic reuse in two innovative start-up companies. IEEE Software. 25(6), 42–49 (2008)
Krippendorff, A.: Content Analysis. Sage Publications, London (1980)
Land, R., Blankers, L., Chaudron, M., and Crnkovic, I.: COTS selection best practices in literature and in industry. Proc. 10th Intl. Conf. on Software Reuse (ICSR’08), pp. 100–111, Springer Verlag (2008)
Land, R., Sundmark, D., Lüders, F., and Krasteva, I. A.: Reuse with software components - a survey of industrial state of practice. Proc. 11th Intl. Conf. on Software Reuse (ICSR’09), pp. 150–159, Springer Verlag (2009)
Li, J., Conradi, R., Slyngstad, O.P.N., Torchiano, M., Morisio, M., and Bunse, C.: A state-of-the-practice survey of risk management in development with off-the-shelf software components. IEEE Trans. on Software Engineering, 34(2), 271–286 (2008)
Li, J., Conradi, R., Bunse, C., Torchiano, M., Slyngstad, O.P.N., and Morisio, M.: Development with off-the-shelf components: 10 facts. IEEE Software. 26(2), 80–87 (2009)
Lundell, B., Lings, B., and Syberfelt, A.: Practitioners’ perceptions of open source in the embedded systems area. Journal of Systems and Software. 84(9), 1540–1549 (2011)
Morgan, L. and Finnegan, P.: Benefits and drawbacks of open source software: an exploratory study of secondary software firms. Proc. 3rd Intl. Conf. on Open Source Software (OSS’07), pp. 307–312, Springer Verlag (2007)
Mahmood, S., Lai, R., and Kim, Y. S.: Survey of component-based software development. IET Software. 1(2), 57–66 (2007)
Merilinna, J., and Matinlassi, M.: State of the art and practice of open-source component integration. Proc. 32nd EUROMICRO Conf. on Software Engineering and Advanced Applications, pp. 170–177, IEEE CS (2006)
Mohamed, A., Ruhe, G., and Eberlein, A.: COTS selection: past, present and future. Proc. 14th IEEE Intl. Conf. on Engineering of Computer-Based Systems (ECBS’07), pp. 103–114, IEEE CS Press(2007)
Morisio M., Seaman, C.B., Basili, V.R., Parra, A.T., Kraft, S.E., and Condon, S.E.: COTS-based software development: processes and open Issues. Journal of Systems and Software. 61(3), 189–199 (2002)
Morisio, M. (Ed.): Reuse of off-the-shelf components. Proc. 9th Intl. Conf. on Software Reuse (ICSR’06). Springer Verlag (2006)
Nikula,U. and Jantunen, S.: Quantifying the interest in open source system: case south-east Finland. Proc. 1st Intl. Conf. on Open Source Systems (OSS’05), pp. 192–195, (2005)
Openbrr, Business readiness rating for open source - a proposed open standard to facilitate assessment and adoption of open source software. (Available 2005) www.openbrr.org/wiki/images/d/da/BRR_whitepaper_2005RFC1.pdf
Torchiano, M. and Morisio, M.: Overlooked aspects of COTS-based development. IEEE Software. 21(2), 88–93 (2004)
Robson, C.: Real world research: a resource for social scientists and practitioner-researchers. Second Edition. Blackwell Publishers Inc (2002)
Semeteys, R., Pilot, O., Baudrillard, L., Le Bouder, G., and Pinkhardt, W.: Method for qualification and selection of open source software (QSOS). Technical report (version 1.6). Atos Origin (2006)
Simmons, G.L. and Dillon, T.S.: Towards an ontology for open source software development. Proc. 3rd Intl. Conf. on Open Source Software (OSS’06), pp. 65–75, Springer Verlag (2006)
Szyperski, C.: Component software: beyond object-oriented programming. Addison-Wesley (2002)
Ulkuniemi, P. and Seppanen, V.: COTS component acquisition in an emerging market. IEEE Software. 21(6), 76–82 (2004)
Umarji, M., Elliott-Sim, S., and Lopes, C.: Archetypal internet-scale source code searching. Proc. 4th Intl. Conf on Open Source Software (OSS’08), pp. 257–263, Springer Verlag (2008)
Wang, Z., Xu, X., and Zhan, D.: A survey of business component identification methods and related techniques. Intl. Journal of Information Technology. 2(4), 230–238 (2005)
Wanyama, T. and Far, B. H.: Repositories for COTS selection. Proc. Canadian Conf. on Electrical and Computer Engineering (CCECE’06), pp. 2416–2419, IEEE CS Press (2006)
Wohlin, C., Runeson, P., Host, M., Ohlsson, M.C., Regnell, B., and Wesslen, A.: Experimentation in software engineering - An Introduction. Kluwer Academic Publishers (2000)
Yanes, N., Sassi, S.B., and Jilani, L.: MoReCOTS: a specialized search engine for COTS components on the Web. Proc. Intl. Conf. on COTS-Based Software Systems (ICCBSS’06), pp. 109–115, IEEE CS (2006)
Acknowledgements
We thank all people that participated in piloting an early version of the interview guide and the interview participants who took time from their work days to participate in our interviews.
This work has been partially supported by the Spanish project TIN2010-19130-C02-01.
We are very grateful to our anonymous reviewers who took the time to provide detailed and thoughtful comments.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer Science+Business Media New York
About this chapter
Cite this chapter
Ayala, C., Franch, X., Conradi, R., Li, J., Cruzes, D. (2013). Developing Software with Open Source Software Components. In: Sim, S.E., Gallardo-Valencia, R.E. (eds) Finding Source Code on the Web for Remix and Reuse. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-6596-6_9
Download citation
DOI: https://doi.org/10.1007/978-1-4614-6596-6_9
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4614-6595-9
Online ISBN: 978-1-4614-6596-6
eBook Packages: Computer ScienceComputer Science (R0)