Clasificación de usuarios basada en la detección de errores usando técnicas de procesadores de lenguaje

  1. PEREZ PEREZ, JUAN RAMON
Supervised by:
  1. Juan Manuel Cueva Lovelle Director

Defence university: Universidad de Oviedo

Fecha de defensa: 28 March 2006

Committee:
  1. Manuel Ortega Cantero Chair
  2. José Emilio Labra Gayo Secretary
  3. Luis Joyanes Aguilar Committee member
  4. Fernando Sánchez Figueroa Committee member
  5. María Ángeles Díaz Fondón Committee member

Type: Thesis

Teseo: 131554 DIALNET

Abstract

Esta tesis lleva a cabo la definición de un modelo para un entorno de desarrollo de software, que facilita a los usuarios la construcción de aplicaciones con una mejor calidad del código que los entornos actuales. El modelo que, está implementado en el sistema denominado SICODE, se basa en técnicas de procesadores de lenguaje que permiten realizar un análisis estático del código fuente, para descubrir los errores de programación presentes en el código. Este modelo pretende incidir sobre los estilos en la forma de programar y no sólo sobre errores puntuales. Para ello se ha establecido lo que se denomina una historia de compilación, sobre la que se generan métricas de evolución y frecuencia de errores a lo largo del tiempo. Se utiliza un modelo activo en la prevención de errores mediante el envío de avisos. Estos avisos permiten asociar información semántica a cada error en una base de conocimientos. Esta base de conocimientos es dinámica y se realimenta con la experiencia de todos los desarrolladores, lo que permite aprender de la experiencia de los demás. En esta tesis se ha realizado un estudio que permite llevar a cabo la clasificación de usuarios basándose en la detección de errores en el código. SICODE nos ha permitido analizar los errores de un amplio número de proyectos realizados por desarrolladores. Así, hemos caracterizado distintos tipos de errores dependiendo de la experiencia de los programadores. Este estudio proporciona datos que permitirán construir las bases para modelizar al usuario y de esta forma hacer que el modelo sea adaptable. La tesis ofrece nuevos enfoques sobre los sistemas de desarrollo existentes en la actualidad. La construcción de la historia de compilación permite un análisis más profundo que el que puede realizar un simple compilador, y este análisis está al servicio de la mejora del código. Además, el sistema está centrado en el entorno de desarrollo y fusiona el