12.07.2015 Views

Becas concedidas a los departamentos - Universidad Politécnica de ...

Becas concedidas a los departamentos - Universidad Politécnica de ...

Becas concedidas a los departamentos - Universidad Politécnica de ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Becas</strong> colaboración curso 2009/2010Fecha: 30 Julio 2009ResponsableAlpuente Frasnedo, MaríaE-mailalpuente@dsic.upv.esExt.79354Título proyectoCompiladores <strong>de</strong>l futuroValoración proyecto4Descripción proyectoLos compiladores actuales son capaces <strong>de</strong> <strong>de</strong>tectar e incluso corregir todos <strong>los</strong> errores sintácticos en tiempo<strong>de</strong> compilación.Para <strong>los</strong> errores en tiempo <strong>de</strong> ejecución, que provocan que el programa objeto no haga lo que se espera <strong>de</strong>él o no lo haga como se esperaba, existen varias técnicas <strong>de</strong> <strong>de</strong>puración no muy avanzadas. Las mástradicionales son añadir instrucciones <strong>de</strong> impresión (print) <strong>de</strong> valores al código fuente, la inspección <strong>de</strong>l estado<strong>de</strong> la ejecución en algún momento concreto (breakpoint), la medición <strong>de</strong> costes (profiling), o incluso la<strong>de</strong>puración basada en trazas (tracing). En este proyecto, nos interesamos a técnicas <strong>de</strong> <strong>de</strong>puración recientes,como la <strong>de</strong>puración basada en la fragmentación <strong>de</strong> programas (program slicing) y su aplicación a la <strong>de</strong>tección<strong>de</strong> errores más avanzadas, como la confi<strong>de</strong>ncialidad <strong>de</strong> programas.Activida<strong>de</strong>s a realizar por el alumnoExisten varias versiones <strong>de</strong> análisis <strong>de</strong> fragmentación según se hace estáticamente o dinámicamente, a partir<strong>de</strong> todos <strong>los</strong> datos posibles <strong>de</strong> entrada o <strong>de</strong> solamente un subconjunto <strong>de</strong> el<strong>los</strong>, modificando el programa opreservando su sintaxis, etc.Proponemos i<strong>de</strong>ntificar <strong>los</strong> análisis <strong>de</strong> fragmentación que mejor se a<strong>de</strong>cúan al problema <strong>de</strong> la <strong>de</strong>tección <strong>de</strong>fal<strong>los</strong> <strong>de</strong> confi<strong>de</strong>ncialidad en un programa. En particular, nos interesaremos a <strong>los</strong> errores <strong>de</strong> interferencia entrepartes <strong>de</strong> un programa con niveles <strong>de</strong> confi<strong>de</strong>ncialidad distintos, como por ejemplo el acceso a datos privadosy contraseña en tiempo <strong>de</strong> ejecución <strong>de</strong> un usuario con <strong>de</strong>rechos limitados. Otro error que podríamos <strong>de</strong>tectarsería el borrado <strong>de</strong> información confi<strong>de</strong>ncial.Proponemos implementar un prototipo <strong>de</strong> compilador que calcula todas las sentencias en un programa JAVAque pue<strong>de</strong>n afectar el valor <strong>de</strong> la variable o evento especificado por un criterio <strong>de</strong> fragmentación dado un fallo<strong>de</strong> confi<strong>de</strong>ncialidad. Ese prototipo será evaluado sobre programas JAVA reales <strong>de</strong>l repositorio SourceForge.Horario15 horas semanales a <strong>de</strong>terminar entre profesor y alumnoPage 264 of 385

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!