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. |
I - Oferta Académica | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
II - Equipo Docente | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
III - Características del Curso | |||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
IV - Fundamentación |
---|
Se introduce al alumno en el desarrollo de software, como una actividad ingenieril, y al trabajo en equipo. Teniendo en cuenta que es la primera asignatura relacionada a dicho tema, se pretende que el alumno aprenda los fundamentos básicos de cada una de las etapas que comprende el proceso de desarrollo de software así como la aplicación de un método de desarrollo particular, y de las principales técnicas de validación y verificación del software.
|
V - Objetivos / Resultados de Aprendizaje |
---|
Introducir al alumno en los conceptos fundamentales de la Ingeniería de Software con hincapié en los conceptos y herramientas correspondientes a la producción de software con un enfoque de calidad. En particular, profundizar en las primeras etapas del ciclo de vida (captura y análisis de requerimientos). Presentar los conceptos de validación y verificación, y de métricas del software.
|
VI - Contenidos |
---|
Unidad 1: Conceptos de Software y La Ingeniería de Software
Aspectos históricos. Crisis del software. Software e Ingeniería del Software. Tendencias en la Ingeniería del Software. Cuestionamientos e intereses de la Ingeniería del Software. Aspectos claves de la Ingeniería del Software. Características del software. Dominios de aplicación. Unidad 2: El proceso de Desarrollo de Software Modelos de ciclo de vida del software. Modelo teórico. Actividades del Proceso. Especificación. Diseño. Implementación. Validación. Evolución. Modelo en cascada. Modelo de construcción de prototipos. Modelo incremental e iterativo. Modelos evolutivos. Modelo en espiral. Metodologías ágiles. Desarrollo basado en componentes. Métodos formales. Proceso unificado. Herramientas y técnicas para modelado de procesos. Ingeniería de Software Asistida por computadora (CASE). Unidad 3: Modelado Básico del Comportamiento Casos de Uso. Términos y conceptos. Caso de uso: actores, flujos de eventos, escenarios. Organización de los casos de uso. Características. Diagramas de casos de uso. Términos y conceptos. Propiedades. Contenidos. Usos. Técnicas comunes de modelado: modelado del contexto del sistema, modelado de los requisitos de un sistema, modelado de los procesos del negocio. Unidad 4: Modelado del Dominio Modelo Conceptual o Modelo del Dominio. Elementos básicos de los Diagramas de Clases UML para la construcción de modelos conceptuales: clases, atributos, asociaciones, multiplicidades, clase asociación, asociaciones n-arias, generalizaciones. Unidad 5: Interacción Hombre-Máquina Conceptos Básicos de Interfaces Hombre-Máquina (IHM). Importancia del diseño de IHM. La relación de la disciplina del diseño de interfaces a la ciencia de la Interacción Hombre- omputadora. Sistemas interactivos y de diseño de interfaces. Tipos de diálogo. Técnicas de diálogo. Especificación del diálogo Hombre-Máquina. Diseño centrado en el usuario, diseño participativo. Análisis de la tarea. Prototipos y maquetas. Herramientas para crear prototipos. El concepto de usabilidad. Medidas de la calidad de la interfaz de usuario. Métodos para la observación y evaluación. Unidad 6: Validación y Verificación del Software. Conceptos de validación y verificación del software. Inspecciones de software. Análisis estático automatizado. Concepto de verificación formal. El proceso de prueba (Testing). Estrategias: prueba de unidad, prueba de integración, prueba de validación, prueba de sistema. Técnicas de Prueba: Prueba funcional y prueba estructural. Automatización de las pruebas. JUnit. Unidad 7: Métricas del Software. Introducción a la calidad del software. Métricas del modelo de Análisis. Métricas del modelo de Diseño. Métricas del código fuente. Métricas para pruebas. Métricas de mantenimiento. Estimación de Proyectos de Software. Puntos de Función. Puntos de Objetos. Puntos de Casos de Uso. |
VII - Plan de Trabajos Prácticos |
---|
Práctico 1: La Ingeniería de Software y los modelos de ciclo de vida del software (aula).
Práctico 2: Modelado Básico del Comportamiento - Diagramas de Casos de Uso (aula y laboratorio). Práctico 3: Modelado del Domino con Diagramas de Clases (aula y laboratorio). Práctico 4: Interacción Hombre - Máquina(aula y laboratorio). Práctico 5: Prueba Estructural (aula y laboratorio). Práctico 6: Prueba Funcional (aula y laboratorio). Práctico 7: Prueba con JUnit (laboratorio). Práctico 8: Métricas del Software (aula). Práctico Integrador (laboratorio): Proyecto grupal de estimación del sistema y desarrollo de modelo de requisitos (modelo de casos de uso, modelo del dominio, modelo de interfaces) para un dominio dado. |
VIII - Regimen de Aprobación |
---|
Condiciones para REGULARIZAR la asignatura:
- Haber asistido al menos al 70% de las clases teóricas y prácticas de la asignatura. - Haber aprobado dos parciales (o sus respectivas recuperaciones) con nota mayor o igual a 6. - Haber aprobado el práctico integrador con una nota mayor o igual a 6. Condiciones para PROMOCIONAR la asignatura: - Haber asistido al menos al 80% de las clases teóricas y prácticas de la asignatura. - Haber aprobado dos parciales (o sus respectivas recuperaciones) con nota mayor o igual a 7. - Haber aprobado el práctico integrador con una nota mayor o igual a 7. - Haber aprobado un examen integrador con nota mayor o igual a 7. - En caso de haber obtenido nota de promoción en todas las instancias de evaluación, el alumno aprobará la materia con una nota que surgirá del promedio de las mismas. Recuperaciones: -Se otorgarán dos recuperaciones para cada examen parcial. Se considera como válida la última nota obtenida en cada recuperación. -El examen integrador no se recupera. Examen Final: En caso de regularizar la materia, el alumno deberá rendir un examen final, el cual podrá ser oral o escrito, en cualquiera de los turnos de examen establecidos. Exámenes Libres: Dada las características prácticas de la asignatura, no se admitirán exámenes de alumnos libres. |
IX - Bibliografía Básica |
---|
[1] Pressman, Roger; "Ingeniería del Software - Un enfoque práctico", Mc Graw Hill, 7ma Edición. 2010.
[2] Booch, Rumbaugh, Jacobson. The Unified Modeling Language User Guide, 2nd Edition. Addison-Wesley, 2005. [3] Booch, Rumbaugh, Jacobson. The Unified Modeling Language Reference Manual, 2nd Edition. Addison-Wesley, 2005. [4] Jorgensen, Paul C.; “Software Testing, a Craftsman’s Approach”, CRC Press, 1995. [5] Daniel Bolaños y otros; “Pruebas de software y JUnit”, Prentice-Hall, 2008. [6] Apuntes de la Cátedra |
X - Bibliografia Complementaria |
---|
[1] Sommerville, Ian; “Software Engineering”, Addison-Wesley, 8va dición. 2007.
[2] Pankaj Jalote. "An Integrated Approach to Software Engineering, 3rd ed.", Springer, 2005. [3] Stephen Schach. "Ingeniería de Software Clásica y Orientada a Objetos, 6ta ed.", Mc Graw Hill, 2005. [4] Norman E. Fenton & Shari Lawrence Pfleeger. "Software Metrics, A Rigorous and Practical Approach, 2nd edition", 1997. |
XI - Resumen de Objetivos |
---|
Introducir los conceptos y herramientas básicos correspondientes a la producción de software con enfoque industrial.
|
XII - Resumen del Programa |
---|
La Ingeniería de software. Modelos de ciclo de vida del software. Modelado Básico del Comportamiento. Modelado del
Dominio. Interacción Hombre - Máquina. Validación y verificación del software. Métricas del software. Estimaciones. |
XIII - Imprevistos |
---|
|
XIV - Otros |
---|
|