La comunidad de usuarios de software libre es una organización dinámica y evolutiva, en el sentido que existen diversos factores que influyen y moldean en mayor o menor medida su situación y tendencia futura.
Considerando un proyecto de software libre, es deseable crear cuanto antes una comunidad de usuarios sólida en torno a la aplicación, puesto que parte del éxito y de los objetivos del proyecto redundan en ella.
Una vez creada la comunidad, es importante programar actuaciones que permitan no sólo mantenerla estable sino también ampliarla y hacerla evolucionar al menos al mismo ritmo que lo hace el producto. Como paso previo a cualquier actuación en este sentido, es necesario conocer con precisión el estado actual de la comunidad de usuarios y la tendencia evolutiva que sigue en los últimos tiempos en relación con el proyecto.
Identificar con exactitud el estado actual de una comunidad de usuarios puede resultar relativamente complicado en la práctica, principalmente por sus características de distribución y descentralización.
Aún así, podemos tener en cuenta una serie de indicadores que nos permitan establecer una aproximación suficientemente realista como para tomar decisiones en este sentido.
En el artículo de Crowston y Howison "Assessing the Health of a FLOSS Community" se detalla una guía simple, pero efectiva, para identificar y evaluar el estado de una comunidad de usuarios de software libre. Esta guía considera los principales indicadores que se deben tener en cuenta para evaluar la salud de la comunidad y, por extensión, del proyecto basado en software libre.
En los próximos apartados presentaremos de forma breve algunas de sus conclusiones.
Ciclo de vida y motivaciones
Diversos autores están de acuerdo en considerar que los proyectos se inician en el seno de un grupo reducido de promotores para luego estructurarse y desarrollarse de forma pública.
Una vez puesto en marcha el proyecto, se debe iniciar una segunda fase que permita el refinamiento progresivo del concepto inicial. Es decir, la compartición de ideas, sugerencias y conocimientos ha de permitir revolucionar el concepto original. Este proceso no se puede realizar sin la cooperación de la comunidad de software libre.
Por otra parte, las motivaciones de los miembros de la comunidad para participar en el proyecto se relacionan principalmente con el desarrollo intelectual, el compartimiento del conocimiento, el interés por la aplicación, la ideología o filosofía subyacente al proyecto o al software libre, la reputación u obligación comunitaria.
Estructura y tamaño de la comunidad
La comunidad de usuarios de una aplicación basada en software libre puede estructurarse de muy diversas formas, teniendo en cuenta las actuaciones y decisiones de los promotores del proyecto y las características de la aplicación y/o de su producción.
En general, podemos considerar que la comunidad de usuarios de una aplicación es saludable si presenta una estructura jerárquica funcional adecuada a sus objetivos en torno a un núcleo activo de desarrolladores.
A grandes rasgos, podemos identificar las siguientes tipologías de miembros en un proyecto:
- Desarrolladores del núcleo de la aplicación, con derechos de escritura sobre el repositorio y un historial de contribuciones al proyecto significativo.
- Líderes del proyecto, que motiven y lleven el proyecto y su comunidad de usuarios a la madurez y estabilidad.
- Desarrolladores en general, que aportan código pero no tienen derechos de escritura sobre el repositorio. A menudo realizan tareas de revisión.
- Usuarios activos, que prueban la aplicación, informan sobre errores, crean documentación y enlazan el proyecto con los usuarios pasivos (entre otras actividades).
Procesos de desarrollo
El proceso de desarrollo de software libre puede resultar en muchas ocasiones poco formalizado en los proyectos, debido principalmente a la ausencia de mapas de ruta, asignaciones explícitas de trabajo o falta de priorización de las funcionalidades de la aplicación.
La organización del proyecto es una característica relevante para el funcionamiento y coordinación de la producción, aunque un cierto grado de duplicación de esfuerzos puede considerarse como un síntoma positivo de la relación e implicación de la comunidad en el proyecto.
Del mismo modo, el ciclo de evaluación y posterior aceptación de las contribuciones de los miembros de la comunidad al proyecto aporta información precisa sobre la salud de su funcionamiento. Por ejemplo, la refutación de una contribución puede demostrar una visión cohesionada y cualitativa del proyecto a largo plazo.
Fuente: UOC - Modelo de Negocio de Software Libre
No hay comentarios:
Publicar un comentario