What can software engineering students learn from studying open source software
D. A. Carrington
Abstract
D. A. Carrington
Abstract
There is a large gap between the scale and complexity of typical software products and examples used in software engineering education. Since complexity is considered an essential property of software systems, this gap creates a problem for software engineering students and educators. Studying open source software can provide software engineering students with realistic and challenging examples and pragmatic instances of abstract concepts such as software design patterns. For software engineering educators, the vast array of freely available software sources allows selection to suit their educational objectives and constraints. This paper reviews how open source software is used in a software engineering studio course and discusses the outcomes from the perspectives of students and educators.
A significance statement is not available in the OpenAlex record.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
There is a large gap between the scale and complexity of typical software products and examples used in software engineering education. Since complexity is considered an essential property of software systems, this gap creates a problem for software engineering students and educators. Studying open source software can provide software engineering students with realistic and challenging examples and pragmatic instances of abstract concepts such as software design patterns. For software engineering educators, the vast array of freely available software sources allows selection to suit their educational objectives and constraints. This paper reviews how open source software is used in a software engineering studio course and discusses the outcomes from the perspectives of students and educators.
Key concepts: Social software engineering, Software engineering, Personal software process, Software construction, Software Engineering Process Group, Software development, Computer science, Software peer review