View on GitHub

COMP 491/492

Dickinson College Computer Science Senior Seminar

Class Discussion Readings

This page will provide the readings for all of the class discussions. Readings for topics will be added as the discussion days approach. Be sure that you are completing the readings for the correct topic and date.

Our readings on Software Engineering topics will be drawn from the book Cooperative Software Development by Amy J. Ko. Additional readings on other topics will be drawn from a variety of sources.

Class Preparation:

On days that we are discussing topics, you are expected to complete readings before class, think about and process them. In addition, you are expected to find and complete at least one additional reading on a topic in the above readings or on a question of your own related to today’s topic that you would like to learn more about.

By 8:00am on the class day you are expected to make a posting to the discussion forum on the course Moodle site Your posting must include the following headings and content:

Reading and Discussion Topics:

Date Reading / Discussion Topic Assigned Readings
T 09/06/22 C03 - SWE / FOSS History 1. SWE History
2. 6 pivotal moments in open source history
3. Why Do Large Companies Open Source Their Tech?
T 09/13/22 C05 - Organizations & Communities 1. SWE Organizations
2. Four types of open source communities
3. Open-Source Contribution: The Ultimate Guide
4. WTF is Wrong with Open Source Communities?
T 09/20/22 C07 - Licensing 1. How to Use Popular Open Source Licenses, Explained
2. If Software is My Copilot, Who Programmed My Software?
3. Dual Licensing in Open Source Software Industry
T 10/11/22 C13 - Culture & Communication 1. SWE Communication
2. Producing OSS Chapter #6 - Communications (Stop at Publicity)
3. Why Companies Should Model Their Culture After Open Source
F 10/14/22 C14 - Productivity & Quality 1. SWE Productivity
2. SWE Quality
3. The Cathedral and the Bazaar
F 10/28/22 C17 - Requirements, Architecture & Specifications 1. SWE Requirements
2. SWE Architecture
3. SWE Specifications
4. Architectural Patterns and Styles (Pick ~3 styles and read about them.)
F 11/04/22 C19 - Processes 1. Watch The Software Crisis [3 min] and Evidence of it [2 min]
2. SWE Process
3. Software Process Models
4. Agile Manifesto and Principles
5. Agile 101.
F 11/18/22 C23 - Agile Processes & Games 1. What is Extreme Programming?
2. Introduction to Scrum
3. The Kanban Method
T 11/29/22 C25 - Comprehension, Verification & CI/CD 1. SWE Comprehension
2. SWE Verification
3. Continuous Integration, Delivery, and Deployment
T 12/06/22 C27 - Monitoring and Evolution 1. SWE Monitoring
2. SWE Evolution
3. The Era of “Move Fast and Break Things” is Over
4. XKCD
5. Larry Fink’s 2019 Letter to CEOs

Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License All textual materials used in this course are licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License

GPL V3 or Later All executable code used in this course is licensed under the GNU General Public License Version 3 or later