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 2020)
I - Oferta Académica
Materia Carrera Plan Año Periodo
INGENIERIA DE SOFTWARE I ING. INFORM. 026/12- 08/15 2020 2° cuatrimestre
II - Equipo Docente
Docente Función Cargo Dedicación
FUNES, ANA MARIA Prof. Responsable P.Asoc Exc 40 Hs
SANCHEZ, ALEJANDRO Prof. Colaborador P.Adj Exc 40 Hs
BERNARDIS, EDGARDO Auxiliar de Práctico A.1ra Simp 10 Hs
MIRANDA, ENRIQUE ALFREDO Auxiliar de Práctico JTP 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
 Hs. 2 Hs. 3 Hs. 1 Hs. 6 Hs. 2º Cuatrimestre 22/09/2020 18/12/2020 13 75
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 con la temática, se pretende que el alumno aprenda los fundamentos básicos de cada una de las etapas que comprenden 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, se busca profundizar en las primeras etapas del ciclo de vida (captura y análisis de requisitos), además de introducir al alumno en conceptos de validación y verificación, y de métricas del software.
VI - Contenidos
Unidad 1: Conceptos de Software e 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: Modelo de Presentación o Interfaces
Sistemas interactivos y diseño de interfaces. La Interfaz de Usuario (IU). Tipos de diálogo. Técnicas de diálogo. Especificación del diálogo Hombre-Máquina. Descripción estática y dinámica. Diagrama de navegación de ventanas. El concepto de Usabilidad. La importancia y los beneficios del diseño de una IU usable. Heurísticas de usabilidad para el diseño de la IU.

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
Debido al distanciamiento social, preventivo y obligatorio, establecido por el Gobierno Nacional en el DECNU 520/2020, las condiciones para REGULARIZAR la materia son excepcionales:
1) Hacer entrega, de manera no presencial, y aprobar con una nota mínima de 6 (seis) el práctico integrador solicitado por la cátedra, en tiempo y forma.
2) Resolver, de manera individual, no presencial el/los ejercicios asignados por la cátedra. Cada instancia de evaluación será vía Google Meet u otro medio similar, y se aprobará con una nota mínima de 6 (seis).
Debido a la situación particular de dictado de la materia, la misma no podrá promocionarse, por lo tanto, para su aprobación, el alumno que haya alcanzado la regularidad, deberá rendir, en los turnos establecidos, un examen final presencial oral o escrito, que podrá incluir tanto temas teóricos como ejercicios prácticos. Dicho examen final se aprobará con una nota mayor o igual a 4 (cuatro).
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 un 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
Habida cuenta del DECNU-520/2020 de distanciamiento social, preventivo y obligatorio, establecido por el Gobierno Nacional y la necesidad de reajustar el Calendario Académico de la Universidad Nacional de San Luis, en lo referente al Segundo Cuatrimestre 2020, el Consejo Superior en su sesión del día 01/09/2020 estableció en el Artículo 1 de la Resolución Nº 68/2020, que el Segundo Cuatrimestre sea de 13 semanas. A los efectos de que se impartan todos los contenidos y se respete el crédito horario establecido en el Plan de estudios de la carrera para esta asignatura, se establece que se dicten cómo máximo 6 hs por semana, distribuidas en teorías, prácticos de aula, laboratorios y consultas, hasta completar las 75 hs. del crédito horario de la materia.
La metodología de la asignatura tiene las siguientes características:
- El dictado de las clases teóricas es mediante videoconferencias en plataformas tipo Zoom o Google Meet, apoyadas con TIC.
- Los prácticos de aula y de laboratorio se realizan individualmente, con al menos una clase de consulta por semana, mediante videoconferencia.
- El práctico integrador se realiza de manera grupal, con al menos una clase de consulta por semana, mediante videoconferencia.
- Las comunicaciones de novedades por parte de la cátedra, así como las consultas referentes a la organización y dictado de la materia por parte de los alumnos, se realizan por e-mail o por un grupo de WhatsApp de la materia.
- Las entregas de prácticos se realizan por e-mail o WhatsApp y las instancias de evaluación por Google Meet o Zoom.
- El material de la materia (apuntes, transparencias, prácticos, etc.) se encuentra en un repositorio de la materia en Aulas Virtuales de la FCFMyN.
XIV - Otros