Seguimiento y control de cambios de software
La gestión de configuración de software ( SCM ), también conocida como gestión de cambios y configuración de software ( SCCM ), [1] es la práctica de ingeniería de software de seguimiento y control de cambios en un sistema de software ; parte del campo interdisciplinario más amplio de la gestión de configuración (CM). [2] SCM incluye el control de versiones y el establecimiento de líneas base .
Objetivos
Los objetivos del SCM incluyen: [ cita requerida ]
- Identificación de configuración: identificación de configuraciones, elementos de configuración y líneas base .
- Control de configuración: implementación de un proceso de cambio controlado . Esto se logra generalmente mediante la creación de un comité de control de cambios cuya función principal es aprobar o rechazar todas las solicitudes de cambio que se envían en relación con cualquier línea base.
- Contabilidad del estado de configuración: registro y generación de informes de toda la información necesaria sobre el estado del proceso de desarrollo.
- Auditoría de configuración: garantizar que las configuraciones contengan todas las partes previstas y sean sólidas con respecto a sus documentos de especificaciones, incluidos los requisitos, las especificaciones arquitectónicas y los manuales de usuario.
- Gestión de compilaciones : gestión del proceso y las herramientas utilizadas para las compilaciones.
- Gestión de procesos : Garantizar la adherencia al proceso de desarrollo de la organización.
- Gestión del entorno: gestión del software y hardware que alojan el sistema.
- Trabajo en equipo : Facilitar las interacciones del equipo relacionadas con el proceso.
- Seguimiento de defectos: garantizar que cada defecto tenga trazabilidad hasta su origen.
Con la introducción de la computación en la nube y DevOps, los propósitos de las herramientas de SCM se han fusionado en algunos casos. Las propias herramientas de SCM se han convertido en dispositivos virtuales que se pueden instanciar como máquinas virtuales y guardar con estado y versión. Las herramientas pueden modelar y gestionar recursos virtuales basados en la nube, incluidos dispositivos virtuales, unidades de almacenamiento y paquetes de software. Los roles y responsabilidades de los actores también se han fusionado y ahora los desarrolladores pueden instanciar dinámicamente servidores virtuales y recursos relacionados. [3]
Historia
La historia de la gestión de configuración de software (SCM) se remonta a la década de 1950, cuando CM (gestión de configuración), originalmente para el desarrollo de hardware y el control de producción, se estaba aplicando al desarrollo de software. El software primitivo tenía una huella física, como
tarjetas ,
cintas y otros medios. La primera gestión de configuración de software era una operación manual. Con los avances en el lenguaje y la complejidad,
la ingeniería de software , que involucra la gestión de configuración y otros métodos, se convirtió en una preocupación importante debido a cuestiones como el cronograma, el presupuesto y la calidad. Las lecciones prácticas, a lo largo de los años, habían llevado a la definición y el establecimiento de procedimientos y herramientas. Finalmente, las herramientas se convirtieron en sistemas para gestionar los cambios de software.
[4] Las prácticas de toda la industria se ofrecieron como soluciones, ya sea de manera abierta o propietaria (como
el Sistema de control de revisiones ). Con el uso creciente de las computadoras, surgieron sistemas que manejaban un alcance más amplio, incluida
la gestión de requisitos , las alternativas de diseño, el control de calidad y más; las herramientas posteriores siguieron las pautas de las organizaciones, como el
Modelo de madurez de capacidad del
Instituto de ingeniería de software .
Véase también
Referencias
- ^ Investigación de Gartner y Forrester
- ^ Roger S. Pressman (2009). Ingeniería de software: un enfoque práctico (7.ª edición internacional). Nueva York: McGraw-Hill.
- ^ Amies, A; Peddle S; Pan TM; Zou PX (5 de junio de 2012). "Desarrollar aplicaciones en la nube con herramientas Rational". IBM DeveloperWorks . IBM.
- ^ "1988 "Una guía para comprender la gestión de la configuración en sistemas confiables" Sistema Nacional de Seguridad Informática (a través de Google)
Lectura adicional
- 828-2012 Estándar IEEE para la gestión de la configuración en sistemas e ingeniería de software . 2012. doi :10.1109/IEEESTD.2012.6170935. ISBN 978-0-7381-7232-3.
- Aiello, R. (2010). Mejores prácticas de gestión de configuración: métodos prácticos que funcionan en el mundo real (1.ª ed.). Addison-Wesley. ISBN 0-321-68586-5 .
- Babich, WA (1986). Gestión de configuración de software, coordinación para la productividad del equipo . Primera edición. Boston: Addison-Wesley
- Berczuk, Appleton; (2003). Patrones de gestión de configuración de software: trabajo en equipo eficaz, integración práctica (1.ª ed.). Addison-Wesley. ISBN 0-201-74117-2 .
- Bersoff, EH (1997). Elementos de la gestión de configuración de software. IEEE Computer Society Press, Los Alamitos, CA, 1-32
- Dennis, A., Wixom, BH y Tegarden, D. (2002). Análisis y diseño de sistemas: un enfoque orientado a objetos con UML. Hoboken, Nueva York: John Wiley & Sons, Inc.
- Departamento de Defensa, EE. UU. (2001). Manual militar: Guía de gestión de configuración (rev. A) (MIL-HDBK-61A) . Recuperado el 5 de enero de 2010 de http://www.everyspec.com/MIL-HDBK/MIL-HDBK-0001-0099/MIL-HDBK-61_11531/
- Futrell, RT et al. (2002). Gestión de proyectos de software de calidad. 1.ª edición. Prentice-Hall.
- Organización Internacional de Normalización (2003). ISO 10007: Sistemas de gestión de la calidad – Directrices para la gestión de la configuración .
- Saeki M. (2003). Incorporación de métricas en los métodos de desarrollo de sistemas de información: una aplicación de la técnica de ingeniería de métodos. CAiSE 2003, 374–389.
- Scott, JA y Nisse, D. (2001). Gestión de configuración de software. En: Guide to Software Engineering Body of Knowledge . Recuperado el 5 de enero de 2010 de http://www.computer.org/portal/web/swebok/htmlformat
- Paul M. Duvall, Steve Matyas y Andrew Glover (2007). Integración continua: mejora de la calidad del software y reducción del riesgo . (1.ª ed.). Addison-Wesley Professional. ISBN 0-321-33638-0 .
Enlaces externos
- SCM e ISO 9001 por Robert Bamford y William Deibler, SSQC
- Casos de uso e implementación de la gestión del ciclo de vida de las aplicaciones
- Estrategias de desarrollo paralelo para la gestión de la configuración de software