skip to main content
10.1145/3422392.3422492acmotherconferencesArticle/Chapter ViewAbstractPublication PagessbesConference Proceedingsconference-collections
research-article

An Approach for Selecting FLOSS Projects for Education

Published:21 December 2020Publication History

ABSTRACT

Context: The use of Free/Libre/Open Source Software (FLOSS) projects in Software Engineering Education (SEE) provides an opportunity for learning the theory and practicing technical and soft skills, narrowing the theory-practice gap usually present in undergraduate software engineering courses. However, selecting a FLOSS project for pedagogical use has its challenges. The selection should consider technical, social and pedagogical criteria, and the search process is often manual and ad-hoc. Objective: We present an approach to the selection of FLOSS projects for SEE based on technical and social criteria, and evaluate it from the students' perspective. Method: We performed a literature review to identify the criteria for selecting FLOSS projects used in SEE research. A set of selection criteria was documented and operationalized so that automatic search could be performed in open source projects repositories. We implemented a tool called FlossSearch.Edu to support the selection of FLOSS projects, based on the combination of one or more criteria, from a randomly populated repository of cloned GitHub projects. A case study was conducted with undergraduate students. They used the tool to select FLOSS projects based on criteria defined by the professor and answered a survey based on the Technology Acceptance Model (TAM). Results: FlossSearch.Edu played an important role in the process of selecting FLOSS projects. Most participants that used FlossSearch.Edu stated that the tool was useful, easy to use and that they intended to use it in the future.

References

  1. 2016. The 29th IEEE Conference on Software Engineering Education and Training. http://paris.utdallas.edu/cseet16/Google ScholarGoogle Scholar
  2. Sogol Balali, Igor Steinmacher, Umayal Annamalai, Anita Sarma, and Marco Aurelio Gerosa. 2018. Newcomers' Barriers... Is That All? An Analysis of Mentors' and Newcomers' Barriers in OSS Projects. Computer Supported Cooperative Work (CSCW) (2018), 1--36.Google ScholarGoogle Scholar
  3. Ana María Bautista and Tomás San Feliu. 2015. A process to mining issues of software repositories. In Information Systems and Technologies (CISTI), 2015 10th Iberian Conference on. IEEE, 1--6.Google ScholarGoogle ScholarCross RefCross Ref
  4. Judith Bishop, Carlos Jensen, Walt Scacchi, and Arfon Smith. 2016. How to Use Open Source Software in Education. In Proceedings of the 47th ACM Technical Symposium on Computing Science Education. ACM, 321--322.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Grady Booch, James Rumbaugh, and Ivar Jacobson. 2005. Unified Modeling Language User Guide, The (2Nd Edition) (Addison-Wesley Object Technology Series). Addison-Wesley Professional.Google ScholarGoogle Scholar
  6. Moara Sousa Brito, Fernanda Gomes Silva, Christina von Flach G. Chavez, Debora C Nascimento, and Roberto A Bittencourt. 2018. FLOSS in software engineering education: an update of a systematic mapping study. In Proceedings of the XXXII Brazilian Symposium on Software Engineering. 250--259.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Moara Sousa Brito, Fernanda Gomes Silva, Christina von Flach G. Chavez, Debora C. Nascimento, and Roberto A. Bittencourt. 2018. FLOSS in software engineering education: An Update of a Systematic Mapping Study. In Proceedings of the XXXII Brazilian Symposium on Software Engineering - SBES '18. ACM Press, 250--259. https://doi.org/10.1145/3266237.3266249Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Joseph Buchta, Maksym Petrenko, Denys Poshyvanyk, and Václav Rajlich. 2006. Teaching evolution of open-source projects in software engineering courses. In null. IEEE, 136--144.Google ScholarGoogle Scholar
  9. Christina Chavez, Antonio Terceiro, Paulo Meirelles, Carlos Santos Jr, and Fabio Kon. 2011. Free/Libre/Open source software development in software engineering education: Opportunities and experiences. Fórum de Educação em Engenharia de Software (CBSoft'11-SBES-FEES) (2011).Google ScholarGoogle Scholar
  10. V Cicirello. 2017. Student developed computer science educational tools as software engineering course projects. Journal of Computing Sciences in Colleges 32, 3 (2017), 55--61.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Fred D Davis. 1989. Perceived usefulness, perceived ease of use, and user acceptance of information technology. MIS quarterly (1989), 319--340.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Rossana M de Castro Andrade, Ismayle de Sousa Santos, Italo Linhares de Araújo, Bruno Sabóia Aragão, and Fernanda Siewerdt. 2017. Retrospective for the Last 10 years of Teaching Software Engineering in UFC's Computer Department. In Proceedings of the 31st Brazilian Symposium on Software Engineering. ACM, 358--367.Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Heidi JC Ellis, Mel Chua, Gregory W Hislop, Michelle Purcell, and Sebastian Dziallas. 2013. Towards a model of faculty development for FOSS in education. In Software Engineering Education and Training (CSEE&T), 2013 IEEE 26th Conference on. IEEE, 269--273.Google ScholarGoogle Scholar
  14. Heidi JC Ellis, Gregory W Hislop, and Darci Burdge. 2017. Courseware: HFOSS Project Evaluation. In Proceedings of the 2017 ACM Conference on Innovation and Technology in Computer Science Education. ACM, 90--91.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Heidi JC Ellis, Gregory W Hislop, and Michelle Purcell. 2013. Project selection for student involvement in humanitarian FOSS. In Software Engineering Education and Training (CSEE&T), 2013 IEEE 26th Conference on. IEEE, 359--361.Google ScholarGoogle Scholar
  16. Heidi JC Ellis, Michelle Purcell, and Gregory W Hislop. 2012. An approach for evaluating FOSS projects for student participation. In Proceedings of the 43rd ACM technical symposium on Computer Science Education. ACM, 415--420.Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Clarice Ferreira, Cleice Souza, Gustavo Pinto, Igor Steinmacher, and Paulo Meirelles. 2018. When students become contributors: leveraging OSS contributions in software engineering courses. In Proceedings of the XXXII Brazilian Symposium on Software Engineering. ACM, 260--269.Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Erich Gamma. 1995. Design patterns: elements of reusable object-oriented software. Pearson Education India.Google ScholarGoogle Scholar
  19. Swapna Gokhale, Thérèse Smith, and Robert McCartney. 2013. Teaching software maintenance with open source software: Experiences and lessons. In 2013 IEEE Frontiers in Education Conference (FIE). IEEE, 1664--1670.Google ScholarGoogle ScholarCross RefCross Ref
  20. S Gokhale, T Smith, and R McCartney. 2013. Teaching software maintenance with open source software: Experiences and lessons. In Frontiers in Education Conference, IEEE. IEEE, 1664--1670.Google ScholarGoogle ScholarCross RefCross Ref
  21. Swapna S Gokhale, Thérèse Smith, and Robert McCartney. 2012. Integrating open source software into software engineering curriculum: Challenges in selecting projects. In Proceedings of the First International Workshop on Software Engineering Education Based on Real-World Experiences. IEEE Press, 9--12.Google ScholarGoogle ScholarCross RefCross Ref
  22. Mirela Gutica. 2018. Improving students' engagement with large-team software development projects. In Proceedings of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education. ACM, 356--357.Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Reid Holmes, Michelle Craig, Karen Reid, and Eleni Stroulia. 2014. Lessons learned managing distributed software engineering courses. In Companion Proceedings of the 36th International Conference on Software Engineering. ACM, 321--324.Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. C Horstmann. 2009. Challenges and Opportunities in an Open Source Software Development Course. In Free and Open Source Software (FOSS) Symposium. 1--3. http://www.hfoss.org/symposium09/.Google ScholarGoogle Scholar
  25. Gary Hsieh, Youyang Hou, Ian Chen, and Khai N Truong. 2013. Welcome!: social and psychological predictors of volunteer socializers in online communities. In Proceedings of the 2013 conference on Computer supported cooperative work. ACM, 827--838.Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Letizia Jaccheri and Thomas Osterlie. 2007. Open source software: A source of possibilities for software engineering education and empirical software engineering. In Emerging Trends in FLOSS Research and Development, 2007. FLOSS'07. First International Workshop on. IEEE, 5--5.Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Oliver Laitenberger and Horst M Dreyer. 1998. Evaluating the usefulness and the ease of use of a web-based inspection data collection tool. In Proceedings Fifth International Software Metrics Symposium. Metrics (Cat. No. 98TB100262). IEEE, 122--132.Google ScholarGoogle ScholarCross RefCross Ref
  28. Becka Morgan and Carlos Jensen. 2014. Lessons learned from teaching open source software development. In IFIP International Conference on Open Source Systems. Springer, 133--142.Google ScholarGoogle ScholarCross RefCross Ref
  29. Debora MC Nascimento, Roberto Almeida Bittencourt, and Christina Chavez. 2015. Open source projects in software engineering education: a mapping study. Computer Science Education 25, 1 (2015), 67--114.Google ScholarGoogle ScholarCross RefCross Ref
  30. Debora MC Nascimento, Christina FG Chavez, and Roberto A Bittencourt. 2018. The adoption of open source projects in engineering education: a real software development experience. In 2018 IEEE Frontiers in Education Conference (FIE). IEEE, 1--9.Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Debora Maria Coelho Nascimento. 2017. Educacão em engenharia de software com a adoção de projetos de código aberto: uma análise detalhada. Ph.D. Dissertation. Universidade Federal da Bahia.Google ScholarGoogle Scholar
  32. O OMG. 2011. OMG Unified Modeling Language (OMG UML) Version 2.4. 1. (2011).Google ScholarGoogle Scholar
  33. PM Papadopoulos, I Stamelos, and A Meiszner. 2013. Enhancing software engineering education through open source projects: Four years of students' perspectives. Education and Information Technologies 18, 2 (2013), 381--397.Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Gustavo Henrique Lima Pinto, Fernando Figueira Filho, Igor Steinmacher, and Marco Aurelio Gerosa. 2017. Training software engineers using open-source software: the professors' perspective. In Software Engineering Education and Training (CSEE&T), 2017 IEEE 30th Conference on. IEEE, 117--121.Google ScholarGoogle Scholar
  35. S Rekha and V Adinarayanan. 2014. An Open Source approach to enhance industry preparedness of students. In Advances in Computing, Communications and Informatics (ICACCI), Intern. Conf. on. IEEE, 194--200.Google ScholarGoogle Scholar
  36. Bianca Shibuya and Tetsuo Tamai. 2009. Understanding the process of participating in open source communities. In Proceedings of the 2009 ICSE Workshop on Emerging Trends in Free/Libre/Open Source Software Research and Development. IEEE Computer Society, 1--6.Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Therese Mary Smith, Robert McCartney, Swapna S Gokhale, and Lisa C Kaczmarczyk. 2014. Selecting open source software projects to teach software engineering. In Proceedings of the 45th ACM technical symposium on Computer science education. ACM, 397--402.Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. Igor Steinmacher, Tayana Uchoa Conte, Christoph Treude, and Marco Aurélio Gerosa. 2016. Overcoming open source project entry barriers with a portal for newcomers. In Proceedings of the 38th International Conference on Software Engineering. ACM, 273--284.Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Igor Steinmacher, Igor Wiese, Ana Paula Chaves, and Marco Aurélio Gerosa. 2013. Why do newcomers abandon open source software projects?. In 2013 6th International Workshop on Cooperative and Human Aspects of Software Engineering (CHASE). IEEE, 25--32.Google ScholarGoogle ScholarCross RefCross Ref
  40. David L Streiner. 2003. Being inconsistent about consistency: When coefficient alpha does and doesn't matter. Journal of personality assessment 80, 3 (2003), 217--222.Google ScholarGoogle ScholarCross RefCross Ref
  41. A Van Deursen, M Aniche, J Aué, R Slag, M De Jong, A Nederlof, and E Bouwers. 2017. A collaborative approach to teaching software architecture. In ACM SIGCSE Technical Symposium on Computer Science Education. ACM, 591--596.Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. An Approach for Selecting FLOSS Projects for Education

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Other conferences
          SBES '20: Proceedings of the XXXIV Brazilian Symposium on Software Engineering
          October 2020
          901 pages
          ISBN:9781450387538
          DOI:10.1145/3422392

          Copyright © 2020 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 21 December 2020

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article
          • Research
          • Refereed limited

          Acceptance Rates

          Overall Acceptance Rate147of427submissions,34%
        • Article Metrics

          • Downloads (Last 12 months)22
          • Downloads (Last 6 weeks)1

          Other Metrics

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader