CS414 2008

Home

General Information

Schedule

Materials

Requirements

Policies

Schedule

Subject to change as the semester progresses...

Week 1
Introduction to Object-Oriented Analysis & Design
(August 25 - August 29)
Topics
  • Course overview.
  • What is object-oriented analysis & design.
  • Test first development with Java and the JUnit unit testing tool.
Reading
  • Notes: N0 Course Overview, N1 Introduction to OO Analysis & Design, N2. Test First Development.
  • Texts: Larman Ch. 1. Fowler Ch. 4.
Discussion Student and faculty introductions.
Assignment A1: Java warmup excercise with Junit. Due September 3.
Week 2
The Object-Oriented Lifecycle
(September 1 - September 5)
Topics
  • Problems with "traditional" lifecycle models.
  • An iterative lifecycle with very short cycles for OO develoment.
  • OO lifecycle and object modeling (with UML).
Reading
  • Notes: N3 An Extreme OO Lifecycle.
  • Text: Larman Chapters 2-4.
Quiz Quiz on reading. Start of week (before discussion).
Discussion Lifecycle discussion questions.
Week 3
Problem Analysis - Use Cases 1
(September 8 - September 12)
Topics
  • Use cases, use case actors, diagrams and scenarios.
  • Deriving functional requirements from use cases.
  • Non-functional requirements (attributes).
  • Project problem.
Reading
  • Notes: N4 Use Cases and Requirements.
  • Text: Larman Chapters 4-8.
Quiz Quiz on reading. Start of week (before discussion).
Discussion Use case questions.
Assignment A2. Use case develoment, and requirements. Due September 18.
Week 4
Domain Modeling
(September 15 - September 19)
Topics
  • Problem domain concepts & associations.
  • Domain modeling with UML Class Diagrams.
  • The domain modeling process with examples.
Reading
  • Notes: N5 Domain Modeling.
  • Text: Larman Chapters 9.
Quiz Quiz on reading. Start of week (before discussion).
Discussion Domain modeling questions.
Assignment A3. Develop domain model and glossary. Due September 25.
Week 5
System Behavior modeling
(September 22 - September 26)
Topics
  • System Sequence Diagrams.
  • Operation Contracts.
Reading
  • Notes: N6 System behavior modeling.
  • Text: Larman Chapters 10 & 11.
Quiz Quiz on reading. Start of week (before discussion).
Discussion Behavior modeling questions.
Assignment A4. Develop system sequence diagrams using UML. Due October 2.
Week 6
Design modeling 1
(September 29 - October 3)
Topics
  • User interface mockups.
  • UML interaction diagrams.
Reading
  • Notes: N7 Interaction diagrams.
  • Text: Larman Chapters 12 -- 15
Quiz Interaction diagrams.
Discussion Interaction diagram questions.
Assignment A5. Interaction diagram assignment. Due October 10.
Week 7
Design modeling 2 / Review
(October 6 - October 10)
Topics
  • GRASP Patterns.
  • Midsemester Review.
Reading
  • Notes: N7.3 Assigning Responsibilities with GRASP
  • Text: Larman Chapters 17-18.
Quiz GRASP Patterns.
Discussion Open forum.
Week 8
Midsemester Exam
(October 13 - October 17)
Topics
    Review.
Discussion Open forum discussion.
Exam Format to be announced.
Week 9
System Achitectural Design
(October 20 - October 24)
Topics
  • Three-tier architecture.
  • Model-view controller architecture.
Reading
  • Notes: N8 Architectural design.
  • Text: Larman Ch. 13, 34.
Quiz Quiz on reading.
Discussion Architectural design questions.
Week 10
Design-level UML Class modeling
(October 27 - October 31)
Reading
  • Notes: N9 UML Design-level Class modeling.
  • Text: Larman Ch 16, 19, 20.
Quiz Quiz on reading.
Discussion Class modeling questions.
Assignment A6. Develop design-level class models. Due November 6.
Week 11
Java coding style & idioms
(November 3 - November 7)
Topics Quiz on reading.
Reading
  • Notes: N10 Java Style.
  • Larman text: Ch. 20 & 21.
  • Other Java references.
Discussion Java style.
Assignment A7. Implement the design in Java. Due November 13.
Week 12
Cycle 2 Planning/Refactoring.
(November 10 - November 14)
Reading
  • Notes: N11 Planning the next cycle, N12.1 Refactoring.
  • Text: Larman Ch. 22-24, 30, & 32. Fowler Ch. 1.
Quiz Quiz on reading.
Discussion Cycle 2 goals.
Assignment A8 Design & implement Cycle 2. Due December 11.
Week 13
Refactoring/Design Patterns
(November 17 - November 21)
Reading
  • Notes: N12 Refactoring.
  • Text: Fowler Ch. 2, 3, 6 (pp. 110-116), Ch. 7 (pp. 141-153)
Quiz Quiz on reading.
Discussion Refactoring.
Thanksgiving break
(November 14 - November 28)
Week 14
Design Patterns
(December 1 - December 5)
Reading
  • Notes: N13 Design Patterns.
  • Text: Larman Ch. 25 & 26.
  • Other pattern references.
Quiz Quiz on reading.
Discussion Patterns.
Week 15
Review
(December 8 - December 12)
Discussion Review.
Assignment A8 Cycle 2 Design & Code is due.
Final Exam Week
(December 15 - December 19).
Exam Format and dateand date to be announced.
Last updated: July 8, 2008