Welcome!
This is the homepage for Software Engineering (CS71) at Swarthmore College in the Fall 2017 semester. This site provides information regarding the course, including the lecture schedule, homework assignments, and syllabus.
Goals
The purpose of this course is to tame the process of creating software. Just as authoring a book requires greater preparation and foresight than writing a letter, so does engineering a large piece of software require more planning and structure than does writing small programs. Software Engineering is a methodical and scientific approach to the process of developing software. Topics include software development methodologies, design principles, collaboration techniques, the use of modern libraries and frameworks, quality assurance, and timeline management.
This course presumes that the student has taken CS35 (Data Structures and Algorithms). A firm grasp of data structures and object-oriented programming is required.
Getting Started
This site should contain all of the information you need to prepare for the course.
- Information about the recommended course readings can be found here.
- Information about the course lecture and assignments appears on the schedule page.
- Make sure you are familiar with the academic integrity policy.