Gestión de configuración del software
Uno de los aspectos fundamentales del software con respecto a otro tipo de productos de ingeniería es que es sabido que el software está en continuo cambio bien sea para evolucionar su funcionalidad o para reparar un determinado defecto, entre otros posibles escenarios de cambio. La gestión de configuración del software mediante la identificación y control de cambios permite garantizar la correcta ejecución del cambio e informar del cambio a los afectados.
Definiciones
editarSegún RAE[1]:
« | Acción y efecto de cambiar. Cambiar: Dejar una cosa o situación para tomar otra, y son estas situaciones cambiantes que desestabilizan el normal desarrollo del software, a veces haciendo que los plazos no se cumplan. | » |
Según Wikipedia[2]:
« | se denomina Gestión de la Configuración al conjunto de procesos destinados a asegurar la validez de todo producto obtenido durante cualquiera de las etapas del desarrollo de un Sistema de Información, a través del estricto control de los cambios realizados sobre los mismos y de la disponibilidad constante de una versión estable de cada elemento para toda persona involucrada en el citado desarrollo | » |
Según ITIL[3]:
« | es un proceso organizacional que trata de proporcionar un modelo lógico de la Infraestructura IT por la identificación, mantenimiento y verificación de TODOS los elementos de la configuración existentes | » |
Según Metrica v3[4]:
« | es una interfaz cuyo objetivo es mantener la integridad de los productos que se obtienen a lo largo del desarrollo de los sistemas de información, garantizando que no se realizan cambios incontrolados y que todos los participantes en el desarrollo del sistema disponen de la versión adecuada de los productos que manejan | » |
Según PMBOK[5]:
« | un subsistema del sistema de información de la gestión de proyectos en general. El sistema incluye el proceso para presentar los cambios propuestos, realizar el seguimiento de sistemas para la revisión y aprobación de los cambios propuestos, definir los niveles de aprobación para autorizar los cambios y proporcionar un método para validar los cambios aprobados | » |
Viendo todas estas definiciones podemos concluir que la Gestión de la Configuración es:
Proceso que tendrá lugar a lo largo del proyecto a desarrollar - esto es desde que se inicia el proyecto hasta que el software se deja de comercializar -, en el que se realizará un estudio con el fin de controlar los cambios acaecidos, así como aprobar dichos cambios y asegurar que los integrantes/participantes del proyecto disponen de las versiones adecuadas de los productos generados durante el proyecto.
Fases
editarEl proceso de Gestión de la Configuración tiene lugar durante toda la vida del proyecto y por ello se divide en una serie de fases las cuales estan asociadas a las distitnas partes o fases del proyecto.
- Gestión del Código Fuente: Se analiza la estructura del código fuente del proyecto, los roles, la plataforma donde es alojado el código, etc...
- Gestión de la Construcción: Se indica las herramientas utilizadas para la construcción del proyecto, cómo se utilizan, etc...
- Gestión de los Entregables: Qué entregables se contemplan en el proyecto y cómo se realiza su entrega. Estos son el propio código fuente, liberado como entregable con cada nueva versión, y la documentación que no sigue una política establecida más allá de su dependencia con el código fuente.
- Gestión del Despliegue: Como se realiza el despliegue, que herramientas se utiliza, cuando se realiza.
- Gestión de Incidencias y Depuración: Se explica el proceso de reporte de incidencias y cómo se realiza la depuración.
- Gestión de la Variabilidad
- Integración y Despliegue Continuos: A modo de facilitar las tareas de pruebas se recurre a herramientas de integración y despliegue continuo. Estas herramientas nos proporciona mecanismo para recopilar los distintos proyectos involucrados, dependencias, incorporar los cambios realizados, etc. Una vez reunido se construye el proyecto y ejecutan las pruebas incorporadas, si pasa las pruebas se puede publicar de manera automática o desplegar directamente en un servidor.
- Las Pruebas: Se describen los tipos de pruebas que se realizan en el proyecto y el procedimiento para ejecutarlas.
- Mapa de Herramientas: Se describen las herramientas necesarias para trabajar con el proyecto en las diferentes actividades de la Gestión de la Configuración, y la relación que tienen entre ellas.
Estándar IEEE
editar- IEEE 828: Plan de Gestión de la configuración de Software
- IEEE 1042: Guía para la Gestión de la configuración de Software
Conclusiones
editarLecciones relacionadas
editarReferencias
editar- Gestión de configuración de Software (Wikipedia)
- Apuntes de la asignatura Evolución y Gestión de la Configuración de la Universidad de Sevilla
- Análisis de la Gestión de la Configuración usada en el proyecto AOSP
Notas
editar- ↑ http://lema.rae.es/drae/srv/search?id=DDlhwl1eFDXX2PJFT4KI
- ↑ http://es.wikipedia.org/wiki/Gestión_de_la_configuración
- ↑ Fundamentos de la gestión de servicios de TI basada en ITIL V3. ITSMF-International, 2008.
- ↑ https://administracionelectronica.gob.es/pae_Home/dms/pae_Home/documentos/Documentacion/Metodologias-y-guias/Metricav3/METRICA_V3_Gestion_de_Configuracion.pdf
- ↑ Guía de los Fundamentos Para la Dirección de Proyectos (Guía del PMBOK®)–Quinta Edición