Manteniendo instalaciones GeneXus para desarrollo en grupo.

Quienes hayan trabajado en grupo con GeneXus, saben que la tarea de mantener las instalaciones de todos los desarrolladores, que  trabajan en diferentes proyectos, no es tarea sencilla.

El escenario típico, es tener un grupo grande de equipos de desarrolladores, trabajando en varios proyectos, que tienen diferentes versiones de GeneXus, diferentes generadores, generalmente trabajando contra GXServer.

Algunos de los problemas con que nos encontramos son:

  • Creo una KB desde GXServer y al especificarla, falta Controles de Usuario (UC) o patrones usadas por la KB. 
  • Errores en ejecución, porque tengo una version de un User Control diferente a la necesaria. 
  • Estoy en Upgrade diferente al de mis compañeros (mas nuevo o mas viejo). 
  • Errores en ejecución, pues no tengo la configuración realizada a un User Control
  • Diferencias de funcionamiento, pues me falta el archivo config.gx con algun seteo especifico. 


Como pueden ver, son todos problemas relacionados a manejo de la configuración de instalaciones locales.

La tendencia que veo, es que estos problemas se están dando cada vez con mas frecuencia, pues aumento la frecuencia de cambios de versiones de Genexus, lo cual es muy bueno, pero tiene efectos colaterales.

Detectar y corregir estos problemas es bastante costoso en tiempo, por lo que creo que es redituable trabajar en automatizar su solución.

Conozco colegas, que tiene una instalación de GeneXus por cada proyecto en el cual están trabajando, lo cual les da mucha estabilidad, pero complica cuando se quiere actualizar la versión de Genexus.

Para hacer mas llevaderos estos problemas, tendríamos que desarrollar herramientas para:

  • Obtener de forma fácil, cuales son todos los UC / Patterns usado por una KB y que indique de donde obtenerlos, dando la opción de bajarlos/instalarlos si tengo diferencias con los que tengo instalado. 
  • Acutalizaciones de versión de GeneXus un poco mas fáciles. Hoy casi todas las herramientas tiene una opción de detectar si hay versiones nuevas y da una opción fácil de actualizarla. Con GeneXus hay que bajar/desinstalar/instalar y es un poco engorroso. 
  • Poder copiar los UC/Pattern de una instalación a otra, teniendo cuidado de excluir los que vienen con GeneXus. 
  • Instalar todos los UC/Pattern que se usan en una KB de GXServer. 
Por el momento, lo que puede hacerse es crear una instalación GeneXus de referencia para un proyecto y que todos los integrantes del grupo de desarrollo de dicho proyecto se copien dicha instalación. Es una solución desprolija y primitiva, pero permite ahorrar tiempo y algunos dolores de cabeza. 



Comentarios

Entradas más populares de este blog

Aplicación monolítica o distribuida?

La nefasta influencia del golero de Cacho Bochinche en el fútbol uruguayo

Funcionalidades de GeneXus que vale la pena conocer: DATE Constants.