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 .
^ 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. ISBN978-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