Universidad de los Andes 
Magister en Ingeniería de Sistemas y Computación 
Patrones de Diseño de Software 
Profesor: Pablo Figueroa 
 
 

Objetivos

El curso pretende que el estudiante comprenda la teoría alrededor de esta técnica de desarrollo de software, como también adquiera una práctica en su uso. Al final del curso el estudiante será capaz de:

Contenido

Semanas  Contenido  Lecturas,  
material de referencia 
Porcentaje Evaluado 
1 Introducción y motivación. 
 
Requerida: Patterns and Software: Essential Concepts and Terminology 
por Brad Appleton 
Opcional: Patterns, por Grady Booch 
Opcional: Why Explore Object Methods, Patterns, and Architectures? 
por Stephen Mellor 

Requerida: Cap 1. Coplien 
 

2-4 Aprendizaje de C++ basado en idioms C++ Styles and Idioms, por J. Coplien
2-4 Estudio del ambiente de desarrollo y el proceso de desarrollo Requerida: Introducción al ambiente de trabajo. Memo interno 
Requerida: Proceso de desarrollo. Memo interno
5-7 UML como notación para patrones de diseño 
Estudio de los patrones de diseño básicos
Design Patterns, por Erich Gamma, et. al
8 Criterios de clasificación de patrones Cap. XX, Pattern-Oriented Software Architecture: A Systems of Patterns 
por Frank Bushman et. al. 
Caps XX, YY. Patterns Languages of Program Design
9 Presentación del proyecto final
10 Forma canónica de representación de patrones de diseño
11-15 Desarrollo incremental del proyecto final

Metodología

El curso desarrolla su aprendizaje y trabajo alrededor de un proyecto final. Este ambiente consta de varias aplicaciones en una arquitectura ya definida. Luego de dar las bases de la teoría del curso en las 8 primeras semanas, por medio de presentaciones magistrales, tutoriales y talleres, se centra el curso en el desarrollo incremental del sistema.

Evaluación

Lecturas y exposiciones 
Talleres y ejercicios 
2 parciales 
Taller I de patrones 
Proyecto final (en varias entregas) 
15% 
15% 
20% 
10% 
40% 

Bibliografía

  1. Gamma, et. al. Design Patterns: Elements of Reusable Object-Oriented Software. Libro Guia.Addison Wesley. Oct. 1994. Vea un resumen en http://st-www.cs.uiuc.edu/users/patterns/books/#Gamma
  2. Coplien, James . Advanced C++. Programming Styles and Idioms. 1992. Addison Wesley
  3. Patterns Home Page en http://st-www.cs.uiuc.edu/users/patterns/patterns.html.

Otros Recursos