Gestion de Configuración del Software

¿Por qué el cambio?

Uno de los principales motivos por los cuales se produce el cambio en la gestión y configuración del software es para mejorar la eficiencia y la calidad de los procesos. Los procesos de gestión y configuración del software pueden ser complejos y difíciles de manejar, y a medida que las empresas y organizaciones crecen y evolucionan, estos procesos pueden volverse obsoletos o inadecuados para las nuevas necesidades.

Otro motivo común para el cambio en la gestión y configuración del software es la necesidad de mantener la seguridad y la protección de los datos de la empresa. A medida que aumenta la cantidad de datos y sistemas que se utilizan, también lo hace el riesgo de brechas de seguridad y violaciones de datos. Por lo tanto, es necesario actualizar constantemente los procesos y herramientas de gestión y configuración del software para garantizar que los datos estén protegidos y se cumplan los requisitos de cumplimiento normativo.

Mantenimiento vs GCS

Mantenimiento
Refiere al conjunto de actividades realizadas para mantener o mejorar la funcionalidad y la calidad del software después de que ha sido entregado y puesto en uso. Estas actividades pueden incluir corrección de errores, mejora del rendimiento, adición de nuevas funcionalidades, etc.

Se enfoca en mejorar la funcionalidad y la calidad del software después de que ha sido entregado

GCS
Proceso de identificar, organizar y controlar los cambios en el software y en los artefactos relacionados (documentación, scripts, configuraciones, etc.). La GCS se enfoca en asegurar que el software se construya y entregue de manera consistente y controlada, y que cualquier cambio en el software sea rastreable y reversible.

Se enfoca en asegurar que el software se construya y entregue de manera consistente y controlada, y que los cambios en el software sean rastreables y reversibles.

Versión vs Liberacion del Producto Software

Versión
Es una iteración del software que generalmente tiene un número de versión asociado, que puede incluir nuevas funcionalidades, mejoras, correcciones de errores y cambios menores en la interfaz de usuario. Las nuevas versiones de un software suelen ser lanzadas para mejorar y añadir características al producto existente.

Se refiere a una iteración del producto que incluye cambios y mejoras en su funcionalidad

Liberación del Software
Es una versión del producto que se considera lo suficientemente estable y funcional para ser entregada a los clientes o usuarios finales. Una liberación se realiza después de que se han completado pruebas rigurosas y se han solucionado los problemas críticos que se han identificado durante las pruebas. Una liberación también puede incluir documentación actualizada, guías de usuario y otros recursos que ayuden al usuario final a utilizar el software de manera efectiva.

Se refiere a una versión específica que ha pasado las pruebas y es lo suficientemente estable y funcional para ser entregada a los clientes o usuarios finales.

Línea Base

En la gestión de configuración del software, una línea base (o "baseline" en inglés) es una referencia establecida y fija que representa un estado específico y controlado de los elementos de configuración de un proyecto de software en un momento dado. La línea base sirve como punto de referencia para el seguimiento y control de los cambios realizados durante el ciclo de vida del software.

Imaginemos un proyecto de desarrollo de software para una aplicación móvil de gestión de tareas. En este caso, un ejemplo de una línea base en la gestión de configuración del software podría ser:

    Línea Base 1.0:

  • Archivos de código fuente de la aplicación (todos los módulos y componentes).
  • Documentos de diseño de la interfaz de usuario y la arquitectura del sistema.
  • Archivos de configuración de la base de datos y conexiones.
  • Bibliotecas de terceros utilizadas en el proyecto.
  • Archivos de recursos multimedia (imágenes, iconos, etc.).
  • Documentación técnica relacionada con la versión 1.0.

En este ejemplo, la Línea Base 1.0 representa la versión inicial y estable de la aplicación móvil de gestión de tareas. Los elementos de configuración mencionados, como los archivos de código fuente, documentos de diseño y configuración, forman parte de la línea base y se consideran como el estado de referencia para el proyecto en ese momento.

A partir de esta línea base, cualquier cambio o evolución en el software será gestionado mediante el control de cambios y el establecimiento de nuevas líneas bases. Por ejemplo, si se requiere añadir una nueva funcionalidad a la aplicación, se realizarán cambios en los archivos de código fuente y otros elementos pertinentes. Estos cambios serán gestionados, evaluados y, una vez aprobados, se establecerá una nueva línea base (por ejemplo, Línea Base 2.0) que incluirá los elementos actualizados y reflejará el nuevo estado del software.

La línea base proporciona un punto de referencia claro y estable para el desarrollo, seguimiento y control de los cambios en el software a lo largo del ciclo de vida del proyecto. Además, permite la trazabilidad y auditoría de los cambios realizados, facilita la reproducibilidad y garantiza la consistencia y la integridad del software en cada versión.