March 4th 1:15-3:00

(Final Version)

Creative Commons LicenseAll works licensed under the Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License unless otherwise stated. To view a copy of this license, visit or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.

Paper Session

#16 A Course in Open Source Development View PDF
Timothy Budd (Oregon State University)
A course in Open Source Development can be greatly beneficial to the student. Yet such courses are not commonly found in the college curriculum. This paper describes a course in open source development that has been successfully and repeatedly offered at Oregon
State University.
#17 Teaching Distributed Collaborative Development Techniques in a Software Engineering Class Setting View PDF
Gary Thompson (San Francisco State University, Sun Microsystems)
Dragutin Petkovic (San Francisco State University)
Shihong Huang (Florida Atlantic University)
Rainer Todtenhoefer (Univ. of Applied Science, Fulda)
In this paper we present an overview of a Global Software (SW) Engineering class based on several years of experience of teaching jointly at San Francisco State University (SFSU), the University of Applied Sciences, Fulda University, Germany, and recently with Florida Atlantic University (FAU). This class uses numerous Free and Open Source Software (FOSS) tools and teaches FOSS development techniques. We define global SE practices as those used when the team members are distributed in terms of location and time, and hence do not meet regularly in person. Global SE practices have become a significant mode of SW development, especially in the development of large open source software projects. Over the course of teaching this class from 2004 till present we have published several papers [12, 13, 17, 18] describing this class and the development of techniques for measuring levels of participation within a small software development group. This paper summarizes our multi-year experience and results of our class teaching methods and our novel methods for assessing the teamwork aspects of FOSS development.
#20 Supporting the Learning Process of Open Source Novices: An Evaluation of Visualization Tools View PDF
Yunrim Park (Oregon State University)
Carlos Jensen (Oregon State University
Exposure to Open Source Software (OSS) projects provides students with opportunities to experience “real-world” software development processes and practices, including the opportunity to work with large, existing, and complex code-bases and development communities. Working with OSS also poses challenges. In this paper, we look at some of the challenges students may face when learning about and joining an OSS project. We investigate how visualization tools can help streamline the initial learning process, and present results from a controlled experiment.
#24 Challenges and Opportunities in an Open Source Software Development Course View PDF
Cay Horstmann (San Jose State University)
I report on the design of a course in open source software development that has been offered as a semester-long class to computer science students at San Jose State University as well as an international summer school with participants from HEIG-VD (Yverdon, Switzerland), SJSU, CSU Long Beach, and Arizona State University.

The theoretical part of the course covers the foundational underpinnings through reading and analysis of key white papers, software licenses, documented development practices, and case studies of several important projects of different degrees of complexity. In the practical part, students learn to use the “tools of the trade”, in particular, source control, build automation, and patching. Students study open source projects, identify and implement fixes and improvements, interact with project developers and committers, and aim to have their contributions accepted.

#28 Computer Science and service learning: Empowering nonprofit organizations through open source content management systems View PDF
Linda Seiter (John Carroll University)
A new, civic-minded generation of students is enrolling in college. In order to combat decreasing enrollments, computer science programs must find ways of attracting this new generation. Free and Open Source Software (FOSS) provides an outstanding example of how individuals can collaborate to contribute to the greater good, and it provides a solid basis for integrating service learning into the computing curriculum. Content Management Systems (CMS) are the most popular type of free and open source software used in the nonprofit sector. Students can easily utilize open source CMS tools to build powerful web sites for organizations that provide community and humanitarian services. Such projects allow students to become involved with civic service and to fulfill their desire to contribute to their community.

Round Table Discussion: Position Statements

#21 Building a CS Platform for Learning An Open Source Approach View PDF
Carlos Jensen (Oregon State University)
Eric Betts (Oregon State University)
Yunrim Park (Oregon State University)
Don Heer (Oregon State University)
Kevin Kemper (Oregon State University)
Ben Goska (Oregon State University)
In this position paper we present our work on developing a novel curriculum to improve recruitment and retention of Computer Science (CS) students at Oregon State University. This new CS curriculum is centered on early support of freshman students through a Freshman Mentor Program, exciting technology, inspiring projects, and an Open Source Platform for Learning.
#22 The Open Source Project Approach: Finally A Better Way To Teach The Project Class View PDF
David Munro (University of Wisconsin Whitewater)
A systems project class or classes is part of most computing curriculums. The form that it takes on when implemented in practice is quite diverse. This paper briefly looks at the project class from both a systems and a stakeholder perspective. Given this context an examination of many of the issues and problems that occur in the project class these is made. One of the major process variables or decisions that an instructor has control over, the actual system project is discussed. The use of FOSS projects and the inherent process and infrastructure they bring is shown to address many of the problems that arise in the computing project courses.
#29 Free and Open Source Software across the Curriculum: Use, Study, Add, Build, Leverage View PDF
Clif Kussmaul (Muhlenberg College)
This position paper argues that FOSS should be used in a variety of different ways across the undergraduate CS curriculum, and particularly in projects. The paper describes a five step USABL model in which students use FOSS, study it as a worked example, add minor enhancements, build larger components, and finally leverage FOSS for other purposes.
This position is based on experiences using FOSS in a variety of contexts, particularly a software engineering course and in capstone projects.
#30 MediaScripting - Introductory Computer Science with a Free and Open-Source Graphics Application View PDF
Soren Berg (Grinnell College)
Janet Davis (Grinnell College)
Samuel A. Rebelsky (Grinnell College)
Free and Open Source Software (FOSS) is used in many places in the Computer Science curriculum, from introductory courses (in which students often use open-source compilers, such as GCC, languages, such as Python, and program development environments, such as Eclipse) to mid- and upper-level software design courses, in which students
contribute to open-source projects. In this position statement, we suggest a different use of FOSS in the introductory course: Since many FOSS applications now support scripting, students can learn basic concepts in computer science through scripting FOSS applications. We discuss this concept in the context of our introductory course, in which students explore image creation and manipulation as the primary problem domain, drawing upon the ideas of Media Computing, with programming done within the context of Script-Fu, the scripting language for The Gnu Image Manipulation Program (GIMP).
#32 From Class Project to Open Source: Packaging for Outside Development View PDF
Edward F. Gehringer (North Carolina State University)
Open-source software projects are becoming common in software engineering classes. Yet it is often difficult to find an OSS project that is suitable for class use,because of prerequisites or hardware that the class may not possess. One way around this is for instructors to package their own projects for open-source development. Our Expertiza
system for collaborative learning has been turned into an open-source project by thoroughly documenting its internal structure, and posting it on the ROSE (Repository for Open Source in Education) site.

Integrating FOSS into the Undergraduate Computing Curriculum, Free and Open Source Software (FOSS) Symposium March 4th 2009

CC: BY SA NC. Copyright 2009 Humanitarian FOSS Project.