CIS 525 Lecture Notes