These notes are placed here primarily to assist students enrolled in the course; they are not intended as polished documents. All notes are copyright © Russell C. Bjork. Students enrolled in CPS122 may reproduce these notes for personal study and anyone is free to use them for personal reference; all other rights are reserved.

  1. Course Introduction
  2. From Python to Java
  3. Introduction to Software Development
  4. Requirements Engineering
  5. Use Cases and Initial Functional Tests
  6. Identifying Objects and Classes
  7. Defining a Class
  8. Encapsulation, Inheritance, and Polymorphism
  9. Class Diagrams
  10. Representing Associations in Java; Collections; Arrays
  11. Identifying Responsibilities; CRC Cards