Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

Developing Software with Open Source Software Components

  • Chapter
Finding Source Code on the Web for Remix and Reuse

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Similar content being viewed by others

Notes

  1. 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. 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

  1. Aguirre, J.: IPSComp: Intelligent portal for searching components. Master Thesis. Vrije Universiteit Brussel - Belgium (2005)

    Google Scholar 

  2. 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)

    Google Scholar 

  3. Ayala, C.:Systematic construction of goal-oriented COTS taxonomies. Doctoral Thesis. Technical University of Catalunya (2008)

    Google Scholar 

  4. 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)

    Google Scholar 

  5. 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)

    Article  Google Scholar 

  6. 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)

    Google Scholar 

  7. Bertoa, M., Troya, J. M., and Vallecillo, A.: Measuring the usability of software components. Journal of Systems and Software. 79(3), 427–439 (2006)

    Article  Google Scholar 

  8. 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)

    Google Scholar 

  9. Boegh, J.: Certifying software component attributes. IEEE Software. 23(3), 74–81 (2006)

    Article  Google Scholar 

  10. 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)

    Google Scholar 

  11. 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)

    Google Scholar 

  12. Bowker, G. C. and Star, S. L.: Sorting things out - classification and its consequences. MIT Press (2000)

    Google Scholar 

  13. 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)

    Google Scholar 

  14. 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)

    Article  Google Scholar 

  15. 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)

    Google Scholar 

  16. 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)

    Article  Google Scholar 

  17. 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)

    Article  Google Scholar 

  18. 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)

    Google Scholar 

  19. 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)

    Google Scholar 

  20. Fitzgerald B.: The transformation of open source software. MIS Quarterly. 30(3), 587–598 (2006)

    Google Scholar 

  21. Frakes, W. B. and Kang, K.: Software reuse research: status and future. IEEE Trans. on Software Engineering. 31(5), 529–536 (2005)

    Article  Google Scholar 

  22. 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)

    Google Scholar 

  23. 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)

    Google Scholar 

  24. Golden, B.: Succeeding with open source. Addison-Wesley Professional (2004)

    Google Scholar 

  25. 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)

    Google Scholar 

  26. 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)

    Article  Google Scholar 

  27. 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)

    Google Scholar 

  28. Jadhav, A. S. and Sonar, R. M.: Evaluating and selecting software packages: a review. Information & Software Technology. 51(3), 555–563 (2009)

    Article  Google Scholar 

  29. 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)

    Article  Google Scholar 

  30. Krippendorff, A.: Content Analysis. Sage Publications, London (1980)

    Google Scholar 

  31. 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)

    Google Scholar 

  32. 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)

    Google Scholar 

  33. 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)

    Article  Google Scholar 

  34. 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)

    Article  Google Scholar 

  35. 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)

    Article  Google Scholar 

  36. 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)

    Google Scholar 

  37. Mahmood, S., Lai, R., and Kim, Y. S.: Survey of component-based software development. IET Software. 1(2), 57–66 (2007)

    Article  Google Scholar 

  38. 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)

    Google Scholar 

  39. 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)

    Google Scholar 

  40. 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)

    Article  Google Scholar 

  41. Morisio, M. (Ed.): Reuse of off-the-shelf components. Proc. 9th Intl. Conf. on Software Reuse (ICSR’06). Springer Verlag (2006)

    Google Scholar 

  42. 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)

    Google Scholar 

  43. 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

  44. Torchiano, M. and Morisio, M.: Overlooked aspects of COTS-based development. IEEE Software. 21(2), 88–93 (2004)

    Article  Google Scholar 

  45. Robson, C.: Real world research: a resource for social scientists and practitioner-researchers. Second Edition. Blackwell Publishers Inc (2002)

    Google Scholar 

  46. 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)

    Google Scholar 

  47. 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)

    Google Scholar 

  48. Szyperski, C.: Component software: beyond object-oriented programming. Addison-Wesley (2002)

    Google Scholar 

  49. Ulkuniemi, P. and Seppanen, V.: COTS component acquisition in an emerging market. IEEE Software. 21(6), 76–82 (2004)

    Article  Google Scholar 

  50. 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)

    Google Scholar 

  51. 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)

    Google Scholar 

  52. 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)

    Google Scholar 

  53. Wohlin, C., Runeson, P., Host, M., Ohlsson, M.C., Regnell, B., and Wesslen, A.: Experimentation in software engineering - An Introduction. Kluwer Academic Publishers (2000)

    Google Scholar 

  54. 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)

    Google Scholar 

Download references

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

Authors

Corresponding author

Correspondence to Claudia Ayala .

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics