Software Reuse and Design Patterns
1
2016-2017
03003297
Optional Specialties
Portuguese
Face-to-face
SEMESTRIAL
6.0
Elective
3rd Cycle Studies
Recommended Prerequisites
Software Engineering; Object-Oriented Programming
Teaching Methods
Theoretical classes with detailed presentation, using audiovisual means, of the concepts, principles and solving of practical exercises to illustrate the application of course topics.
Learning Outcomes
1. Motivate for the importance of software reuse.
2. Software reuse based on design patterns.
3. Advanced topics in software reuse.
Work Placement(s)
NoSyllabus
1. Software Design Patterns
Catalog of design patterns
2. Programming Paradigms
Aspect Programming, Event-Based Programming
3. Advanced Topics in Software Reuse
Software Components and Architectures. Software Product Lines
Head Lecturer(s)
Fernando José Barros Rodrigues da Silva
Assessment Methods
Assessment
Synthesis work: 50.0%
Project: 50.0%
Bibliography
E. Gamma, R. Helm, R. Johnson, J. Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software, 1995.
J. Sametinger, Software Engineering with Reusable Software, 1997.
C. Szyperski, Component Software: Beyond Object-Oriented Programming,1998.
J. Bosch, Design and Use of Software Architectures, 2000.
H. Gomaa. Designing Software Product Lines with UML, 2005.
R. Taylor, N. Medvidovic, E. Dashofy. Software Architectures, 2010.
R. Pawlak, L. Seinturier, J. Retaillé. Foundations of AOP for J2EE Development. 2005.