Mutación de expresiones de navegación para Testing y Reparación
- Autores
- Gutiérrez Brida, Simón Emmanuel
- Año de publicación
- 2019
- Idioma
- español castellano
- Tipo de recurso
- tesis doctoral
- Estado
- versión publicada
- Colaborador/a o director/a de tesis
- Aguirre, Nazareno Matias
- Descripción
- Verificar que un sistema de software realiza correctamente las tareas para las cuales fue desarrollado es una de las actividades de mayor importancia en Ingeniería de Software, y concentra un significativo esfuerzo de investigación en esta área. El testing, el cual consiste en ejecutar un programa a evaluar en un conjunto de escenarios particulares y contrastar el comportamiento esperado del programa con el efectivamente obtenido, es una de las técnicas más utilizadas como forma de comprobación del correcto comportamiento del software. Dada la inherente incompletitud de testing, resulta necesario realizar una selección adecuada de los escenarios bajos los cuales realizar la evaluación. Claramente, como esta evaluación es realizada va a afectar la confianza que genere el proceso de testing, cuando la ejecución real del software coincida con la esperada, y las chances de detectar defectos en el software durante este proceso. Concretamente, se espera que el conjunto de escenarios seleccionado para el proceso de testing sea un buen representante de todos los posibles escenarios de ejecución del software en cuestión. Los criterios de testing permiten medir la calidad de un conjunto de tests generando objetivos a ser cubiertos, y evaluando cuántos de estos son satisfechos (cubiertos) por los tests. Mutation testing es uno de estos criterios, y consiste en inyectar fallas artificiales en el software bajo evaluación, y evaluar la capacidad de detección, por parte de los tests, de estas fallas. Las fallas generadas por mutation testing se basan en operadores de mutación.Estos operadores deben ser buenos representantes de fallas reales, y tradicionalmente involucran cambios simples, tales como el reemplazo de operadores aritméticos y relacionales. Algunos estudios recientes muestran sin embargo que algunas clases de fallas no se ven representadas por los operadores de mutación tradicionales, motivando así la introducción de nuevos operadores.En esta tesis presentaremos un nuevo operador de mutación, que aplica a expresiones de navegación, un tipo de expresiones ampliamente utilizadas en programas orientados a objetos, y que no se ven afectadas por los operadores de mutación clásicos. Daremos una definición precisa del operador, y evaluaremos su aplicación tanto en el contexto de testing (mutation testing), como en el contexto de reparación de programas.
Fil: Gutiérrez Brida, Simón Emmanuel. Universidad Nacional de Rio Cuarto. Facultad de Cs.exactas Fisicoquímicas y Naturales. Departamento de Computación. Grupo de Ingeniería de Software; Argentina - Materia
-
Ingenieria de Software
Reparacion de Programas
Testing de Mutacion
Testing de Software - Nivel de accesibilidad
- acceso abierto
- Condiciones de uso
- https://creativecommons.org/licenses/by-nc/2.5/ar/
- Repositorio
- Institución
- Consejo Nacional de Investigaciones Científicas y Técnicas
- OAI Identificador
- oai:ri.conicet.gov.ar:11336/79909
Ver los metadatos del registro completo
id |
CONICETDig_3d45ebe5fdc96b4ba23f879e9c8fddd6 |
---|---|
oai_identifier_str |
oai:ri.conicet.gov.ar:11336/79909 |
network_acronym_str |
CONICETDig |
repository_id_str |
3498 |
network_name_str |
CONICET Digital (CONICET) |
spelling |
Mutación de expresiones de navegación para Testing y ReparaciónGutiérrez Brida, Simón EmmanuelIngenieria de SoftwareReparacion de ProgramasTesting de MutacionTesting de Softwarehttps://purl.org/becyt/ford/1.2https://purl.org/becyt/ford/1Verificar que un sistema de software realiza correctamente las tareas para las cuales fue desarrollado es una de las actividades de mayor importancia en Ingeniería de Software, y concentra un significativo esfuerzo de investigación en esta área. El testing, el cual consiste en ejecutar un programa a evaluar en un conjunto de escenarios particulares y contrastar el comportamiento esperado del programa con el efectivamente obtenido, es una de las técnicas más utilizadas como forma de comprobación del correcto comportamiento del software. Dada la inherente incompletitud de testing, resulta necesario realizar una selección adecuada de los escenarios bajos los cuales realizar la evaluación. Claramente, como esta evaluación es realizada va a afectar la confianza que genere el proceso de testing, cuando la ejecución real del software coincida con la esperada, y las chances de detectar defectos en el software durante este proceso. Concretamente, se espera que el conjunto de escenarios seleccionado para el proceso de testing sea un buen representante de todos los posibles escenarios de ejecución del software en cuestión. Los criterios de testing permiten medir la calidad de un conjunto de tests generando objetivos a ser cubiertos, y evaluando cuántos de estos son satisfechos (cubiertos) por los tests. Mutation testing es uno de estos criterios, y consiste en inyectar fallas artificiales en el software bajo evaluación, y evaluar la capacidad de detección, por parte de los tests, de estas fallas. Las fallas generadas por mutation testing se basan en operadores de mutación.Estos operadores deben ser buenos representantes de fallas reales, y tradicionalmente involucran cambios simples, tales como el reemplazo de operadores aritméticos y relacionales. Algunos estudios recientes muestran sin embargo que algunas clases de fallas no se ven representadas por los operadores de mutación tradicionales, motivando así la introducción de nuevos operadores.En esta tesis presentaremos un nuevo operador de mutación, que aplica a expresiones de navegación, un tipo de expresiones ampliamente utilizadas en programas orientados a objetos, y que no se ven afectadas por los operadores de mutación clásicos. Daremos una definición precisa del operador, y evaluaremos su aplicación tanto en el contexto de testing (mutation testing), como en el contexto de reparación de programas.Fil: Gutiérrez Brida, Simón Emmanuel. Universidad Nacional de Rio Cuarto. Facultad de Cs.exactas Fisicoquímicas y Naturales. Departamento de Computación. Grupo de Ingeniería de Software; ArgentinaAguirre, Nazareno Matias2019-03-29info:eu-repo/semantics/doctoralThesisinfo:eu-repo/semantics/publishedVersionhttp://purl.org/coar/resource_type/c_db06info:ar-repo/semantics/tesisDoctoralapplication/pdfapplication/pdfhttp://hdl.handle.net/11336/79909Gutiérrez Brida, Simón Emmanuel; Aguirre, Nazareno Matias; Mutación de expresiones de navegación para Testing y Reparación; 29-3-2019CONICET DigitalCONICETspainfo:eu-repo/semantics/openAccesshttps://creativecommons.org/licenses/by-nc/2.5/ar/reponame:CONICET Digital (CONICET)instname:Consejo Nacional de Investigaciones Científicas y Técnicas2025-09-03T09:43:35Zoai:ri.conicet.gov.ar:11336/79909instacron:CONICETInstitucionalhttp://ri.conicet.gov.ar/Organismo científico-tecnológicoNo correspondehttp://ri.conicet.gov.ar/oai/requestdasensio@conicet.gov.ar; lcarlino@conicet.gov.arArgentinaNo correspondeNo correspondeNo correspondeopendoar:34982025-09-03 09:43:35.526CONICET Digital (CONICET) - Consejo Nacional de Investigaciones Científicas y Técnicasfalse |
dc.title.none.fl_str_mv |
Mutación de expresiones de navegación para Testing y Reparación |
title |
Mutación de expresiones de navegación para Testing y Reparación |
spellingShingle |
Mutación de expresiones de navegación para Testing y Reparación Gutiérrez Brida, Simón Emmanuel Ingenieria de Software Reparacion de Programas Testing de Mutacion Testing de Software |
title_short |
Mutación de expresiones de navegación para Testing y Reparación |
title_full |
Mutación de expresiones de navegación para Testing y Reparación |
title_fullStr |
Mutación de expresiones de navegación para Testing y Reparación |
title_full_unstemmed |
Mutación de expresiones de navegación para Testing y Reparación |
title_sort |
Mutación de expresiones de navegación para Testing y Reparación |
dc.creator.none.fl_str_mv |
Gutiérrez Brida, Simón Emmanuel |
author |
Gutiérrez Brida, Simón Emmanuel |
author_facet |
Gutiérrez Brida, Simón Emmanuel |
author_role |
author |
dc.contributor.none.fl_str_mv |
Aguirre, Nazareno Matias |
dc.subject.none.fl_str_mv |
Ingenieria de Software Reparacion de Programas Testing de Mutacion Testing de Software |
topic |
Ingenieria de Software Reparacion de Programas Testing de Mutacion Testing de Software |
purl_subject.fl_str_mv |
https://purl.org/becyt/ford/1.2 https://purl.org/becyt/ford/1 |
dc.description.none.fl_txt_mv |
Verificar que un sistema de software realiza correctamente las tareas para las cuales fue desarrollado es una de las actividades de mayor importancia en Ingeniería de Software, y concentra un significativo esfuerzo de investigación en esta área. El testing, el cual consiste en ejecutar un programa a evaluar en un conjunto de escenarios particulares y contrastar el comportamiento esperado del programa con el efectivamente obtenido, es una de las técnicas más utilizadas como forma de comprobación del correcto comportamiento del software. Dada la inherente incompletitud de testing, resulta necesario realizar una selección adecuada de los escenarios bajos los cuales realizar la evaluación. Claramente, como esta evaluación es realizada va a afectar la confianza que genere el proceso de testing, cuando la ejecución real del software coincida con la esperada, y las chances de detectar defectos en el software durante este proceso. Concretamente, se espera que el conjunto de escenarios seleccionado para el proceso de testing sea un buen representante de todos los posibles escenarios de ejecución del software en cuestión. Los criterios de testing permiten medir la calidad de un conjunto de tests generando objetivos a ser cubiertos, y evaluando cuántos de estos son satisfechos (cubiertos) por los tests. Mutation testing es uno de estos criterios, y consiste en inyectar fallas artificiales en el software bajo evaluación, y evaluar la capacidad de detección, por parte de los tests, de estas fallas. Las fallas generadas por mutation testing se basan en operadores de mutación.Estos operadores deben ser buenos representantes de fallas reales, y tradicionalmente involucran cambios simples, tales como el reemplazo de operadores aritméticos y relacionales. Algunos estudios recientes muestran sin embargo que algunas clases de fallas no se ven representadas por los operadores de mutación tradicionales, motivando así la introducción de nuevos operadores.En esta tesis presentaremos un nuevo operador de mutación, que aplica a expresiones de navegación, un tipo de expresiones ampliamente utilizadas en programas orientados a objetos, y que no se ven afectadas por los operadores de mutación clásicos. Daremos una definición precisa del operador, y evaluaremos su aplicación tanto en el contexto de testing (mutation testing), como en el contexto de reparación de programas. Fil: Gutiérrez Brida, Simón Emmanuel. Universidad Nacional de Rio Cuarto. Facultad de Cs.exactas Fisicoquímicas y Naturales. Departamento de Computación. Grupo de Ingeniería de Software; Argentina |
description |
Verificar que un sistema de software realiza correctamente las tareas para las cuales fue desarrollado es una de las actividades de mayor importancia en Ingeniería de Software, y concentra un significativo esfuerzo de investigación en esta área. El testing, el cual consiste en ejecutar un programa a evaluar en un conjunto de escenarios particulares y contrastar el comportamiento esperado del programa con el efectivamente obtenido, es una de las técnicas más utilizadas como forma de comprobación del correcto comportamiento del software. Dada la inherente incompletitud de testing, resulta necesario realizar una selección adecuada de los escenarios bajos los cuales realizar la evaluación. Claramente, como esta evaluación es realizada va a afectar la confianza que genere el proceso de testing, cuando la ejecución real del software coincida con la esperada, y las chances de detectar defectos en el software durante este proceso. Concretamente, se espera que el conjunto de escenarios seleccionado para el proceso de testing sea un buen representante de todos los posibles escenarios de ejecución del software en cuestión. Los criterios de testing permiten medir la calidad de un conjunto de tests generando objetivos a ser cubiertos, y evaluando cuántos de estos son satisfechos (cubiertos) por los tests. Mutation testing es uno de estos criterios, y consiste en inyectar fallas artificiales en el software bajo evaluación, y evaluar la capacidad de detección, por parte de los tests, de estas fallas. Las fallas generadas por mutation testing se basan en operadores de mutación.Estos operadores deben ser buenos representantes de fallas reales, y tradicionalmente involucran cambios simples, tales como el reemplazo de operadores aritméticos y relacionales. Algunos estudios recientes muestran sin embargo que algunas clases de fallas no se ven representadas por los operadores de mutación tradicionales, motivando así la introducción de nuevos operadores.En esta tesis presentaremos un nuevo operador de mutación, que aplica a expresiones de navegación, un tipo de expresiones ampliamente utilizadas en programas orientados a objetos, y que no se ven afectadas por los operadores de mutación clásicos. Daremos una definición precisa del operador, y evaluaremos su aplicación tanto en el contexto de testing (mutation testing), como en el contexto de reparación de programas. |
publishDate |
2019 |
dc.date.none.fl_str_mv |
2019-03-29 |
dc.type.none.fl_str_mv |
info:eu-repo/semantics/doctoralThesis info:eu-repo/semantics/publishedVersion http://purl.org/coar/resource_type/c_db06 info:ar-repo/semantics/tesisDoctoral |
format |
doctoralThesis |
status_str |
publishedVersion |
dc.identifier.none.fl_str_mv |
http://hdl.handle.net/11336/79909 Gutiérrez Brida, Simón Emmanuel; Aguirre, Nazareno Matias; Mutación de expresiones de navegación para Testing y Reparación; 29-3-2019 CONICET Digital CONICET |
url |
http://hdl.handle.net/11336/79909 |
identifier_str_mv |
Gutiérrez Brida, Simón Emmanuel; Aguirre, Nazareno Matias; Mutación de expresiones de navegación para Testing y Reparación; 29-3-2019 CONICET Digital CONICET |
dc.language.none.fl_str_mv |
spa |
language |
spa |
dc.rights.none.fl_str_mv |
info:eu-repo/semantics/openAccess https://creativecommons.org/licenses/by-nc/2.5/ar/ |
eu_rights_str_mv |
openAccess |
rights_invalid_str_mv |
https://creativecommons.org/licenses/by-nc/2.5/ar/ |
dc.format.none.fl_str_mv |
application/pdf application/pdf |
dc.source.none.fl_str_mv |
reponame:CONICET Digital (CONICET) instname:Consejo Nacional de Investigaciones Científicas y Técnicas |
reponame_str |
CONICET Digital (CONICET) |
collection |
CONICET Digital (CONICET) |
instname_str |
Consejo Nacional de Investigaciones Científicas y Técnicas |
repository.name.fl_str_mv |
CONICET Digital (CONICET) - Consejo Nacional de Investigaciones Científicas y Técnicas |
repository.mail.fl_str_mv |
dasensio@conicet.gov.ar; lcarlino@conicet.gov.ar |
_version_ |
1842268611946741760 |
score |
13.13397 |