miércoles, 21 de abril de 2010

Herramientas de Desarrollo Distribuido

El desarrollo de software libre se basa en gran parte en unas herramientas que permiten sincronizarse con el trabajo de los diferentes desarrolladores del proyecto, de manera que la distribución geográfica no suponga un problema. Los sistemas de control de versiones y los gestores de erratas (también usados ocasionalmente para tareas de planificación) se han convertido en herramientas imprescindibles para proyectos de software libre grandes, y no tan grandes. Estos sistemas suelen registrar las interacciones con los desarrolladores y, por tanto, una vez que se consiguen estos registros puede monitorizarse de manera bastante sencilla todo el proceso de desarrollo. Uno de estos sistemas son los siguientes:


Sistema de control de versiones: cvstat2

El desarrollo distribuido (y a veces simultáneo) en proyectos de software libre se organiza mediante el uso de un sistema de control de versiones. El más utilizado en la actualidad por los proyectos de software libre es el CVS. Un análisis de los cambios que se van realizando al repositorio que estos sistemas mantienen, nos dará mucha información acerca de la participación de desarrolladores, además de la posibilidad de ver si existen ciclos de desarrollos. El estudio de los resultados obtenidos por esta vía se puede extender de manera notable si los datos obtenidos los podemos correlar con las inspecciones de código y la actividad en las listas de correo, así como con datos socio-laborales de los desarrolladores.

Cvstat2 es una extensión del cvstat de J.Mallet que ha sido concebido para poder funcionar de manera distribuida. El objetivo es que junto con la aplicación de extracción de datos, se distribuya un interfaz web simple e intuitiva a través de la cual se pueda ver la evolución del proyecto en el CVS. De esta manera, cualquier equipo de desarrollo podrá descargarse, instalarse y configurarse el software y medir sus interacciones con el repositorio CVS. Además, estos datos serán exportados, de manera que se descarga el procesamiento de un repostorio
central de datos en formato intermedio.

Datos que podemos obtener vía cvstat2:

Fecha del commit (acción por la cual un desarrollador sincroniza su versión local con la existente en el repositorio)
Fichero modificado
Desarrollador
Número de versión (CVS)
Número de líneas añadidas
Número de líneas borradas


Sistema de control de erratas: BugZilla, estadísticas de errores críticos


En muchos proyectos grandes de software libre, la existencia de errores críticos propicia que la publicación de una versión estable se retrase. Debian y GNOME son dos ejemplos de ello, aunque seguro que hay muchos más. La incidencia de errores críticos es muy importante a la hora de realizar la publicación definitiva en grandes proyectos de software libre. Un ejemplo de radiante actualidad nos lo ha dado la segunda versión de la plataforma GNOME. Su publicación definitiva se ha retrasado varias semanas, porque tenía varios errores críticos que no se había conseguido corregir.

Datos que se pueden extraer:

Fecha de apertura de una errata
Catalogación de una errata
Número de las interacciones
Fecha de las interacciones
Autor de las interacciones
Fecha de cierre de una errata



Fuente: http://curso-sobre.berlios.de/curso/trab/grex/sobre-trabajo-grex.pdf

No hay comentarios:

Publicar un comentario