CS 551/651


Home

Schedule

Reading List

Homeworks

Links

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

CS 551/651: Aspect Oriented Software Development, Fall 2004

 

Course Schedule
Approximate schedule for the rest of the semester follows. Changes might be made to this schedule during the semester, but largely the course will stick to the outline presented below. Changes will be communicated either in the class or through e-mail sent out to the class mailing list.
Introduction
Lecture 1: Thursday, September 2 Introduction, Administrative details
Lecture 2: Tuesday, September 7 On the role of scientific thought, Aspect-oriented Programming: An Introduction
Lecture 3: Thursday, September 9 Chapter 1: Introduction to AOP
Lecture 4: Tuesday, September 14

Decomposing systems into modules

Lecture 5: Thursday, September 16

Chapter 2: Introducing AspectJ

Lecture 6: Tuesday, September 21

Chapter 3, (Page 64-77): AspectJ Syntax Basics - Pointcuts, Signatures.

Lecture 7: Thursday, September 23

Chapter 3, (Page 78-99): AspectJ Syntax Basics - Advice, Static Crosscutting.

Lecture 8: Tuesday, September 28

Chapter 4: Advanced AspectJ - Reflection, precedence and association 

Lecture 9: Thursday, September 30 Chapter 5: Monitoring techniques
Lecture 10: Tuesday, October 05 Chapter 6: Policy enforcement - system-wide contracts
Lecture 11: Thursday, October 07 Chapter 7: Optimization - pooling and caching
No Lecture : Tuesday, October 12 Reading Holidays
Lecture 12: Thursday, October 14 Project Phase-1 Presentation (Modularizing simple crosscutting concerns in Hypercast)
Lecture 13: Tuesday, October 19 Hypercast discussion
Lecture 14: Thursday, October 21 Hypercast discussion
Lecture 15: Tuesday, October 26 Overview of Hypercast - Guest lecture by Greg Mattes
Lecture 16: Thursday, October 28 Logging issues in Hypercast (Project Phase-2)
Lecture 17: Tuesday, November 2 Logging issues in Hypercast (Project Phase-2) (Discussion & Project Presentation)
Lecture 18: Thursday, November 4 Chapter 10: Security
Lecture 19: Tuesday, November 9 Crosscutting concerns in Hypercast (Discussion & Project Presentation)
Lecture 20: Thursday, November 11 Crosscutting concerns in Hypercast (Discussion & Project Presentation)
Lecture 21: Tuesday, November 16 Concepts and Experiments in Computational Reflection
Lecture 22: Thursday, November 18 Aspect Weaving in AspectJ
Lecture 23: Tuesday, November 23 Subject-oriented Programming
No Lecture: Thursday, November 25 Thanksgiving recess
Lecture 24: Tuesday, November 30 Instance-level aspects
Lecture 25: Thursday, December 02 Classpects: Compositional building blocks for program design
Lecture 26: Tuesday, December 07 Modular Reasoning & Aspect-Oriented Programming
Lecture 27: Thursday, December 09 Final Project Presentations