Vous êtes sur la page 1sur 22

Plan de

Administracin de
la Configuracin e
Integracin
Proyecto: VoD WebReu
Herman de Jess Chvez Pacheco
CONSTRUSOFT
Versin 1.0

















































Control de Versiones

Fecha Versin Descripcin Autor
17-09-2014 1.0
Primera Versin
del Documento
Herman Chvez








TABLA DE CONTENIDO

1. INTRODUCCIN
1.1. PROPSITO
1.2. ALCANCE
1.3. DEFINICIONES, ACRNIMOS Y ABREVIACIONES
1.4. REFERENCIAS
1.5. RESUMEN GENERAL
2. ADMINISTRACIN DE LA CONFIGURACIN DEL SOFTWARE
2.1. ROLES Y RESPONSABILIDADES
2.2. HERRAMIENTAS, AMBIENTE E INFRAESTRUCTURA
2.2.1. Herramientas de administracin de la configuracin:
2.2.2. Servidores:
2.2.3. Plataformas Cliente
2.2.4. Gestin de la seguridad
2.3. ADMINISTRACIN Y MANTENIMIENTO
2.3.1. Estrategias de Backup
3. PROGRAMA DE ADMINISTRACIN DE CONFIGURACIONES
3.1. IDENTIFICACIN DE LA CONFIGURACIN
3.1.1. Mtodos de Identificacin
3.1.2. Elementos de la Lnea Base del Proyecto
3.2. ADMINISTRACIN DE CAMBIOS Y CONFIGURACIONES
3.2.1. Proceso de Administracin de Configuraciones
3.2.2. Proceso de Administracin de Cambios
3.2.3. Comit de Control de Cambios
4. HITOS
5. RECURSOS
6. ANEXOS





Plan de Administracin de la Configuracin
1. Introduccin
El plan de Administracin de la configuracin e integracin describe cmo deben
administrarse los artefactos del proyecto VoD WebReu.

1.1. Propsito
Este documento describe las actividades de gestin de configuracin de software que
deben ser llevadas a cabo durante el proceso de desarrollo del proyecto. Aqu se
definen tanto los productos que se pondrn bajo control de configuracin como los
procedimientos que deben ser seguidos por los integrantes del equipo de trabajo.

1.2. Alcance
Proveer el mtodo para versionar los elementos considerados en el Repositorio de
Gestin de la Configuracin, que es usada para almacenar registros de configuracin
durante todo su ciclo de vida en la plataforma de tecnologa de informacin de la
Empresa WebReu.


1.3. Definiciones, acrononimos y abreviaciones

Componente: Una de las piezas que componen un sistema. Un componente puede
ser hardware o software y puede estar subdividido en otros componentes.

Configuracin: Arreglo de componentes definidos por el nmero, naturaleza e
interconexin de sus partes.

Liberacin: La distribucin y notificacin formal de una versin aprobada.

Lnea Base: Especificacin o producto que ha sido revisado y aprobado formalmente,
que sirve como base para desarrollos posteriores, y que puede ser modificado slo a
travs de procedimientos formales de control de cambios.

Mdulo: Componente de un sistema, Unidades individuales de cdigo fuente que
forman un programa.






Responsable de Desarrollo: Persona del SI con conocimiento detallado de las
actividades del proceso de desarrollo de software quin coordina y participa en las
actividades del desarrollo.
Revisor: Personal con experiencia en software que no haya tenido contacto sustancial
con el desarrollo o modificacin del programa de software, quin debe revisar y
comprobar el cumplimiento de los requisitos establecidos.

Sistema: Una coleccin de componentes organizados para lograr una funcin o
conjunto de funciones.

Software: Programas de computadora, procedimientos, reglas y cualquier
documentacin y datos asociados relativos a la operacin de un sistema de cmputo.

Versin:
a) Trmino empleado para identificar que un elemento de configuracin tiene un
conjunto de caractersticas funcionales definidas. Cuando estas caractersticas
aumentan, cambian o disminuyen, se da un identificador de versin diferente
al elemento de configuracin.
b) Liberacin inicial de un elemento de configuracin asociado con una
compilacin.

check in / check out: Proceso de tomar la ltima versin de un archivo para
modificarla y posteriormente ingresarla con las modificaciones realizadas.

build:
a) Es una versin preliminar de una aplicacin realizada.
b) Es el producto generado por la realizacin de las tareas compilacin, prueba,
inspeccin e instalacin.


CI (Configuration Item) elemento bajo gestin de Configuracin.

SCA (Software Change Authorization) Autorizacin de Cambio en el
Software.

SCM (Software Configuration Management) Gestin de Configuracin del
Software.






SCMR (SCM Responsable) Responsable de SCM.

SCR (System/Software Change Request) Peticin de Cambio en el
Sistema/Software.

SQA (Software Quality Assurance) Aseguramiento de la Calidad del
Software.

SQAR (SQA Responsable) Responsable de SQA.



1.4. Referencias

Referencia Ttulo Ruta
RF-01
ANSI/IEEE Std 828-1990, IEEE Standard for
Software Configuration Management
Plans.
Presente Documento

1.5. Resumen General
Este documento contiene la documentacin requerida para conocer y organizar el
entorno de control de cambios y configuraciones para VoD WebReu y est organizado
de acuerdo a las siguientes secciones:

1. Introduccin: Resume el contenido de este documento.

2. Administracin de la configuracin del software: Explica los roles y
responsabilidades de los integrantes del equipo, describe los requerimientos
de hardware y software; y provee una visin general del Plan de
Administracin de la Configuracin.

3. Identificacin de la configuracin: Muestra el modelo usado para la
administracin de la configuracin de software que interviene en el proyecto
VoD WebReu, la estrategia y guas de administracin de los espacios de trabajo.






4. Configuracin y control de cambios: Se incluye en este documento la
informacin referente a la configuracin y control del cambio; y el flujo de
requerimiento de cambio.

5. Control de los estados de la configuracin: explica los estndares de
presentacin de informes para el proyecto.

























2. ADMINISTRACIN DE LA CONFIGURACIN DEL SOFTWARE
2.1. Roles y Responsabilidades
El equipo encargado del desarrollo de proyectos relacionado con la Administracin
de la Configuracin est conformado de la siguiente forma:

Rol Responsabilidades
Lder de Grupo
1. Definir los componentes de desarrollo del sistema.
2. Definir polticas generales. Asignar actividades.
Administrador de
la Configuracin
1. Crear los repositorios de administracin de
configuraciones.
2. Configurar el entorno para el proyecto VoD Webreu.
3. Implementar las polticas definidas por lder del grupo.
4. Establecer backups ,
5. Mantenimiento y Administracin de usuarios.
Administrador de
Versiones
1. Implementar los pasos de los elementos al entorno de
produccin a partir de las lneas base creadas por el
Sistema de Administracin de Configuraciones
Integrador del
proyecto
2. Identificar posibles construcciones en el entorno de
desarrollo.
3. Entregar los requerimientos implementados de manera
formal para su integracin.
4. Sincronizar cuando sean necesario los cambios
realizados con el punto de entrada al Sistema de
Administracin de Configuraciones.
Desarrolladores
1. Crear vistas de desarrollo.
2. Trabajar con los tems de configuracin.
3. Promover cambios.













2.2. Herramientas, ambiente e infraestructura
2.2.1. Herramientas de administracin de la configuracin:
Las herramientas que se utilizaran son:

CVS: Para la Administracin de cambios.
HUDSON: Integracin Continua
SonarQube: Evalua Codigo Fuente
Nexus: Repositorio de Artefactos

Estas herramientas se van a integrar con el fin de enlazar las actividades de desarrollo
o registros de cambios con las versiones generadas para cada proyecto.

2.2.2. Servidores:
El esquema de red es el siguiente:









Descripcin:

Nombre Servicio Responsable
CVS (Sistema de Versiones
Concurrente)
Control de Versiones Ing. Carlos Arenas
Hudson Integracin Continua
Ing. Carlos Estrada
SonarQube Evala Cdigo Fuente
Nexus Repositorio de Artefactos Ing. Marco Quinto


S_1 Control de Versionamiento
Nombre CVS (Sistema de Versiones Concurrente)
Sistema Operativo Ubuntu Server 14.04
Software CVS
Descripcin
Es el encargado de ir almacenando las
distintas versiones cambios realizados en el
cdigo


S_2 Integracin Continua
Nombre Sistema de integracin continua
Sistema operativo Ubuntu 14.04 + Apache Tomcat
Software Hudson
Descripcin
Una herramienta de este estilo que ayuda a que las
fuentes en CVS compilen correctamente, avisando
por medio de email si hay algn problema.


S_3 Evala cdigo fuente
Nombre SonarQube
Software SonarQube
Descripcin
Es una herramienta para gestionar la calidad del cdigo.
Controla la calidad en siete ejes, Arquitectura y diseo,
comentarios, reglas de codificacin, errores potenciales,
complejidad, pruebas unitarias, duplicaciones.






S_4 Repositorio de Artefactos
Nombre Nexus
Software Nexus
Descripcin Repositorio donde almacenaremos toda la informacin.


2.2.3. Plataformas Cliente

Sistema
operativo
RAM Clase de CPU
Almacenamiento
disponible
Windows 8.1 4 GB Intel Core i5 520 GB
Windows 7 3 GB Intel Core 2 Duo 120 GB
Windows 7 4 GB Intel Core i3 100 GB


2.2.4. Gestin de la seguridad
La siguiente tabla describe la administracin de cuentas de usuarios y grupos
requeridos.

Grupos Descripcin Notas adicionales
Propietario_Proyectos
Propietarios
del Proyecto
Administrador del proyecto puede
realizar cualquier cambio sobre el
proyecto.
Programador_Proyectos
Trabajadores
del Proyecto
Grupo de usuarios que pueden trabajar
en el proyecto pero no configurarlo.

2.3. Administracin y mantenimiento

2.3.1. Estrategias de Backup

El proceso de respaldo de los archivos debe de realizarse de la siguiente manera:
Cada respaldo debe de realizarse dos das por semana, el da lunes y viernes.
El encargado de realizar los respaldos ser el Lder del Grupo.
Los archivos fuentes deben ser encriptados en un archivo zip.
El nombre del archivo zip debe contener la fecha del da que se realiz el respaldo.
Los archivos fuentes sern almacenado en disco duro externo, como tambin se
guardar copia en la nube, utilizando los servicios de almacenamiento de dropbox.






3. PROGRAMA DE ADMINISTRACIN DE CONFIGURACIONES
3.1. Identificacin de la Configuracin
3.1.1. Mtodos de Identificacin
La nomenclatura para los entregables de los proyectos, ya sean estos documentos,
planes, modelos, etc., seguir el siguiente patrn:

PRO-DIS-NombreEngregable-v0.00.extensin

En donde:

PRO: Siglas del proyecto al que pertenece el entregable.

DIS: Sigla de un mximo de tres caracteres para identificar la disciplina a la que
pertenece el entregable, siendo las siguientes:

MDN Modelado de Negocio
REQ Requerimientos
AYD Anlisis y Diseo
IMP Implementacin
DES - Desarrollo
PRU Pruebas
DES Despliegue
GDP Gerencia de Proyecto
ACC Administracin de Cambios y Configuraciones

NombreEntregable: Nombre del entregable, no debe contener espacios y cada
palabra debe empezar con su primera letra en mayscula.

V0.00: Revisin actual del documento, por cada cambio que se realice, el entregable
debe contener la versin actual de la revisin.
Extensin: Los entregables deben ir con la extensin correspondiente.

Ejemplo:
WRSTREAM.AYD.D.PlanDeDesarrolloDeSoftware.v1.0.docx
3.1.2. Elementos de la Lnea Base del Proyecto

Todos los cambios autorizados deben hacerse sobre un estndar oficial en trminos
de lneas base del proyecto. Estas lneas base deben ser creadas peridicamente y





gestionadas durante el ciclo de vida, de tal manera, que representen configuraciones
estables que se utilizan como puntos de corte, en los cuales se congelan los
entregables del proyecto en un punto de tiempo determinado.

Durante el ciclo de vida del proyecto, se deben crear lneas base con una periodicidad
mnima que permita crear estas lneas base cada vez que se tenga una planificacin de
liberacin de un conjunto de requerimientos. El contenido de esta lnea base son
todos los artefactos que se hayan creado y modificado a lo largo del proyecto en la
versin en la que se encontraban al momento de la creacin de la lnea base. Se debe
crear esta lnea base en Subversin incluyendo los cambios generados por los
requerimientos que se quieren empaquetar o integrar en la lnea base.

El nombramiento de la lnea base se debe hacer utilizando el siguiente estndar:

PROYE_N.XXX.YY_DDMMAA

En donde:

PROYE: Abreviacin de mximo seis caracteres para identificar de manera nica el
proyecto o la aplicacin

N.XXX.YYY: Identificador nmero de la versin del producto que representa esta lnea
base:
o N: Nmero de la versin mayor del producto que va a ser liberada externa y
oficialmente.
o XXX: Nmero de 001 a 999 que representa la versin consecutiva del producto
en el entorno de integracin y aseguramiento de calidad. Cada liberacin que
tenga cualquier cambio debe tener un nmero consecutivo diferente.
o YY: Nmero de la versin del producto cuando se libera de manera no
intencionada, es decir, cuando los cambios hacen que se libere una versin
correctiva sobre una versin liberada previamente

DDMMAA: Da, Mes y Ao de la creacin de la lnea base.

Ejemplo:

WEBREU_1.018.001_250914
3.2. Administracin de Cambios y Configuraciones





3.2.1. Proceso de Administracin de Configuraciones
La creacin de lneas base se har en el flujo de Integracin del proyecto, cada una de
estas lneas base ser promovida durante el ciclo de vida utilizando los siguientes
niveles de promocin:

1. Creada
2. Construida
3. Probada
4. Rechazada
5. Liberada

El ciclo de vida para la Administracin de Configuraciones funciona de la siguiente
forma:

1. Los cambios realizados en el entorno de desarrollo se implementarn
utilizando el mecanismo de check in / check out de los elementos con una
vista que apunta al flujo de Desarrollo del Proyecto, estos son los cambios que
se deben implementar para darle soporte a los requerimientos solicitados.

2. Una vez estos requerimientos se han terminado, el Integrador informa cules
requerimientos estn listos para su entrega y procede a hacer la entrega de
estos requerimientos, ejecutando la operacin de entrega de los mismos,
mediante la cual estos requerimientos pasan al flujo de Integracin del
proyecto.

3. Segn la planificacin mantenida por el integrador, este decide agrupar o
empaquetar estos requerimientos para que hagan parte de una lnea base. La
creacin de lnea base analizar las actividades dependientes y se las informar
al integrador en caso que sea necesario. La lnea base recin creada estar en
el nivel de promocin Creada.

4. Se proceder a hacer una verificacin inicial de compilacin y de aceptacin del
build obtenido, despus de la cual la lnea base ser promovida a Construida,
en caso contrario ser promovida a Rechazada.

5. Cuando se planifique el paso a pruebas del lder tcnico, se proceder a hacer
una reorganizacin de la lnea base al flujo de Pruebas, en donde se harn las
pruebas respectivas por el lder del Grupo. En caso de que la verificacin sea
exitosa, la lnea base ser promovida a Probada_LG.






6. Cuando se planifique el paso a pruebas de aceptacin de usuario, se proceder
a hacer una reorganizacin de la lnea base al flujo de Pruebas U, en donde se
harn las pruebas de aceptacin de usuario. En caso de que la verificacin sea
exitosa, la lnea base ser promovida a Probada_U

7. Cuando se planifique el paso a produccin, se proceder a hacer una
reorganizacin de la lnea base al flujo de Produccin y se promover la lnea
base a Liberada.

8. Cuando existan correctivos urgente, se proceder a hacer un rebase desde el
flujo de Produccin al flujo hijo de Correctivos, en el cual se implementarn
las modificaciones urgentes que al ser terminadas se entregarn mediante una
operacin de entrega al flujo de Produccin. Para replicar estos cambios al
resto del entorno, se verificarn los rboles de versiones de los elementos
modificaciones y se har una operacin de entrega desde el flujo de
Correctivos hacia los flujos de Desarrollo y/o Integracin para que los
elementos tomen estos cambios.


3.2.2. Proceso de Administracin de Cambios

Se entiende como cambio todo aquello que afecte la lnea base del sistema.
Los cambios pueden proceder tanto a mejora como a la correccin de errores, el
procedimiento para el manejo de cambios se realizara de la siguiente manera:

Cada vez que se realiza una solicitud de cambio es deber llenar un formato que debe
quedar publicado en el sitio web del proyecto, toda la informacin necesaria debe ser
diligenciada y entregada al responsable de recibir esta solicitud.







DATOS DEL SOLICITANTE Y REQUERIMIENTOS

Nombre :
Cargo:
Email: Telfono:
Dependencia:


Nombre del Servicio:
Cambio:

Propsito:

Fechad sugerida para llevar
acabo el cambio:

Consecuencias de no llevar
acabo el cambio:



Elabor/Modifico Revis Autoriz


Nombre del solicitante
Miembro del Equipo de desarrollo

Ing. Carlos Aldana
Analista de Sistemas

Ing. Herman Chavez
Gerente TI





3.2.3. Comit de Control de Cambios
Se realizaran comits una vez por semana liderada por el lder del grupo quien se
reunir con todos los lderes del proyecto y le informaran al lder del grupo los
cambios efectuados dentro de la semana para evaluar el impacto que pueda tener
sobre el desarrollo del proyecto, tambin a modo de reunin extempornea se
pueden reunir un lder con el lder del grupo en cualquier momento en caso de
necesitar una evaluacin sobre un cambio para su aprobacin o rechazo de este.



4. HITOS
Se deben establecer la coordinacin y secuencia de actividades que puedan afectar la
implementacin o desarrollo del proceso en un cronograma.
Se debe incluir un plan que defina las dependencias con los procesos y los principales
hitos en la planificacin del proyecto labor realizada por el Lder de Planeacin.
Entre algunos hitos tenemos:

Definicin de lnea base
Implementacin del control de cambios
Inicio de pruebas

















5. RECURSOS

SOFTWARE IDEAS MODELER
Permite modelar visualmente UML

E/R STUDIO
Permite la creacin y Modelado de diagramas de Entidad Relacin.

MICROSOFT OFFICE 2013
Suite de oficina que incluye procesador de textos, hojas de clculo, presentaciones.

PROJECTLIBRE
Herramienta para la planeacin y seguimientos de proyectos

PUTTY
Permite acceso por ssh a los servidores.

TORTOISESVN
Cliente de control de cambios

CVS
Es un sistema de control de versiones, en l se guardan los ficheros fuente de nuestros
proyectos, con todas sus diferentes versiones. De esta forma, se pueden obtener versiones
antiguas, comparar unas con otras para ver qu cambios se han realizado, etc.

Los desarrolladores, con un cliente de CVS, pueden obtener los fuentes, modificarlos y volver
a subirlos al servidor, de forma que este almacenar tanto las versiones antiguas como la
nueva.

MAVEN
Es una herramienta de lnea de comandos, sin interface grfica de usuario. Permite realizar,
las siguientes actividades:

Crear la estructura de directorios de un proyecto java desde cero, creando
subdirectorios para los fuentes java, para los test unitarios, para los ficheros de
configuracin, etc.

Nos da directamente los comandos para compilar nuestro proyecto, generar los jar (o
war, ear, etc), el zip de distribucin de nuestro proyecto, etc.




Se encarga de guardar los jar de los que dependemos y de buscarlos en internet o en
el servidor que le indiquemos si no disponemos de ellos.

Cada vez que se compila con maven, se pasan automticamente todos los test
unitarios, dando fallo en el compilado si falla algn test.

Las ventajas de usar maven frente a no usarlo son bsicamente las siguientes:

Todos los proyectos tienen la misma estructura. Un desarrollador puede cambiar de
un proyecto a otro sin necesidad de que nadie le indique dnde estn las cosas.
Todos los proyectos se compilan de la misma forma. Un desarrollador que conozca
maven puede compilar el proyecto sin que nadie le diga dnde est el script de
compilado o cmo ejecutarlo.
No tenemos que preocuparnos de los jar que necesite nuestro proyecto, maven se
encarga de gestionarlos.

Con esta herramienta noy hay preocupacin de lanzar los test automticos cada cierto
tiempo. Maven lo hace por nosotros cada vez que compilamos.


REPOSITORIO
Estructura de directorios y archivos que usa maven para almacenar, organizar y recuperar
artefactos. Existen repositorios locales (file://) y remotos (http://)


ARTEFACTO
Es para maven la unidad mnima con la que trabaja a la hora de gestionar sus dependencias.


NEXUS
Es el software en el que est basado maven central, y que consiste ni ms ni menos que en
un repositorio de libreras que te permitir compartirlas entre toda tu organizacin. Existe
tambin una versin online de pago mantenida por Sonatype.


HUDSON
Es un sistema de integracin continua. Si tenemos Hudson arrancado y configurado, se
encargar de mirar todas las noches si ha habido cambios en los fuentes de CVS. Si ha habido
cambios, sacar los fuentes de CVS y los compilar. Si todo el proceso es correcto, dejar los
jar a disposicin del que los necesite. Si el compilado falla, enviar un correo a los
responsables del proyecto y a los desarrolladores que hayan metido los cambios en cvs.




Una herramienta de este estilo ayuda a que los fuentes en CVS compilen correctamente,
avisando por medio de email si hay algn problema.

Hudson tiene adems interface a travs del navegador web, en el que podemos ver de un
vistazo que proyectos han compilado correctamente, cuales han fallado, qu cambios se han
hecho en ellos, etc.


SONARQUBE
Es una plataforma abierta, para medir y gestionar la calidad del cdigo.
Como tal cubre los 7 ejes de calidad:

1. Arquitectura y Diseo
2. Comentarios
3. Duplicaciones
4. Estndares de cdigo
5. Pruebas unitarias
6. Errores potenciales
7. Complejidad

Vous aimerez peut-être aussi