|
Topics
The schedule is subject to change as the semester
progresses. This page may not be updated once the semester starts. At that
point, please refer to the RamCT calendar for the most current
information.
Week 1
Introduction and Preliminaries
(Jan 18 - 24)
|
Topics
|
Course policies
Overview of software engineering (Text chapter 1)
Software process models (Text Chapter 11)
|
Lab
|
None
|
Assignment
|
A1. Reading on software safety: Given Jan 19, Due Jan 28
|
Week 2
Software Testing
(Jan 25 - 31)
|
Topics
|
Introduction to systematic testing (Text Chapter 10)
Test plans
Black-box testing
|
Lab
|
Using JUnit with Eclipse
|
Assignment
|
A1 due Jan 28
A2 assigned Jan 28, due Feb 9
|
Week 3
White-box testing
(Feb 02 - 07)
|
Topics
|
Control flow
Data flow
|
Lab
|
Using xSuds and Eclipse Emma for control flow coverage
|
Assignment
|
No new assignment
|
Week 4
Testing and code reviews
(Feb 08 - 14)
|
Topics
|
Data flow coverage
Code reviews and inspections (Guest lecture: Dr. Kathy Kwinn)
|
Lab
|
Using xSuds for data flow coverage
|
Assignment
|
A2 due Feb 9
A3 assigned Feb 9, due Feb 23
|
Week 5
Review of OO Programming
(Feb 16 - 18)
|
Topics
|
Review of OO programming (Chapter 2)
Review of Java coding style
|
Lab
|
Code review
|
Assignment
|
No new assignment
|
Week 6
OO Frameworks and Requirements
(Feb 22 - 28)
|
Topics
|
Concepts pertaining to the development and use of OO frameworks (Text Chapter 3)
Introduction to requirements (Text Chapter 4)
|
Lab
|
Introduction to the OCSF framework
|
Assignment
|
A3 due Feb 23
P1 assigned Feb 23, due Mar 9
|
Week 7
Introduction to Requirements and Use cases
(Mar 01 - 07)
|
Topics
|
Introduction to requirements (Text Chapter 4)
Introduction to use cases (Text Chapter 4)
Use case modeling
Writing use case descriptions
|
Lab
|
Subversion
Design studio on requirements elicitation
|
Assignment
|
No new assignment
|
Week 8
Use cases and Midterm
(Mar 08 - 14)
|
Topics
|
Introduction to use cases (Text Chapter 4)
Use case modeling
Writing use case descriptions
Study guide for mid
|
Lab
|
Use case modeling tool
Design studio on use case modeling
|
Assignment
|
P1 due Mar 9
P2 assigned Mar 9, due Mar 30
|
EXAM
|
Midterm on March 11
|
Week 9
Spring break
(Mar 15 - 21)
|
Week 10
Classes - domain, design, and implementation
(Mar 22 - 28)
|
Topics
|
Domain modeling
Design class modeling
Implementation of classes
UML notation
|
Lab
|
Introduction to Java Swing
|
Assignment
|
No new assignment
|
Week 11
Design patterns
(Mar 29 - Apr 4)
|
Topics
|
Creational patterns (Text Chapter 6)
Structural patterns (Text Chapter 6)
Behavioral patterns (Text Chapter 6)
|
Lab
|
Class modeling using UML tools
Design studio
|
Assignment
|
P2 due March 30
P3 assigned March 30, due April 20
|
Week 12
Guest lectures
(Apr 5 - 11)
|
Topics
|
UI Design and usability (Guest lecture: Dr. Geri Georg)
Topics in software engineering (Guest lecture: Max Huff)
|
Lab
|
Design studio on using patterns
|
Assignment
|
No new assignment.
|
Week 13
Software Design and Behavior Modeling
(Apr 12 - 18)
|
Topics
|
Behavior modeling (Text chapter 8)
GRASP patterns
|
Lab
|
Design studio on evaluating user interface design
|
Assignment
|
No new assignment.
|
Week 14
Architecture and Software Design
(Apr 19 - 25)
|
Topics
|
Architecture and software design
Model view separation
Facade pattern
Observer revisited
|
Lab
|
Behavior modeling with tools
Design studio on behavior modeling
|
Assignment
|
P3 due April 20
P4 assigned April 20, due May 4
|
Week 15
Design principles, Software Metrics
(Apr 26 - May 2)
|
Topics
|
Introduction to metrics
Product metrics
Process metrics
|
Lab
|
Design studio on identifying and removing bad smells in code
|
Assignment
|
No new assignment.
|
Week 16
Software metrics, Final review, Demos
(May 3 - 9)
|
Topics
|
Software metrics
Course review
Final study guide
Demo of selected projects
|
Lab
|
Metrics tool for Eclipse
|
Assignment
|
P4 due May 4
|
Week 17
FINAL EXAM WEEK
(May 10 - 14)
|
EXAM
|
Final exam May 13, 1:30 -- 3:30 PM
|
|