Está en la página 1de 10

Tema

Ensayo Gestión de Configuración de Software

Materia

ISO600 - ADMINISTRACION DE CONFIGURACION

Estudiante

Adonis E. Angomas Perez (A00102879)

Profesor

De La Cruz Gonzalez, Omar


Introducción

La gestión de la configuración se ha expandido al ámbito del desarrollo y la implementación de


software, donde se la conoce como gestión de configuración de software (SCM) o gestión de
configuración unificada. Si bien se basa en una administración de configuración más amplia, SCM
se enfoca en la administración de los muchos artefactos y componentes involucrados en el
desarrollo de software, incluido el código fuente, módulos, bibliotecas y API, junto con
elementos relacionados como documentación, solicitudes de cambio y tickets de problemas.
La gestión de la configuración es el conjunto de procesos destinados a asegurar la calidad de
todo producto obtenido durante cualquiera de las etapas del desarrollo de un sistema de
información (SI), 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.

Estos dos elementos, el control de cambios y control de versiones de todos los elementos del SI,
facilitan también el mantenimiento de los sistemas al proporcionar una imagen detallada del
sistema en cada etapa del desarrollo. La gestión de la configuración se realiza durante todas las
fases del desarrollo de un sistema de información, incluyendo el mantenimiento y control de
cambios, una vez realizada la puesta en producción.

Gestión de Configuración de Software (Software Configuration Management, SCM) es una


especialización de la gestión de configuración a todas las actividades en el sector del desarrollo
de software.

SCM trata y controla:

• La elaboración de código fuente por varios desarrolladores simultáneamente.


• El seguimiento del estado de las fases del desarrollo de software (versiones) y sus
cambios (control de versiones).
• La conducción de la integración de las partes del software en un solo producto de
software.

Para la realización de la SCM hay diferentes herramientas. Pero herramientas que pretenden
ofrecer una solución total al problema, a menudo no cumplen con los requisitos técnicos como:

• Apoyo a diferentes plataformas.


• Iniciar el proceso de build.
• Conexión a los bancos de datos existentes.
• Integración a la organización existente.

SCM se puede utilizar en toda la pila de software. Proporciona estructura y estandarización


adicionales al proceso de desarrollo de software, lo que puede ayudar a las organizaciones a
establecer líneas de base, mejorar y organizar informes, administrar cambios y supervisar los
recursos asignados a un proyecto de desarrollo. SCM está codificado en estándares como IEEE
828, que se actualizó en 2012.

Las organizaciones con frecuencia emprenden múltiples proyectos, cada uno de los cuales
involucra una miríada de componentes y múltiples desarrolladores o equipos. Sin una forma
coherente de poner orden en el proceso, la creación y prueba de software se convertiría en un
caos. Cuando varios desarrolladores trabajan en el mismo código fuente al mismo tiempo, los
diversos cambios no se integrarán bien y el software esencialmente se romperá. Para evitar ese
resultado, SCM crea múltiples líneas de desarrollo y reconcilia cada línea en una fuente final
para una compilación, lo que permite que muchos desarrolladores trabajen en el mismo código
simultáneamente.
Gestión de la configuración en DevOps

La gestión de la configuración es fundamental para los paradigmas de desarrollo de software


rápidos y colaborativos como DevOps. Con CM, los desarrolladores de software pueden crear,
probar e implementar compilaciones con una supervisión mínima de TI.

Los componentes deben reunirse e integrarse en una compilación, y cada compilación


resultante también lleva designaciones de versión únicas antes de ser probadas e
implementadas. La administración de la configuración rastrea los componentes y asegura que
una compilación deseada use solo ciertos componentes.

Además, cada compilación debe probarse a fondo y se puede emplear la gestión de la


configuración para especificar las herramientas y los archivos de prueba necesarios para validar
una compilación determinada. Cuando se combinan con la automatización, las técnicas de CM
pueden acelerar los procesos de prueba y lanzamiento.

Herramientas de gestión de la configuración

Se encuentra disponible una amplia gama de herramientas para abordar las tareas de CM, que
incluyen:

• Descubrimiento. La herramienta detecta hardware y software presentes dentro del


alcance de la gestión, como el centro de datos. Recopila información relevante sobre el
CI e ingresa esa información en una base de datos.

• Estados de configuración. La herramienta establece y aplica los estados de


configuración deseados para los CI de hardware o software seleccionados. Por lo
general, esto se logra mediante políticas y automatización. Las desviaciones de un
estado deseado (línea de base) se alertan y registran, lo que permite a los
administradores investigar y remediar los intentos de cambio no autorizados.

• Control de versiones. Las herramientas garantizan que se implementen o compilen


versiones o componentes de software específicos. En el desarrollo de software, el
control de versiones asegura que una compilación se ensambla a partir de componentes
específicos.

• Cambio de control. La herramienta controla la configuración e implementa un proceso


que coordina, autoriza, documenta y reporta cambios autorizados dentro del ámbito de
gestión.

• Revisión de cuentas. La herramienta escanea el entorno, valida que las configuraciones


actuales estén en su lugar, identifica e informa cualquier dependencia y garantiza que
el entorno general esté configurado como se esperaba.
Tareas en el proceso SCM

• Identificación de configuración
• Líneas base
• Cambio de control
• Contabilidad de estado de configuración
• Auditorías y revisiones de configuración

Identificación de configuración

La identificación de la configuración es un método para determinar el alcance del sistema de


software. Con la ayuda de este paso, puede administrar o controlar algo incluso si no sabe qué
es. Es una descripción que contiene el tipo CSCI (elemento de configuración del software
informático), un identificador de proyecto e información de versión.

Actividades durante este proceso:

• Identificación de elementos de configuración como módulos de código fuente, caso de


prueba y especificación de requisitos.
• Identificación de cada CSCI en el repositorio de SCM, utilizando un enfoque orientado a
objetos
• El proceso comienza con objetos básicos que se agrupan en objetos agregados. Detalles
de qué, por qué, cuándo y quién realiza los cambios en la prueba
• Cada objeto tiene sus propias características que identifican su nombre que es explícito
para todos los demás objetos.
• Lista de recursos necesarios como el documento, el archivo, las herramientas, etc.

Base

Una línea de base es una versión formalmente aceptada de un elemento de configuración de


software. Se designa y fija en un momento específico mientras se lleva a cabo el proceso de
SCM. Solo se puede cambiar a través de procedimientos formales de control de cambios.

Actividades durante este proceso:

• Facilitar la construcción de varias versiones de una aplicación.


• Definición y determinación de mecanismos para gestionar varias versiones de estos
productos de trabajo.
• La línea de base funcional corresponde a los requisitos del sistema revisados
• Las líneas de base ampliamente utilizadas incluyen líneas de base funcionales, de
desarrollo y de productos
• En palabras simples, línea de base significa listo para su lanzamiento.
Cambio de control

El control de cambios es un método de procedimiento que garantiza la calidad y la coherencia


cuando se realizan cambios en el objeto de configuración. En este paso, la solicitud de cambio
se envía al administrador de configuración de software.

Actividades durante este proceso:

• Controle los cambios ad-hoc para crear un entorno de desarrollo de software estable.
Los cambios se confirman en el repositorio.
• La solicitud se verificará según el mérito técnico, los posibles efectos secundarios y el
impacto general en otros objetos de configuración.
• Gestiona los cambios y hace que los elementos de configuración estén disponibles
durante el ciclo de vida del software.

Contabilidad del estado de configuración

La contabilidad del estado de configuración realiza un seguimiento de cada versión durante el


proceso de SCM. Esta etapa consiste en hacer un seguimiento de lo que tiene cada versión y los
cambios que llevan a esta versión.

Actividades durante este proceso:

• Mantiene un registro de todos los cambios realizados en la línea de base anterior para
llegar a una nueva línea de base
• Identifique todos los elementos para definir la configuración del software
• Supervisar el estado de las solicitudes de cambio
• Listado completo de todos los cambios desde la última línea base
• Permite el seguimiento del progreso a la siguiente línea de base
• Permite verificar lanzamientos/versiones anteriores que se extraerán para realizar
pruebas

Auditorías y revisiones de configuración

Las auditorías de configuración de software verifican que todo el producto de software satisfaga
las necesidades básicas. Asegura que lo que se construye es lo que se entrega.

Actividades durante este proceso:

• Los auditores llevan a cabo la auditoría de configuración al verificar que se sigan los
procesos definidos y garantizar que se cumplan los objetivos de SCM.
• Para verificar el cumplimiento de los estándares de control de configuración. auditar y
reportar los cambios realizados
• Las auditorías de SCM también aseguran que se mantenga la trazabilidad durante el
proceso.
• Garantiza que los cambios realizados en una línea de base cumplan con los informes de
estado de configuración
• Validación de integridad y consistencia.
Participante del proceso SCM

Los siguientes son los participantes clave en SCM:

1. Administrador de configuración:

• Configuration Manager es el jefe responsable de identificar los elementos de


configuración.
• CM se asegura de que el equipo siga el proceso de SCM
• Él/Ella necesita aprobar o rechazar solicitudes de cambio

2. Desarrollador

• El desarrollador necesita cambiar el código según las actividades de desarrollo


estándar o las solicitudes de cambio. Es responsable de mantener la
configuración del código.
• El desarrollador debe comprobar los cambios y resuelve los conflictos.

3. Auditoria:

• El auditor es responsable de las auditorías y revisiones de SCM.


• Necesita de garantizar la consistencia y la integridad de la publicación.

4. Gerente de Proyecto:

• Se asegura de que el producto se desarrolle dentro de un marco de tiempo


determinado.
• Supervisa el progreso del desarrollo y reconoce los problemas en el proceso
SCM.
• Genera informes sobre el estado del sistema de software.
• Se asegura de que se sigan los procesos y las políticas para crear, cambiar y
probar.

5. Usuario

• El usuario final debe comprender los términos clave de SCM para asegurarse de
tener la última versión del software.
Implementación de la gestión de la configuración de software

La gestión de la configuración es una parte fundamental de cualquier organización de TI, pero


requiere una planificación cuidadosa y un esfuerzo continuo para implementarla con éxito en
toda la empresa. Los distintos pasos para una implementación de CM son:

1. Establezca una línea de base. En la fase de descubrimiento de la gestión de la


configuración, una herramienta o plataforma examina el entorno de TI, consulta y
descubre el hardware, el software, los servicios y otros elementos del entorno. Este
proceso establece una línea base actual de los elementos, junto con las configuraciones
y dependencias de los elementos. Entonces, una organización sabrá qué está presente
y cómo funciona todo. La línea de base es la base para el cambio y la gestión del cambio.
En consecuencia, una herramienta debe ver todo el entorno, incluidos los elementos
físicos, virtuales y, a veces, incluso en la nube. Las herramientas rara vez identifican
todos los detalles de cada elemento, por lo que el personal de TI debe llenar los vacíos
o incertidumbres en la línea de base; esta fase de CM puede llevar un tiempo
considerable.

2. Mantenga esa línea de base. Una vez que se establece una línea de base, debe
mantenerse activamente. Por lo general, la herramienta detectará, registrará e
informará los cambios —todos los cuales deben ser aprobados y documentados. La
gestión de cambios y cambios debe seguir políticas y prácticas claramente definidas para
evitar cambios accidentales, no aprobados o ad hoc. Las herramientas con sólidas
funciones de aplicación de CM pueden prevenir activamente los cambios hasta que se
completen los pasos de aprobación y validación. Los cambios que se realicen deben
documentarse cuidadosamente para mantener actualizada la herramienta CM. Muchas
iniciativas de CM fracasan cuando el entorno se desvía de la línea de base.

3. Audite la base de datos. Incluso con un mantenimiento activo y políticas integrales para
gobernar los procesos de CM, la herramienta y el entorno deben someterse a auditorías
periódicas para validar la configuración y garantizar que el entorno actual coincida con
la línea de base actual. Cualquier diferencia debe corregirse y las razones detrás de
cualquier diferencia deben entenderse y subsanarse. Por ejemplo, si un determinado
servidor permanece sin ser detectado, es posible que necesite un agente de CM
actualizado u otra solución.

4. Pruebe para asegurarse de que su herramienta funcione según lo previsto. Por último,
es importante utilizar la herramienta CM de forma productiva. Por ejemplo, indique a la
herramienta CM que implemente un parche del sistema operativo o una actualización
del controlador en un subconjunto del entorno. Valide que la herramienta pueda
realizar dichas tareas dentro de las pautas de gestión de cambios. Proporcionar un
medio para revertir los cambios no deseados.

La gestión de la configuración depende en gran medida de las políticas, los procesos y la


automatización, que deben integrarse en la herramienta o plataforma de CM. Pero estos tres
factores no son pasos únicos. Así como una configuración debe revisarse, auditarse y probarse
periódicamente, la política de CM circundante, los procesos y los elementos de automatización
deben revisarse y actualizarse periódicamente para garantizar que la herramienta (y su uso) siga
siendo coherente con los objetivos comerciales y de TI.
Conclusiones

• Las mejores prácticas de gestión de la configuración ayudan a las organizaciones a


gestionar, organizar y controlar sistemáticamente los cambios en los documentos,
códigos y otras entidades durante el ciclo de vida del desarrollo de software.

• El objetivo principal del proceso SCM es aumentar la productividad con errores mínimos

• La razón principal detrás del proceso de gestión de la configuración es que hay varias
personas trabajando en un software que se actualiza continuamente. SCM ayuda a
establecer la concurrencia, la sincronización y el control de versiones.

• Una línea de base es una versión formalmente aceptada de un elemento de


configuración de software

• El control de cambios es un método de procedimiento que garantiza la calidad y la


coherencia cuando se realizan cambios en el objeto de configuración.

• La contabilidad del estado de configuración realiza un seguimiento de cada versión


durante el proceso de SCM
Bibliografía

• Bigelow, S. J. (2021, 3 agosto). Gestión de la configuración. ComputerWeekly.es.

https://www.computerweekly.com/es/definicion/Gestion-de-la-configuracion

• Configuration Management: conceptos y prestaciones. (s. f.). © Copyright IBM Corp. 2008, 2016.

https://www.ibm.com/docs/es/elm/6.0.2?topic=overview-configuration-management-concepts-capabilities

• Martin, M. (2021, 25 diciembre). Software Configuration Management in Software Engineering. Guru99.

https://www.guru99.com/software-configuration-management-tutorial.html

• Wikipedia contributors. (2022, 17 febrero). Software configuration management. Wikipedia.

https://en.wikipedia.org/wiki/Software_configuration_management

También podría gustarte