CALIDAD, PRUEBAS Y MANTENIMIENTO DEL
SOFTWARE
Grado en
Ingeniería Informática
Universidad de Alcalá
Curso Académico 2014/15
2
Curso 4º – Cuatrimestre 1º
GUÍA DOCENTE
Nombre de la asignatura: CALIDAD, PRUEBAS Y MANTENIMIENTO DEL SOFTWARE
Código: 780043
Titulación en la que se imparte: Grado en Ing. Informática Departamento y Área de
Conocimiento: CIENCIAS DE LA COMPUTACION
Carácter: OPTATIVA
Créditos ECTS: 6
Curso: 4º
Profesorado: Luis Fernández Sanz
Daniel Rodríguez García Horario de Tutoría:
Idioma en el que se imparte: Español
1. PRESENTACIÓN
La asignatura CALIDAD, PRUEBAS Y MANTENIMIENTO DEL SOFTWARE pretende dotar a los alumnos de las habilidades necesarias para el aseguramiento de calidad del software así como para la realización del mantenimiento de aplicaciones y sistemas. La asignatura se centra en el uso de las técnicas de gestión, aseguramiento y evaluación de la calidad del software más habituales en los proyectos de software con una especial atención a las pruebas de software a nivel de equipos de desarrollo y proyecto. También fomentará la comprensión de los conceptos del mantenimiento del software así como de la aplicación de las técnicas asociadas..
Prerrequisitos y Recomendaciones
Es obligatorio haber cursado las asignaturas relacionadas con programación e ingeniería del software.
2. COMPETENCIAS
3 Competencias genéricas:
1. Analizar las necesidades del sistema para determinar las estrategias de prueba adecuadas, diseñando e implementando planes de prueba.
2. Saber llevar a cabo procesos de revisión y saber aplicar técnicas para evaluar la fiabilidad del sistema.
3. Evaluar de manera efectiva los productos de software durante el ciclo de vida del software mediante métricas y modelos de calidad. Conocer los atributos de calidad del software y comprender las técnicas y estándares que permiten desarrollar o modificar software de acuerdo a esos atributos.
4. Comprender el proceso, los tipos y las características del mantenimiento del software. Conocer y saber aplicar técnicas adecuadas a las actividades del mantenimiento del software.
Competencias específicas:
1. Comprender los procesos de aseguramiento de calidad a nivel de proyecto así como identificar y comprender las técnicas más aplicadas habitualmente para gestión, aseguramiento y evaluación de la calidad del software.
2. Comprender los fundamentos de la gestión de configuración del software y su papel básico para el aseguramiento de calidad.
3. Saber organizar y aplicar a nivel básico la gestión de configuración de productos del ciclo de vida del software.
4. Identificar y comprender los procesos y niveles de prueba desarrollados en proyectos de software.
5. Desarrollar la habilidad de diseñar y aplicar pruebas y planes de pruebas para niveles y procesos superiores al de las pruebas de unidad.
6. Conocer y comprender los distintos tipos de proceso de revisión de productos y procesos de software.
7. Saber aplicar y gestionar procesos de revisión y auditoría a productos habituales de los proyectos de software.
8. Conocer y comprender los conceptos de fiabilidad de software.
9. Saber realizar evaluaciones y predicciones básicas de fiabilidad de software.
10. Conocer y comprender los modelos de evaluación de calidad del software.
11. Diseñar y aplicar esquemas de medición de los productos y los procesos más significativos del ciclo de vida de software.
12. Saber interpretar los resultados de métricas para tomar decisiones de desarrollo o mantenimiento.
13. Comprender el proceso, los tipos y las características del mantenimiento del software.
14. Conocer y saber aplicar las técnicas adecuadas para las actividades del mantenimiento del software.
3. CONTENIDOS
1. Introducción al aseguramiento y la gestión de calidad: definiciones, fundamentos y organización. Fundamentos de gestión de configuración y aplicación básica como soporte para el aseguramiento de calidad.
4 2. Pruebas de software. Diseño y gestión de procesos y planes de pruebas.
Técnicas y herramientas para el diseño y gestión de pruebas de integración, sistema, aceptación y regresión.
3. Procesos de revisión y auditoría en proyectos de software: fundamentos, gestión y aplicación a productos y procesos del ciclo de vida del software.
4. Fiabilidad del software: fundamentos y técnicas básicas de evaluación y predicción.
5. Modelos de calidad y métricas. Modelos de evaluación de la calidad de software. Aplicación de métricas a productos y procesos del ciclo de vida.
Interpretación de resultados y toma de decisiones.
6. Mantenimiento de software: fundamentos, tipos y métodos y técnicas para su aplicación práctica.
Programación de los contenidos
Unidades temáticas Temas
Total horas, clases, créditos o
tiempo de dedicación (*)
Introducción a la gestión y aseguramiento de la calidad
Conceptos básicos de gestión y
aseguramiento de la calidad y verificación y validación
Fundamentos de gestión de
configuración
8 horas
Pruebas de software
Técnicas y herramientas de pruebas de software Planes y procesos de pruebas
14 horas
Procesos de revisión y auditoría
Tipos de procesos Aplicación práctica en el ciclo de vida
10 horas
Fiabilidad del software Fiabilidad del software 4 horas
Evaluación de la calidad y métricas
Técnicas y modelos de evaluación
Aplicación de métricas
12 horas
5 Mantenimiento de software
Conceptos de mantenimiento de software
Aplicación práctica de técnicas y
herramientas
8 horas
(*) Incluyen PECs
4. METODOLOGÍAS DE ENSEÑANZA-APRENDIZAJE. ACTIVIDADES FORMATIVAS
La asignatura CALIDAD, PRUEBAS Y MANTENIMIENTO DEL SOFTWARE se organiza como una asignatura cuatrimestral de 6 ECTS (150 horas).
4.1. Distribución de créditos (especificar en horas)
Número de horas presenciales:
Total de clases presenciales: 56 h Evaluación final: 4 h
Número de horas presenciales: 60 h Número de horas del trabajo
propio del estudiante: 90 horas, incluyendo tutorías
Total horas 150
4.2. Estrategias metodológicas, materiales y recursos didácticos
En el proceso de enseñanza-aprendizaje de los contenidos anteriormente reseñados se emplearán las siguientes actividades formativas:
Clases Teóricas presenciales.
Clases Prácticas presenciales.
Prácticas en Laboratorio presenciales.
Tutorías: individuales y/o grupales.
Además, en función de la naturaleza de las distintas partes de la materia objeto de estudio, se podrán utilizar, entre otras, las siguientes actividades formativas:
Elaboración de trabajos individuales o en equipo.
Puesta en común de la información, problemas y dudas que aparezcan en la realización de los trabajos.
Organización y realización de jornadas públicas con presentaciones orales y discusión de resultados.
Seminarios y presentaciones complementarias.
Utilización de Plataforma de Aula Virtual.
Actividades presenciales Las clases presenciales se realizarán en el aula y en el laboratorio.
6
■ Clases en el aula: Exposición y discusión de los conocimientos básicos de la asignatura.
Planteamiento y resolución teórica de ejercicios y supuestos relacionados. Actividades (lecturas, discusiones, casos, etc.) orientadas a la enseñanza de las competencias específicas de la asignatura.
■ Clases en el laboratorio: Planteamiento, desarrollo y solución de ejercicios prácticos utilizando herramientas, técnicas y métodos objetos de estudio de la asignatura, contribuyendo al desarrollo de la capacidad de análisis, razonamiento crítico y comprensión de las prácticas utilizadas.
Trabajo autónomo
Análisis y asimilación de los contenidos de la materia, resolución de problemas, consulta bibliográfica, preparación de trabajos individuales y/o grupales, realización de autoevaluaciones. Orientadas especialmente al desarrollo de métodos para la organización y planificación del trabajo individual y en equipo.
Tutorías: asesoramiento individual y en grupos durante el proceso de enseñanza-aprendizaje, bien en forma presencial o a distancia.
Actividades presenciales
Las clases presenciales se realizarán en el aula y en el laboratorio.
■ Clases en el aula: Exposición y discusión de los conocimientos básicos de la asignatura.
Planteamiento y resolución teórica de ejercicios y supuestos relacionados. Actividades (lecturas, discusiones, casos, etc.) orientadas a la enseñanza de las competencias específicas de la asignatura.
■ Clases en el laboratorio: Planteamiento, desarrollo y solución de ejercicios prácticos utilizando herramientas, técnicas y métodos objetos de estudio de la asignatura, contribuyendo al desarrollo de la capacidad de análisis, razonamiento crítico y comprensión de las prácticas utilizadas.
4.3. Materiales y recursos didácticos
Bibliografía de referencia sobre la asignatura.
Ordenadores personales.
Entornos de desarrollo y manuales de uso de los mismos.
Conexión a Internet.
Plataforma de Aula Virtual y manuales de uso de las mismas.
Proyectores.
7
5. EVALUACIÓN:
Procedimientos, criterios de evaluación y de calificación1 El sistema de evaluación de la asignatura se ajustará al RD 1125/2003 por el cual se regula el sistema de créditos ECTS. Los estudiantes se acogerán a los procedimientos de evaluación según lo articulado en el título 2 (art. 9 y 10) de la Normativa de Evaluación de los Aprendizajes de la UAH aprobada en su Consejo de Gobierno de 24 de marzo de 2011.La evaluación de la adquisición de competencias tendrá en cuenta, entre otros, los siguientes criterios de evaluación:
Dominio de los contenidos y conceptos básicos Resolución de problemas y prácticas propuestas Aplicación de los contenidos
Interés y motivación en la realización de las tareas y prácticas
Sobre la Programación del Proceso de Evaluación, en lo referido a Programación y convocatorias, en esta guía docente, se recogen los siguientes aspectos:
a) Tipo, características y modalidad de los instrumentos y estrategias que forman parte del proceso de evaluación de la asignatura
Sobre las convocatorias, a continuación se recoge de manera expresa el sistema de evaluación y el tipo de pruebas, tanto de la convocatoria ordinaria como de la extraordinaria, y se especifican los resultados de la convocatoria ordinaria que se ha estimado oportuno tener en cuenta para la convocatoria extraordinaria:
a.1) Sobre la evaluación continua, además la aplicación de todos los aspectos contemplados en la normativa, se establece lo siguiente:
El proceso de evaluación continua utilizará diferentes estrategias y recogerá, a largo del cuatrimestre, evidencias que guardan relación con todo el proceso de enseñanza-aprendizaje durante la impartición de la asignatura. Dichas evidencias consistirán en las siguientes pruebas:
1. Prueba de Evaluación Continua 1 (PECA1): consistirá en la realización de un ejercicio escrito para evaluar las competencias asociadas a los temas 1, 2 y 3 que están relacionadas con el dominio de conocimientos y conceptos.
2. Prueba de Evaluación Continua 2 (PECA2): consistirá en la realización de un ejercicio escrito para evaluar las competencias de asociadas los temas 4, 5 y 6 que están relacionadas con la resolución de ejercicios prácticos.
1 Siguiendo la Normativa reguladora de los procesos de evaluación de los aprendizajes, aprobada en Consejo de Gobierno de 24 de Marzo de 2011, es importante señalar los procedimientos de evaluación: por ejemplo evaluación continua, final, autoevaluación, co-evaluación. Instrumentos y evidencias:
trabajos, actividades. Criterios o indicadores que se van a valorar en relación a las competencias: dominio de conocimientos conceptuales, aplicación, transferencia conocimientos. Para el sistema de calificación hay que recordar la Normativa del Consejo de Gobierno del 16 de Julio de 2009.
8 3. Prueba de Laboratorio 1 (PECL1): Consistirá en la realización y entrega en
aula virtual de un trabajo práctico por equipos con uso de herramientas en el plazo fijado.
4. Prueba de Laboratorio 2 (PECL2): Consistirá en la realización y entrega en aula virtual de un trabajo práctico por equipos con uso de herramientas en el plazo fijado.
5. Actividades complementarias en aula (AC): consistirá en la resolución y entrega de ejercicios y actividades en aula o con trabajo autónomo del alumno.
En cuanto a la duración de cada una de las pruebas:
1. PECA1 y PECA2: se realizarán una sesión de 1:30h en el aula.
2. PECL1 y PEC2 se realizarán con trabajo autónomo en equipos de 2 alumnos a lo largo de los plazos de tiempo establecidos combinando su trabajo autónomo con la tutorización en sesiones de laboratorio e incluyendo presentaciones públicas de resultados según el plan de las mismas.
a.2) Además de la aplicación de todos los aspectos contemplados en la normativa, para la evaluación final no continuada, aplicable sólo que cumplan los requisitos correspondientes y estén autorizados por la dirección, se establece lo siguiente:
La evaluación final incluirá las siguientes dos pruebas:
1. Prueba de Evaluación Final Ordinaria (PEF-O): consistirá en la realización de una prueba global escrita de evaluación de las competencias de la asignatura siguiendo el diseño y puntuación de las pruebas PECA1 y PECA2. Tendrá lugar en la fecha oficialmente fijada por la dirección de los estudios para la realización del examen final.
2. Prueba de Laboratorio Final Ordinaria (PLF-O): consistirá en la entrega en aula virtual de los trabajos PECL1 y PECL2.
a.3) En lo referido a los procedimientos de evaluación para la convocatoria extraordinaria se establece lo siguiente:
1. Los alumnos que hayan demostrado un nivel suficiente de competencias (ver apartado 5.b) en cualquiera de las pruebas de evaluación continua no tendrán que repetirlas en esta convocatoria si no lo desean. En caso de querer someterse a una revaluación de sus competencias en cualquiera de las pruebas superadas, se tomará sus últimos resultados como los indicativos de su capacidad. Los alumnos que hayan demostrado un nivel suficiente de competencias (ver apartado 5.b) en las pruebas de evaluación final tendrán similar tratamiento.
2. La convocatoria extraordinaria constará de las pruebas PECA1 y PECA2 y de la entrega de los trabajos PECL1 y PECL2.
3. La convocatoria extraordinaria tendrá lugar en la fecha oficialmente fijada por la dirección de los estudios.
b) Criterios de evaluación
9 Los criterios de evaluación que se aplicarán en la asignatura de Gestión de Proyectos, están vinculados a las competencias que se han definido para la misma, incluidas las competencias actitudinales, y estarán orientados a recoger tanto el nivel de comprensión de los contenidos e ideas básicas, como la capacidad de aplicar los conceptos en la resolución de problemas, sin y con la ayuda de herramientas software. Además se tendrá en cuenta la actitud de colaboración y proactiva en la realización de las tareas tanto individuales como de grupo y el grado de interés mostrado en la realización y cumplimiento de las actividades de clase y de trabajo autónomo, por lo que será fundamental la entrega en tiempo y formato de todas las actividades de prácticas
Los resultados de evaluación obtenidos estarán fundamentados sobre las siguientes rúbricas:
Sobresaliente: demuestra a través de exámenes y trabajos su dominio en todos los aspectos de todas las competencias.
Notable: demuestra capacidad suficiente en todas las competencias, dominando algunas de ellas o algunos de sus aspectos.
Aprobado: demuestra capacidad suficiente en todas las competencias o, al menos, en todas las competencias clave mientras que domina otras competencias o algunos aspectos de otras competencias.
Suspenso: no demuestra capacidad suficiente en varias competencias o en alguna competencia clave.
o 3,5-4,9: no demuestra suficientemente un mínimo número de aspectos competenciales y/o lo hace erróneamente en parte de ellos o en alguna competencia clave aunque ha demostrado capacidad suficiente en el conjunto de competencias clave.
o 1-3,5: comete errores graves y/o los comete en una mayoría de aspectos o competencias o no llega al mínimo en las competencias clave.
o 0: no aporta ningún resultado relevante.
A efectos indicativos para el alumno, las pruebas se diseñarán para que la puntuación asignada en las mismas permita identificar fácilmente el nivel mínimo de capacidad suficiente en todas las competencias evaluadas y el nivel mínimo en el que se ha demostrado capacidad en las competencias clave.
c) Criterios de calificación c1) Evaluación Continua
Los criterios de calificación de las pruebas de evaluación continua de la asignatura de Gestión de Proyectos serán los siguientes:
1. PECA1: 22,5% de la calificación final de la asignatura. Se evalúa el dominio y aplicación de las competencias asociadas a los temas 1, 2 y 3.
2. PECA2: 22,5% de la calificación final de la asignatura. Se evalúa el dominio y aplicación de las competencias asociadas a los temas 4, 5 y 6.
3. PECL1: 22,5% de la calificación final de la asignatura. Se evalúa la resolución, entrega y presentación de problemas prácticos propuestos y del manejo de herramientas software.
10 4. PECL2: 22,5% de la calificación final de la asignatura. Se evalúa la
resolución, entrega y presentación de problemas prácticos propuestos y del manejo de herramientas software.
5. AC: 10% de la calificación final de la asignatura.
A efectos indicativos, la calificación de aprobado podrá alcanzarse habiendo demostrado un nivel mínimo de capacidad suficiente en todas las competencias evaluadas en las pruebas PECA1 y PECA2 por una parte y en las PECL1 a PECL2 por otra parte, con el nivel suficiente de competencias clave en todas las pruebas individuales.
En la evaluación de las prácticas se valorará especialmente la participación e implicación del alumno en el proceso enseñanza-aprendizaje a través de los resultados obtenidos y expuestos por el alumno en un conjunto de prácticas que se le irán proponiendo durante el curso en las clases de laboratorio.
c2) Evaluación Final
El criterio de calificación de las pruebas de evaluación final se basa en otorgar el 50% de la calificación final de la asignatura a Prueba de Evaluación Final Ordinaria (PEF-O) y el 50% Prueba de Laboratorio Final Ordinaria (PLF-O).
C3) Evaluación en convocatoria extraordinaria
Se otorga el 50% de la calificación final de la asignatura al conjunto de PECA1 y PECA2, (o en su caso, a PEF-O) y el otro 50% al conjunto PECL1 Y PECL2.
6. BIBLIOGRAFÍA
Bibliografía Básica
Software Testing Foundations: A Study Guide for the Certified Tester Exam Andreas Spillner, Tilo Linz y Hans Schaefer
Rocky Nook, 2007
UAH e-books: http://proquest.safaribooksonline.com/book/software-engineering-and- development/software-testing/9781933952086
The Handbook of Walkthroughs, Inspections, and Technical Reviews Gerald M. Weinberg
Dorset House, 1990
Fundamentos de la confiabilidad en desarrollo de software: enfoque y prevención Luis Fernández Sanz
AEC, 2008
http://www.aec.es/web/guest/publicaciones/libros/pub4318
Software metrics: a rigorous and practical approach Norman E. Fenton, Shari Lawrence Pfleeger.
PWS, 1998.
The Handbook of Walkthroughs, Inspections, and Technical Reviews
11 Fletcher J. Buckley.
IEEE Computer Society Press, 1996
Bibliografía Complementaria
IEEE Std 1012-2004, Software Verification and Validation, IEEE, 2004.
IEEE Std 1028-2008, IEEE Standard for Software Reviews, IEEE, 2008.
IEEE Std 730-2002, IEEE Standard for Software Quality Assurance Plans, IEEE, 2002.
IEEE Std 828-1998, IEEE Standard for Software Configuration Management Plans, IEEE, 1998.
IEEE Std 829-2008, Standard for Software Test Documentation, IEEE, 2008 IEEE Std 1219-1998, IEEE Standard for Software Maintenance, IEEE, 1998
Metrics and Models in Software Quality Engineering Stephen H. Kan
Addison-Wesley Professional, 2001
UAH e-books: http://proquest.safaribooksonline.com/book/software-engineering-and- development/0201729156
Introduction to Software Testing Paul Ammann and Jeff Offutt.
Cambridge University Press, 2008
Implementing ITIL Configuration Management Larry Klosterboer
IBM Press, 2007
UAH e-books: http://proquest.safaribooksonline.com/book/technology- management/itil/9780137127672