Gestión de versiones y bloqueo de elementos de diseño en Lotus Domino

16 July, 2009 10:12:38 PM mangelcalvo  Domino  desarrollo  |  Comentarios (2)

En la empresa, Lotus Domino,  se incorpora al parque de servidores, en muchas ocasiones para ofrecer servicios de correo, calendario y colaboración. En muchas ocasiones también, alguien del departamento de sistemas o de desarrollo descubre que Lotus Domino es algo más que una plataforma de correo. Es una plataforma para creación de aplicaciones RAD.

El proceso de creación de aplicaciones comienza con la creación de bases de datos a partir de alguna plantilla que viene con el producto, posteriormente con Designer se crea alguna pequeña aplicación. Un formulario y un par de vistas son capaces de ofrecer al usuario el mejor de los servicios en algunos casos. En 30 minutos la aplicación está en producción, con la seguridad configurada y soportando acceso local, remoto, mediante cliente Notes y cliente Web.


Si el proceso evoluciona pueden aparecer muchas más aplicaciones. Pero Domino no se queda ahí y además de ser una herramienta RAD, permite el desarrollo de aplicaciones complejas, tan complejas  como nos permita nuestra capacidad como desarrolladores.

La euforia inicial nos hace perder un poco el norte y desarrollar aplicaciones sin considerar parámetros de calidad y de gestión del software.

Lotus Domino no está basado en archivos de texto, por lo que no podemos utilizar herramientas de gestión de versiones como Subversion.

La solución al problema de gestión de versiones y trabajo en equipo la proporciona el producto Teamstudio CIAO

Funcionalidades de CIAO
Con este producto podemos trabajar en equipo, ya que dispone de mecanismos de bloqueo de elementos de diseño, de tal manera que si un desarrollador está trabajando, por ejemplo, en un formulario, ningún otro desarrollador podrá modificar el formulario y guardarlo.

Adicionalmente permite bloquear un elemento de diseño y aquellos elementos relacionados. Por ejemplo un formulario, y todos los subformularios incluidos y las acciones compartidas,..

Cada vez que un desarrollador modifica un elemento y lo desbloquea se crea una nueva versión del elemento de diseño. Todas las versiones quedan almacenadas y podemos en un momento dado al detectar un error volver a una versión anterior de un elemento de diseño.

En un sistema de desarrollo correctamente planificado, dispondremos de servidores de desarrollo, preproducción y producción. Los desarrolladores trabajarán exclusivamente en el entorno de desarrollo, quedando el entorno de preproducción para las fases de pruebas y el entorno de producción para el uso de las aplicaciones.
En dicho entorno, en el momento en que en desarrollo se decide que se han implementado las funcionalidades requeridas será necesario pasar a preproducción la base de datos para la realización de las pruebas.

Con CIAO podemos crear una versión de la base de datos, para que sea publicada en preproducción. Dicha versión queda documentada en CIAO de dos maneras, como base de datos, y como una lista de elementos de diseño incluidos en dicha base de datos. En ese momento el equipo de desarrollo puede continuar trabajando en la siguiente versión y siempre queda documentada la versión que ha sido pasada a preproducción.

CIAO dispone también de características avanzadas que permiten, dada una versión, crear una ramificación en la línea de código para solventar un error, poderlo pasar a producción y "mezclarlo" en la versión en la que se está trabajando en desarrollo.

En definitiva, el desarrollar con Lotus Domino no necesariamente implica abandonar las buenas prácticas en la gestión del código fuente y en el ciclo de vida de las aplicaciones.

Gravatar Image
1) Gestión de versiones y bloqueo de elementos de diseño en Lotus Domino
Juan F. Ruiz 8/1/2009 11:02:58 AM

¡Excelente artículo, Miguel!

A ver si algún jefe de informática lo lee ... y se entera de que Domino no es solo un servidor de correo ... :-D (entre otras cosas).

Gravatar Image
2) Gestión de versiones y bloqueo de elementos de diseño en Lotus Domino
Miguel Angel Calvo 8/2/2009 10:34:45 AM http://www.zarazaga.net

Gracias Juan F., y espero que estés pasando unas buenas vacaciones.

Deja una respuesta


Nota:  (No HTML - Los enlaces serán convertidos si están precedidos por http://)

¿ Recuérdame?