Nace GÉANT, la herramienta europea para la selección, declaración, cumplimiento y tareas asociadas de licencias

  • NORMATIVAS

Interoperable-Europe

GÉANT es el resultado de la colaboración de las Redes Nacionales Europeas de Investigación y Educación (NREN) y tiene como objetivo ofrecer un ecosistema de información de infraestructura y servicios para promover la investigación, la educación y la innovación a escala global.

Las herramientas de software GÉANT forman una pila de tecnología que respalda el ciclo de vida completo del desarrollo de software, desde la gestión de requisitos, pasando por la gestión de problemas/tareas, hasta el repositorio de código fuente y a través del servicio de implementación e integración continua hasta el repositorio de binarios y la implementación de producción. La pila incluye Jira, Bamboo, Bitbucket, Sonarqube, Artifactory, QALab, Gitlab y otras herramientas. 

En cuanto a las licencias de código abierto, GÉANT proporciona una guía de gestión y selección de licencias de software, que destaca la importancia y los méritos de las licencias de software de código abierto, las condiciones de OSS y muchos otros aspectos. Se hace cargo de la cuadrícula de análisis Joinup Licensing Assistant (JLA), que, cuando existe elección de licencia, facilita enormemente la selección de la licencia más adecuada alineada con la estrategia de los desarrolladores y la comunidad de usuarios (lo que, según la licencia, un licenciatario puede, debe o no puede hacer; el nivel de compatibilidad, soporte y contexto legal).

Si bien se permiten todas las licencias certificadas OSI, la política de derechos de propiedad intelectual de GÉANT generalmente recomienda encarecidamente el uso de licencias permisivas. Suponemos que esta recomendación se debe al deseo de minimizar los riesgos de incompatibilidad y ofrecer la mayor posibilidad posible de reutilizar y combinar el código fuente cubierto. Sin embargo, para respetar el principio de que el código fuente pagado con dinero público debe seguir siendo público (incluso en el caso de obras derivadas), las licencias permisivas no ofrecen ninguna garantía. En este punto, la guía ilustra el lugar particular de la licencia EUPL-1.2, que tiene la ventaja “copyleft” de preservar el carácter público del código cubierto, al tiempo que ofrece la máxima compatibilidad con otras licencias, sin carácter viral para combinar y vincular libremente. componentes con licencia diferente, pero con cobertura de todos los modos de distribución, incluida la distribución remota (SaaS).

Importancia del software de código abierto y las licencias

Estos son los factores clave relacionados con el uso de software de código abierto (OSS):

- El trabajo depende cada vez más del OSS. Los desarrolladores, las Redes Nacionales de Investigación y Educación (NREN) y GÉANT utilizan, adaptan, crean y respaldan ampliamente y cada vez más el OSS.
- En un contexto más amplio, las comunidades de TIC e I+E valoran el OSS por su rentabilidad, transparencia, colaboración, personalización, independencia de los proveedores, longevidad, seguridad, valor educativo, compatibilidad, valores éticos y filosóficos, accesibilidad y más (detallado a continuación).
- Las licencias OSS garantizan que el software bajo licencia siga siendo gratuito, evitan la apropiación y ayudan a evitar el abandono.
- Declarar una licencia de software hace que sea más fácil seleccionar qué otros códigos y bibliotecas se pueden incorporar al proyecto y cómo otros pueden usar, adaptar y contribuir al software.
- Las consideraciones sobre licencias son fundamentales cuando se distribuye o se comparte software, ya que las licencias OSS vienen con condiciones específicas.
- La declaración de una licencia y el cumplimiento de la licencia también son esenciales por razones legales y de usabilidad del software, lo que garantiza una mayor transparencia y colaboración.
- Cumplir con los requisitos de las licencias aplicadas (incluidas las de las dependencias) mejora la transparencia del proyecto de software dentro de la comunidad en general.

El software de código abierto es importante en diversos ámbitos, incluidos la tecnología, la investigación y la educación, las empresas y el gobierno. Desempeña un papel crucial en la promoción de la asequibilidad, la transparencia, la colaboración y la innovación tecnológica. Permite a personas y organizaciones tomar el control de sus soluciones de software, adaptarlas a sus necesidades y contribuir a una comunidad global de desarrolladores y usuarios.

Rentable: el software de código abierto suele ser de uso gratuito, lo que reduce significativamente los costos de adquisición de software y licencias para individuos, empresas y organizaciones. Esta rentabilidad es especialmente crítica para las empresas más pequeñas, las instituciones educativas y los gobiernos con restricciones presupuestarias.
Transparencia: el software de código abierto se basa en procesos de desarrollo abiertos y transparentes. Cualquiera puede revisar el código fuente para comprender cómo funciona el software, lo que mejora la confianza y la seguridad. Esta transparencia es particularmente importante para el software utilizado en aplicaciones críticas, como la ciberseguridad y la atención médica.
Colaboración comunitaria: los proyectos de código abierto suelen tener comunidades grandes y diversas de desarrolladores y usuarios que colaboran para mejorar el software. Este enfoque colaborativo da como resultado rápidas correcciones de errores, actualizaciones y mejoras de funciones. También fomenta la innovación y el intercambio de conocimientos.
Personalización: los usuarios de software de código abierto tienen la libertad de modificar y personalizar el código para adaptarlo a sus necesidades específicas. Esta flexibilidad permite a las empresas y a los individuos adaptar el software a sus requisitos únicos, dándoles una ventaja competitiva.
Independencia del proveedor : con el software propietario, los usuarios a menudo están atrapados en el ecosistema de un único proveedor. El software de código abierto reduce la dependencia de un proveedor, ya que los usuarios tienen acceso al código fuente y pueden cambiar de proveedor de servicios o modificar el software según sea necesario.
Longevidad: el proveedor puede suspender el software propietario, dejando a los usuarios sin soporte ni actualizaciones. El software de código abierto tiende a tener una vida útil más larga, ya que la comunidad puede hacerse cargo del mantenimiento y el desarrollo si el proyecto original pierde impulso.
Seguridad: si bien el software de código abierto no es inmune a las vulnerabilidades, su transparencia permite que una comunidad global audite continuamente el código en busca de fallas de seguridad. Cuando se descubren vulnerabilidades, se pueden solucionar rápidamente. Por el contrario, la seguridad del software propietario depende únicamente de los recursos y prioridades del proveedor.
Educación y aprendizaje: el software de código abierto fomenta el aprendizaje y el desarrollo de habilidades. Los estudiantes y aspirantes a desarrolladores pueden estudiar, modificar y contribuir a proyectos de código abierto, adquiriendo experiencia práctica y exposición al desarrollo de software del mundo real.
Compatibilidad: los estándares abiertos y el software de código abierto a menudo van de la mano, lo que promueve la compatibilidad y la interoperabilidad entre diferentes software y sistemas y reduce las barreras al intercambio de datos y la colaboración.
Valores éticos y filosóficos: el movimiento de código abierto tiene sus raíces en valores como la transparencia, la colaboración y la idea de que el software debe ser un bien público. Muchas personas y organizaciones eligen software de código abierto para alinearse con estos valores y principios.
Accesibilidad global: el software de código abierto es accesible para usuarios de todo el mundo, independientemente de su ubicación o situación económica. Esta accesibilidad promueve la inclusión digital y nivela las condiciones para todos los usuarios.

Además de estos factores generales relacionados con el OSS, existen varios requisitos y recomendaciones aplicables en el contexto de GÉANT, algunos de los cuales están implícitos en su Política de DPI:

- Cada proyecto de software de GÉANT debe seleccionar y aplicar una licencia OSS adecuada que se ajuste a las necesidades del equipo de desarrollo de software y a las de la comunidad de usuarios.
- Inicie el proceso de concesión de licencia con antelación para que sea más fácil configurar una licencia y mantener el cumplimiento.
- La licencia elegida debe ser compatible con las licencias de todos los componentes utilizados para que se eliminen los riesgos de propiedad intelectual y de licencia en GÉANT.
- Es preferible colocar el código fuente OSS en un repositorio de código público y versionado con una indicación clara de la licencia utilizada .
- La información de derechos de autor debe indicar la participación y el apoyo de GÉANT. Esta información subraya que el trabajo se realizó dentro del proyecto GÉANT o recibió apoyo del mismo e identifica quién fue el autor del software producido.
- Evaluar los componentes y el software utilizados aplicando listas de verificación comunes de calidad y confiabilidad del software, para garantizar que los componentes utilizados y el software producido sean confiables. 
- Usar servicios de composición de software y análisis de licencias (SCA y SLA) que realicen revisiones y auditorías relacionadas diseñadas para ayudar a determinar la licencia OSS adecuada para el software y garantizar el cumplimiento de la licencia. Identificar y abordar las vulnerabilidades en el software que puede detectar la SCA mejora su calidad y beneficia a la comunidad más amplia a la que contribuye su equipo.
- Configurar flujos de trabajo de contribución, comunicación y gobernanza que garanticen el cumplimiento de la licencia del software.
- Adherirse a los estándares de la comunidad de dominio en desarrollo de software, concesión de licencias, suministro de metadatos sobre software, documentación, registro en registros comunitarios relevantes, citación y promoción de software.
- En su caso, habilitar y asesorar sobre la citación y referenciación de software en artículos científicos, presentaciones, tutoriales, etc., asegurando que estas referencias sean inequívocas y permanentes.