Ir a versión españolaGo to English version
Ultima modificación : 23-03-2012
www.agustincernuda.info
Índice del sitio
Aviso
Sea cual sea la dirección que vea en la barra de su navegador, para enlazar a esta página debería utilizar siempre como base www.agustincernuda.info, para prevenir futuros enlaces rotos.
Contacto
Agustín Cernuda del Río
Escríbeme: guti en uniovi punto es

WebStats

El proyecto ATACS

Logo ATACS

Acerca de ATACS

Dentro de la estrategia marcada por el proyecto Itacio, parecía necesario revisar las tecnologías de análisis estático existentes y aplicarlas de manera más convencional al análisis de código para detectar defectos. Se ha trabajado mucho con análisis estático en el plano teórico, pero en realidad los casos de aplicación práctica "a medida" en el seno de una empresa parecen más bien raros y restringidos, y creímos necesario averiguar su utilidad y definir un procedimiento de trabajo viable.

En el campo de los procesadores de lenguaje, no resulta difícil encontrar casos reales de aplicación. Existen técnicas bien conocidas y herramientas funcionales, que se utilizan con relativa frecuencia. La transferencia tecnológica, en este sentido, ha funcionado bien. Sin embargo, en el caso de las técnicas de análisis estático existe mucho trabajo teórico y proyectos muy concretos de implementación, así como algunas herramientas comerciales; pero no existe una cultura generalizada para sacar partido de estas técnicas de cara a detectar defectos en proyectos reales y con lenguajes de programación de amplio uso en la industria. En el proyecto ATACS pretendemos averiguar hasta qué punto esta situación es justificada.

ATACS son las iniciales de "Aplicación de Tecnologías de Análisis estático a la Calidad del Software".

Ambito del proyecto

Después de mucho esfuerzo, hemos conseguido financiación en la convocatoria de Proyectos de Investigación Concertada 2004-2006, del Gobierno del Principado de Asturias, dentro del Plan de I+D+I 2001-2004. La empresa Seresco, además de participar económicamente, actuará como cliente dándonos información real muy valiosa sobre sus necesidades y permitiéndonos acceder a su base de código fuente.

Intervención en JSWEB 2005

En ATACS trabajamos en varias ideas, y una de ellas es aplicar tecnologías de análisis estático a coreografías y orquestaciones de servicios web. Como resultado de estas investigaciones presentamos en septiembre de 2005 pasado una propuesta en JSWEB 2005, un evento patrocinado por la oficina española del W3C.

Intervención en WESC-05 (material disponible)

El 12 de diciembre de 2005 presentamos nuestra propuesta de verificación estática de compatibilidad de procesos de negocio en WESC 05 (First International Workshop on Engineering Service Compositions), en el seno de 3rd Int. Conference on Service Oriented Computing (ICSOC 2005). La propuesta fue acogida muy positivamente, y pudimos cambiar impresiones con otros investigadores que trabajan en la misma línea.

Puedes "asistir" a esta intervención usando el material de aquí debajo:

  • Transparencias utilizadas. PDF, 399 KB (en inglés). Enlace externo al sitio de WESC 05. Escríbeme si estás interesado y el enlace deja de funcionar, para enviártelo o poner una copia aquí.
  • Grabación del sonido. MP3, 20 MB (en inglés). Grabación de mi intervención a 128 Kbps.

Estado del proyecto

Hubo una primera fase de recopilar información sobre algoritmos, posibilidades... Empezamos con algo de retraso, pero enseguida contratamos a una persona a tiempo completo (Cristina González Muñoz). Trabajamos sobre algunas sugerencias de la empresa sobre posibles verificaciones a realizar, así como sobre código real (de lógica de negocio y de interfaz de usuario) para estudiarlo. Pasamos por la fase inevitable en la que no sabíamos exactamente qué estábamos haciendo ni qué debíamos hacer (marzo de 2005). Como pistas, estuvimos estudiando algo sobre SPARK Ada, XUL, ANTLR (y otros similares), Phoenix, etc.

Posteriormente, intentamos implementar algoritmos de análisis estático sobre Java. Cristina hizo un gran trabajo. Tenemos un primer analizador que detecta una decena de tipos de error, aunque falta mucho por hacer. Al mismo tiempo, trabajamos a un nivel más teórico en servicios web.

Lamentablemente, desde 2005, mi trabajo en la Universidad se limita al tiempo parcial, y casi he tenido que abandonar estas investigaciones, que espero retomar en algún momento. Por ahora, investigo sólo un poco en aspectos de docencia. Pero estaré encantado de comentar cualquier aspecto de este proyecto.