||The open source development model is becoming an important influence upon proprietary software development models. This course will survey the tools and techniques used in open source software development, and the community and project management and collaboration strategies use in these projects. Emphasis will be placed upon tool-driven development, the role of source code management systems, and open development processes and tools. Areas in which open source practices can use improvement will also be considered.
||CS 300 or equivalent knowledge of standard software engineering methodology and practice.
||Goals: Upon the successful completion of this class, students will be able to:
- Classify software systems as open source, proprietary, or mixed.
- Explain the unique engineering principles and practices underlying open source software development, and contrast these with the principles and practices of other software engineering styles.
- Discuss the efficacy and difficulties of open source software engineering methodologies in a qualitative and quantitative fashion.
- Enumerate current important topics in open source software engineering.
- Cite relevant academic and professional research literature on important topics in open source software engineering.
- Present open source research results in a way that demonstrates good understanding.
||Varies by quarter. Please see http://wiki.cs.pdx.edu/cs510osse/schedule.html for the most recent offering.
||Asynchronous development, Distributed development, Tool-driven development, Source-driven development, Networking, Security, Scripting and language construction, Volunteerism, Business, Devices, Graphical User Interfaces