UNIVERSIDAD AUTÓNOMA DE YUCATÁN FACULTAD DE MATEMÁTICAS MISIÓN Formar profesionales altamente capacitados, desarrollar investigación y realizar actividades de extensión en matemáticas y computación, así como en sus diversas aplicaciones. INGENIERÍA DE SOFTWARE II Séptimo semestre LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN Agosto 2006 – Enero 2007 LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN Formar profesionales capaces de: 1. Evaluar, seleccionar e implantar sistemas de información, así como organizar servicios y administrar recursos computacionales, con base en la estructura, operación y necesidades de información de las organizaciones. 2. Analizar, diseñar e implementar en forma multidisciplinaria, sistemas para administrar información útil en la toma de decisiones, mediante el uso de equipo computacional, diseñando métodos y procedimientos con apoyo de herramientas matemáticas y computacionales, que contribuyan a optimizar los recursos de las empresas. 3. Aplicar las metodologías actuales para el desarrollo general de software y de sistemas en particular, considerando entre otros: sistemas de información, aspectos de interconexión de equipos, interacción con sistemas operativos y teleprocesamiento. 4. Diseñar, construir, instalar y programar interfaces para aplicaciones en computación. UNIVERSIDAD AUTÓNOMA DE YUCATÁN FACULTAD DE MATEMÁTICAS LICENCIATURA EN CIENCIAS DE LA COMPUTACIÓN INGENIERÍA DE SOFTWARE II PROGRAMA PLAN: ÁREA: CLAVE: REQUISITOS: 1997 Ingeniería de Software IS-02 IS-01 SEMESTRE: CRÉDITOS: HORAS SEMESTRE: HORAS SEMANA: 7 9 90 4.5 FECHA DE ELABORACIÓN: 21 de Octubre de 1999. PROPÓSITO: El curso tiene como propósito, que el estudiante obtenga una visión general de proceso de desarrollo de sistemas de cómputo, desde la implementación del software hasta la implantación del sistema, lo anterior, bajo el enfoque de la Ingeniería de Software. OBJETIVO GENERAL: Al término del curso, el alumno definirá las características de la programación, validación y verificación, basado en las especificaciones del diseño de un sistema. CONTENIDO: SECCIÓN I. LA IMPLEMENTACIÓN DEL SOFTWARE UNIDAD I. LA CODIFICACIÓN DEL SOFTWARE (8 SESIONES) OBJETIVO: ______________________________________________________________________________ Elaboración: Ing. Julio C. Díaz Mendoza, E.D.; L.C.C. Raúl A. Aguilar Vera, E.D.; M.C.C. Francisco A. Madera Ramírez. 2 Al finalizar la unidad, el alumno definirá las características de programación y documentación interna del software más adecuados para un sistema de cómputo a implementar. CONTENIDO: 1.11Estándares y procedimientos de programación. 1.2 La adopción de un estilo de codificación. 1.3 La documentación interna del código. 1.4 El software reutilizable. 1.5 Ambientes de desarrollo de software. UNIDAD II. LAS PRUEBAS AL SISTEMA. (8 SESIONES) OBJETIVO: Al finalizar la unidad, el alumno diseñará una estrategia de prueba para un sistema de cómputo desarrollado. CONTENIDO: 2.1 El software defectuoso. 2.2 El propósito de las pruebas. 2.3 Métodos de prueba. 2.4 Estrategias de prueba. 2.5 La depuración del software. SECCIÓN II. ESTIMACIÓN Y CONTROL DE CALIDAD DEL SOFTWARE UNIDAD III. LA ESTIMACIÓN DEL SOFTWARE. (8 SESIONES) OBJETIVO: Al finalizar la unidad, el alumno utilizará las técnicas de descomposición y los modelos de estimación de costos más conocidos en el desarrollo de un sistema de cómputo. CONTENIDO: 3.1 Estimación del proyecto de software. 3.2 Técnicas de descomposición. 3.3 Modelos de estimación. UNIDAD IV. CONTROL DE CALIDAD DEL SOFTWARE. (6 SESIONES) OBJETIVO: Al finalizar la unidad, el alumno utilizará los procesos y estándares para el aseguramiento de la calidad del software, en un sistema desarrollado. CONTENIDO: 4.1 Conceptos básicos de calidad. 4.2 Aseguramiento de la calidad del software. 4.3 Revisiones del software. ______________________________________________________________________________ Elaboración: Ing. Julio C. Díaz Mendoza, E.D.; L.C.C. Raúl A. Aguilar Vera, E.D.; M.C.C. Francisco A. Madera Ramírez. 3 4.4 Fiabilidad del software. 4.5 Los estándares de calidad ISO 9000. SECCIÓN III. LA IMPLANTACIÓN Y MANTENIMIENTO DEL SISTEMA. UNIDAD V. LA LIBERACIÓN DEL SISTEMA. (6 SESIONES) OBJETIVO: Al finalizar la unidad, el alumno definirá una estrategia de liberación para software desarrollado. CONTENIDO: 5.1 Estrategia de implantación. 5.2 La capacitación de los usuarios. 5.3 funciones de la documentación para el usuario. UNIDAD VI. EL MANTENIMIENTO DEL SISTEMA. (4 SESIONES) OBJETIVO: Al finalizar la unidad, el alumno describirá las características del mantenimiento de sistemas de cómputo. CONTENIDO: 6.1 La necesidad de cambios al sistema. 6.2 Las funciones del mantenimiento. 6.3 Características del mantenimiento. UNIDAD VII. TÓPICOS DE LA INGENIERÍA DEL SOFTWARE. (8 SESIONES) OBJETIVO: Al finalizar la unidad, el alumno realizará una investigación en torno a las tendencias actuales de la Ingeniería de Software. CONTENIDO: 7.1 El software rejuvenecido. 7.2 El proceso de maduración del software. 7.3 La Ingeniería del software asistida por computadora (CASE). 7.4 Tendencias actuales de la Ingeniería del Software. ESTRATEGIAS DE ENSEÑANZA: Grupos grandes: -Conferencia. -Interrogatorio. -Tormenta de ideas. Grupos pequeños: ______________________________________________________________________________ Elaboración: Ing. Julio C. Díaz Mendoza, E.D.; L.C.C. Raúl A. Aguilar Vera, E.D.; M.C.C. Francisco A. Madera Ramírez. 4 -Pequeños grupos de discusión. -Discusión grupal. -Comisión. CRITERIOS DE EVALUACIÓN: PRUEBAS OBJETIVAS: Prueba #1 (Unidades #1 y #2) 30% Prueba #2 (Unidades #3 y #4) 30% Prueba #3 (Unidades #5, #6 y #7) 30% TRABAJOS (Grupos de 3-5 alumnos): Proyecto #1 (Unidad #7) 10% TOTAL: (1 sesión) (1 sesión) (1 sesión) 100% PROYECTO #1: Consiste en el desarrollo y exposición de una investigación respecto a un tema específico (previa aceptación), que presente alguna d las tendencias actuales de la Ingeniería de Software. Al finalizar el curso, se realizará un examen ordinario de todos los temas en clase, el cual representará el 40% de la calificación final del curso, el 60% restante se calculará sobre la calificación obtenida por el alumno a lo largo del curso. Son requisitos para poder presentar el examen ordinario: 1) 80% de asistencia a clase. 2) Haber entregado el proyecto #1. 3) Haber presentado al menos dos exámenes parciales. Para poder exentar el examen ordinario se requiere, además de los 3 requisitos anteriores, haber presentado y aprobado los tres exámenes parciales con una calificación mínima de 70 puntos en cada uno de ellos, y haber obtenido un promedio de 90 puntos durante el curso. Examen Ordinario Tutorías durante el curso (1 sesión) (8 sesiones) BIBLIOGRAFÍA BÁSICA: 1. Laurence, S. (1991) Software Engineering. The production of Quality Software. Second Edition. USA: Macmillan. 2. Pressman, R. (1998) Ingeniería de Software: un enfoque práctico. Cuarta edición. España: Mc Graw Hill Internamericana. 3. Sommerville, I. (1992) Software Engineering, Fourth Edition. USA: Addison Wesley. BIBLIOGRAFÍA COMPLEMENTARIA: 1. Fairley, R. (1987) Ingeniería de software. México: Mc Graw Hill. 2. Kan, S. (1995), Metrics and models in software quality engineering; USA: Addison Wesley. 3. Weiss, E. (1991) How to write usable user documentation, Second edition. USA: Oryx Press. ______________________________________________________________________________ Elaboración: Ing. Julio C. Díaz Mendoza, E.D.; L.C.C. Raúl A. Aguilar Vera, E.D.; M.C.C. Francisco A. Madera Ramírez. 5 Perfil Profesiográfico: Licenciado en Ciencias de la Computación o carrera afín, o Posgrado en Computación. Elaboración: Ing. Julio C. Díaz Mendoza, L.C.C. Raúl A. Aguilar Vera, M. en C. Francisco A. Madera Ramírez. Fecha de elaboración: Octubre, 1999. ______________________________________________________________________________ Elaboración: Ing. Julio C. Díaz Mendoza, E.D.; L.C.C. Raúl A. Aguilar Vera, E.D.; M.C.C. Francisco A. Madera Ramírez. 6