Ingeniería de Software 2

CI-4712

Septiembre-Diciembre 2000


Tabla de contenido


Objetivo general

Introducir al estudiante en los procesos característicos de la ingeniería de software orientado a objetos. El curso enfatizará:
  1. Un desarrollo incremental e iterativo;
  2. El modelado, diseño, mantenimiento y programación de software orientado a objetos de mediana envergadura;
  3. El trabajo disciplinado en equipos de 4-12 personas (teamwork);
El contenido del curso incluye como mínimo:
Arquitecturas de software orientado a objetos. Patrones de análisis y diseño. Criterios y evaluación del diseño orientado a objetos. Refactorización. Diferencias entre las metodologías OMT y RPM. Ingeniería de software orientada a componentes. Manejo de riesgos en el desarrollo.  Elementos del trabajo en equipo (teamwork). Programación Java.
El avance adicional del curso dependenderá del nivel de los estudiantes inscritos en la asignatura.
 

Requisitos:

     Bases de Datos.
     Sistemas de Programas.
     Permiso de la Coordinación
     Cupo: Originalmente se consideró un máximo de 24 estudiantes y un mínimo de 8 estudiantes, sin embargo para ayudar a resolver la transición al nuevo pensum de la carrera, se permitieron 36 inscritos, lo que tendrá impactos importantes en el desarrollo del curso.
 

Créditos:

      4 créditos (6 horas semanales)
 

Observaciones especiales

Este curso presupone que el estudiante aprobó Sistemas de Programas durante el trimestre Enero-Marzo de 1999 o Abril-Julio de 1999 y que por lo tanto tiene un dominio básico de una metodología desarrollo orientada a objetos y del lenguaje de programación Java.

Este trimestre (Septiembre-Diciembre 2000) contaremos con la valiosa participación de seis profesores invitados:

Programa

Septiembre-Diciembre 2000

Evaluación

A efecto de la evaluación, el curso se centra en el desarrollo incremental de software por parte de empresas formados por 12 personas. El grueso de la evaluación dependerá de la calidad del trabajo que presente cada empresa en un proyecto de desarrollo y mantenimiento de software, así como el grado de participación de los inscritos en las sesiones de clase.

Los criterios para evaluar el trabajo de equipo incluyen:

Se incorporan mecanismos de penalización y bonificación por parte del propio equipo como tarjeta roja/tarjeta amarilla y jugada valiosa/jugador destacado.
 

Tareas:

Notas de apoyo para el curso:

Herramientas utilizadas en el desarrollo

Textos:

No hay un texto para la asignatura ya que el material a cubrir se encuentra disperso en la literatura. Recomiendo que cada empresa forme una biblioteca con los siguientes textos como mínimo:

Referencias complementarias

Desarrollo de software orientado por objetos

Desarrollo de software orientado por componentes

Dinámica de grupos

Otros tópicos en Ingeniería de Software

Referencias adicionales

En esta sección he agrupado referencias en dos categorías, aquellos que no me han convencido en una primera lectura (N)  y aquellos que tengo pendientes por leer (P)
  • Leonor Barroca, Jon Hall y Patrick Hall (eds.): Software Architectures: Advances and Applications. Springer 2000. (P)
  • Len Bass, Paul Clements y Rick Kazman: Software Architecture in Practice. Addison-Wesley, 1998. (N)
  • Bernd Bruegge y Allen Dutoit: Object-Oriented Software Engineering: Conquering Complex and Changing Systems.  Prentice-Hall, 2000. (P)
  • Christine Hofmeister, Robert Nord y Dilip Soni: Applied Software Architecture. Addison-Wesley, 2000. (N)
  • Bertrand Meyer: Construcción de Software Orientado a Objetos. Prentice-Hall, 1999. (P)

  • Esta página fue creada el 14 de junio de 2000.
    Ultima actualización: 15 de noviembre de 2000.
    Por favor dirija sus comentarios al Prof. Alejandro Teruel.