Navegación

Búsqueda

Búsqueda avanzada

El autor Jesús Morán ha publicado 7 artículo(s):

1 - Pruebas basadas en flujo de datos para programas MapReduce

MapReduce es un paradigma de procesamiento masivo de información. Estos programas realizan varias transformaciones de los datos hasta que se obtiene la salida representando la lógica de negocio del programa. En este artículo se elabora una técnica de prueba basada en data flow y que deriva las pruebas a partir de las transformaciones que ocurren en el programa. Se muestran resultados de la ejecución de los casos de prueba derivados de la aplicación de la técnica, los cuales permiten detectar algunos defectos.

Autores: Jesús Morán / Claudio de la Riva / Javier Tuya / 
Palabras Clave: MapReduce - pruebas data flow - Pruebas de Software

2 - Pruebas funcionales en programas MapReduce basadas en comportamientos no esperados

MapReduce es un paradigma de programación que permite el procesamiento paralelo de grandes cantidades de datos. Los programas MapReduce se suelen ejecutar sobre el framework Hadoop, el cual no garantiza que se ejecuten siempre en las mismas condiciones, pudiendo producir comportamientos no esperados desde el punto de vista de su funcionalidad. En este artículo se analizan y describen diferentes tipos de defectos específicos que pueden estar presentes en programas MapReduce sobre Hadoop y se muestra cómo se pueden derivar casos de prueba que permiten la detección de dichos defectos. Lo anterior se ilustra sobre varios programas de ejemplo.

Autores: Jesús Morán / Claudio de la Riva / Javier Tuya / 
Palabras Clave: big data - Hadoop - MapReduce - Pruebas de Software

3 - Localización de defectos en aplicaciones MapReduce

Los programas que analizan grandes cantidades de datos suelen ejecutarse en entornos distribuidos, tal y como ocurre con las aplicaciones MapReduce. Estos programas se desarrollan independientemente de la infraestructura sobre que la que se ejecutan, ya que un framework gestiona automáticamente la asignación de recursos y gestión de fallos, entre otros. Detectar y localizar defectos en estos programas suele ser una tarea compleja ya que diversas funciones se ejecutan simultáneamente en una infraestructura distribuida, difícil de controlar y que cambia continuamente. En este artículo se describe una técnica que, a partir de un fallo detectado en las pruebas, localiza defectos de diseño analizando dinámicamente los parámetros que lo causan.

Autores: Jesús Morán / Claudio De La Riva / Javier Tuya / Bibiano Rivas García / 
Palabras Clave: Big Data Engineering - Localización de defectos - MapReduce - Pruebas del software

4 - Automatización de la localización de defectos en el diseño de aplicaciones MapReduce

Los programas MapReduce analizan grandes cantidades de datos sobre una infraestructura distribuida. En cambio, estos programas pueden desarrollarse independientemente de la infraestructura ya que un framework gestiona automáticamente la asignación de recursos y la gestión de fallos. Una vez que se detecta un defecto, suele ser complicado localizar su causa raíz ya que diversas funciones se ejecutan simultáneamente en una infraestructura distribuida que cambia continuamente y que es difícil tanto de controlar como depurar. En este artículo se describe una técnica que, a partir de un caso de prueba que produce fallo, localiza su causa raíz analizando dinámicamente las características del diseño que se cubren cuando se produce fallo y aquellas que no.

Autores: Jesús Morán / Claudio De La Riva / Javier Tuya / 
Palabras Clave: Localización de defectos - MapReduce - Pruebas del software

5 - Gestión de Proyectos con PMBOK y LEGO(R) SERIOUD PLAY(R)

La comunicación es una de las técnicas más importantes en la gestión de proyectos. La técnica más utilizada en A Guide to the Project Management Body of Knowledge (PMBOK) son los juicios de experto junto contras di-námicas de trabajo en grupo como reuniones. Sin embargo, las reuniones ha-bituales en las que una persona habla y el resto escucha presentan un por-centaje de actividad mental y de implicación muy bajo. Por tanto una mejora en la manera de trabajar en grupo supone una mejora en la gestión de un proyecto. En este trabajo, se explora el uso de la metodología de trabajo en grupo LEGO® SERIOUS PLAY® en la gestión de proyectos. Para ello, este trabajo propone 11 talleres utilizando esta metodología que dan soporte a los procesos basados en comunicación y trabajo en grupo de PMBOK. Las eva-luaciones preliminares de estos talleres por parte de sus asistentes muestran un alto grado de satisfacción y participación en los mismos.

Autores: Javier Gutierrez /  Pablo Suárez-Otero / Jesús Morán / María José Escalona / 
Palabras Clave: comunicación - gestión de proyectos - LEGO SERIOUS PLAY - PMBOK

6 - Anonimización de datos guiada por pruebas para aplicaciones inteligentes

En la actualidad gran cantidad de datos son compartidos para su uso, tratamiento o análisis entre empresas y terceros. Es habitual que estos datos tengan que ser protegidos con diferentes técnicas de preservación de la privacidad para dar cumplimiento a las leyes y regulaciones. Una de las técnicas más comunes es la anonimizacion que, aunque provee de privacidad a los datos, presenta como efecto colateral la perdida de información. Esta pérdida de información puede afectar negativamente al comportamiento de aquellos desarrollos altamente dependientes de dichos datos como son las aplicaciones inteligentes. Para abordar este problema, proponemos un enfoque guiado por pruebas para seleccionar el conjunto de datos anonimizado que mantenga un compromiso entre la calidad no funcional (privacidad) y la funcional (utilidad). Para ello se alimenta a las aplicaciones con los datos anonimizados para que tomen los patrones de comportamiento de estos, y seguidamente validar las predicciones con los datos originales, midiendo así su calidad funcional. Dicha calidad junto con la no funcional (privacidad), es ponderada según los criterios de usuario con el fin de alcanzar el punto de compromiso entre ambas características de calidad

Autores: Cristian Augusto Alonso / Jesús Morán / Claudio de la Riva / Javier Tuya / 
Palabras Clave: Anonimización - Aplicaciones Inteligentes - Privacidad - Pruebas de Software

7 - Automatic Testing of Design Faults in MapReduce Applications

New processing models are being adopted in Big Data engineering to overcome the limitations of traditional technology. Among them, MapReduce stands out by allowing for the processing of large volumes of data over a distributed infrastructure that can change during runtime. The developer only designs the functionality of the program and its execution is managed by a distributed system. As a consequence, a program can behave differently at each execution because it is automatically adapted to the resources available at each moment. Therefore, when the program has a design fault, this could be revealed in some executions and masked in others. However, during testing, these faults are usually masked because the test infrastructure is stable, and they are only revealed in production because the environment is more aggressive with infrastructure failures, among other reasons. This paper proposes new testing techniques that aimed to detect these design faults by simulating different infrastructure configurations. The testing techniques generate a representative set of infrastructure configurations that as whole are more likely to reveal failures using random testing, and partition testing together with combinatorial testing. The techniques are automated by using a test execution engine called MRTest that is able to detect these faults using only the test input data, regardless of the expected output. Our empirical evaluation shows that MRTest can automatically detect these design faults within a reasonable time.

Autores: Jesús Morán / Antonia Bertolino / Claudio De La Riva / Javier Tuya / 
Palabras Clave: big data - Combinatorial Testing - MapReduce - metamorphic testing - partition testing - random testing - Software Testing