Batchisando el desarrollo con GeneXus: GeneXus Server Extensions
En GeneXus X Evolution I, se incorporó un producto nuevo que se llama
GeneXus Server.
El mismo permite almacenar en un servidor la base de conocimiento de forma que un grupo de trabajo (que puede estar distribuido geográficamente) comparta la misma, haciendo mucho más fácil y con menos errores el desarrollo de grandes aplicaciones.
Si bien no hay demasiada documentación aún, me han comentado que se van a poder programar
extensiones para GeneXus Server, de forma que se puedan agregar funcionalidad no brindada en forma nativa.
¿Cuales podrían ser estas extensiones?
Incorporación de pruebas unitarias que estén asociados a objetos y que cada vez que se hace un COMMIT de los objetos (*) se ejecuten en forma automática las pruebas unitarias de dichos objetos y se informe si hay errores (o diferencias) con la versión anterior.
Comparador de Navegaciones. Cuando se tiene una nueva versión de los objetos, se puede revisar si la navegación sigue siendo igual que la anterior o si cambió algo.
Controles del tipo KBDoctor. Que se efectúen controles de varios tipos (nomenclatura, estilo, borrado de variables que sobran, objetos no alcanzables, etc) cuando se realiza un COMMIT.
Evaluador de Riesgo del Envío. Asociado a un COMMIT, podríamos tener indicadores o métricas asociados al mismo. Estos indicadores pueden ser la cantidad de objetos cambiados, cantidad de objetos afectados (pueden ser más que los cambiados), cantidad de objetos que alteran su navegación, y una cantidad de etc. Se podría definir una heurística, de forma de poder medir el Riesgo de dicho cambio y testear con mayor cariño y dedicación a los cambios con un indicador de riesgo mayor.
Una vez que se tenga la cantidad suficiente de envíos, se podría entrenar a una red neuronal para que ayude con la detección de envíos riesgosos.
Otra funcionalidad que estaría buena, seria la de poder agrupar varios envíos de cambios al GeneXus Server, y asociarle alguna etiqueta. Esto serviría para permitir rastreabilidad entre los sistemas de incidentes (Bug Trackers) y los cambios en la KB.
El tema da para bastante más y las posibilidades que hay son muchas. Va a estar divertido.
*Publicado en
Desarrollando desde la Trinchera, blog de Enrique Almeida.