Artículos técnicos

Tesis de un modelo para tomar decisiones

Pyxis Comunicación

28 de octubre de 2022

Comparte

El programa Research busca la sinergia entre Pyxis y la Academia con el objetivo de co-construir conocimiento. En esta ocasión, conversamos con Juan Domínguez y Mariano Goicoechea, sobre su tesis en Arquitectura de Microservicios y la implementación de un proyecto para apoyar a arquitectos y desarrolladores a la hora de diseñar este tipo de soluciones.

Juan y Mariano entregaron y aprobaron su tesis en la Facultad de Ingeniería de la Universidad de la República (Fing). Dicen que “han perdido un poco la dimensión de lo que fue el proyecto”. Pero se quedaron con la certeza, además de un once en la calificación final, de que “el proceso los desafió en todo momento, fue muy productivo” y que, además, “quedaron muchas cosas por hacer”.

En la etapa de definición del tema que abordarían en la tesis, se propusieron encontrar desafíos que los obligaran a “salir a investigar, conversar con expertos y escuchar a referentes de la universidad y del sector tecnológico”.

Arquitectura de Microservicios

Entre la cantidad de opciones para elegir, la propuesta de Pyxis fue la que más interés les despertó. La idea principal era relevar la arquitectura en el entorno de la empresa. Un análisis que habilite la creación de un prototipo para “mejorar la arquitectura de microservicios de Pyxis”. Centrado en relevar los proyectos existentes de ese tipo y “tratar de encontrar el gap técnico, para poder analizar las sugerencias que podían surgir”.

La primera fase de la investigación arrojó que Pyxis tenía una arquitectura sólida y actualizada. La empresa propuso “implementar un sistema que le presente al usuario un formulario de preguntas y que, en base a las sus respuestas, lo ayude a relevar una arquitectura de microservicios, y le sugiera componentes y patrones arquitectónicos”.

Pensado para desarrolladores y arquitectos junior, este modelo para tomar decisiones “presenta preguntas sobre arquitectura, microservicios, funcionalidades, y requerimientos no funcionales”.

Pyxis “quería una aplicación que les indicara a los arquitectos junior qué patrones utilizar y les brindara fuentes de información” explican. Cuando el usuario completa el formulario, el sistema le despliega cierta arquitectura con todos sus patrones y, al seleccionarla, se encuentra con información correspondiente a cada componente del sistema. Una especie de documentación “donde definís ciertos patrones en el sistema y ahí mismo ya guardas cómo se implementan, entonces es posible ver la ejecución con un click”, explican.

Las preguntas del cuestionario son “las que marcan los cimientos y las que se hace cualquier arquitecto con experiencia para construir un sistema de microservicios”. Los componentes arquitectónicos que propone la aplicación se basaron en conocimiento e información que obtuvieron “del intercambio con arquitectos de Pyxis y relevando las diferentes arquitecturas del ecosistema”.

El objetivo es “asesorar y dar soporte a los arquitectos y desarrolladores con menos experiencia en microservicios”. Además cuenta Juan, “la idea fue hacerlo de tal forma que en un futuro sirva de insumo en la toma de decisiones detrás del proceso y que pueda ser gestionado por altos roles técnicos de la empresa”.

Preguntas que impactan

¿Cómo Pyxis puede aprovechar la idoneidad y experiencia de su equipo? Esa es la pregunta que fundamenta el proyecto. Convertir ese conocimiento en un activo funcional que pueda dar soporte a otros. Es la base de este modelo: “un sistema donde los senior pueden volcar su conocimiento y las personas con menos expertise lo puedan ubicar y usar”. Que el intercambio entre usuario y sistema derive efectivamente “en un componente arquitectónico o en una tecnología”.

Una vez que identificaron los requerimientos de Pyxis, empezaron a definir el alcance del producto. Carlos Soderguit, arquitecto con mucha experiencia en Pyxis, les sugirió hacer “un modelo de decisión”. Establecieron un primer objetivo y pasaron a la etapa de desarrollo. Allí “íbamos presentándole funcionalidades para validar e implementar”.

Carlos los acompañó “en definiciones y sugerencias a nivel de programación, diseño y visualización. “Para nosotros él era un cliente, el más exigente que podíamos tener”.

Además de la satisfacción de la calificación, lo que más rescatan del programa de Research como apoyo en su tesis, es que pudieron “escuchar y ver trabajar a profesionales con mucha experiencia”. “Es algo que te nutre indudablemente”, destaca Juan.

También como tutor, los guió Guzmán Llambias, Team Managment y Arquitecto de Pyxis, donde permanentemente “fomentó uno de nuestros principales objetivos: aprender de microservicios”.

“Teníamos que investigar previamente para poder estar a la altura” en las conversaciones con Pablo Garbusi, Ingeniero de Pyxis, y Carlos, “anotábamos palabras que no conocíamos para buscarlas después, fue sobre todo un reto, donde la nota fue un premio”, resume Mariano.

Por último, cuentan que el próximo paso sería crear una interfaz para que la experiencia de usuario sea más fácil “y no desde bases de datos o scripts”. Igualmente “hoy en día está pronta toda la lógica para que el arquitecto a cargo pueda poner sus preguntas, sus patrones y sus necesidades. Es una aplicación abierta y customizable que se puede seguir extendiendo para otras funcionalidades, y con oportunidades de mejora permanente”.


Pyxis Comunicación

28 de octubre de 2022

Artículos técnicos