2021 - II

Software Reuse

Aviso Importante!

  • Microsoft Teams. Material atualizado do curso está disponível no Microsoft Teams. Em caso de dificuldade, entrar em contato por email.

Course Agenda

Lecture

Date

Topics

1

18/10

Part 1: Course introduction, books, assessment criteria, important dates, etc.

2

20/10

Part 1: Introduction to Software Reuse

Part 2: Reuse in Object Oriented Programming

Part 3: Overview of Reuse Techniques: Design Patterns and MDD

3

25/10

Part 1: Introduction to Software Product Lines

Part 2: Feature Modeling

Part 3: Tools for Software Product Lines

4

27/10

Part 1: Component Based Software Engineering (CBSE)

Part 2: Component Model

Part 3: CBSE Process

Part 4: Component Composition

5

03/11

Part 1: Teamwork Instructions

Part 2: Final Project Instructions

6

08/11

Part 1: Software Product Line Process

Part 2: Domain Engineering

Part 3: Application Engineering

7

10/11

Part 1: Exercise about Feature Modeling

8

17/11

Part 1: Variability Implementation

9

22/11

Part 1: Design Patterns (GoF)

Part 2: Structural Design Patterns

Part 3: Behavioral Design Patterns

Part 4: Creational Design Patterns

10

24/11

Part 1: Software Architecture

Part 2: Architectural Patterns (POSA)

Part 3: Architectural Patterns: From Mud to Structure

Deadlines: teamwork formation (all), paper choice (grad), and final project abstract (grad)

11

29/11

Part 1: Architectural Patterns: Distributed Systems, Interactive Systems, and Adaptable Systems

Part 2: Programming Idioms in Java

12

01/12

Part 1: Review to 1st Exam

13

06/12

1st Exam

14

13/12

Teamwork: Partial Presentation (Feature Modeling and Planning)

15

15/12

Part 1: Implementation Techniques for Software Product Lines

Part 2: Tool-driven Variability Implementation

16

03/01

Part 1: Separation of Concerns

Part 2: Aspect Oriented Software Development (AOSD)

Part 3: Pointcuts in AspectJ

Part 4: Advice in AspectJ

Part 5: Intertype declarations in AspectJ

17

05/01

Part 1: Exercise about Aspect Oriented Programming

18

10/01

Part 1: Paper Presentation and Summary

19

12/01

Part 1: Paper Presentation and Summary

20

17/01

Part 1: Feature Oriented Programming (FOP)

Part 2: FOP Examples and the AHEAD Tool Suite

Part 3: FeatureIDE for Feature Oriented Programming

21

19/01

Part 1: Aspectal Feature Modules

Part 2: Aspect and Feature Oriented Programming with CaesarJ

Part 3: Delta Oriented Programming with DeltaJ

22

24/01

Part 1: Paper Presentation and Summary

23

26/01

Part 1: Paper Presentation and Summary

24

31/01

Part 1: Review to 2nd Exam

25

02/02

2nd Exam

26

07/02

Teamwork: Final Presentation (Implementation and Demo)

27

09/02

Review to 3rd Exam (optional)

28

14/02

3rd Exam (optional)

29

16/02

Part 1: Final Project Presentation

30

21/02

Part 1: Final Project Presentation

Notas


Contact

reuso.softwaregmail.com

Departamento de Ciêcia da Computação
Av. Antônio Carlos, 6627 - ICEx - Pampulha
Belo Horizonte - CEP: 31270-010
Minas Gerais - Brasil

Room: 4311
Phone: +55 (31) 3409-5878