Sunteți pe pagina 1din 34

Gestin de la

configuracin
13200198 - LPEZ VILLANUEVA, TIMOTEO ANDRS
13200188 - VEGA BLAS, ROBERT JAIME
Primera Ley de la ingeniera de sistemas

Sin importar en qu momento del ciclo de vida del


sistema nos encontremos, el sistema cambiar y el
deseo de cambiarlo persistir a lo largo de todo el
ciclo de vida.

Software Configuration Management, Bersoff, Henderson &


Siegel, Prentice-Hall, 1980
Cambios a la vista
Nuevas necesidades de los clientes que requiere
modificaciones en los datos del sistema.
Nuevos requisitos o condiciones del negocio.
Restricciones presupuestarias o de planificacin que
provocan una redefinicin del sistema o del producto.
Ya es un hecho que el cambio existe dentro del desarrollo de
software, entonces existe una pregunta a contestar:
Qu hacer en relacin a los cambios que van
surgiendo?
Empiezan los problemas
Comienza a aparecer confusin e incertidumbre
dentro del equipo de trabajo.
Las personas que construyen algo se hacen
indispensables, dado que son los nicos que
pueden hacer los cambios.
La calidad de los productos empieza a
disminuir.
No se logra mantener el ritmo de produccin
debido a que los desarrolladores deben
tambin mantener sistemas en funcionamiento.
Por qu?
Muchos desarrolladores trabajan en un software que tendr
(inevitablemente) cambios.
Necesidad de soportar mltiples versiones de un mismo software,
que evoluciona con el tiempo.
Sistemas en produccin
Sistemas personalizados (diferentes funcionalidades)
Sistemas bajo desarrollo
El software debe ejecutarse en distintas mquinas y SO.
Todas las dificultades antes mencionadas pueden ser corregidas
mediante tcnicas de Gestin de Configuracin de Software.
Qu es?
Conjunto de procesos destinados a asegurar la validez de todo producto
obtenido durante cualquiera de las etapas del desarrollo de un Sistema
de Informacin (S.I.), a travs del estricto control de los cambios
realizados sobre los mismos y de la disponibilidad constante de una
versin estable de cada elemento para toda persona involucrada en el
citado desarrollo.
Engloba las disciplinas y tcnicas de iniciacin, evaluacin y control del
cambio de software durante y despus del proceso de ingeniera de
software.
Adaptacin por proyecto
Cada proyecto debe establecer un sistema de gestin de
configuracin de software. Todas los elementos de software, por
ejemplo documentacin, cdigo fuente, cdigo ejecutable,
archivos, herramientas, software de prueba y datos, deben
estar sujetos al SCM (Software Configuration Management)
Estandares aprobados por ANSI
IEEE 828: Software Configuration Management Plans
IEEE 1042: Guide to Software Configuration Management
Conceptos Generales
Control de versiones .- Evolucin de un elemento.
Control de configuracin .- Evolucin de un conjunto de elementos.
Control de cambios .- Metodologa de desarrollo evolutivo.
Revisiones y variantes
Configuraciones alternativas.
Branch-merge.
Repositorio .- Almacn de informacin organizado.
Conceptos importantes
VERSIN Forma particular de un objeto en un instante o contexto dado

Conjunto de las versiones de los objetos componentes que


CONFIGURACIN forman un sistema consistente en un instante dado

Configuracin operativa del sistema software, a partir de la


LNEA BASE cual se puede desarrollar un cambio.

CAMBIO Es el paso de una versin de la lnea base a la siguiente


Conceptos importantes
Modificaciones menores en una versin de un componente.
REVISIN Evolucin en el tiempo de una versin (variacin temporal)

Versin de un componente (o de la configuracin global) que


VARIANTE evoluciona por separado (variacin espacial).

Almacn general de versiones, guarda la informacin de la


evolucin del sistema (historia), de los componentes en s
REPOSITORIO (datos + metadatos). Dispone de un sistema de representacin
especializado para las versiones.
Actividades clave
Roger S. Presman - Ingeniera de Bob Aiello - Configuration
Software: Un enfoque prctico Management Best Practices
1. Identificacin de configuracin 1. Gestin de cdigo fuente
2. Control de cambios 2. Ingeniera de construccin
3. Estado de configuracin 3. Configuracin de entornos
4. Auditora de configuracin 4. Control de cambios
5. Ingeniera de lanzamiento o
liberacin
6. Despliegue
1. Gestin de cdigo fuente
Se consideran los siguientes factores:
Sistema de control de versiones
Control de Roles y Usuarios
Flujo de Trabajo
Herramientas de Interfaz
Herramientas

Comparativa: https://biz30.timedoctor.com/git-mecurial-and-cvs-comparison-of-svn-software/
Repositorios en la Nube
Uso actual

Los nmeros reflejan el inters de bsqueda


en relacin con el mayor valor de un grfico
en una regin y en un periodo determinados.
Uso actual
2. Ingeniera en construccin
Se consideran los siguientes factores:
Herramientas de construccin
Herramientas de Interfaz
Herramientas
Uso actual
Uso actual
3. Configuracin del entorno
Depende mucho del proyecto a utilizar y de las caractersticas
de cada grupo de desarrollo
Objetivo: Lograr establecer el mismo escenario en: mquinas
de pogramadores, servidores de pruebas y servidores de
finales del producto.
Cada escenario debera tener configurado los mismos
paquetes, dependencias y aplicaciones en aras de evitar
errores durante la fase de prueba y despliegue.
Uso actual
Uso actual
4. Control de cambios
Se utilizan herramientas para la gestin del proyecto
Herramientas ms usadas:
Redmine
Jira
Mantis BT
Trac.
Uso actual
Uso actual
5. Ingeniera de Liberacin
Se utilizan herramientas para la integracin continua.
Los sistemas de integracin continua permiten, entre otras muchas
actividades, la ejecucin de las siguientes tareas: construcciones
nocturnas, pruebas de integracin, generacin de documentacin,
anlisis estadstico del cdigo y generacin de reportes.
Herramientas ms usadas:
Hudson,
Jenkins,
Atlassian Bamboo.
Uso actual
Uso actual
5. Despliegue
El despliegue de los sistemas puede realizarse de forma manual,
semiautomatizada o completamente automatizada. Los despliegues
automticos frecuentemente se realizan utilizando herramientas de
integracin continua como las descritas en el punto anterior.
Otras Herramientas:
Git-FTP
FileZila
Modelo de Gestin de
la Configuracin
Conclusiones
La gestin de configuracin, vista ya sea como una disciplina o pilar del desarrollo de
software permite no solo tener un historial de cambios sino tambin ayuda a mantener la
integridad de los productos que se van desarrollando, garantizado la no ocurrencia de
cambios incontrolados y tener siempre la versin correcta de todo objeto.
La gestin de configuracin facilita el mantenimiento del sistema, aportando informacin
precisa para valorar el impacto de los cambios solicitados y reduciendo el tiempo de
implementacin de un cambio, tanto evolutivo como correctivo.
Los grupos de trabajo deben realizar la seleccin de las herramientas segn su entorno
porque las variantes son muchas. Sin embargo, tener en cuenta las grficas presentadas
durante la seleccin de herramientas para un entorno de desarrollo de
software ayudar a elevar los niveles de productividad y se reducirn los errores.
Reflexin final

El cambio es inevitable dentro del proceso de


desarrollo de software. Estar preparados para el
cambio y controlarlo es sinnimo de madurez para
la organizacin.
Referencias
1. Mtrica v3 - Gestin de la Configuracin. Ministerio de Administraciones Pblicas. Espaa
2. Gestin de la Configuracin. Manuel Collado. Asignatura: Entornos de Programacin.
2014
3. Gestin de la configuracin. EcuRed. Visitado el 08/04/2017. Recuperado de
https://www.ecured.cu/Gesti%C3%B3n_de_la_Configuraci%C3%B3n
4. Software Configuration Management. B. Brgge, A. Dutoit. Universidad de Zurich.
Departamento de Informtica. Pearson Education.2004
5. ESA PSS-05-09 Guide to Software Configuration Management. Board for Software
Standardisation and Control (BSSC) - European Space Agency . Revisin 1. Marzo 1995.
Francia.
6. Gestin de Configuracin - Tendencias 2015. Manuel Morejn. Visitado el 08/04/2017
Recuperado de http://mmorejon.github.io/blog/gestion-configuracion-tendencias-junio-2015/
7. Qu es la Gestin de Configuracin?. Manuel Morejn. Visitado el 10/04/2017
http://mmorejon.github.io/blog/que-es-la-gestion-de-configuracion/

S-ar putea să vă placă și