Metodologías, Calidad y Pruebas del Software
URI permanente para esta colección:
Artículos en la categoría Metodologías, Calidad y Pruebas del Software publicados en las Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021).
Notificar un error en esta colección
Examinar
Envíos recientes
Artículo Applying Scriptless Test Automation on Web Applications from the Financial SectorAho, Pekka; Buijs, Govert; Akin, Abdurrahman; Senturk, Serafettin; Pastor Ricos, Fernando; de Gouw, Stijn; Vos, Tanja E. J.. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.This industry showcase presents experiences on application of TESTAR, an open source tool for scriptless testing through graphical user interface (GUI), to the web applications of Kuveyt T+APw-rk Participation Bank in Turkey. Kuveyt T+APw-rk Bank uses Selenium and Appium for regression testing of mobile and internet banking, but the maintenance cost of the test scripts is increasing day by day. Therefore, scriptless GUI testing with TESTAR was evaluated. To provide better support for testing web-based applications, TESTAR was extended with Selenium WebDriver integration, JavaScript support, and other new features. Results show that TESTAR is detected GUI elements much better after the improvements, and it was able to find 2 relevant errors that were not identified by existing scripted test cases.Artículo Evolución en sistemas de bases de datos orientadas a columnas ante cambios conceptualesSuárez-Otero, Pablo; Mior, Michael; Suárez-Cabal, María José; Tuya, Javier. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.Los modelos de datos entre los que se incluyen el modelo conceptual y el esquema de la base de datos se diseñan en base a los requisitos de las aplicaciones. Estos modelos de datos pueden evolucionar ante cambios de los requisitos, lo cual puede implicar cambios en los datos y las consultas de las aplicaciones cliente. Este problema es más significativo en los sistemas que usan bases de datos orientadas a columnas debido al diseño de sus esquemas en las que la información se encuentra duplicada en varias tablas. Esto significa que, ante un cambio del modelo conceptual, se deben realizar varios cambios en el esquema, los datos y las consultas para mantener la calidad del sistema con respecto a la consistencia modelo conceptual-esquema, la integridad de los datos y la aplicación cliente . Para ello, proponemos enfoques preventivos que, ante cambios del modelo conceptual, eviten defectos en el esquema, los datos y las aplicaciones que afecten a la calidad del sistema. Para el esquema y los datos proponemos un enfoque orientado a MDE en el que se generen modelos que contengan las acciones para mantener la consistencia modelo conceptual-esquema y la integridad de los datos. Para las consultas proponemos el uso de técnicas de reparación automática de software para actualizar la aplicación cliente.Resumen Agile and Software Project Management Antipatterns: Clarifying the PartnershipCastro, Gabriela; Moreno, Ana M.; Peters, Lawrence. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.The Agile methods have been recognized as providing tangible benefits, some of them direc-tly related to software project management (SPM). In this paper we address in detail the rela-tionship between Agile and SPM, discussing the extent to which the use of agile practices helps to reduce or avoid the occurrence of different SPM antipatterns. We concluded that several agile practices can effectively help to prevent the effects of specific SPM antipatterns. Other agile practices, even if they cannot help to prevent the consequences of the antipattern, can help the project manager to identify a misleading situation so he/she can take the corres-ponding corrective action. Unexpectedly, we found a few exceptions where a particular agile practice contributed to the negative effects of certain antipatterns. Our results may be particu-larly useful to organizations in the daunting journey of becoming agile.Artículo GoRace: Suite de Aplicaciones Web para Crear y Desplegar Experiencias GamificadasTrinidad, Manuel; Calderón Sánchez, Alejandro; Ruiz, Mercedes. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.La gamificación es un concepto que necesita aún afrontar una variedad de desafíos teóricos, empíricos y tecnológicos para consolidar y madurar su comprensión y proceso. Con el fin de contribuir a solventar y superar dichos desafíos, hemos desarrollado una suite de aplicaciones web para crear estrategias de gamificación y desplegar experiencias gamificadas, llamada GoRace, que cubre los principales problemas existentes en las actuales herramientas basadas en software para gamificación.Artículo Modelo de defectos dirigido por consultas para aplicaciones de bases de datos orientadas a grafosBlanco, Raquel; Tuya, Javier; de la Riva, Claudio. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.Las bases de datos NoSQL, cada vez más presentes en las aplicaciones actua-les, plantean nuevos retos en las pruebas de dichas aplicaciones, debido a la ausencia de un esquema explícito en la base de datos. Este trabajo presenta un modelo de defectos para aplicaciones que utilizan bases de datos orientadas a grafos, que ha sido elaborado considerando tres factores que afectan a la escri-tura de las consultas y la relación existente entre ellos: la propia consulta, el modelo conceptual y los datos almacenados en la base de datos. Este modelo de defectos define una serie de escenarios de defectos que identifican cuáles de estos factores deben ser corregidos.Artículo Pruebas de Mutación de Caja Negra para APIs WebSánchez Jerez, Ana Belén; Martín-López, Alberto; Segura Rueda, Sergio; Ruiz Cortés, Antonio. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.Las Interfaces de Programación de Aplicaciones (APIs) web desempeñan un papel clave en la integración de aplicaciones, por lo que validar su correcto funcionamiento resulta crucial. La mayoría de técnicas de generación de casos de prueba en este ámbito son de caja negra y con frecuencia se evalúan con APIs para las que no se dispone del código fuente. En este escenario, no es posible emplear pruebas de mutación tradicionales, por lo que no es posible cuantificar la efectividad de las pruebas si la API no expone ningún error. En este artículo, proponemos un enfoque de caja negra para evaluar la capacidad de detección de errores de las suites de pruebas para APIs web: en lugar de crear variantes defectuosas del código del programa (API), como en las pruebas de mutación tradicionales, se crean mutantes de las salidas del programa (respuestas HTTP). Los oráculos de pruebas se aplican sobre dichos mutantes y, a medida que las pruebas fallan, la cobertura de mutación aumenta. Experimentos preliminares sugieren que existe correlación entre la cobertura de mutación de caja negra y caja blanca.Artículo Identificación Automática de Relaciones Metamórficas en Sistemas de BúsquedaAlonso Valenzuela, Juan Carlos; Martín-López, Alberto; Segura Rueda, Sergio; Ruiz Cortés, Antonio. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.Proveer al usuario con opciones de búsqueda avanzada que faciliten el acceso a los datos que busca es una característica común de muchos sistemas software, tales como sistemas de información, sistemas de comercio electrónico y APIs web. La complejidad y magnitud de estos sistemas provocan que en la mayoría de los casos sea imposible determinar si la salida obtenida es correcta. Una solución para aliviar este problema es la aplicación de pruebas metamórficas, que explotan las relaciones existentes entre los parámetros de un sistema, conocidas como relaciones metamórficas (RMs). Sin embargo, la identificación manual de RMs exige tiempo y esfuerzo, lo que limita su aplicación. En este artículo, describimos nuestro trabajo en progreso para el desarrollo de un método para la identificación automática de RMs en el contexto de sistemas de búsqueda. Nuestro primer prototipo muestra la efectividad de nuestra propuesta para generar cientos de RMs en sistemas reales como YouTube, IMDb o SkyScanner en cuestión de segundos.Artículo Guías de Gobernanza Ágil para Pymes: Una Perspectiva desde CMMI V2.0 y SAFe 5.0Henriquez, Valeria; Moreno, Ana M.; Calvo-Manzano, Jose A.; San Feliu, Tomas. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.La adopción de aproximaciones ágiles a nivel de equipo es una práctica habitual en la industria del software, pero muchas de estas organizaciones continúan usando enfoques tradicionales para gobernar estos equipos ágiles, con los consiguientes efectos negativos. Aunque existen algunas soluciones de gobernanza ágil, la mayoría están orientadas a grandes organizaciones, mientras que el contexto de las pymes (Pequeñas y Medianas Empresas) permanece sin abordar. Nuestro trabajo utiliza el marco de la ciencia del diseño (design science) para desarrollar guías de gobernanza para pymes de desarrollo de software ágiles. Este artículo muestra una de las guías generadas tras un proceso de armonización entre las prácticas de gobernanza de CMMI V2.0 y SAFe 5.0, y su adaptación a las características de las pymes.Resumen MDWA: a model-drivenWeb augmentation approach—coping with client- and server-side supportUrbieta, Matias; Firmenich, Sergio; Bosetti, Gabriela; Maglione, Pedro; Rossi, Gustavo; Olivero González, Miguel Ángel. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.Web augmentation is a set of techniques allowing users to define and execute software which is dependent on the presentation layer of a concrete Web page. Through the use of specialized Web augmentation artifacts, the end users may satisfy several kinds of requirements that were not considered by the analysts, developers and stakeholders that built the application. Although some augmentation approaches are contemplating a server-side counterpart (to support aspects such as collaboration or crossbrowser session management), the augmentation artifacts are usually purely client-side. The server-side support increases the capabilities of the augmentations, since it may allow sharing information among users and devices. So far, this support is often defined and developed in an ad hoc way. Although it is clear that server-side support brings new possibilities, it is also true that developing and deploying server-sideWeb applications is a challenging task that end users hardly may handle. This work presents a novel approach for designingWeb augmentation applications based on client-side and server-side components.We propose a model-driven approach that raises the abstraction level of both, client- and server-side developments. We provide a set of tools for designing the composition of the core application with new features on the back-end and the augmentation of pages in the front-end. The usability and the value of the produced augmentations have been evaluated through two experiments involving 30 people in total.Artículo Una arquitectura para abordar la ejecución y mantenimiento de robots RPA potenciados por Inteligencia ArtificialMartínez Rojas, Antonio; Sánchez Oliva, Jesús Miguel; Jiménez Ramírez, Andrés; González Enríquez, José. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.La Automatización Robótica de Procesos (RPA) es un paradigma software en el que los robots son programas que imitan el comportamiento humano. Su objetivo principal es buscar una automatización integral, de manera que el humano no tenga que intervenir para que un proceso se lleve a cabo. El auge de RPA junto con los avances en inteligencia artificial (IA) han posibilitado automatizar tareas cognitivas. Los componentes que resuelven estas tareas son complejos y necesitan de conocimiento experto para construirlos y de un mantenimiento distinto una vez están en producción. En este contexto se desarrolla el proyecto AIRPA, una plataforma dirigida a potenciar soluciones RPA con componentes de IA. Sus dos objetivos son, abstraer al desarrollador RPA del conocimiento experto en IA, y controlar la ejecución y mantenimiento de los procesos que involucran estos componentes.Resumen Robotic Process Automation: A Scientific and Industrial Systematic Mapping StudyGonzález Enríquez, José; Jiménez Ramírez, Andrés; Domínguez Mayo, Francisco José; García García, Julián Alberto. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.The automation of robotic processes has been experiencing an increasing trend of interest in recent times. However, most of literature describes only theoretical foundations on RPA or industrial results after implementing RPA in specific scenarios, especially in finance and outsourcing. This paper presents a systematic mapping study with the aim of analyzing the current state-of-the-art of RPA and identifying existing gaps in both, scientific and industrial literature. Firstly, this study presents an in-depth analysis of the 54 primary studies which formally describe the current state of the art of RPA. These primary studies were selected as a result of the conducting phase of the systematic review. Secondly, considering the RPA study performed by Forrester, this paper reviews 14 of the main commercial tools of RPA, based on a classification framework defined by 48 functionalities and evaluating the coverage of each of them. The result of the study concludes that there are certain phases of the RPA lifecycle that are already solved in the market. However, the Analysis phase is not covered in most tools. The lack of automation in such a phase is mainly reflected by the absence of technological solutions to look for the best candidate processes of an organization to be automated. Finally, some future directions and challenges are presented.Artículo Evaluación Rápida de la Sostenibilidad del Software en Aplicaciones de Salud Conectada: Estudio de un Caso con Carpetas de SaludGarcía Berná, José Alberto; Ouhbi, Sofia; Fernández Alemán, José Luis; Nicolás Ros, Joaquín; Moros Valle, Begoña; Carrillo de Gea, Juan Manuel; Toval, Ambrosio. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.Las aplicaciones en salud comprenden la mSalud, eSalud y cualquier aplicación digital relacionada con el ámbito médico. Cada vez más los profesionales sanitarios y pacientes optan por utilizar las tecnologías a la hora de realizar un seguimiento médico. En el futuro se espera que los avances en las Tecnologías de la Información y Comunicación (TIC) aplicados a los servicios de medicina sigan aumentando. Dado el deterioro del medio ambiente, la sostenibilidad de la tecnología en términos de eficiencia energética debe de llegar a ser una realidad común, generando un menor impacto en el planeta. En este trabajo se propone un método de evaluación rápida de la sostenibilidad del software para aplicaciones de salud conectadas. La evaluación se basa en una lista de comprobación o checklist que se puede adaptar a las características del sistema. Para su elaboración, se consideraron cuatro de las dimensiones de la sostenibilidad en el software definidas en el Manifiesto de Karlskrona: individual, social, medioambiental y técnica. La lista de comprobación se gener+APM a partir de un conjunto de requisitos reutilizables para la producción de aplicaciones de salud conectadas y sostenibles. Los requisitos están basados en diversos estándares de calidad del software. El método de evaluación requiere de un conocimiento previo sobre el funcionamiento del sistema a evaluar. De cara a conocer el sistema se recomienda la realización de tareas comunes en aplicaciones de salud conectadas. El artefacto resultante de este trabajo puede servir en el futuro para realizar auditorías rápidas en materia de sostenibilidad de aplicaciones de salud electrónica.Resumen RESTest: Pruebas de Caja Negra para APIs REST con Soporte para RestriccionesMartín-López, Alberto; Segura Rueda, Sergio; Ruiz Cortés, Antonio. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.Las técnicas de pruebas automatizadas para APIs REST suelen seguir un enfoque de caja negra, donde los casos de prueba se derivan de la especificación de la API. Estas técnicas muestran resultados prometedores, pero ignoran las restricciones entre los parámetros de entrada de la API (llamadas dependencias inter-parámetro), ya que estas no pueden describirse formalmente en los lenguajes de especificación actuales. Como resultado, las herramientas de caja negra recurren a la fuerza bruta para la generación de casos de prueba válidos, es decir, aquellos que satisfacen todas las dependencias inter-parámetro. Esto no es solo extremadamente ineficiente, sino que además es improbable que funcione con muchos servicios del mundo real, donde las dependencias inter-parámetro son complejas y abundantes. En este artículo, presentamos RESTest, un framework de pruebas automatizadas de caja negra para APIs REST. Entre sus principales características, RESTest soporta la especificación y el análisis automático de las dependencias inter-parámetro de la API, lo que permite utilizar resolutores de restricciones para la generación automática de casos de prueba válidos. Esto permite detectar más errores, y más rápido, mediante una evaluación más exhaustiva de las combinaciones válidas e inválidas de los parámetros de la API, y el uso de oráculos de prueba antes no disponibles. Los resultados de nuestra evaluación en 6 APIs comerciales muestran que RESTest puede generar de manera eficiente hasta un 99+ACU más de casos de prueba válidos en comparación con técnicas de pruebas aleatorias, un 60+ACU de media. Lo que es más importante, RESTest revel+APM más de 2.000 fallos no detectados por pruebas aleatorias, encontrando errores en todos los servicios probados.Resumen Improving Sustainability of Smart Cities through Visualization Techniques for Big Data from IoT DevicesLavalle, Ana; Teruel, Miguel A.; Maté, Alejandro; Trujillo, Juan. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.Fostering sustainability is paramount for Smart Cities development. Lately, Smart Cities are benefiting from the rising of Big Data coming from IoT devices, leading to improvements on monitoring and prevention. However, monitoring and prevention processes require visualization techniques as a key component. Indeed, in order to prevent possible hazards (such as fires, leaks, etc.) and optimize their resources, Smart Cities require adequate visualizations that provide insights to decision makers. Nevertheless, visualization of Big Data has always been a challenging issue, especially when such data are originated in real-time. This problem becomes even bigger in Smart City environments since we have to deal with many different groups of users and multiple heterogeneous data sources. Without a proper visualization methodology, complex dashboards including data from different nature are difficult to understand. In order to tackle this issue, we propose a methodology based on visualization techniques for Big Data, aimed at improving the evidence-gathering process by assisting users in the decision making in the context of Smart Cities. Moreover, in order to assess the impact of our proposal, a case study based on service calls for a fire department is presented. In this sense, our findings will be applied to data coming from citizen calls. Thus, the results of this work will contribute to the optimization of resources, namely fire extinguishing battalions, helping to improve their effectiveness and, as a result, the sustainability of a Smart City, operating better with less resources. Finally, in order to evaluate the impact of our proposal, we have performed an experiment, with non-expert users in data visualization.Artículo Descubrimiento de procesos a partir de logs de eventos en el contexto de RPA: ¿En qué se basan las decisiones?Martínez Rojas, Antonio; Jiménez Ramírez, Andrés; González Enríquez, José. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.La Automatización Robótica de Procesos (RPA) ha ganado especial atención en los últimos años tanto en la industria como en la academia. RPA surge como una forma de automatizar tareas humanas mundanas y repetitivas. En comparación con la automatización tradicional, RPA requiere un menor nivel de intrusión en la infraestructura informática. Una práctica habitual es comenzar monitorizando la interacción de los humanos con los sistemas de información (i.e., eventos de ratón y teclado). El estado del arte actual indica que utilizar herramientas de análisis de dichas interacciones (e.g., minería de procesos) aporta importantes ventajas para los proyectos RPA. Sin embargo, existen ciertos comportamientos humanos (i.e., decisiones dentro de un proceso) que dependen de la información visualizada por el humano y que resultan inexplicables mediante estás técnicas. Este trabajo elabora un método que utiliza la información gráfica de las interfaces de usuario que, posteriormente, es transformada en un problema de aprendizaje supervisado para producir modelos explicables de dichos comportamientos. Este método puede aplicarse para dar soporte avanzado a proyectos RPA, como automatizar el desarrollo de robots o generar predicciones y simulaciones.Artículo Ejecución Simbólica y Prueba de Mutaciones: mejora de la generación automática de casos de pruebaValle-Gómez, Kevin J.; Delgado Pérez, Pedro; Medina Bulo, María Inmaculada; García Domínguez, Antonio. Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021), 2021-09-22.La prueba del software es una etapa compleja y costosa del desarrollo de software, existiendo una gran variedad de soluciones para reducir su coste y mejorar su calidad. En concreto, con respecto a la generación de pruebas, la ejecución simbólica dinámica (ESD) permite generar automáticamente pruebas con una buena cobertura estructural. En cuanto a la evaluación de las pruebas, la prueba de mutaciones (PM) evalúa la calidad de los casos de prueba introduciendo pequeños cambios localizados que se asemejan a fallos reales. Sin embargo, se sabe que la ESD genera pruebas que no tienen una buena cobertura de mutaciones. En este trabajo, proponemos combinar la ESD con la PM, de tal manera que obtengamos automáticamente conjuntos de casos de prueba con una mejora significativa de la cobertura de mutación y, por tanto, de la detección de fallos reales.