Object Oriented programming
Identifying candidate objects in a case study
Identifying classes and methods in a case study
Identifying classes and associations in a case study
Identifying actors and use cases
Java programming - Defining some classes
Finding candidate objects and creating a class diagram
Developing sequence diagrams
Refining the design for a case study (optional)
Java programming - Implementing a design
Java programming - Improving the implementation