GX DevOps Extension
Integración de herramientas de apoyo al proceso de desarrollo de software en GeneXus
Resumen:
El presente proyecto tiene como objetivo realizar una prueba de concepto que permita automatizar la integración de herramientas de apoyo al ciclo de desarrollo de software en GeneXus, y así realizar de manera automática ciertos flujos de trabajo. Esto responde a la necesidad de que Genexus tenga las mismas prestaciones que otros entornos de desarrollo de software de clase mundial. Se considera como caso de uso principal, que cuando un desarrollador GeneXus realice commits de un proyecto al repositorio utilizado (GxServer), se disparen múltiples flujos de trabajo en herramientas de terceros a través de reglas definidas para cada proyecto. La implementación realizada apoya la automatización del proceso de compilación de un proyecto con una herramienta de entrega continua, una herramienta de ticketing para que asocie el cambio realizado a un issue, y una herramienta de comunicación interna del equipo (para este caso se seleccionó Slack. Se implementó una interfaz genérica para definir las reglas de integración, que es extensible a nuevas herramientas debido a un diseño desacoplado y mantenible. La solución se desarrolló en C[numeral], ya que es el lenguaje utilizado por el cliente para sus aplicaciones. Se utilizaron web hooks para poder subscribirse a los eventos de las herramientas GeneXus y a partir de la ejecución de dicho evento poder hacer alguna acción sobre las herramientas integradas. Dada la falta de experiencia de los integrantes del equipo y por las características del proyecto, se eligió un ciclo de vida evolutivo, permitiendo así incorporar cambios a lo largo del proyecto y gestionar de manera más efectiva la incertidumbre.
2019 | |
PROYECTOS-LAN DESARROLLO DE SOFTWARE SOFTWARE-DESARROLLO AUTOMATIZACIÓN GENEXUS GENEXUS |
|
Español | |
Universidad ORT Uruguay | |
RAD | |
http://hdl.handle.net/20.500.11968/4222 | |
Acceso abierto |