View on GitHub

COMP 491/492

Dickinson College Computer Science Senior Seminar

RD01 - Software Engineering and FOSS History

Preparation

Review the expectations for preparation for the Readings and Class Discussions.

Assigned Readings

Discussion Questions

  1. What is the purpose of “software engineering” and what necessitated its creation as a discipline of study?
  2. Ko cites Ruha Benjamin in claiming that “software and software engineering tends to encode, amplify, and reinforce existing structures and norms of discrimination by encoding it into data, algorithms, and software architectures.”
    • What does this mean?
    • What examples can you imagine or do you know about?
    • How can it be prevented?
  3. Ko raises the question “If our cars are to soon drive us around, who’s responsible for the first death: the car, the driver, or the software engineers who built it, or the company that sold it?”
    • A more general question would be, who is responsible for anticipating and preventing negative effects of software (the coder, the engineer, the manager, the corporation, the user) and who is responsible for those effects should they occur?
  4. What are the cathedral and bazaar models of software development? What are the relative strengths and weaknesses of these models? To what extent do you think these models are still accurate today?
  5. Based on the reading about the “Mysteries of Open Source Software,” what advantages and disadvantages do you see in contributing to Open Source Projects in this course?
  6. Based on all of that, address the following question raised by Ko “If software engineering is about more than coding, what skills does a good coder need to have?”
  7. Prepare at least one question of your own related to the readings that you would like to raise for class discussion. This may be a question:
    • seeking factual clarification of something in the readings.
    • that you would like to hear your classmates thoughts and opinions on.

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