CS414 2008

Home

General Information

Schedule

Materials

Requirements

Policies

Schedule

Subject to change as the semester progresses... This page will not be updated. Once the semester starts, please refer to the RamCT calendar for the most current information.

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.
Quiz Quiz on background.
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.
Discussion A1 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.
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.
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.
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 Interaction diagram questions
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.
    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 13.
    Week 11
    Java coding style & idioms
    (November 3 - November 7)
    Topics Java coding style and idioms.
    Reading
    • Notes: N10 Java Style.
    • Larman text: Ch. 20 & 21.
    • Other Java references.
    Quiz Quiz on reading.
    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 10.
    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 24 - November 28)
    Week 14
    Design Patterns
    (December 1 - December 5)
    Reading
    • Notes: N13 Design Patterns.
    • Text: Larman Ch. 25 & 26.
    • Other pattern references.
    Discussion Patterns.
    Week 15
    Review
    (December 8 - December 12)
    Quiz Quiz on reading.
    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 21, 2008