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 2009)
(Programa en trámite de aprobación)
(Programa presentado el 23/06/2010 10:57:25)
I - Oferta Académica
Materia Carrera Plan Año Periodo
INGENIERIA DE SOFTWARE II LIC.EN CS.DE LA COMPUTACION 2009 2° cuatrimestre
II - Equipo Docente
Docente Función Cargo Dedicación
RIESCO, DANIEL EDGARDO Prof. Responsable P.Adj Exc 40 Hs
GARIS, ANA GABRIELA Responsable de Práctico JTP Semi 20 Hs
ABDELAHAD, CORINA NATALIA Auxiliar de Práctico A.1ra Semi 20 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
 Hs. 3 Hs. 4 Hs. 1 Hs. 8 Hs. 2º Cuatrimestre 31/08/2009 04/12/2009 15 120
IV - Fundamentación
Dar las bases teóricas y prácticas que permiten al Ingeniero de Software aplicar un método de desarrollo orientado a objetos utilizando herramientas de especificación formal y herramientas visuales capaces de automatizar las actividades que se realizan durante el proceso de desarrollo del software.
V - Objetivos / Resultados de Aprendizaje
Introducir al alumno en el desarrollo de sistemas aplicando métodos de desarrollo que permiten producir software de manera fiable, de calidad y que funcione en máquinas reales, cubriendo desde la especificación de requisitos hasta la obtención del producto, construyendo artefactos tanto formales como semi-formales.
VI - Contenidos
Unidad 1: El Lenguaje UML
Introducción. Historia. Diagramas. Diagramas de Clases. Abstracción. Encapsulamiento. Modularidad. Jerarquía. Herencia. Agregación. Tipificación. Estricta. Débil. Polimorfismo. Concurrencia. Persistencia. Estado. Comportamiento. Identidad. Visibilidad. Objeto. Interfaz e Implementación. Relaciones.

Unidad 2: Modelos en UML
Introducción. Modelos. Importancia de los modelos. Modelos estáticos. Clases: atributos, operaciones y responsabilidades. Relaciones: dependencia, generalización y asociación. Modelos estáticos y dinámicos. Diagrama de Interacción: Secuencia y Colaboración. Modelo de Casos de Usos.

Unidad 3: Proceso Unificado: Requerimientos.
Introducción. Dirigido por Casos de Usos. Centrado en la Arquitectura. Iterativo e Incremental. Modelo de Casos de Usos. Captura de requisitos. Contexto del Sistema. Modelo del Dominio.

Unidad 4: UML Avanzado.
Mecanismos comunes. Estereotipos. Valores etiquetados. Restricciones. Diagrama de Objetos. Diagrama de Actividades. Máquinas de Estado. Modelo Arquitectónico. Componentes. Despliegue.

Unidad 5: Patrones de Diseño.
Introducción. Conceptos. Descripción. Selección de un patrón de Diseño. Utilización. Problema. Solución. Consecuencia. Catálogo de Patrones de Diseño. Patrones Creacionales. Patrones Estructurales. Patrones de Comportamiento.

Unidad 6: Proceso Unificado: Análisis y Diseño.
Introducción. Propósito. Diferencias. Artefactos. Modelo del Análisis. Clases del Análisis.Realización de Casos de Uso del Análisis. Paquetes del análisis. Arquitectura. Flujo de Trabajo. Rol del diseño. Artefactos. Modelo del Diseño. Clases del Diseño. Realización de Casos de Uso del Diseño. Subsistemas. Interfaz. Arquitectura. Modelo de Desarrollo. Flujo de Trabajo. Aplicación de Patrones en el Diseño.

Unidad 7: Proceso Unificado: Framework
Introducción. Distintas Instanciaciones del Proceso. Modelo de Negocio. Relación con los requisitos. Análisis. Modelo de análisis. Clases de análisis. Realización de casos de uso-análisis. Análisis de la arquitectura. Relación con el Diseño. Pasos a la implementación. Modelo de implementación. Componentes. Modelo de pruebas. Casos de prueba. Procedimiento de prueba. Plan de prueba.

Unidad 8: Especificacion usando OCL
Introducción. Componentes. Self. Invariantes. Propiedades. Clase Asociación. Colección y sus operaciones. Bolsa y sus operaciones. Conjunto. Secuencia. Pre y Post orientada a objeto. Relaciones derivadas.

VII - Plan de Trabajos Prácticos
1. Modelado Estático con UML. Ingeniería Directa. Ingeniería Inversa con Java.
2. Modelado Dinámico con UML. Ingeniería Directa. Ingeniería Inversa con Java.
3. Patrones de Diseño.
4. Modelado Avanzado con UML.
5. Modelo de Casos de Usos.
6. Especificación usando OCL.
7. Desarrollo de un sistema utilizando el Proceso.
VIII - Regimen de Aprobación
Condiciones de regularización:
· Presentación y aprobación del proyecto de práctico de máquina.
· Aprobación de dos exámenes parciales teórico-prácticos con nota mayor o igual a 6 (seis).

Condiciones de aprobación:
1. Por promoción, para lo cual el alumno debe contar con las condiciones de regularización y con una nota de exámenes parciales mayor o igual a 8 (ocho), ó,
2. Por examen final.

Por las características propias del proyecto de práctico de máquina a desarrollarse durante todo el cuatrimestre, NO se aceptan alumnos libres.

Alumnos que Trabajan: La cátedra se rige según las Ordenanzas CS N| 26/97, 15/00 y 13/03.
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] The Unified Modeling Language Reference Manual, 2nd Edition. Booch, Rumbaugh, Jacobson. Addison-Wesley, 2005.
[4] Design Patterns: Elements of Reusable Object-Oriented Software. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides. Addison-Wesley. 1995.
[5] Object-Oriented analysis and design with applications. Booch, Grady. The Benjamin/Cummings Publishing Company Inc. 1994.
[6] The Object Constraint Language: Precise Modeling With UML. Addison-Wesley. Jos B. Warmer and Anneke G. Kleppe. 2004.
[7] Ingeniería del Software. Pressman, Roger S.Ed. Mc-Graw Hill. 2004.
[8] OpenUP/Basic, http://epf.eclipse.org/wikis/openupsp/, 2008.
X - Bibliografia Complementaria
[1] UML Semantics. http://www.omg.org
[2] Object Constraint Language Specification. http://www.omg.org
[3] UML Notation Guide. http://www.omg.org
[4] UML y Patrones: Introducción al análisis y diseño orientado a objetos. Craig Larman, Prentice Hall, 1999.
[5] Patterns in Java. Volume 1. A Catalog of Reusable Design Patterns Illustred with UML. Mark Grand. John Wiley & Sons Inc. 1998.
XI - Resumen de Objetivos
Introducir al alumno en el desarrollo de sistemas aplicando métodos de desarrollo que permiten producir software de manera fiable, de calidad y que funcione en máquinas reales, cubriendo desde la especificación de requisitos hasta la obtención del producto, construyendo artefactos tanto formales como semi-formales.
XII - Resumen del Programa
1.- El Lenguaje UML
2.- Modelos en UML
3.- El Proceso Unificado
4.- Patrones de Diseño.
5.- Especificación usando OCL
XIII - Imprevistos
.
XIV - Otros