Ministerio de Cultura y Educación
Universidad Nacional de San Luis
Facultad de Ciencias Físico Matemáticas y Naturales
Departamento: Informatica
Área: Area IV: Pr. y Met. de Des. del Soft.
(Programa del año 2011)
(Programa en trámite de aprobación)
(Programa presentado el 28/08/2011 13:06:57)
I - Oferta Académica
Materia Carrera Plan Año Periodo
INGENIERIA DEL SOFTWARE TCO.UNIV.EN WEB 008/05 2011 2° cuatrimestre
II - Equipo Docente
Docente Función Cargo Dedicación
SALGADO, CARLOS HUMBERTO Prof. Responsable P.Adj Exc 40 Hs
SANCHEZ, ALBERTO ANTONIO Responsable de Práctico JTP Simp 10 Hs
LUZZA BONILLA, MARIANO GABRIEL Auxiliar de Práctico A.1ra Simp 10 Hs
III - Características del Curso
Credito Horario Semanal Tipificación Duración
Teórico/Práctico Teóricas Prácticas de Aula Práct. de lab/ camp/ Resid/ PIP, etc. Total B - Teoria con prácticas de aula y laboratorio Desde Hasta Cantidad de Semanas Cantidad en Horas
Periodo
3 Hs.  Hs. 2 Hs. 3 Hs. 8 Hs. 2º Cuatrimestre 08/08/2011 18/11/2011 15 120
IV - Fundamentación
Iniciar al alumno en los conocimientos teóricos y prácticos básicos de la ingeniería de software para la creación de
aplicaciones de calidad orientadas a la web mediante la utilización de método de desarrollo orientado a objetos y de
herramientas apropiadas para tal fin.
V - Objetivos / Resultados de Aprendizaje
Formar al alumno en el diseño e implementación de aplicaciones utilizando un proceso sistemático, apoyándose en
herramientas que permiten mejorar la calidad del software desde el análisis hasta la implementación en entornos de
producción.
Brindar los conceptos básicos del diseño de aplicaciones web utilizando extensiones de UML.
Diseñar utilizando patrones de diseño componentes de software aplicando técnicas de descomposición y reutilización de
software.
Introducir nociones iniciales de planificación y gerenciamiento de proyectos de software.
VI - Contenidos
Unidad 1: Conceptos Introductorios.
Introducción a la ingeniería de software. Software como herramienta vs Software como producto. Origenes de la ingeniería
de software. El ciclo de vida. Modelo de ciclos de vida.

Unidad 2: El Lenguaje UML (Unified Modeling Language)
Importancia del diseño, del proceso y de la arquitectura. El modelo de objetos. Introducción al UML. Modelos estáticos y
dinámicos. Diagramas de Casos de Usos en la captura de requerimientos. Diagramas de Clase en el diseño. Diagrama de
secuencias. Diagramas de componentes. Diagramas de actividad. Uso de herramientas que soportan UML.

Unidad 3: Proceso Unificado de Desarrollo
Introducción. Desarrollo iterativo. Proceso centrado en la arquitectura. Proceso basado en casos de usos. Uso de los distintos
artefactos UML en los flujos de trabajo. Pruebas. Testing unitario, de integración, de regresión. Uso de pruebas unitarias para
desarrollo basado en casos de prueba. Refactoring.

Unidad 4: Patrones de Diseño.
Introducción. Categoría de patrones. Utilización. Problema. Solución. Consecuencia. Patrones Creacionales. Patrones
Estructurales. Patrones de Comportamiento. Descripción de patrones de diseño ampliamente usados por ejemplo: DTO,
DAO, BO, Factory, Iterator, Strategy, Command.

Unidad 5: Extensión del UML para aplicaciones web
Introducción. Estereotipos, valores etiquetados, restricciones. Vista lógica y de componentes. Diseño de aplicaciones web de
acuerdo a la arquitectura.

Unidad 6: Gestión de Proyectos de Software.
Introducción. Enemigos del proyecto de software. UML como una herramienta de gestión. Abstraccion. Administración de
proyectos en RUP.

Unidad 7: Planificación de Proyectos de Software
Importancia de la planificacion. Alcance del proyecto. Estimación de tamaño y esfuerzo de proyecto, métodos. Plan de
Desarrollo de Software. Identificacion de riesgos. Work Breakdown Structure. Diagramas de Gantt (Uso de Gantt Project).
Análisis del camino crítico. Seguimiento del proyecto. Staffing/Roles y responsabilidades.

VII - Plan de Trabajos Prácticos
Practicos de Aula y Laboratorio
Práctico 1: Ingeniería de Software, producto y proceso.
Práctico 2: Modelado Estático con UML. Ingeniería Directa. Ingeniería Inversa con Java. Uso de Jude.
Práctico 3: Modelado Dinámico con UML. Ingeniería Directa. Ingeniería Inversa con Java. Uso de plugin para NetBeans.
Práctico 4: Diagramas de secuencia y colaboración.
Práctico 5: Modelo de casos de usos.
Práctico 6: Pruebas Unitarias.
Práctico 7: Patrones de diseño
Práctico 8: Gestión de proyectos de software.
VIII - Regimen de Aprobación
Condiciones de regularización:
- Presentación y aprobación de los prácticos de máquina.
- Aprobación de dos exámenes parciales teórico-prácticos, o sus respectivas recuperaciones, con nota mayor o igual a 6 (seis).
De acuerdo a la reglamentación vigente, se otorga un recuperatorio por trabajo solamente a aquellos alumnos que hayan
acreditado tal condición en Sección Alumnos.
Condiciones de aprobación:
- Por promoción, para lo cual el alumno debe contar con las condiciones de regularización y con una nota de exámenes
parciales, o sus respectivas recuperaciones, mayor o igual a 7 (siete), ó,
- Por examen final.
Alumnos Libres:
Según lo dispuesto por Art 27 de Ord 13/03.CS
IX - Bibliografía Básica
[1] El Proceso de Desarrollo de Software Unificado. Booch, Rumbaugh, Jacobson. Addison-Wesley, 1999.
[2] The Unified Modeling Language User Guide, 2nd Edition. Booch, Rumbaugh, Jacobson. Addison-Wesley, 2005.
[3] Design Patterns: Elements of Reusable Object-Oriented Software. Erich Gamma, Richard Helm, Ralph Johnson, John
[4] Vlissides. Addison-Wesley. 1995.
[5] Ingeniería del Software. Pressman, Roger S.Ed. Mc-Graw Hill. 2004.
[6] Building Web Applications with UML Second Edition. Jim Conallen. Addison-Wesley. 2002
[7] Object-Oriented Project Management with UML. Murray Cantor. John Wiley & Sons, Inc. 1998.
X - Bibliografia Complementaria
[1] Object-Oriented Software Construction. Bertrand Meyer. ISE Inc, 1998.
[2] Ingeniería del Software. Ian Sommerville. Addison-Wesley, 7a edición. 2005.
[3] The Unified Modeling Language Reference Manual, 2nd Edition. Booch, Rumbaugh, Jacobson. Addison-Wesley, 2005.
XI - Resumen de Objetivos
Introducir al alumno en los conceptos básicos del diseño de aplicaciones web mediante la utilización de UML.
XII - Resumen del Programa
- Lenguaje UML
- UML para la web
- Patrones de diseño
- Proceso unificado
- Planificación y seguimiento de proyectos
XIII - Imprevistos
 
XIV - Otros