Engaging Students in Open Source: Establishing FOSS Development at a University (original) (raw)

Panel — Teaching students to participate in Open Source Software projects

2010

This panel will present several experiences in involving students in Open Source Software (OSS) projects from the perspectives of both the instructor and a member of the OSS community. OSS is growing rapidly and gaining market share in both industry (e.g., Linux and Mozilla) as well as academia (e.g, Moodle, Greenfoot, and Drupal). OSS projects have a culture built on volunteer participation to support software development. Computing degree programs desire to involve students in large-scale software projects to provide students with real-world experience and an understanding of the issues found in large, complex software projects. Involving computing students in OSS projects serves both the OSS community by providing development resources for the project while also serving the academic community by providing access to large software projects in which students can gain experience. However, the marriage of student and OSS project presents some challenges including identification of approachable OSS projects, creation of appropriate educational infrastructure, evaluation and grading, and more. Panelists will address the factors that contribute to student success in an OSS project.

Open source projects in programming courses

2007

One of the main shortcomings of programming courses is the lack of practice with real-world systems. As a result, students feel unprepared for industry jobs. In parallel, open source software is accepting contributions even from inexperienced programmers and achieves software that competes both in quality and functionality with industrial systems. This article describes: first, a setting in which students were required to contribute to existing open source software; second, the evaluation of this experience using a motivation measuring technique; and third, an analysis of the efficiency and commitment of students over the time. The study shows that students are at first afraid of failing the assignment, but end up having the impression of a greater achievement. It seems also that students are inclined to keep working on the project to which they contributed after the end of the course.

Lessons learned from an open-source University project

2006

Open-source software development has become a widespread trend within the software engineering community and has begun to attract the attention of other disciplines as well. To help students understand the practices used within the open-source movement and to initiate an effort for logging all aspects of the software development process, our Laboratory has set up an open-source project targeting undergraduate and postgraduate computer science students. The main aim of the project is to systematically record architecture and code related information as well as "soft" issues related to the individuals that take part in the development. The paper discusses results and conclusions drawn from this project.

Training Software Engineers Using Open-Source Software: The Professors' Perspective

2017 IEEE 30th Conference on Software Engineering Education and Training (CSEE&T)

Traditional Software Engineering (SE) courses often prioritize methodologies and concepts in small, controlled environments: naive projects used as a proof of concept instead of full-fledged real software systems. Although this strategy has clear benefits, it does not place enough care in training students to face complex, non-trivial legacy software projects. To bridge this gap, novel SE courses are leveraging the rich variety of open-source software (OSS) projects to illustrate how these methodologies and concepts are applied to existing, non-trivial software systems. To better understand the benefits, challenges, and opportunities of this transition, in this paper, we interview seven SE professors that changed their academic setting to aspire students to comprehend, maintain, and evolve OSS systems as part of their SE course. We found that there are different ways to make use of OSS projects in SE courses in terms of project choice, assessment, and learning goals. Moreover, we evidence clear benefits of this approach, including improving students' social and technical skills, and helping students enhancing their resume. Also, we observed that this strategy comes with costs: the activity demands effort and time from the professor and the barrier for one getting involved with and, therefore, placing a meaningful contribution, in an OSS community is often high. Index Terms-Open-source software; Teaching Software Engineering; Open-Source Contributions; • RQ1. What makes a good OSS project for training SE students?

An Investigation of an Open-Source Software Development Environment in a Software Engineering Graduate Course

Interdisciplinary Journal of Problem-based Learning, 2010

A semester-long ethnography study was carried out to investigate project-based learning in a graduate software engineering course through the implementation of an Open-Source Software Development (OSSD) learning environment, which featured authentic projects, learning community, cognitive apprenticeship, and technology affordances. The study revealed that while the OSSD learning environment motivated students to engage in real-world projects, tensions arose between the the innovative learning environment and the students' self-processes-their perceptions, expectations, beliefs, goals, and values. Most importantly, this study demonstrated key interplays between project authenticity and learner characteristics, which resulted in different identity representations and different perceptions among students, which in turn affected students' goal orientations, motivation to work on projects, commitment to team collaboration, attitudes toward expert coaching and feedback, and the use of collaborative technologies.

An open source software culture in the undergraduate computer science curriculum

ACM SIGCSE Bulletin, 2007

Open source software has made inroads into mainstream computing where it was once the territory of software altruists, and the open source culture of technological collegiality and accountability may benefit education as well as industry. This paper describes the Recourse project, which seeks to transform the computer science undergraduate curriculum through teaching methods based on open source principles, values, ethics, and tools. Recourse differs from similar projects by bringing the open source culture into the curriculum comprehensively, systematically, and institutionally. The current state of the project is described, and initial results from a pilot exercise are presented. (1)

Free/Libre/Open Source Software Development in Software Engineering Education: Opportunities and Experiences

Abstract. Free/Libre/Open Source Software (FLOSS) presents a strategy for developing software products that is substantially different from what is usually taught in Software Engineering courses. This paper discusses the benefits of using FLOSS in Software Engineering Education, proposes a list of topics that should be covered in FLOSS-based Software Engineering courses and briefly reports our experience at two Brazilian universities.

Utilizing Open Source Software in Teaching Practice- based Software Engineering Courses

2016 IEEE Frontiers in Education Conference (FIE), 2016

— Software engineering courses face the challenge of covering all the stages of analysis, development, maintenance, and support while addressing practical issues such as dealing with large codebase. Free and open source software (FOSS) and more specifically humanitarian free and open source software (HFOSS) have been used by many educators to bring many add-ons to computer science education such as innovation and motivation. In addition, FOSS/HFOSS could give a better understanding of real world projects to students. In this work, we are looking at some activities developed for teaching upper division undergraduate and graduate software engineering courses using open source software projects and analyze the impacts of using this approach on students.

Using Open Source to Enhance Learning

Over the course of the last eight years, open source software has emerged as an important stimulus for social and economic change in the communication and information technology (C&IT) industry. Even though the roots of this change stem from education, educators have been slow to adapt. This paper will present an overview of how early adopters have used open source software to enhance learning. In addition, this paper will present the results of the collaboration between the Java Society, the Bayamón Campus of Interamerican University of Puerto Rico, and the Puerto Rico Government. The result of the collaboration was the creation of SNAP Development Center, an open source software development project created within Interamerican University that employs undergraduate student researchers. The objectives of the project have been to to increase the number and enhance the quality of graduates with expertise in the C&IT area of interest.