Diego Rodríguez, ingeniero de desarrollo del DO y autor de la publicación, explica que a futuro, ALeRCE espera incorporar nuevas funcionalidades y estandarizar otras partes del proceso de desarrollo, tales como testing y procesos de telemetría, entre otros. ALeRCE, proyecto conjunto del DO junto a Instituto Milenio de Astrofísica (MAS) y el Centro de Modelamiento Matemático (CMM), busca facilitar y promover del desarrollo científico disponibilizando datos a los astrónomos de forma más accesible, rápida y con amplias funcionalidades.
Diego Rodríguez, ingeniero de desarrollo de Fundación Data Observatoy (DO) acaba de publicar un estudio en la revista internacional de software IEEE. La publicación constituye un experience report acerca de la metodología utilizada en el proyecto ALeRCE, que el DO ejecuta junto al Instituto Milenio de Astrofísica y el Centro de Modelamiento Matemático CMM, y que busca desarrollar el sistema de procesamiento de datos astronómicos en tiempo real.
Para Rodríguez, «la gran motivación de esta publicación responde a una dinámica propia de ALeRCE, con equipos temporales de estudiantes de pregrado y postgrado, que realizan diversos desarrollos que dificultan su seguimiento y mantención en el largo plazo. La idea de este estudio es contribuir con una metodología y estandarizar los procesos de desarrollo y la continuidad del ciclo de vida de estos proyecto». El estudio identifica «fractales», componentes que muestran elementos de procesamiento y datos que quedan representados en una especie de «cajas negras de procesamiento».
ALeRCE (Automatic Learning for the Rapid Classification of Events) fue creado en 2017 como una colaboración interinstitucional entre el Instituto Milenio de Astrofísica (MAS) y el Centro de Modelamiento Matemático (CMM). A ellos se unió la fundación Data Observatory (DO) en 2020, y la Universidad de Concepción (UdeC) y la Universidad Mayor en 2022, además de sumar a investigadores de más de 20 instituciones nacionales y extranjeras desde sus inicios.
En opinión del investigador, el paper, titulado «Toward Fractal Development of Data Processing-Intensive Artificial Intelligence Systems», responde a la creciente complejidad en el desarrollo de los sistemas de ALeRCE, que involucra a diversos equipos que desarrollan productos con un enfoque orientado a resultados, pero que con el tiempo causan problemas de complejidad al momento de mantenerlos y un tech stack demasiado amplio para la capacidad del equipo en un momento dado.
Si bien este estudio se realizó en función de los procedimientos propios de ALeRCE, Diego Rodríguez asegura que la metodología y la estandarización desarrollada es completamente replicable en otros proyectos del DO, que usan el mismo patrón de representación mediante cajas de entrada y salida de datos, e incluso de sus herramientas.
«ALeRCE a nivel macro se puede ver como una caja negra donde entran y luego salen datos. ALeRCE recibe datos en streaming desde los observatorios ZTF y ATLAS actualmente. Luego procesamos esos datos y los disponibilizamos tanto en streaming como en varias plataformas personalizadas. Este modelo de input-output se puede replicar también a las unidades de procesamiento a nivel más granular. Dichas unidades las llamamos «Step», que pueden ir formando una pipeline o tubería de procesamiento», sostiene Rodríguez.
La metodología del trabajo consiste en 3 fases que responden a los principios de identificación de un step, creación del step y despliegue de step. En el primer principio, cumpliendo con el trade-off entre la reusabilidad y complejidad de un step, se decide cuál será la lógica de procesamiento para dicho step. Los steps se pueden conectar entre sí, pero no necesariamente tener dependencias directas, sino más bien siguiendo un patrón basado en eventos y que además pueden ser compuesto por otros step o «pipelines» internas (de ahí el término fractal). Solo como referencia, en ALeRCE existen 7 steps base.
En cuanto al principio de creación del step, permite acceder a un framework que permita estandarizar el desarrollo y hacer plantillas base para las unidades fractales, creando APF (Alert Processing Framework) que tiene diferentes utilidades para la creación de steps y además se encarga internamente de realizar ciertas tareas de logging, métricas y monitoreo.
Finalmente, de acuerdo al principio de despliegue del step, que busca adoptar el ecosistema de contenedores, consiste en estandarizar el despliegue (ejecución o puesta en producción) de los step mediante contenedores y el uso de servicios de AWS como EKS (Elastic Kubernetes Service) para la administración de containers.
Diego Rodríguez concluyó que «el trabajo futuro de ALeRCE en relación con APF consiste en seguir añadiendo funcionalidades y estandarizar otras partes del proceso de desarrollo, tales como testing, procesos de telemetría, entre otros. Por otro lado, en ALeRCE esperamos facilitar y promover el desarrollo científico llevando los datos a los astrónomos de formas más accesible, rápida y con amplias funcionalidades científicas. Sin embargo, para lograrlo es importante desarrollar dichas funcionalidades y servicios de forma ágil y accesible en un entorno siempre cambiante, razón por la que continuamos en la búsqueda de desarrollos como APF y la metodología fractal».
Revisa la publicación en: https://ieeexplore.ieee.org/document/9845491
Revisa nuestra sección Tecnología & Ciencia aquí.