CS 340 Class Schedule - Winter 2012
Week 1: Jan. 4 - Jan. 6
- Course Introduction (No Reading)
- UML Class Diagrams (UML pgs. 1-6, Ch. 3, Ch. 5)
Due Dates
- Jan. 6 - Team Application
Week 2: Jan. 9 - Jan. 13
- Design By Contract (UML pgs. 50-51, "Applying Design By Contract" on Blackboard)
- Design Patterns (DP Ch. 1, Singleton, Composite)
- Group Project Overview / Phase 1 (Group Project Overview, Being a Good Team Mate, Phase 1 Specification)
Due Dates
- Jan. 11 - Homework 1 - UML Class Diagrams
- Jan. 13 - Homework 2 - Design By Contract
Week 3: Jan. 16 - Jan. 20
- No Class Jan. 16 - Holiday
- Design Principles ("Design Principles Review" on Blackboard)
- Development Tools ("Subversion Book", Chs. 1-3; Subversion Tutorial on course home page)
Due Dates
- None (you should be working on Phase 1 Design)
Week 4: Jan. 23 - Jan. 27
- UML Sequence Diagrams (UML Ch. 4)
- Software Architecture ("Layers" on Blackboard, DP Facade)
- Software Architecture / Observer (DP Observer)
Due Dates
- Jan. 23 - Phase 1 Design
- Jan. 27 - Homework 3 - UML Sequence Diagrams
Week 5: Jan. 30 - Feb. 3
- Model-View-Controller ("Model-View-Controller" on Blackboard)
- Phase 2 / UI-Core Model Integration (Phase 2 Specification)
- Intro. to Software Testing ("Verification and Validation" on Blackboard)
Due Dates
- Feb. 1 - Phase 1 Implementation
- Feb. 3 - Phase 1 Report
Week 6: Feb. 6 - Feb. 10
- Intro. to Software Testing / JUnit ("Test Infected: Programmers Love Writing Tests" on Blackboard)
- Black Box Testing (No Reading)
- Black Box Testing (No Reading)
Due Dates
- Feb. 6 - Phase 1 Exam
- Feb. 10 - Phase 2 Design
Week 7: Feb. 13 - Feb. 17
- White Box Testing / Cobertura ("Measure Test Coverage with Cobertura" on Blackboard)
- White Box Testing (No Reading)
- Testing Strategies ("Introduction to Test Driven Development" on Blackboard)
Due Dates
- Feb. 15 - Homework 4 - Black Box Testing (Analysis)
Week 8: Feb. 20 - Feb. 24
- (Monday instruction on Tuesday this week)
- Testing Strategies / Designing for Testability (No Reading)
- No Class Feb. 22 - Phase 2 Implementation Due
- Phase 3 / Design Patterns (Phase 3 Specification, DP Command, Builder)
Due Dates
- Feb. 22 - Phase 2 Implementation
- Feb. 24 - Phase 2 Testing
Week 9: Feb. 27 - Mar. 2
- Design Patterns (DP Visitor)
- Refactoring (REF Preface & Ch. 1)
- Refactoring (REF Ch. 3)
Due Dates
- Feb. 27 - Phase 2 Pass Off, Phase 2 Report
- Feb. 29 - Phase 2 Exam
Week 10: Mar. 5 - Mar. 9
- Refactoring (REF Ch. 3)
- Refactoring (REF Ch. 14)
- Data Persistence (No Reading)
Due Dates
- Mar. 5 - Phase 3 Design
- Mar. 9 - Homework 5 - Refactoring
Week 11: Mar. 12 - Mar. 16
Due Dates
- Mar. 14 - Phase 3 Implementation
- Mar. 16 - Phase 3 Testing
Week 12: Mar. 19 - Mar. 23
- Design Patterns - Chain-of-Responsibility / Plug-In (DP Chain-of-Responsibility)
- Software Reuse (DP Decorator, Adapter)
- Software Reuse (DP pgs. 18-22 Putting Reuse Mechanisms to Work, DP Strategy, "Generics in the Java Programming Language" on Blackboard)
Due Dates
- Mar. 19 - Phase 3 Pass Off, Phase 3 Report
- Mar. 21 - Phase 3 Exam
Week 13: Mar. 26 - Mar. 30
- Inheritance (No Reading)
- Inheritance (DP Factory Method, Template Method)
- Flex Day on Mar. 30 (we will meet only if we are behind)
Due Dates
- Mar. 26 - Phase 4 Design
- Mar. 30 - Homework 6 - Black Box Testing (Automation)
Week 14: Apr. 2 - Apr. 6
- Inheritance and Design by Contract / Design Patterns ("Applying Design By Contract" on Blackboard, DP Proxy)
- Design Patterns (DP Abstract Factory, State)
- No Class Apr. 6 - Phase 4 Testing Due
Due Dates
- Apr. 2 - Homework 7 - White Box Testing (Coverage)
- Apr. 5 (Thursday) - Phase 4 Implementation
- Apr. 6 (Friday) - Phase 4 Testing
Week 15: Apr. 9 - Apr. 11
- Final Exam Review
- Flex Day on Apr. 11 (we will meet only if we are behind)
Due Dates
- Apr. 10 (Tuesday) - Phase 4 Pass Off, Phase 4 Report
- Apr. 11 (Wednesday) - Phase 4 Exam
Final Exam:
- Thursday, April 19, 7:00am - 10:00am (in class)