Sitios de soporte al desarrollo en Software libre

De wiki EOI de documentación docente
Saltar a: navegación, buscar


Estado de desarrollo de la sección: completo completo

Wikilibro: Software libre > Capítulo 7: Entornos y tecnologías de desarrollo

Sección 9

Sitios de soporte al desarrollo
Los sitios de soporte al desarrollo proporcionan, de manera más o menos integrada, todos los servicios descritos anteriormente, junto con algunos adicionales que permiten la búsqueda de proyectos por categorías y su clasificación según parámetros sencillos de actividad. Ello libera al desarrollador de montarse y administrarse toda una infraestructura de colaboración y concentrarse en su proyecto.

SourceForge

Uno de los primeros en establecerse este tipo de servicios y el más popular es SourceForge [sourceforge], gestionado por OSDN (Open Software Development Network, subsidiaria de VA Software), que albergaba en marzo de 2007 más de 144.000 proyectos. Está estructurado en torno a un conjunto de programas del mismo nombre, que hasta la versión 2 fue software libre.

SourceForge, como prototipo de estos sitios. ofrece una interfaz web o portal global de entrada (http://sourceforge.net/) y un subportal por proyecto (http://proyecto.sourceforge.net). En la interfaz global podemos ver noticias, anuncios, enlaces y una invitación a hacerse miembro o entrar, si ya se es. Para colaborar en el sitio, conviene hacerse miembro, siendo imprescindible hacerlo se quiere crear un proyecto nuevo o participar en uno ya existente. Para ser espectador no es necesario, y como tal podemos ver cuales son los proyectos que experimentan un desarrollo más activo o son descargados con más frecuencia; podemos buscar proyectos por categorías o dando una palabra de su descripción, y se nos mostrarán ordenados por su nivel de actividad. Dentro de cada proyecto, podemos ver su descripción, estado (alfa, beta, producción), descriptores (lenguaje, sistema operativo, temática, tipo de usuarios, idioma, licencia), errores y temas pendientes o subsanados, detalles de su actividad en el tiempo, o descargarlo. También podemos participar en foros o informar de errores, incluso de forma anónima, lo cual no es muy conveniente (por ejemplo, no nos pueden responder).

Cualquier usuario autenticado puede solicitar dar de alta un proyecto, que es admitido por los administradores del sitio si cumple las políticas del mismo, y que en el caso de SourceForge son bastante liberales. Una vez autorizado, el creador puede dar de alta a otros usuarios registrados como administradores adicionales o como desarrolladores, con acceso a la modificación de fuentes. Tras la autorización, no hay muchos más controles sobre el proyecto, lo que ocasiona la existencia de muchos proyectos muertos. Esto no confunde demasiado a los usuarios porque los proyectos con baja o nula actividad apenas son visibles, ya que se muestran ordenados por ella en las búsquedas. Estos proyectos corren el riesgo de ser eliminados por los propietarios del sitio. Los servicios que SourceForge proporciona a un proyecto, y que podríamos esperar de cualquier servicio similar, son:

  • Albergue para las páginas web del portal del proyecto, en la dirección proyecto.sourceforge.net donde se muestra el mismo al público. Estas páginas pueden ser estáticas o dinámicas (con CGI o PHP), en cuyo caso pueden hacer uso de una base de datos (MySQL). Se introducen directamente a través de órdenes de copia remota y pueden manipularse por medio de sesiones interactivas de terminal remoto (ssh).
  • Opcionalmente un servidor virtual que responda a direcciones de un dominio obtenido aparte, como www.proyecto.org o cvs.proyecto.org.
  • Tantos foros web y/o listas de correo como sean necesarios, según criterio de un administrador.
  • Un servicio de noticias, donde los administradores anuncian novedades sobre el proyecto.
  • Rastreadores (trackers), para informe y seguimiento de errores, peticiones de soporte, peticiones de mejoras o integración de parches. Los administradores dan una prioridad al asunto y asignan su solución a un desarrollador.
  • Gestores de tareas. Similar a un rastreador, permite definir subproyectos con una serie de tareas. Estas tareas, además de una prioridad tienen un plazo. Los desarrolladores a los que se les asignan pueden manifestar de vez en cuando un porcentaje de realización de la tarea.
  • Un CVS o un Subversion con derechos iniciales de acceso para todos los desarrolladores.
  • Servicio de subida y bajada de paquetes de software. Utilizándolo se tiene un registro de las versiones introducidas y se posibilita que los interesados reciban un aviso cuando esto suceda. Además la subida implica la creación de varias réplicas en todo el mundo, lo que facilita la distribución.
  • Servicio de publicación de documentos en HTML. Cualquiera puede registrarlos, pero sólo después de la aprobación por un administrador serán visibles.
  • Copia de seguridad para recuperación de desastres, como rotura de disco, no de errores de usuario, como borrar un fichero accidentalmente.
  • Mecanismo integrado de donaciones a usuarios, proyectos y al propio SourceForge.

Un usuario autenticado tiene una página personal donde se reúne toda la información de su interés, como proyectos a los que está asociado, temas o tareas que tiene pendientes, así como foros y ficheros que ha declarado que quiere vigilar. Además, para que no tenga que estar pendiente de su página personal, un usuario recibirá por correo electrónico notificaciones lo que quiere vigilar.


Herederos de SourceForge

En 2001 VA Software estuvo a punto de quebrar, en plena crisis de las puntocom. Entonces anunció una nueva versión de su software SourceForge con licencia no libre, en un intento de procurarse una fuente de ingresos, vendiéndolo a empresas para sus desarrollos internos. Así mismo eliminó mecanismos que permitían volcar un proyecto para llevarlo a otro sitio. Ambos hechos fueron vistos como una amenaza por la que los miles de proyectos alojados en SourceForge quedarían atrapados en manos de una sola empresa que utilizaría la plataforma para demostrar software no libre. Ante eso y la posibilidad de que el sitio cerrara se desarrollaron hijos de la versión libre y se abrieron portales basados en ellas, entre los que destacan Savannah[savannah], dedicado al proyecto GNU y a otros programas con licencia tipo copyleft, o BerliOS[berlios], concebido como punto de encuentro entre desarrolladores de software libre y empresas. Sin embargo esto es sólo un paso con vistas a desarrollar una plataforma distribuida y replicada, donde nadie tenga control absoluto de los proyectos[fsfesavannah].

Otro ejemplo de sistema de gestión de proyectos de software libre es Launchpad[launchpad], utilizado por Ubuntu para el desarrollo de cada versión de la distribución. Launchpad no es un repositorio de código fuente, sino que su propósito es ofrecer soporte para seguimiento de código, incidencias y traducciones. Para ello utiliza la ya mencionada herramienta Malone, que permite redirigir las incidencias a cada repositorio de código de los módulos afectados. Launchpad no es software libre, y su código no está derivado del de SourceForge.


Otros sitios y programas

Naturalmente se han desarrollado y siguen desarrollándose sistemas de colaboración y algunas empresas hacen negocio del mantenimiento y servicio de esos sitios. Por ejemplo, el proyecto Tigris[tigris], que sólo mantiene proyectos de ingeniería de software libre, usa un portal de colaboración (SourceCast) mantenido por una empresa servicios (CollabNet), que también mantiene sitios de proyectos individuales, como OpenOffice. Nuevos sitios vienen adoptando nuevo software libre. como GForce[gforge], utilizado por el proyecto Debian[alioth]. Pueden verse una comparación exhaustiva de muchos sitios en [fosphost].

< Sección anterior
Soporte para otras arquitecturas