Ruby on rails, documentación ágil a partir de proyectos existentes.

Standard

Desde hace un tiempo que las metodologías ágiles se han establecido más allá de ser una moda en la industria del desarrollo de software. Por ejemplo, nosotros en Hunabsys utilizamos Scrum, y nos ha dado muy buenos resultados. Nos basamos en construir primero la funcionalidad de mayor valor para el cliente y en los principios de inspección continua, adaptación, auto-gestión e innovación. Lamentablemente para la mayoría que sigue el manifiesto ágil la documentación se ha ido dejando de lado. Al mismo tiempo que se le entrega valor al cliente, se deja una deuda técnica al dejar de ayudar a otros, a los que no están familiarizados con nuestro sistema. Aquellos futuros responsables del mantenimiento de un sistema serían los principales afectados por no documentar, la única alternativa al no tener documentación del diseño es explorar directamente en sistema, abrirse caminos y por ende invertirle tiempo.

Entender un sistema sin documentación es una tarea difícil, incluso cuando los que crearon el sistema están disponibles para explicar. Esto es algo ineficaz ya que este tipo de explicaciones siempre son requeridas de forma repetitiva.

Muchas personas se justifican en que la documentación es difícil debido a los requisitos cambiantes que son totalmente bienvenidos en la metodología ágil, pero si nos olvidamos de ella caemos en obtener desventajas de utilizar estos marcos de desarrollo.

Se tiene que documentar, de manera ágil, pero documentar.

El día de hoy les voy a recomendar dos gemas de Ruby on Rails que hace poco descubrí, pero que de ahora en adelante en todos mis desarrollos con Ruby on Rails utilizaré.

Railroady y RailRoad se tratan de gemas que es capaces de analizar la estructura de tu proyecto, sus models y controllers y a partir de ahí generar artefactos como diagramas de clases.

Para utilizar Railroady en un ambiente linux, como ubuntu el proceso sería el siguiente:

sudo apt-get install graphviz
sudo gem install railroady
cd ruta/al/proyecto

Agrega “railroady” al archivo Gemfile.

Screen Shot 2015-12-28 at 4.16.40 PM

rake diagram:all

Puedes consultar los diagramas generados en la carpeta doc, dentro de la carpeta del proyecto.

 

Screen Shot 2015-12-28 at 4.30.24 PM

Ejemplo de uno de los diagramas generados por RailRoady

Para utilizar railroad:

sudo gem install railroad

Ejemplo: Crear un diagrama de clases

railroad -o models.dot -M
Screen Shot 2015-12-28 at 4.35.45 PM

Ejemplo de uno de los diagramas generados por RailRoad

Este todo por hoy, quedo maravillada con estas gemas y su poder para generar diagramas de clases de manera rápida y útil para muchos fines, espero que a tí también te sean de utilidad.

Saludos, hasta la próxima.

 

Karen.

 

Leave a Reply

Your email address will not be published. Required fields are marked *