Feature Requests

Desarrollo Financiado (Funded Development)

Ahora que existe Bacula Systems SA es posible el desarrollo de proyectos financiados. Se trata de una relación contractual donde los desarrolladores de Bacula Systems acuerdan implementar un proyecto específico dentro de un marco de tiempo determinado. Todo el código escrito por los desarrolladores de Bacula Systems va al repositorio de la versión comunitaria de Bacula, así queda disponible para el uso de todos.

Desarrollo comunitario (Community Development)

Si no está interesado en financiar un proyecto, de todas formas puede solicitar alguna característica nueva para que sea implementada (Incluso puede enviar su propio parche o patch).

Antes, los usuarios solicitaban alguna característica por email. Nosotros las tomábamos y publicábamos una lista para que los usuarios votaran cuando se lanzaba una versión nueva.

Ahora que el proyecto Bacula creció, este proceso se formalizó un poquito más. El cambio principal es para los usuarios, que ahora deben pensar detenidamente lo que quieren y realizar la petición en un formulario. Abajo se muestra un formulario vacío junto con uno lleno de ejemplo. Una copia textual del formulario se puede encontrar en archivo projects en el directorio principal de la distribución de Bacula. Ese archivo tiene, también, una lista de los proyectos aprobados junto con su estado.

El mejor momento para enviar una solicitud es justo después de un lanzamiento de Bacula, momento en el cual solicitamos oficialmente el listado de características para la siguiente versión. El peor momento para enviar una solicitud es justo antes de un lanzamiento (estamos muy ocupados en ese momento). Para enviar el formulario, llénelo y envíelo tanto a la lista de bacula-users como de bacula-devel, que allí seráa discutido abiertamente.

Una vez que se ha discutido adecuadamente las nuevas características solicitadas, el Líder del Proyecto Bacula (Kern) podrá aprobarlas, rechazarlas o, posiblemente, solicitar alguna modificación. Si planea implementar una funcionalidad en particular o donar fondos para que se la implemente, es importante tener esto en cuenta. De otra forma, aunque se haya aprobado la implementación de la funcionalidad, puede que pase un tiempo largo hasta que alguien la implemente.

Una vez que la nueva funcionalidad se aprueba, la añadiremos al archivo de proyectos, que contiene un listado de todas las solicitudes abiertas. Este archivo se actualiza de vez en cuando.

La lista actual de proyectos (aunque quizás algo desactualizada) se puede encontrar también en el sitio web, cliqueando en Proyectos, en el menú de la izquierda.

Formulario para solicitar una característica o funcionalidad nueva (Feature Request Form)

Item n:   Breve descripción en una linea ...
  Origin: Nombre o email del solicitante.
  Date:   Fecha de envío (ej.: 28 de octubre de 2005)
  Status:

  What:   Explicación más detallada ...

  Why:    Por qué es importante ...

  Notes:  Comentarios adicionales ...

Formulario de ejemplo

Nota: Lo más probable es que el formulario tenga que estar escrito en inglés, así que dejo el texto original.

Item 1:   Implementar la migración de un job, que permita mover 
          los datos de un dispositivo a otro.
  Date:   28 de octubre de 2005
  Origin: Sponsored by Riege Sofware International GmbH. Contact:
          Daniel Holtkamp 
  Status: Partially coded in 1.37 -- much more to do. Assigned to
          Kern.

  What:   The ability to copy, move, or archive data that is on a
          device to another device is very important.

  Why:    An ISP might want to backup to disk, but after 30 days
          migrate the data to tape backup and delete it from
          disk.  Bacula should be able to handle this
          automatically.  It needs to know what was put where,
          and when, and what to migrate -- it is a bit like
          retention periods.  Doing so would allow space to be
          freed up for current backups while maintaining older
          data on tape drives.

  Notes:  Migration could be triggered by:
           Number of Jobs
           Number of Volumes
           Age of Jobs
           Highwater size (keep total size)
           Lowwater mark