Está en la página 1de 24

Instituto Nacional de Tecnologas de la Comunicacin

GUA PRCTICA DE GESTIN DE CONFIGURACIN

LNCS

Diciembre 2008

Instituto Nacional de Tecnologas de la Comunicacin

AVISO LEGAL
CMMI es una marca registrada en la Oficina de Marcas y Patentes de EEUU por la Universidad Carnegie Mellon Las distintas normas ISO mencionadas han sido desarrolladas por la International Organization for Standardization. ITIL (Information Technology Infrastructure Library es una marca registrada de la OGC, Office of Government Commerce (Oficina de comercio gubernamental), que es una divisin del Ministerio de Hacienda del Reino Unido.

Todas las dems marcas registradas que se mencionan, usan o citan en la presente gua son propiedad de los respectivos titulares. INTECO cita estas marcas porque se consideran referentes en los temas que se tratan, buscando nicamente fines puramente divulgativos. En ningn momento INTECO busca con su mencin el uso interesado de estas marcas ni manifestar cualquier participacin y/o autora de las mismas. Nada de lo contenido en este documento debe ser entendido como concesin, por implicacin o de otra forma, y cualquier licencia o derecho para las Marcas Registradas deben tener una autorizacin escrita de los terceros propietarios de la marca. Por otro lado, INTECO renuncia expresamente a asumir cualquier responsabilidad relacionada con la publicacin de las Marcas Registradas en este documento en cuanto al uso de ninguna en particular y se eximen de la responsabilidad de la utilizacin de dichas Marcas por terceros. El carcter de todas las guas editadas por INTECO es nicamente formativo, buscando en todo momento facilitar a los lectores la comprensin, adaptacin y divulgacin de las disciplinas, metodologas, estndares y normas presentes en el mbito de la calidad del software.

Gua prctica de gestin de configuracin

Instituto Nacional de Tecnologas de la Comunicacin

NDICE
1. INTRODUCCIN 1.1. 1.2. 2. 3. Conceptos Por qu es importante la gestin de configuracin? 6 6 7 9 10 11 11 12 14 16 17 18 19 20 21 22 24

ROLES Y RESPONSABILIDADES ACTIVIDADES DE GESTIN DE CONFIGURACIN 3.1. 3.2. Gestin del proceso de gestin de configuracin 3.1.1. 3.2.1. 3.2.2. 3.3. 3.4. 3.5. 3.6. 3.3.1. Planificacin de la gestin de configuracin Establecer el sistema de gestin de configuracin Establecer lnea base Proceso de control de cambios Identificacin de elementos de configuracin

Mantenimiento y control de la gestin de configuracin Informe del estado de los elementos de configuracin Verificacin y auditora Gestin de la liberacin del software

4. 5.

ENFOQUE DE ALGUNOS MODELOS REFERENCIAS

Gua prctica de gestin de configuracin

Instituto Nacional de Tecnologas de la Comunicacin

NDICE DE TABLAS
Tabla 1 Tabla 2 Tabla 3 Tabla 4 Roles y responsabilidades de la gestin de configuracin Actividades del proceso de gestin de configuracin Ejemplos de elementos de configuracin Ejemplos de sistemas de gestin de configuracin 9 10 14 15

Gua prctica de gestin de configuracin

Instituto Nacional de Tecnologas de la Comunicacin

NDICE DE FIGURAS
Figura 1 Figura 2 Incorporacin de elementos en lnea base Proceso de control de cambios 17 19

Gua prctica de gestin de configuracin

Instituto Nacional de Tecnologas de la Comunicacin

1.

INTRODUCCIN

La gua rpida de gestin de configuracin pretende proporcionar una visin introductoria de este proceso. Se expondrn algunos conceptos clave para entender la gestin de configuracin, se resaltar la importancia que tiene en el desarrollo de productos y servicios software a travs de los beneficios que se pueden obtener de la correcta implementacin de este proceso y los riesgos de no realizarla. Tambin se mencionarn los principales roles que intervienen en el proceso de gestin de configuracin y cules son sus responsabilidades. En el segundo apartado de la gua se describen las distintas actividades que conforman el proceso de gestin de configuracin, indicando en cada una de ellas alcance, tareas, entradas, salidas, etc. Para profundizar en esta rea se recomienda acudir a la Gua avanzada de gestin de configuracin, tambin disponible en el portal de INTECO.

1.1.

CONCEPTOS

A continuacin, se explican algunos conceptos clave en el mbito de la gestin de la configuracin que se van a ir tratando a lo largo de la gua. De esta forma, se quiere aclarar ciertos trminos para obtener una mejor comprensin del contenido expuesto en el documento. Qu se entiende por configuracin del software? Es el conjunto de caractersticas funcionales y fsicas del software detalladas en la documentacin tcnica o alcanzadas en un producto. (IEEE610.12-90)

Qu es la gestin de la configuracin? Es un proceso cuyo propsito es establecer y mantener la integridad de los productos de trabajo a travs de: La identificacin de los elementos/productos que van a ser controlados Cules son los elementos de configuracin? La definicin de un procedimiento para el control de los productos Cmo controlo los cambios sobre los elementos de configuracin? El registro/informe del estado de los productos Cul es el estado actual de los elementos de configuracin? Las auditoras de configuracin Los elementos de configuracin cumplen los requisitos?

Gua prctica de gestin de configuracin

Instituto Nacional de Tecnologas de la Comunicacin

Qu se entiende por elemento de configuracin? Un elemento de configuracin es cualquier producto de trabajo, tanto producto final como productos intermedios y tanto productos entregables al cliente como productos internos del proyecto, cuyo cambio pueda resultar crtico para el buen desarrollo del proyecto.

Qu es una lnea base? Una lnea base es un conjunto de elementos de configuracin formalmente designados y fijados en un momento especfico del ciclo de vida. Los elementos incluidos en la lnea base tendrn que cumplir unas condiciones mnimas, es decir, han de estar acabados y formalmente aprobados. La lnea base slo puede ser modificada a travs de un procedimiento formal de cambios. La lnea base, junto con todos los cambios aprobados sobre la misma, representa la configuracin vigente y aprobada.

1.2.

POR QU ES IMPORTANTE LA GESTIN DE CONFIGURACIN?

Como se ha comentado en el apartado anterior, el proceso de gestin de configuracin tiene como principal objetivo asegurar la integridad de los productos y servicios desarrollados. Integridad del producto es: Saber exactamente lo que se ha entregado al cliente Saber el estado y contenido de las lneas base y elementos de configuracin

La gestin de la configuracin es una forma efectiva y eficiente de gestionar y comunicar los cambios en lneas base y elementos de configuracin a lo largo del ciclo de vida. A continuacin se resaltan algunos beneficios de la implementacin del proceso de gestin de configuracin para la organizacin. Los siguientes puntos representan objetivos de negocio, por ejemplo: reduccin de riesgos, mejora de la calidad y beneficios de coste en la entrega y soporte de productos. Asegurar la correcta configuracin del software. Proporcionar la capacidad de controlar los cambios. Reducir los sobreesfuerzos causados por los problemas de integridad. Garantizar que todo el equipo trabaja sobre una misma lnea base de productos.

Para ver la importancia de forma ms clara, pondremos un ejemplo: Qu puede ocurrir si no se realiza una gestin de configuracin efectiva? Existe un riesgo alto de entregar al cliente la versin incorrecta del producto: Versin con errores Versin con cambios que no han sido probados Versin que no puede reproducirse

Podramos llegar a encontrarnos en las siguientes situaciones:


Gua prctica de gestin de configuracin 7

Instituto Nacional de Tecnologas de la Comunicacin

Cul es la versin que tiene el cliente? No puedo reproducir el problema en mi versin Qu ha ocurrido con la correccin que hice el mes pasado? Est corregido el error tambin en esa versin?

Si no se realiza una buena gestin de configuracin puede ocurrir que no podamos disponer de un inventario completo de los componentes del sistema cuando necesitemos, que haya que realizar re-trabajo durante las pruebas porque los componentes que probemos no sean los que debieran, o que no se pueda recuperar una lnea base anterior para realizar mantenimiento. Todo ello conlleva una prdida de dinero y recursos.

Gua prctica de gestin de configuracin

Instituto Nacional de Tecnologas de la Comunicacin

2.

ROLES Y RESPONSABILIDADES

Para evitar confusiones acerca de quin debe realizar las actividades de gestin de configuracin, debe quedar claramente identificado el organigrama del proceso. Las responsabilidades especficas para las actividades de gestin de configuracin deben ser asignadas a equipos o a personas concretos. Igualmente, los canales de informe y comunicacin deben ser identificados.
Roles Gestor configuracin de Responsabilidades Gestionar la planificacin, identificacin, control, seguimiento y auditora de todos los elementos de configuracin en la base de datos de configuracin. Desarrollar el plan de gestin de configuracin. Promover el uso efectivo de la base de datos de configuracin dentro de la organizacin. Monitorizar y reportar los cambios no autorizados sobre los elementos de configuracin. Asegurar la consistencia e integridad de los datos de la base de datos de configuracin a travs de la ejecucin de procedimientos de verificacin y auditora. Liderar las actividades de evaluacin del proceso: revisar tipos de elementos de configuracin, relaciones, atributos y valores asociados, estructura de la base de datos, derechos de acceso. Aprobar cambios estructurales en la base de datos de configuracin. Asegurar que todos los elementos de configuracin estn registrados de forma adecuada en la base de datos de configuracin. Asegurar la consistencia e integridad de los datos de la base de datos de configuracin y la estructura del sistema a travs de la ejecucin de procedimientos de verificacin y auditora. Reportar cualquier discrepancia o no conformidad en los elementos de configuracin al gestor de configuracin. Participar en la mejora continua del proceso de gestin de configuracin. Asegurar que los elementos de configuracin de los que es responsable estn registrados en la base de datos de configuracin con el estado y datos de configuracin apropiados. Verificar que los cambios sobre los elementos de configuracin siguen el proceso de cambios definido. Asegurar la idoneidad e integridad de los elementos de configuracin de los que es responsable. Trabajar conjuntamente con el gestor de configuracin para identificar las causas de cualquier discrepancia identificada en las auditoras e implementar las acciones correctivas. Evaluar el impacto y riesgo de los cambios. Asegurar que los responsables de los elementos de configuracin actualizan los histricos de estos elementos con los cambios implementados.

Coordinador configuracin de -

Responsable elementos configuracin de de -

Gestor de cambio

Tabla 1

Roles y responsabilidades de la gestin de configuracin


9

Gua prctica de gestin de configuracin

Instituto Nacional de Tecnologas de la Comunicacin

3.

ACTIVIDADES DE GESTIN DE CONFIGURACIN

En la siguiente tabla, se recogen de forma resumida las actividades que conforman el proceso de gestin de configuracin. En los prximos apartados se vern cada una de estas actividades en detalle.
Actividad Gestin del proceso de gestin de configuracin Identificacin elementos configuracin de de Rol responsable Gestor configuracin de Descripcin Documentar el plan de gestin de configuracin. Identificar elementos configuracin. Entradas Necesidades proyecto Plan de proyecto Productos proyecto del del Salidas Plan de gestin de configuracin aprobado Elementos configuracin identificados Lnea base Estructura del directorio de gestin de configuracin Peticiones cambio de Registro de solicitud de cambio Solicitud de cambio aprobada Lnea base de

Gestor configuracin

de

de

Crear estructura del directorio de gestin de configuracin.

Mantenimiento y control de la gestin de configuracin

Responsable elemento configuracin

del de

Control de cambios sobre elementos de configuracin y lneas base. Obtener aprobacin de solicitudes de cambio sobre productos de trabajo de lnea base.

Informe de estado de la configuracin

Gestor configuracin

de

Mantener actualizado y publicar el estado de los elementos de configuracin. Realizar auditoras de la gestin de configuracin.

Elementos configuracin

de

Informe de estado de elementos de configuracin

Verificacin auditora

Gestor configuracin

de

Registros de gestin configuracin Lnea base Registros cambios

la de

Informe de auditora de gestin de configuracin

de

Tabla 2

Actividades del proceso de gestin de configuracin

Gua prctica de gestin de configuracin

10

Instituto Nacional de Tecnologas de la Comunicacin

3.1.

GESTIN DEL PROCESO DE GESTIN DE CONFIGURACIN

Una buena implementacin del proceso de gestin de configuracin requiere una planificacin y gestin cuidadosa. Para ello, en primer lugar hay que entender cul es el contexto organizacional necesario y las restricciones que existen para el diseo e implementacin del proceso. A continuacin, se describe qu se debe tener en cuenta para realizar una buena planificacin del proceso.

3.1.1.
-

Planificacin de la gestin de configuracin


Identificacin de elementos de configuracin Control de la configuracin Registro del estado de la configuracin Auditoras de configuracin Gestin del despliegue

Las principales actividades que se deben tener en cuenta en la planificacin son:

Adems, se deben tener en cuenta aspectos como el organigrama y responsabilidades, recursos y cronograma, seleccin de herramientas e implementacin, etc. Durante la planificacin se debe identificar al personal y las herramientas involucrados en el desempeo de las actividades y tareas de gestin de configuracin. Se deben establecer las secuencias necesarias para las actividades de gestin de configuracin e identificar sus relaciones con el cronograma e hitos del proyecto establecidos en la fase de planificacin del proyecto. Tambin debe especificarse cualquier requisito de formacin para el personal necesario para implementar el plan. El resultado de la planificacin debe quedar plasmado en un plan de gestin de configuracin (SCMP), que ser sometido a revisin y auditora durante el proceso de aseguramiento de la calidad. Este es un documento que servir de referencia para llevar a cabo el proceso de gestin de configuracin. Debe mantenerse actualizado a lo largo del ciclo de vida del software. A la hora de implementarlo, puede ser necesario desarrollar una serie de procedimientos subordinados ms detallados donde se defina cmo llevar a cabo el plan en las actividades diarias. A modo de gua, se resaltan los siguientes apartados de informacin que puede incluir el SCMP: Introduccin Propsito Alcance Trminos utilizados Gestin del proceso de gestin de la configuracin Organigrama

Gua prctica de gestin de configuracin

11

Instituto Nacional de Tecnologas de la Comunicacin

Responsabilidades Polticas y procedimientos aplicables Actividades de gestin de configuracin Identificacin de elementos de configuracin Control de configuracin Registro e informe del estado de la configuracin Auditora de configuracin Cronograma de la gestin de configuracin Coordinacin con otras actividades del proyecto Recursos de gestin de configuracin Herramientas Recursos fsicos Recursos humanos Mantenimiento del SCMP

3.2.

IDENTIFICACIN DE ELEMENTOS DE CONFIGURACIN

La actividad de identificacin de la configuracin identifica los elementos que van a ser controlados, establece esquemas para la identificacin de los elementos y sus versiones, y establece las herramientas y tcnicas a usar para adquirir y gestionar los elementos controlados. Estas actividades proporcionan la base para otras actividades de gestin de configuracin. Las principales tareas a llevar a cabo dentro de esta actividad son: Identificar los productos que se van a mantener bajo gestin de configuracin para el proyecto Asignar identificadores nicos para cada elemento de configuracin y propiedades como autor, tipo de documento o fichero, persona responsable de ese elemento de configuracin, etc. Definir estructura de almacenamiento Definir un nivel de control de acceso de los miembros del equipo sobre la infraestructura de almacenamiento Seleccionar herramientas especficas para la gestin de configuracin Especificar cundo se va a incluir cada elemento bajo gestin de configuracin (en qu momento del ciclo de vida). Obtener la autorizacin para incluir los documentos bajo gestin de configuracin (lnea base)

Gua prctica de gestin de configuracin

12

Instituto Nacional de Tecnologas de la Comunicacin

Aplicar los procedimientos definidos para incluir los productos bajo gestin de configuracin Documentar los elementos que se han incluido bajo gestin de configuracin Desarrollar procedimientos para solicitar e implantar los cambios donde se especifique: Quin solicita los cambios Cmo se notifican los cambios Cmo se evala el impacto Quin evala el impacto Quin acepta o rechaza el cambio Quin modifica los distintos productos (responsable de cada producto)

A la hora de seleccionar los elementos que estarn bajo gestin de configuracin, se pueden tener en cuenta criterios como los siguientes: Productos de trabajo que vayan a ser utilizados por dos o ms grupos. Productos de trabajo que puedan cambiar con el tiempo debido a cambios en requisitos o errores. Productos que dependan de otros en el sentido de que un cambio en uno de ellos implique un cambio en los otros. Productos de trabajo que sean crticos para el proyecto.

Dependiendo de la naturaleza del proyecto los elementos de configuracin pueden variar de un proyecto a otro.
Elementos de configuracin Planes o o o o o Plan de proyecto Plan de calidad Plan de gestin de configuracin Plan de gestin de riesgos

Registros del proyecto Material de apoyo al cliente Especificacin de requisitos o o o Requisitos de negocio Requisitos de usuario Requisitos de sistema

Gua prctica de gestin de configuracin

13

Instituto Nacional de Tecnologas de la Comunicacin

Matriz de trazabilidad de requisitos Documentos de diseo Resultados de la resolucin y anlisis de decisin Cdigo fuente Plan de integracin de software Informes resultantes de las revisiones realizadas en los puntos de comprobacin o al final de las fases Plan de pruebas o o o o o unitarias de integracin de sistemas de aceptacin de usuario de regresin

Datos de pruebas y casos de pruebas Plan de instalacin/mantenimiento Documentos de manual de usuario Plan de entrega de servicios Informes de investigacin Informes de estimacin Informes de cierre del proyecto Prototipos Informes de mtricas Todos los entregables enviados al cliente

Tabla 3

Ejemplos de elementos de configuracin

3.2.1.

Establecer el sistema de gestin de configuracin

Un sistema de gestin de configuracin incluye el sistema de almacenamiento, los procedimientos y las herramientas para acceder al sistema de gestin de configuracin. Se pueden utilizar varios tipos de sistemas de gestin de configuracin, cada uno para un nivel determinado de madurez del elemento de configuracin. Cada sistema tendr asociado un nivel adecuado de control de configuracin (lnea base asociada y nivel de autorizacin para el cambio). La seguridad, en cuanto a control de acceso y copias de seguridad, es un aspecto clave de la gestin de sistemas de gestin de configuracin. El gestor de configuracin debe establecer los permisos de acceso en la etapa inicial del proyecto. Por ejemplo, se pueden establecer los siguientes sistemas, cada uno con el siguiente nivel de acceso:

Gua prctica de gestin de configuracin

14

Instituto Nacional de Tecnologas de la Comunicacin

Sistema de gestin de configuracin Sistemas dinmicos (desarrollo) -

Descripcin Sistemas que contienen componentes que se estn creando o revisando en la actualidad. Estn en el entorno de trabajo desarrollador y son controlados por l. del

Los elementos de configuracin bajo este sistema estn bajo control de versiones. Sistemas que contienen la lnea base actual y los cambios realizados sobre ella. Los elementos de configuracin bajo este sistema estn bajo control de configuracin. Sistemas que contienen varias lneas base ya liberadas y que han sido archivadas. Estos sistemas configuracin. estn bajo control de

Sistemas mster (controlados)

Sistemas estticos

Tabla 4

Ejemplos de sistemas de gestin de configuracin

El gestor de configuracin establecer una estructura de directorios designando un rea de almacenamiento, procedimientos y herramientas para acceder al sistema de configuracin del proyecto. Tendr que reflejar en el plan de gestin de configuracin la ubicacin y estructura de los directorios donde se van a almacenar todas las lneas base y activos del proyecto cuando sean desarrollados. El directorio debera ser estructurado de tal forma que ayude a: Planear cmo controlar los elementos de configuracin identificados como lnea base. Soportar distintos niveles de control de gestin de configuracin. Proporcionar un repositorio central con lneas base del software para asegurar la correcta creacin de productos y entregables desde el repositorio. Proporcionar un lugar para compartir y transferir elementos de configuracin entre grupos dependientes. Proporcionar un lugar orientado al registro y generacin de informes. Soportar el mantenimiento del directorio mediante copias de seguridad regulares del contenido.

Los mecanismos de almacenamiento y de recuperacin de los elementos de configuracin debern ser documentados en el plan de gestin de configuracin. Hay que asegurarse de que los archivos y directorios importantes de los miembros del equipo forman parte de la copia de seguridad. Ser necesario identificar la frecuencia, ubicacin y responsable de

Gua prctica de gestin de configuracin

15

Instituto Nacional de Tecnologas de la Comunicacin

realizar la copia de seguridad. Las copias de seguridad han de alojarse en un sitio distinto al de los documentos originales.

3.2.2.

Establecer lnea base

Una vez identificados los productos que estarn bajo gestin de configuracin, habr que incluirlos bajo una lnea base para que, a partir de ese momento, cualquier modificacin que se vaya a realizar sobre dicho producto tenga que seguir los procedimientos diseados para ello. Para formar parte de la lnea base no slo tiene que estar identificado como elemento a incluir sino que tendr que cumplir unas condiciones mnimas, esto es, que el producto est acabado y haya sido formalmente aprobado. Todos los productos no sern incluidos en la lnea base al mismo tiempo, ya que cada producto (cdigo, documentacin tcnica, documentacin de gestin, etc.) puede ser incorporado en distintas fases del proyecto. Las lneas base ms utilizadas son la funcional, de desarrollo y de producto. La lnea base funcional corresponde a la especificacin de requisitos software y del sistema que han sido ya revisados. La del desarrollo representa la evolucin de la configuracin del software en determinados momentos seleccionados del ciclo de vida. La lnea base del producto corresponde al producto finalizado y entregado para su integracin en el sistema. Las lneas base que se van a realizar en un proyecto, junto con el nivel de autorizacin requerido para aprobacin de cambios, deben ser identificadas en el SCMP. Los elementos de configuracin se colocan bajo control de la gestin de configuracin en distintos momentos, es decir, se incorporan a una lnea base en un momento concreto del ciclo de vida del software. El evento que desencadena esta incorporacin a la lnea base es la realizacin de alguna tarea de aceptacin formal del elemento de configuracin, como una revisin formal. En la siguiente figura se puede ver un ejemplo de cmo se incorporan elementos a la lnea base a medida que evoluciona el ciclo de vida (en este caso, ciclo de vida en cascada).

Gua prctica de gestin de configuracin

16

Instituto Nacional de Tecnologas de la Comunicacin

Revisin de requisitos

Revisin de diseo

Revisin de disponibilidad de las pruebas

Aceptacin

Especificacin de requisitosA

Especificacin de requisitos B Diseo detallado A

Especificacin de requisitos C Diseo detallado Codificacin A B

Especificacin de requisitos D Diseo detallado C Codificacin B

Control de cambios sobre especificacin de requisitos

Control de cambios sobre especificacin de requisitos y diseo detallado

Plan de pruebas A

Plan de pruebas B Manual de usuario A BBDD pruebas de regresin A

Control de cambios sobre especificacin de requisitos, diseo detallado, codificacin y planes de pruebas

Figura 1

Incorporacin de elementos en lnea base

Despus de la incorporacin de un elemento de configuracin a la lnea base, los cambios sobre l deben ser aprobados formalmente segn el procedimiento definido en el SCMP para ese elemento y esa lnea base. Despus de la aprobacin, el elemento se incorporar a la lnea base siguiendo el procedimiento adecuado. Los procedimientos y controles definidos para la gestin de configuracin se aplicarn sobre los productos una vez estn incluidos en la lnea base.

3.3.

MANTENIMIENTO CONFIGURACIN

CONTROL

DE

LA

GESTIN

DE

El control de configuracin est relacionado con la gestin de cambios durante el ciclo de vida. El control de configuracin cubre el proceso de determinar qu cambios realizar, la autorizacin necesaria para aprobar ciertos cambios, el soporte a la implementacin de esos cambios, y el concepto de desviaciones formales con respecto a los requisitos del proyecto. La informacin derivada de estas actividades es til para medir el trfico de cambios y aspectos de re-trabajo. Los cambios no se producen nicamente para incluir nuevas funcionalidades o crear nuevos productos, tambin pueden ser utilizados para corregir errores. Cuando se solicita un cambio que afecta a algn producto bajo gestin de configuracin (lnea base), entrar en funcionamiento el proceso de control de cambios. En este proceso, que se explicar a continuacin, se deben identificar y valorar los cambios y, si son admitidos, modificar los productos afectados, siguiendo el procedimiento establecido. Estos

Gua prctica de gestin de configuracin

17

Instituto Nacional de Tecnologas de la Comunicacin

cambios realizados deben comunicarse a todas las personas que resulten afectadas por los mismos.

3.3.1.

Proceso de control de cambios

El primer paso para gestionar los cambios sobre los elementos controlados es determinar qu cambios realizar. El proceso de peticin de cambios proporciona procedimientos formales para enviar y registrar peticiones de cambio, evaluar el coste e impacto potencial del cambio propuesto, y aceptar, modificar, o rechazar el cambio propuesto. Los cambios solicitados o los errores detectados debern ser identificados a travs de los canales preestablecidos (personas, herramientas, etc.). Una vez recibidos sern documentados para su posterior estudio. Las peticiones de cambio sobre elementos de configuracin pueden iniciarse por cualquiera en cualquier punto del ciclo de vida y pueden incluir una sugerencia de solucin y prioridad de la peticin. Un posible origen de las peticiones de cambio es el inicio de una accin correctiva en respuesta a informes de problemas. El tipo de cambio (p.ej.: defecto o mejora) se suele registrar en la peticin de cambio (SCR) para as poder recoger mtricas sobre los cambios por tipo de cambio. Una vez que se recibe una SCR, se realiza una evaluacin tcnica o anlisis de impacto para determinar el alcance de las modificaciones que seran necesarias realizar una vez se acepte la peticin. En este punto es importante un buen entendimiento de las relaciones entre los elementos de software. Segn la lnea base afectada, los elementos de configuracin implicados, y la naturaleza del cambio, la persona responsable evaluar los aspectos tcnicos y de gestin de la peticin de cambio, y a continuacin aceptar, modificar, rechazar o aplazar el cambio propuesto. En cualquier caso, la decisin tomada deber quedar documentada de alguna forma. Las SCR aprobadas se implementan utilizando los procedimientos de software definidos de acuerdo a los requisitos de tiempo que apliquen. Ser necesario proporcionar una forma de realizar un seguimiento de qu SCR se incorporan, en qu versiones de software y lneas bases concretas. Como parte del cierre del proceso de cambios, los cambios realizados deben pasar por auditoras de configuracin y verificacin de la calidad del software. Esto incluye asegurar que slo se han realizado los cambios aprobados. La implementacin del cambio ser soportada por una herramienta que permita gestin de versiones y un repositorio de cdigo. Tras realizar el cambio se comunicar, si as est establecido, a todos aquellos que estn afectados por dicho cambio. De esta forma, se pretende preservar la integridad de los productos haciendo que todo el mundo trabaje con las versiones correctas. El siguiente grfico ilustra este proceso de control de cambios:

Gua prctica de gestin de configuracin

18

Instituto Nacional de Tecnologas de la Comunicacin

Figura 2

Proceso de control de cambios

La autoridad para aceptar o rechazar los cambios propuestos reside en una entidad conocida como comit de control de configuracin (CCB). En proyectos pequeos, esta autoridad puede desempearla el lder o una persona asignada para ello en lugar de un comit de varias personas. Puede haber mltiples niveles de autorizacin de cambios dependiendo de varios criterios como la criticidad de los elementos implicados, la naturaleza del cambio (p.ej.: impacta en presupuesto o calendario), o el momento actual en el ciclo de vida. Las actividades del CCB estn sujetas a revisin y auditora de calidad de software. Un proceso de control de cambios efectivo requiere del uso de distintas herramientas y procedimientos de soporte que refuercen el flujo del proceso de cambios, recogiendo las decisiones del CCB, y reportando la informacin del proceso de cambios.

3.4.

INFORME DEL CONFIGURACIN

ESTADO

DE

LOS

ELEMENTOS

DE

El informe del estado de la configuracin es la actividad de reportar la informacin necesaria para gestionar de forma efectiva la configuracin de software. En esta actividad se disea y opera un sistema para la captura y reporte de la informacin necesaria a medida que avanza el ciclo de vida. Como en cualquier sistema de informacin, la informacin sobre el estado de la configuracin que se quiere gestionar debe ser identificada, recogida y mantenida. Son necesarias diversas mtricas e informacin para dar soporte al proceso de gestin de

Gua prctica de gestin de configuracin

19

Instituto Nacional de Tecnologas de la Comunicacin

configuracin. El tipo de informacin disponible incluye la identificacin de configuracin aprobada as como el estado actual de la implementacin de los cambios. Por ejemplo, informacin del tipo: Un registro de documentacin de configuracin aprobada. La designacin de un responsable de los elementos de configuracin del proyecto. El estado de cambios propuestos y desviaciones de la configuracin. La implementacin del estado de los cambios aprobados. La configuracin de todas las unidades de los elementos de configuracin en el inventario. Resultados de las auditoras.

Para llevar a cabo estas actividades de recogida de datos y generacin de informes se hace necesario el soporte de una herramienta automatizada.

3.5.

VERIFICACIN Y AUDITORA

Una auditora de software es una actividad llevada a cabo para evaluar, de forma independiente y objetiva, la conformidad de los productos y procesos software con respecto a las regulaciones, estndares, guas, planes y procedimientos aplicables (IEEE1028-97). Las auditoras se llevan a cabo de acuerdo a un proceso bien definido que detalla los roles y responsabilidades de los auditores. Cada auditora debe ser cuidadosamente planificada, en funcin de la naturaleza del proyecto y de los requisitos. Las herramientas que ayudan en la planificacin y realizacin de la auditora facilitan en gran medida el proceso. La actividad de auditora de configuracin de software determina en qu medida un elemento de configuracin satisface sus caractersticas funcionales y fsicas requeridas. Se pueden realizar auditoras de este tipo en puntos clave del ciclo de vida. El resultado satisfactorio de una auditora se puede utilizar como prerrequisito para establecer una lnea base del producto. El objetivo de las auditoras de gestin de configuracin es asegurarse de que: Los elementos de configuracin se encuentran en el directorio apropiado. El estado actual de los elementos de configuracin es consistente. La informacin de lnea base se mantiene de forma correcta. Se verifica la conformidad con estndares y procedimientos aplicables a la gestin de configuracin, por ejemplo, comprobando si se usa la versin correcta del documento de diseo para realizar la codificacin.

Como resultado de la auditora se deber generar un informe donde se registren todas las no conformidades detectadas y as iniciar un plan de mejora para solucionarlas. Despus de una auditora de configuracin exitosa se puede establecer una lnea base del producto. La verificacin no se realiza sobre los propios productos sino que consiste en comprobar que los productos que conforman una lnea base estn gestionados correctamente bajo el

Gua prctica de gestin de configuracin

20

Instituto Nacional de Tecnologas de la Comunicacin

control de configuracin, que todos los cambios realizados sobre estos productos han sido registrados y, por tanto, se puede establecer una trazabilidad entre cambios y productos afectados.

3.6.

GESTIN DE LA LIBERACIN DEL SOFTWARE

El trmino liberacin se utiliza en este contexto para referirse a la distribucin del elemento de configuracin de software fuera de la actividad de desarrollo. Esto incluye tanto liberaciones internas como distribuciones al cliente. La gestin de la liberacin del software implica la identificacin, empaquetado y entrega de los elementos del producto, por ejemplo, programas ejecutables, documentacin, notas de versin, y datos de configuracin. Puesto que los cambios en el producto pueden producirse de forma continua, una de las cuestiones que se plantean en la gestin de la liberacin es cundo debe lanzarse una nueva versin. Esta decisin se tomar teniendo en cuenta la severidad de los problemas encontrados y la mtrica de densidad de defectos registrada en la versin actual. En la tarea de empaquetado se deben identificar qu elementos del producto se van a entregar y las versiones correctas de esos elementos, segn la aplicacin deseada del producto. Las notas de versin describen las nuevas funcionalidades, problemas conocidos, y requisitos de la plataforma necesarios para la correcta operacin del producto. El paquete que se va a liberar tambin contiene instrucciones para la instalacin o actualizacin.

Gua prctica de gestin de configuracin

21

Instituto Nacional de Tecnologas de la Comunicacin

4.

ENFOQUE DE ALGUNOS MODELOS

La gestin de la configuracin es un proceso que est contemplado dentro de los principales modelos de mejora de procesos orientados al desarrollo de software y tambin dentro de la gestin de servicios. CMMI y SPICE son modelos de mejora de procesos que describen los procesos que una organizacin debe ejecutar para la adquisicin, desarrollo y mantenimiento de productos y servicios software. Ambos modelos contemplan, entre sus reas de proceso, la gestin de configuracin. Para implementar correctamente esta rea, ambos modelos proponen una serie de prcticas a seguir. Segn CMMI, el propsito de la gestin de configuracin es establecer y mantener la integridad de los productos mediante la consecucin de una serie de metas u objetivos que son: establecer lneas base de los productos de trabajo identificados, registrar y controlar los cambios en los productos bajo gestin de configuracin y establecer y mantener la integridad de las lneas base. Para alcanzar cada una de estas metas, el modelo propone una serie de prcticas que se deben llevar a cabo. El enfoque de SPICE es muy similar y segn este modelo, como resultado de implementar este proceso de forma satisfactoria se conseguir: 1. Desarrollar una estrategia de gestin de configuracin 2. Identificar, definir y realizar lnea base de los productos de trabajo generados por un proceso o proyecto 3. Controlar los cambios y versiones de los productos de trabajo 4. Poner a disposicin de las partes afectadas los cambios y versiones de los productos de trabajo 5. Registrar e informar del estado de los productos de trabajo y sus cambios 6. Asegurar que los productos de trabajo son completos y consistentes 7. Controlar el almacenamiento, gestin y despliegue de los productos de trabajo En ambos modelos, el proceso de gestin de configuracin est dentro de la categora de soporte. Esto quiere decir que es un proceso que da soporte a la implementacin de otras reas de proceso. Los productos que van a estar bajo gestin de configuracin pueden ser productos generados por otras reas de proceso e incluyen productos entregados al cliente, productos internos, productos adquiridos, herramientas, y otros elementos utilizados para la creacin de estos productos. Desde el punto de vista de la gestin de servicios, podemos acudir a ITIL (Information Technology Infrastructure Library), que es el enfoque ms ampliamente aceptado de la gestin de servicios IT. Segn ITIL, el propsito fundamental de la gestin de la configuracin es proporcionar un modelo lgico de la infraestructura o un servicio identificando, controlando, manteniendo y

Gua prctica de gestin de configuracin

22

Instituto Nacional de Tecnologas de la Comunicacin

verificando las versiones de los elementos de configuracin que existan en el entorno IT de produccin. El proceso de gestin de configuracin juega un papel ms relevante durante la etapa de transicin del servicio. Las organizaciones que proporcionan servicios de IT necesitan tener un entorno de gestin de configuracin controlado que permita llevar a cabo un seguimiento, registro e informe de los elementos que hay en su infraestructura de IT. La informacin sobre la infraestructura y los servicios implicados es esencial para mantener los procesos de negocio dentro de una organizacin. Un gran nmero de roles y funciones acceden, mantienen y utilizan informacin sobre la infraestructura y los servicios para asegurar que IT y el negocio puedan ejecutar las operaciones de forma eficiente y eficaz. Es por ello que los principales beneficios de implementar y adherirse a un proceso de gestin de la configuracin dentro de una organizacin son los siguientes: Aumentar la estabilidad del entorno IT. Mejorar el rendimiento del servicio. Optimizar costes del servicio (operacin y soporte). Optimizar el uso de recursos. Mejorar la prediccin, planificacin y anlisis de cambios y liberaciones. Mejorar la gestin y resolucin de incidencias y problemas. Aumentar la transparencia de la adherencia con respecto a los estndares y mejores prcticas.

Gua prctica de gestin de configuracin

23

Instituto Nacional de Tecnologas de la Comunicacin

5.

REFERENCIAS

A. Abran, J.W. Moore, P. Bourque, R. Dupuis, Guide to the Software Engineering Body of Knowledge, IEEE Computer Society, 2004. D. Whitgift, Methods and Tools for Software Configuration Management, John Wiley & Sons, 1991. H.R. Berlack, Software Configuration Management, John Wiley & Sons, 1992. I. Sommerville, Software Engineering, Seventh ed., Addison-Wesley, 2005. IEEE Std 610-1991, IEEE Computer Dictionary Compilation of IEEE Standard Computer Glossaries, IEEE, 1991 IEEE Std 828-1998, IEEE Standard for Software Configuration Management Plans, IEEE, 1998. IEEE Std 1028-1997, IEEE Standard for Software Reviews, IEEE, 1998. ITIL v3 Foundation for IT Service Management, 2008. K.E. Emam, J.N. Drouin, W. Melo, SPICE: The Theory and Practice of Software Process Improvement and Capability Determination, IEEE Computer Society Press, 1998. M.B. Chrissis, M. Konrad, S. Shrum, CMMI Second Edition. Guidelines for Process Integration and Product Improvement, Addison-Wesley, 2007. Sitio de ITIL de la OGC http://www.ogc.gov.uk/guidance_itil.asp R.S. Pressman, Software Engineering: A Practitioners Approach, Sixth ed., McGraw-Hill, 2004.

Gua prctica de gestin de configuracin

24

También podría gustarte