Schedule | CS 2113 Software Engineering - Spring 2025

Tentative Course Schedule of Topics

Week Lecture (Mon) Lab ( Wed) Reading  
0 Jan 13: History of Software Engineering
In-class start of semester assessment
Jan 15: Lab 0 – git setup none  
  no lecture Jan 22: submitserver setup
Lab 1: debugging with print statements exercise
none  
1 Jan 27: J0 Worksheet – understanding unit tests
Lab 2: Debugging with unit tests
Jan 29: lecture on markdown J0 - Java, OOP, Encapsulation  
2 Feb 3: J1 Worksheet
Quiz 1: Debugging with unit tests
Lab 3: Writing your own test cases
Feb 5: Lab 4: Finding faults with unit tests S1 - Writing Test Cases  
3 Feb 10: J2 Worksheet
Quiz 2: Writing unit tests
Lab 5: UML exercise for Enigma lab
Feb 12: begin Lab 6 – Enigma J1 - Inheritance and UML  
5 Feb 17: no lecture Feb 19: Quiz 3: UML diagram for Enigma lab none  
4 Feb 24: J3 Worksheet
Quiz 4: Enigma lab code comprehension
Lab 7: Debugging for polymorphism
Feb 26: begin Lab 7 – Dot Chaser J2 - Polymorphism  
6 Mar 3: J4 Worksheet
Quiz 5: DotChaser lab code comprehension
Lab 8: Debugging for interfaces and generics
Mar 5: live coding exam review J3 - Interfaces and Generics  
  Mar 10: no class March 12: no lab    
7 Mar 17: Live coding exam (60 minutes) sample live coding Exam1_Tester.java sample live coding Zoo.java Mar 19: Lab 9 – DC Metro none  
8 Mar 24: Quiz 6: Metro Simulator comprehension quiz Mar 26: Lab 10 – Wordcount Exceptions and I/O  
9 Mar 31: J6 Worksheet
Quiz 7: WordCount comprehension quiz
Lab 11: Threading debugging exercises
Apr 2: Lab 12: github advanced topics J5 - Threading and Concurrency  
10 Apr 7: J7 Worksheet
Quiz 8: Threading
Lab 13: UML diagram for Client Server simulator
Apr 2: begin Lab 14 – Client Server simulator J6 - Java IO and Networking  
11 Apr 14: J5 Worksheet
Quiz 9: Client Server comprehension quiz
Lab 14: Writing test cases for threading
Apr 16: Lab 15 – GUI Enigma J4 - GUIs and Events  
12 Apr 21: J8 Worksheet
J9 Worksheet
Quiz 10: GUI comprehension quiz
Apr 23:
Lab 16: Debugging for GUIs
S2 - Software Engineering Development
S3 - Design Patterns
 
13 Apr 28: other programming languages and python
Makeup quizzes (optional)
Apr 30: no lab none  
  Final Exam week: we do NOT have a final exam in this class