Ejecución simbólica: una forma de asegurar la creación de código desde el inicio en la etapa de desarrollo - Daldín, Susana; López Pasaron, Christian; Porta, Estefania; Monia, Sebastian; Vázquez, Víctor (Anuario de Investigación USAL, 2016)
Desde hace algunos años la sociedad se ha visto rodeada de cada vez más información.Internet, como medio de transmisión, ha supuesto una gran evolución en materia de tiempos de difusión y realimentación entre editores (quienes generan la información) y lectores (quienes la consumen).A su vez el desarrollo de lenguajes de programación multiplataforma como JAVA, unido a la fabricación de dispositivos que permiten su ejecución (desde tablets y smartphones hasta automóviles y electrodomésticos), ha rodeado al ser humano de innumerables dispositivos informáticos, dispositivos que para manejar información poseen programas de software. En este marco, el desarrollo de software se ha convertido en una pieza fundamental.El Ciclo de Vida de un Proyecto (CVP) divide a un desarrollo de software en diversas etapas, dentro de la cuales se encuentra “testing”. Esta etapa insume un alto porcentaje de los recursos del proyecto. La técnica de ejecución simbólica simula la ejecución del código transformando variables de tipo en símbolos, permitiendo identificar qué caminos de ejecución se toman de acuerdo a los valores de entrada, pudiendo identificar claramente qué valores ha tomado la variable en cuestión y si lo hace de manera esperada o no.Se están generando entrevistas semiabiertas con los departamentos de Aseguramiento de Calidad (AC) de diversas empresas de desarrollo, para cualificar y cuantificar los tipos de test que se realizan a lo largo de los proyectos y de esta manera poder determinar el estado actual del arte.Dentro de esta subetapa se detectó que las empresas casi no utilizan la ejecución simbólica como método de detección de errores dentro de la etapa de testing. Las causas son diversas pero tienden a asociarse a un elevado costo computacional, lo que genera un consumo de recursos económicos mayores al de las demás técnicas usadas en la actualidad.Los objetivos generales de la investigación son el análisis de la ejecución simbólica como metodología de aseguramiento de la calidad, escalabilidad, estabilidad y seguridad del desarrollo del software mediante la asistencia en la generación de test y, a partir de los resultados, el desarrollo de una metodología para analizar código fuente y/o compilado para agilizar la creación de test de prueba unitarios.