Lenguajes nuevos para impulsar la ingeniería de software

Las herramientas de alta tecnología destinadas a evaluar aplicaciones de ingeniería de software resultan determinantes para el uso de lenguajes de programación punteros que facilitan el desarrollo de software.

Los lenguajes de programación evolucionan a gran velocidad, y los lenguajes funcionales se postulan como una solución viable y sólida que posibilite un ritmo productivo acelerado. El proyecto financiado con fondos de la Unión Europea SEFUNC (Software engineering properties of functionally enabled languages) estudió las ventajas de estos lenguajes nuevos y si las características funcionales de los lenguajes de programación modernos logran aumentar la productividad de los desarrolladores y reducir la complejidad del código.

En el proyecto se crearon herramientas para evaluar las aplicaciones existentes en cuanto a lenguajes funcionales dado que los estudios empíricos de ingeniería de software precisan obtener y procesar datos de repositorios de software. Sus responsables generaron una actividad de minería de repositorios de gran envergadura con la que obtener todos los datos disponibles en GitHub, una plataforma popular de almacenamiento, duplicación y colaboración en materia de software.

El equipo del proyecto diseñó la herramienta GHTorrent, una duplicación de datos no en línea consultable y ampliable, con la que aprovechar datos distribuidos mediante desarrollo «pull» y ecosistemas de lenguajes visualizados Tras la obtención de los datos, estos se ofrecen de nuevo a los usuarios a través de la página web del proyecto, en la que hay almacenados más de dos terabytes de datos en dos bases de datos con formatos distintos. Gracias a estas herramientas se procedió a la realización de estudios exhaustivos y cuantitativos de población en ámbitos como los ecosistemas de software, la colaboración distribuida y la minería de repositorios.

El equipo del proyecto también estudió el desarrollo «pull», un paradigma nuevo de desarrollo distribuido de software. Realizaron el primer análisis cuantitativo a gran escala del funcionamiento de este modelo de desarrollo basado en este paradigma mediante la extracción de datos de trescientos proyectos de gran tamaño o ciento setenta mil solicitudes de «pull». De este modo sacaron a la luz los factores que influyen en la decisión de devolver una solicitud de pull y el tiempo necesario para procesarla. Todo ello ofreció datos fundamentales para mejorar la eficacia de los proyectos colaborativos distribuidos.

Cabe señalar que el proyecto recibió el «Galardón a la mejor muestra de datos» (Best data showcase award) durante el Congreso de minería de repositorios de software 2013 (2013 Mining Software Repositories conference) por el empleo innovador del rastreo distribuido y la difusión de datos valiosos entre la comunidad de desarrolladores. El trabajo del proyecto ha dado lugar a la publicación de varios artículos sobre el tema y se cita en congresos como investigación puntera. Sus resultados contribuirán al progreso de la ingeniería de software y a la popularización rápida de los lenguajes funcionales.

publicado: 2016-01-04
Comentarios


Privacy Policy