sábado, 12 de marzo de 2011

Métricas y Estadísticas (I): ohloh.net

A partir de los repositorios de los proyectos de software libre, se puede obtener una infinidad de datos, que tras un adecuado procesamiento, estudio y análisis, se pueden convertir en valiosa información relativa a la evolución y trabajo en el proyecto: número de desarrolladores, meses con mayores picos de trabajo, horas del día en las que los desarrolladores realizan mayor número de commits, relacionar la introducción de bugs en el código con la experiencia del desarrollador en el proyecto, y prácticamente cualquier otro factor de utilidad que se nos pueda ocurrir.

Con esta entrada, inicio lo que espero que se convierta en una serie de posts sobre algunas de las principales herramientas existentes para la obtención de datos de interés de un proyecto con la única premisa de tener acceso a su sistema de control de versiones. Y para comenzar, tenemos el sitio web ohloh.net. Quizás la peculiaridad de esta herramienta, resida en que supone un portal web en el que los mismos desarrolladores de software libre pueden establecer relaciones como si de una red social profesional se tratase, en la que cada uno puede otorgar 'Kudos' a aquellos otros desarrolladores cuya valía tienen en buena consideración, e incluso, estableciéndose un ranking entre desarrolladores en comunidades de software libre.

Por lo demás, el proceso es sencillo: cualquier desarrollador puede crearse una cuenta en ohloh.net, dar de alta su proyecto, e indicar los repositorios en los cuales se encuentra su código fuente. A partir de entonces, se podrán consultar datos, métricas y estadísticas de todo tipo relativos al proyecto. Los aspectos más destacados según temática son los siguientes:

- Aspectos sociales: cuántos y quiénes son los desarrolladores del proyecto (y su experiencia en el proyecto y con cada lenguaje de programación), así como su propietario y/o mantenedor, quiénes y cuántas son las personas que se han registrado como usuarios del proyecto, las votaciones recibidas por parte de esos usuarios (y puntuación media), etc.
- Aspectos legales: las diferentes licencias empleadas en los ficheros del proyecto, así como cuántos ficheros (y su rating) poseen cada una de las licencias presentes en el proyecto.
- Aspectos técnicos: lenguajes de programación empleados, número de líneas de código escritas en cada lenguaje de programación y porcentaje de uso de cada uno de ellos, número de líneas en blanco y líneas de comentarios (y sus ratios), número total de commits realizados (con sus fechas, horas, enlaces al repositorio, autor), repositorios.
- Desarrolladores: como se puede entender por lo explicado hasta el momento, también todo tipo de estadísticas sobre cada desarrollador: ranking y número de 'kudos' recibidos, proyectos en los que ha participado, experiencia, commits realizados, etc.

En definitiva, una herramienta potente y de sencillo uso a través de una amigable interfaz web.

No hay comentarios:

Publicar un comentario