The Importance of Architectural Knowledge in Integrating Open Source Software

  • Klaas-Jan Stol
  • Muhammad Ali Babar
  • Paris Avgeriou
Part of the IFIP Advances in Information and Communication Technology book series (IFIPAICT, volume 365)

Abstract

Open Source Software (OSS) is increasingly used in Component-Based Software Development (CBSD) of large software systems. An important issue in CBSD is selection of suitable components. Various OSS selection methods have been proposed, but most of them do not consider the software architecture aspects of OSS products. The Software Architecture (SA) research community refers to a product’s architectural information, such as design decisions and underlying rationale, and used architecture patterns, as Architecture Knowledge (AK). In order to investigate the importance of AK of OSS components in integration, we conducted an exploratory empirical study. Based on in-depth interviews with 12 IT professionals, this paper presents insights into the following questions: 1) what AK of OSS is needed? 2) Why is AK of OSS needed? 3) Is AK of OSS generally available? And 4) what is the relative importance of AK? Based on these new insights, we provide a research agenda to further the research field of software architecture in OSS.

Keywords

Open Source Software integration component-based development architectural knowledge software architecture OSS Integrator survey 

References

  1. 1.
    Hauge, Ø., Ayala, C., Conradi, R.: Adoption of Open Source Software in Software-Intensive Organizations - A Systematic Literature Review. Information and Software Technology 52(11), 1133–1154 (2010)CrossRefGoogle Scholar
  2. 2.
    Hauge, Ø., Sørensen, C.-F., Røsdal, A.: Surveying Industrial Roles in Open Source Software Development. In: Feller, J., Fitzgerald, B., Scacchi, W., Sillitti, A. (eds.) Open Source Development, Adoption and Innovation, pp. 259–264. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  3. 3.
    Garlan, D., Allen, R., Ockerbloom, J.: Architectural mismatch: why reuse is so hard. IEEE software 12(6), 17–26 (1995)CrossRefGoogle Scholar
  4. 4.
    Hissam, S.A., Weinstock, C.B.: Open Source Software: The Other Commercial Software. In: Feller, J., Fitzgerald, B., van der Hoek, A. (eds.) 1st Workshop on Open Source Software Engineering, ICSE (2001)Google Scholar
  5. 5.
    Morgan, L., Finnegan, P.: Benefits and Drawbacks of Open Source Software: An Exploratory Study of Secondary Software Firms. In: Feller, J., Fitzgerald, B., Scacchi, W., Sillitti, A. (eds.) Open Source Development, Adoption and Innovation, pp. 307–312. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  6. 6.
    Ayala, C., Hauge, Ø., Conradi, R., Franch, X., Li, J., Velle, K.S.: Challenges of the Open Source Component Marketplace in the Industry. In: Boldyreff, C., Crowston, K., Lundell, B., Wasserman, A.I. (eds.) OSS 2009. IFIP AICT, vol. 299, pp. 213–224. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  7. 7.
    Chen, W., Li, J., Ma, J., Conradi, R., Ji, J., 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)CrossRefGoogle Scholar
  8. 8.
    Jaaksi, A.: Experiences on Product Development with Open Source Software. In: Feller, J., Fitzgerald, B., Scacchi, W., Sillitti, A. (eds.) Open Source Development, Adoption and Innovation, pp. 85–96. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  9. 9.
    Madanmohan, T.R., De, R.: Open source reuse in commercial firms. IEEE Software 21(6), 62–69 (2004)CrossRefGoogle Scholar
  10. 10.
    Ayala, C., Hauge, Ø., Conradi, R., Franch, X., Li, J.: Selection of third party software in Off-The-Shelf-based software development: An interview study with industrial practitioners. The Journal of Systems and Software 84(4), 620–637 (2011)CrossRefGoogle Scholar
  11. 11.
    Li, J., Conradi, R., Slyngstad, O.P.N., Bunse, C., Torchiano, M., Morisio, M.: Development with Off-the-Shelf Components: 10 Facts. IEEE software 26(2), 80–87 (2009)CrossRefGoogle Scholar
  12. 12.
    Bosch, J., Stafford, J.A.: Architecting Component-Based Systems. In: Crnkovic, I., Larsson, M. (eds.) Building Reliable Component-Based Software Systems. Artech House Publishers, Norwood (2002)Google Scholar
  13. 13.
    Ali Babar, M., Dingsøyr, T., Lago, P., van Vliet, H.: Software Architecture Knowledge Management: Theory and Practice. Springer, Heidelberg (2009)MATHCrossRefGoogle Scholar
  14. 14.
    Fitzgerald, B.: The transformation of open source software. MIS Quarterly 30(3), 587–598 (2006)Google Scholar
  15. 15.
    Mäki-Asiala, P., Matinlassi, M.: Quality Assurance of Open Source Components: Integrator Point of View. In: Proceedings of the 30th Annual International Computer Software and Applications Conference (COMPSAC), pp. 189–194 (2006)Google Scholar
  16. 16.
    Di Giacomo, P.: COTS and open source software components: Are they really different on the battlefield? In: Franch, X., Port, D. (eds.) ICCBSS 2005. LNCS, vol. 3412, pp. 301–310. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  17. 17.
    Norris, J.S.: Mission-critical development with open source software: Lessons learned. IEEE Software (2004)Google Scholar
  18. 18.
    Stol, K., Ali Babar, M.: A Comparison Framework for Open Source Software Evaluation Methods. In: Ågerfalk, P., Boldyreff, C., González-Barahona, J.M., Madey, G.R., Noll, J. (eds.) OSS 2010. IFIP AICT, vol. 319, pp. 389–394. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  19. 19.
    Hauge, Ø., Østerlie, T., Sørensen, C.-F., Gerea, M.: An Empirical Study on Selection of Open Source Software - Preliminary Results. In: Capiluppi, A., Robles, G. (eds.) 2nd workshop on Emerging Trends in FLOSS Research and Development (ICSE), Vancouver, Canada (2009)Google Scholar
  20. 20.
    Merilinna, J., Matinlassi, M.: State of the Art and Practice of Open Source Component Integration. In: Proceedings of the 32nd Euromicro Conference on Software Engineering and Advanced Applications (SEAA), pp. 170–177 (2006)Google Scholar
  21. 21.
    Ven, K., Mannaert, H.: Challenges and strategies in the use of Open Source Software by Independent Software Vendors. Information and Software Technology 50(9-10), 991–1002 (2008)CrossRefGoogle Scholar
  22. 22.
    Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discpline. Prentice-Hall Inc., New Jersey (1996)Google Scholar
  23. 23.
    Tang, A., Avgeriou, P., Jansen, A., Capilla, R., Ali Babar, M.: A comparative study of architecture knowledge management tools. Journal of Systems and Software 83, 352–370 (2010)CrossRefGoogle Scholar
  24. 24.
    Jansen, A., Bosch, J.: Software Architecture as a Set of Architectural Design Decisions. In: 5th Working IEEE/IFIP Conference on Software Architecture (WICSA), Pittsburgh, PA, USA, pp. 109–120 (2005)Google Scholar
  25. 25.
    Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M.: Pattern-oriented Software Architecture - A System of Patterns. J. Wiley and Sons Ltd., Chichester (1996)Google Scholar
  26. 26.
    Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley, Boston (2003)Google Scholar
  27. 27.
    Tran, J.B., Godfrey, M.W., Lee, E.H.S., Holt, R.C.: Architectural repair of open source software. In: Proceedings of the 8th International Workshop on Program Comprehension, IWPC (2000)Google Scholar
  28. 28.
    Nakagawa, E., de Sousa, E., de Brito Murata, K., de Faria Andery, G., Morelli, L., Maldonado, J.: Software Architecture Relevance in Open Source Software Evolution: A Case Study. In: Proceedings of the 32nd International Computer Software and Applications Conference (COMPSAC), pp. 1234–1239 (2008)Google Scholar
  29. 29.
    Capiluppi, A., Knowles, T.: Software engineering in practice: Design and architectures of FLOSS systems. In: Boldyreff, C., Crowston, K., Lundell, B., Wasserman, A.I. (eds.) OSS 2009. IFIP AICT, vol. 299, pp. 34–46. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  30. 30.
    Matinlassi, M.: Role of Software Architecture in Open Source Communities. In: Proceedings of the Sixth Working IEEE/IFIP Conference on Software Architecture (WICSA), Mumbai, India (2007)Google Scholar
  31. 31.
    Ali Babar, M., Fitzgerald, B., Ågerfalk, P.J., Lundell, B.: On the Importance of Sound Architectural Practices in the Use of OSS in Software Product Lines. In: Second International Workshop on Open Source Software and Product Lines, collocated with the 11th International Software Product Line Conference (2007)Google Scholar
  32. 32.
    Ali Babar, M., Lundell, B., van der Linden, F.: A Joint Workshop of QACOS and OSSPL. In: Boldyreff, C., Crowston, K., Lundell, B., Wasserman, A.I. (eds.) OSS 2009. IFIP AICT, vol. 299, pp. 357–358. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  33. 33.
    Lennerholt, C., Lings, B., Lundell, B.: Architectural issues in Opening up the advantages of Open Source in product development companies. In: Proceedings of the 32nd Annual IEEE International Computer Software and Applications Conference, pp. 1226–1227. IEEE Computer Society, Washington, DC, USA (2008)CrossRefGoogle Scholar
  34. 34.
    Arief, B., Gacek, C., Lawrie, T.: Software architectures and open source software-where can research leverage the most? In: Feller, J., Fitzgerald, B., van der Hoek, A. (eds.) 1st Workshop on Open Source Software Engineering, Collocated with the 23rd International Conference on Software Engineering, ICSE (2001)Google Scholar
  35. 35.
    Stamelos, I., Kakarontzas, G.: AKM in Open Source Communities. In: Ali Babar, M., Dingsøyr, T., Lago, P., van Vliet, H. (eds.) Software Architecture Knowledge Management: Theory and Practice, pp. 199–215. Springer, Heidelberg (2010)Google Scholar
  36. 36.
    Edmondson, A.C., McManus, S.E.: Methodological Fit in Management Field Research. Academy of Management Review 32(4), 1155–1179 (2007)CrossRefGoogle Scholar
  37. 37.
    Seaman, C.B.: Qualitative methods in empirical studies of software engineering. IEEE Transactions on Software Engineering 25(4), 557–572 (1999)CrossRefGoogle Scholar
  38. 38.
    Robson, C.: Real World Research: A Resource for Social Scientists and Practitioner-Researchers, 2nd edn. Blackwell Publishing, Malden (2002)Google Scholar
  39. 39.
    Taylor, S.J., Bogdan, R.: Introduction to Qualitative Research. John Wiley & Sons, New York (1984)Google Scholar
  40. 40.
    Harrison, N.B., Avgeriou, P.: How do architecture patterns and tactics interact? A model and annotation. The Journal of Systems & Software 83(10), 1735–1758 (2010)CrossRefGoogle Scholar
  41. 41.
    Ameller, D., Franch, X.: How Do Software Architects Consider Non-Functional Requirements: A Survey. In: Wieringa, R., Persson, A. (eds.) REFSQ 2010. LNCS, vol. 6182, pp. 276–277. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  42. 42.
    Shaw, M.: Architectural issues in software reuse: it’s not just the functionality, it’s the packaging. SIGSOFT Softw. Eng. Notes, 20 (SI), 3-6 (1995)Google Scholar
  43. 43.
    Wesselius, J.: The Bazaar inside the Cathedral: Business Models for Internal Markets. IEEE Software 25(3), 60–66 (2008)CrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2011

Authors and Affiliations

  • Klaas-Jan Stol
    • 1
  • Muhammad Ali Babar
    • 2
  • Paris Avgeriou
    • 3
  1. 1.Lero—The Irish Software Engineering Research CentreUniversity of LimerickIreland
  2. 2.IT University of CopenhagenDenmark
  3. 3.University of Groningenthe Netherlands

Personalised recommendations