SWE 619 Course Schedule



Syllabus Home page

   OO Software Specification and Construction
Fall 2023


 Meeting  Date Topic Reading
Reading Reflection (Due Tuesday)
Assignment (Due Wednesday)
Quiz Guide
In-Class Exercise ShowMe Link
1 Wed Aug-23 Class Overview   In-Class 0 Finding Pre/Post Conditions
2 Wed Aug-30 Procedural Abstraction; Exceptions Liskov 1 Liskov 2-3 Liskov 4 Bloch 10
Reading Reflection 1, Notes
Assignment 1 Due
Guide 1
In-Class 1A
In-Class 1B
 
3 Wed Sep-06 Data Abstraction Liskov 5.1-5.4,
LiskovSet.java, Poly.java
Reading Reflection 2, Notes
Assignment 2 Due
Guide 2
In-Class 2A
In-Class 2B
Basic Immutability
Map Poly
Wed Sep-13 Reasoning About Data Abstraction Liskov 5.5-5.10 More Liskov 5.5-5.10
Reading Reflection 3, Notes
Assignment 3 Due
Guide 3
In-Class 3A
In-Class 3B
Method Verification
Verification Example
5 Wed Sept-20 Iteration Abstraction; Method Guidelines Liskov 6 Bloch 8
Reading Reflection 4, Notes
Assignment 4 Due
Guide 4
In-Class 4A
In-Class 4B
Broken Iterator
6 Wed Sep-27 Type Abstraction Liskov 7
Reading Reflection 5, Notes
Assignment 5 Due
Guide 5
In-Class 5A
In-Class 5B
In-Class 5C
Method Rule
 7 Wed Oct-4 Polymorphic Abstraction; Lambdas Liskov 8 Bloch 7(Item 42)
Reading Reflection 6, Notes
Assignment 6 Due
Guide 6
In-Class 6
In-Class 6A
Lambda In Class
Polymorphic Abstraction
8 Wed Oct-11 Generics Bloch 5
Reading Reflection 7, Notes
Assignment 7 Due
Guide 7
In-Class 7A
In-Class 7B
In-Class 7C
Generic vs. Not
9 Wed Oct-18 Specification Checking; Temporal Logic KSU Slides: Foundations Temporal Logic
Reading Reflection 8, Notes
Assignment 8 Due
Guide 8
In-Class 8  
10 Wed Oct-25 Common Java Contracts Bloch 3
Reading Reflection 9, Notes
Assignment 9 Due
Guide 9
In-Class 9A
In-Class 9B
Equals Contract
Broken Clone
Broken hashCode
11 Wed Nov-1 Classes and Inheritance Bloch 4
Reading Reflection 10, Notes
Assignment 10 Due
Guide 10
In-Class 10A
In-Class 10B
In-Class 10C
Composition vs. Inheritance
Dynamic Dispatching
12 Wed Nov-8 Contract Model in Testing Advanced JUnit(slides 23-25)
Reading Reflection 11, Notes
Assignment 11 Due
Guide 11
In-Class 11 JUnit Theories
13 Wed Nov-15 Enums and Annotations, Bloch 6
Reading Reflection 12, Notes
Assignment 12 Due
Guide 12
In-Class 12A
In-Class 12B
Operation Enum Example
  Wed Nov-22   No Class - Thanksgiving Recess      
14 Wed Nov-29 Course Wrap Up Final Exam Notes
No reading reflection this week.
 
In-Class 13
Additional In-Class 13
 
15 Wed Dec-06 Final Exam: 4:30        


Schedule Notes

Except for the first class, I expect students to have completed the reading prior to class on the date listed. Quizzes may occasionally take advantage of this expectation.

Homework assignments are due on the date listed. Quizzes are posted, with solutions, on Piazza following the class in which the quiz is given.