Lecture |
Date |
Topics |
1 |
03/03 |
Part 1: Course introduction, books, assessment criteria, important dates, etc.
|
2 |
08/03 |
Part 1: Introduction to Software Reuse
Part 2: Reuse in Object Oriented Programming
|
3 |
10/03 |
Part 1: Overview of Reuse Techniques: Design Patterns and MDD
Part 2: Design Patterns (GoF)
Part 3: Structural Design Patterns
|
4 |
15/03 |
Part 1: Behavioral Design Patterns
Part 2: Creational Design Patterns
Part 3: Programming Idioms in Java
|
5 |
17/03 |
Part 1: Software Architecture
Part 2: Introduction to Architectural Patterns
Part 3: Architectural Patterns: From Mud to Structure
|
6 |
22/03 |
Part 1: Introduction to Software Product Lines
Part 2: Feature Modeling by Example
Part 3: Tools for Software Product Lines
|
7 |
29/03 |
Part 1: Exercise SPL
|
8 |
31/03 |
Part 1: Team Work - Problems and Programmers
Part 2: Team Work - Game SimulES
|
9 |
05/04 |
Exercise
|
10 |
07/04 |
Part 1: Separation of Concerns
Part 2: Aspect Oriented Software Development
Part 3: Pointcuts in AspectJ
Part 4: Advice in AspectJ
Part 5: Intertype declarations in AspectJ
|
11 |
12/04 |
Paper Presentation 1: Do Crosscuting Concerns Cause Defects?
Paper Presentation 2: Design Pattern Implementation in Java and AspectJ
Part 3: Paper Summary
|
12 |
14/04 |
Paper Presentation 1: Modularizing Design Patterns with Aspects: A Quantitative Study
Paper Presentation 2: Blending Design Patterns with Aspects: A Quantitative Study
Part 3: Paper Summary
|
13 |
19/04 |
Part 1: Exercise about AspectJ
|
14 |
26/04 |
Review to 1st Exam
|
15 |
28/04 |
1st Exam
|
16 |
03/05 |
Paper Presentation 1: Avoiding Code Pitfalls in Aspect-Oriented Programming
Paper Presentation 2: Do Security Patterns Really Help Designers?
Part 3: Paper Summary
|
17 |
05/05 |
Part 1: Model Driven Development (MDD)
Part 2: Process in MDD
Part 3: Model Transformation and xUML
Part 4: Tools for MDD
|
18 |
10/05 |
Part 1: Feature Oriented Programming (FOP)
Part 2: FOP Examples and the AHEAD Tool Suite
Part 3: FeatureIDE for Feature Oriented Programming
|
19 |
12/05 |
Part 1: Exercise about FOP
|
20 |
17/05 |
Part 1: Component Based Software Engineering (CBSE)
Part 2: CBSE Process
Part 3: Composing Components
|
21 |
19/05 |
Paper Presentation 1: On the Use of Feature-Oriented Programming for Evolving Software Product Lines: A Comparative Study
Paper Presentation 2: Aspectual Feature Modules
Part 3: Paper Summary
|
22 |
24/05 |
Part 0: Review on Aspectal Feature Modules
Part 1: Aspect and Feature Oriented Programming with CaesarJ
Part 2: Delta Oriented Programming with DeltaJ
|
23 |
31/05 |
Part 1: Exercise.
|
24 |
02/06 |
Paper Presentation 1: Granularity in Software Product Lines
Paper Presentation 2: Writing Good Software Engineering Research Papers
Part 3: Paper Summary
|
25 |
07/06 |
Part 1: Review to 2nd Exam
|
26 |
09/06 |
2nd Exam
|
27 |
14/06 |
Review to 3rd Exam (optional)
|
28 |
16/06 |
3rd Exam (optional)
|
29 |
21/06 |
Final Project Presentation
|
30 |
23/06 |
Final Project Presentation
|