Antonio Garea Muina TFM MasterDip
Antonio Garea Muina TFM MasterDip
Antonio Garea Muina TFM MasterDip
Tutores: Óscar García & Eduardo Sanjurjo Antonio Garea Muiña – 2018
1
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
RESUMEN
Nos ponemos en el supuesto de que nuestra Organización consigue un contrato con un Cliente
de ámbito internacional, y que nos encarga la dirección integral del mismo. La singularidad de
su modelo de gestión, basado en la innovación y la flexibilidad, y los logros alcanzados, han
convertido a dicho Cliente en uno de los mayores grupos de distribución de moda.
Este documento tiene como objetivo definir la implantación de un Servicio DevOps, que
mediante el uso de un conjunto de herramientas, patrones y buenas prácticas permita que los
productos software, desarrollados por el Departamento de Sistemas de Información de Cliente,
se construyan de una manera que puedan ser liberados en entornos productivos de una forma
ágil, segura y en cualquier momento.
Para la realización nos apoyamos en la aplicación de una Metodología Mixta, que combina:
SUMMARY
In the present Master's Thesis, the direction of an information technology project is presented.
We put ourselves on the assumption that our organization gets a contract with a client of
international scope, and that it entrusts us with the integral management of it. The uniqueness
of its management model, based on innovation and flexibility, and the achievements made,
became that customer in one of the largest fashion distribution groups.
This document aims to implement a DevOps service, which through the use of a set of tools,
patterns and best practices allows the software of the products by the Customer Information
Systems Department, is constructed in a way that will be serrated in productive environments in
an agile, safe and at any time.
For the realization we rely on the application of a Mixed Methodology, which combines:
Predictive Methodology, PMBOK®
Agile Methodology, SCRUM®
PALABRAS CLAVE
2
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Índice
RESUMEN ...................................................................................................................................... 2
SUMMARY ..................................................................................................................................... 2
PALABRAS CLAVE........................................................................................................................... 2
1. INTRODUCCIÓN ........................................................................................................................ 7
1.1. CONTEXTUALIZACIÓN........................................................................................................ 7
1.1.1. Desarrollo tradicional de software y problemática detectada ................................... 7
1.1.2. La solución: DevOps .................................................................................................. 10
1.1.3. Metodologías Ágiles – SCRUM .................................................................................. 12
1.2. DESCRIPCIÓN DEL PROYECTO ......................................................................................... 13
1.3. OBJETIVOS ....................................................................................................................... 13
1.4. CICLO DE VIDA DEL PROYECTO........................................................................................ 13
2. PLAN PARA LA DIRECCIÓN DEL PROYECTO............................................................................ 15
2.1. GRUPO DE PROCESOS DE INICIO ..................................................................................... 15
2.1.1. Acta de Constitución ................................................................................................. 15
2.1.2. Identificar a los interesados ...................................................................................... 23
2.2. GRUPO DE PROCESOS DE PLANIFICACIÓN...................................................................... 24
2.2.1. Plan para la dirección del proyecto ........................................................................... 24
2.2.2. Gestión del Alcance ................................................................................................... 25
2.2.3. Integración de metodología SCRUM ......................................................................... 32
2.2.4. Gestión del Tiempo ................................................................................................... 32
2.2.5. Gestión de los Costos ................................................................................................ 34
2.2.6. Gestión de la Calidad ................................................................................................. 36
2.2.7. Gestión de los Recursos ............................................................................................ 38
2.2.8. Gestión de las Comunicaciones ................................................................................. 40
2.2.9. Gestión de los Riesgos ............................................................................................... 42
2.2.10. Gestión de las Adquisiciones ................................................................................... 44
2.2.11. Gestión de los Interesados ...................................................................................... 45
2.3. GRUPO DE PROCESOS DE EJECUCIÓN ............................................................................. 46
2.3.1. Agilizar aplicando metodología SCRUM .................................................................... 46
2.3.2. Dirigir y gestionar el trabajo del proyecto ................................................................ 46
2.3.3. Gestionar el conocimiento del proyecto ................................................................... 47
2.3.4. Gestionar la participación de los interesados ........................................................... 47
2.3.5. Adquirir recursos ...................................................................................................... 47
2.3.6. Desarrollar el equipo ................................................................................................ 47
2.3.7. Dirigir el equipo ........................................................................................................ 48
3
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
4
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
5
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Tabla de ilustraciones
Ilustración 1- Desarrollo tradicional [Antonio Garea] ................................................................... 7
Ilustración 2- Problemática [Antonio Garea] ................................................................................ 9
Ilustración 3 - Interrelaciones DevOps [Antonio Garea] ............................................................. 10
Ilustración 4 - Ciclo DevOps [Ref: E06] ........................................................................................ 10
Ilustración 5 - Mapa de ruta DevOps [Ref: E07] .......................................................................... 11
Ilustración 6 - Características DevOps [Antonio Garea] .............................................................. 11
Ilustración 7- Beneficios DevOps [Antonio Garea] ...................................................................... 11
Ilustración 8 - Ciclo SRUM [Antonio Garea] ................................................................................ 12
Ilustración 9 - Ciclo de Vida Proyecto [Antonio Garea] ............................................................... 14
Ilustración 10 - Organigrama alto nivel [Antonio Garea] ............................................................ 22
Ilustración 11- Flujo gestión de cambios [Antonio Garea] .......................................................... 24
Ilustración 12 - Flujo gestión de alcance [Antonio Garea] .......................................................... 25
Ilustración 13 - Criterios SMART [Antonio Garea]....................................................................... 25
Ilustración 14 - EDT I [Antonio Garea]......................................................................................... 30
Ilustración 15 - EDT II [Antonio Garea]........................................................................................ 31
Ilustración 16- EDT III [Antonio Garea] ....................................................................................... 31
Ilustración 17 - Cronograma [Antonio Garea] ............................................................................. 33
Ilustración 18 - Organigrama completo [Antonio Garea] ........................................................... 38
Ilustración 19 - Flujo de gestion de riesgos [Antonio Garea] ...................................................... 42
Ilustración 20 - Dashboard Jira [Ref: E04] ................................................................................... 60
Ilustración 21 - Dashboard Confluence [Antonio Garea] ............................................................ 61
Ilustración 22 - Espacio de proyecto en Confluence [Antonio Garea] ........................................ 62
Ilustración 23- Herramientas DevOps [E08] ................................................................................ 63
Ilustración 24- Modelo Simplificado DevOps [Antonio Garea] ................................................... 64
Ilustración 25- Modelo SCRUM [Ref: E09] .................................................................................. 65
Ilustración 26 - Pizarra SCRUM [Ref. E12] ................................................................................... 88
Ilustración 27 - Pizarra SCRUM Virtual vs Física [Ref. E04] ......................................................... 88
Ilustración 28 - Dashboard Jira [Ref. E04] ................................................................................... 89
Ilustración 29 - Tempo [Ref. E04] ................................................................................................ 89
Ilustración 30 - Plantilla gesión del cambio [Antonio Garea] ...................................................... 90
Ilustración 31 - Modelo Checklist [Antonio Garea] ..................................................................... 90
Ilustración 32 - Encuesta satisfacción [Antonio Garea] .............................................................. 91
Ilustración 33- Modelo informe seguimiento [Antonio Garea] .................................................. 92
Ilustración 34 - Diagrama gantt ejecución SCRUM [Antonio Garea] .......................................... 92
Ilustración 35- Diagrama gantt seguimiento y control [Antonio Garea]..................................... 92
Ilustración 36 - Gráfico BurnDown [Ref. E10] ............................................................................. 93
Ilustración 37- Integración contínua [Ref. E11]........................................................................... 94
6
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
1. INTRODUCCIÓN
En el presente Trabajo de Fin de Máster se plantea la dirección de un proyecto de tecnologías
de la información.
Nos ponemos en el supuesto de que nuestra Organización consigue un contrato con un Cliente
de ámbito internacional, y que nos encarga la dirección integral del mismo.
1.1. CONTEXTUALIZACIÓN
El desarrollo de productos software es una consecución de fases y tareas que han de realizarse
en base a un orden y tiempo determinados. Las necesidades de usuarios, clientes y sectores de
negocio se han vuelto más exigentes a lo largo del tiempo, tanto en calidad del resultado final
como en tiempo de ejecución del proyecto.
A continuación, se realizará una presentación del marco de aplicación sobre el que tiene lugar
el desarrollo de este trabajo. Para ello se presentará:
El modelo tradicional de creación de software
El concepto DevOps y campo de aplicación
Las metodologías ágiles
Como podemos observar, y como consecuencia de los ‘gap’ originados, detectamos los
siguientes puntos de mejora:
7
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Vemos por lo tanto que los esfuerzos realizados no tendrán retorno ni valor como tal.
La existencia de equipos inmaduros, con el uso de SVN ocasionan cierto descontrol y malas
prácticas en la gestión de ramas, en especial los 'tags'. Esto hace difícil e ineficiente la traza de
cambios del código fuente.
Si bien es un tema que quedaría resuelto con una sesión de divulgación para corregir estos
comportamientos, no asegura que no se repliquen a futuro. Por ello se solicita que nuestro
Sistema, de forma automática, gestione la creación y archivado de 'tags'.
Por otro lado, dentro de los equipos más maduros, que trabajan de forma correcta con el
repositorio corporativo, crece la demanda de un sistema que permita trabajar de forma
distribuida (Git).
Como consecuencia del gran número de desarrollos y personas involucradas, somos alertados
del alto tráfico que se genera entre los equipos informáticos de los programadores y los
repositorios públicos de artefactos de los que hace uso su instalación local de Maven
(herramienta para la construcción de aplicaciones Java a partir del código fuente). Esto, aparte
de ser totalmente ineficiente, penaliza el rendimiento de varios procesos de la Organización en
horas de máxima actividad.
8
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Del mismo modo, no se puede asegurar que las aplicaciones pasaron por todos los test y
exigencias mínimas de calidad antes de su puesta en producción.
Por otro lado, con la configuración actual de entornos previos los equipos de desarrollo se ven
obligados a esperar al pase a preproducción para probar realmente su aplicación. Esto es debido
a que, a pesar de los volcados de datos periódicos a desarrollo, no es posible replicar todo el
ecosistema que tiene el entorno de preproducción/producción. Por ello las pruebas previas a la
liberación de una versión son en muchas ocasiones incompletas.
Problemas de calidad
El proceso de validación no se encuentra industrializado, con lo que el testeo y controles de
calidad se delegan en los equipos y áreas de desarrollo. Esto conlleva dos problemas:
9
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
10
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Todo esto no sería posible sin un conjunto de herramientas debidamente integradas, en el:
Características Beneficios
11
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Todas las metodologías que se consideran ágiles cumplen con el Manifiesto ágil, que no es más
que una serie de principios agrupados en tres valores:
Lo que se pretende con este tipo de metodologías es primar las tareas realmente importantes
frente a las que pueden ser menos importantes de cara al desarrollo del producto. Lo que mejora
en gran medida la productividad en el proceso de desarrollo.
1.1.3.1. SCRUM
Scrum es un método de trabajo ágil en el que se aplican de manera regular un conjunto de
buenas prácticas para trabajar colaborativamente, en equipo, y obtener el mejor resultado
posible dentro de un proyecto, minimizando así los riesgos derivados de los desarrollos muy
largos. Para esto es primordial la colaboración con el cliente, ya que es éste quien establece las
prioridades en función de sus necesidades.
Por ello, Scrum está especialmente indicado para proyectos en entornos complejos, donde se
necesitan obtener resultados de manera inmediata y donde la innovación, la competitividad, la
flexibilidad y la productividad son fundamentales.
12
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
El presente documento tiene como objetivo definir la implantación de un Servicio DevOps, que
mediante el uso de un conjunto de herramientas, patrones y buenas prácticas permita que los
productos software, desarrollados por el Departamento de Sistemas de Información de una
empresa, se construyan de una manera que puedan ser liberados en entornos productivos de
una forma ágil, segura y en cualquier momento.
1.3. OBJETIVOS
Los objetivos que buscamos con la realización de este proyecto:
El proyecto se inicia con la firma del acta de constitución y se finaliza con la implantación DevOps
realizada, con la entrega de la documentación, con la entrega de la checklist con la validación y
con la firma del acta de cierre.
13
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
14
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
PROBLEMAS DETECTADOS:
Tras las sucesivas reuniones de toma de requisitos con los responsables técnicos de las
diferentes áreas se crea la siguiente clasificación de problemas a solucionar con la
implantación del Sistema de Entrega Continua:
Problemas con la gestión de código
Problemas con la generación de artefactos
Problemas con la puesta en producción
Problemas con los procesos
PROPÓSITO:
Definir la implantación de un Servicio DevOps, que mediante el uso de un conjunto de
herramientas, patrones y buenas prácticas permita que los productos software,
desarrollados por el Departamento de Sistemas de Información de una empresa en un
entorno real, se construyan de una manera que puedan ser liberados en entornos
productivos de una forma ágil, segura y en cualquier momento.
15
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Cada uno de los puntos anteriores debe venir acompañado de la documentación oportuna:
Referencia documental de la herramienta y posibles alternativas (si se trata de un
producto).
Manual de instalación/configuración
Manual de usuario
16
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
OBJETIVOS
OBJETIVOS COMUNES:
OBJETIVOS INTERNOS:
17
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
SUPUESTOS Y RESTRICCIONES
SUPUESTOS:
El Cliente nos facilitará el hardware necesario.
El Cliente nos facilitará las máquinas maquetadas.
El Cliente asume la gestión de las Licencias Software de las herramientas a
implantar.
Será responsabilidad del Cliente seleccionar y comunicar los proyectos piloto.
Todo el código generado, así como la documentación asociada será propiedad del
Cliente.
RESTRICCIONES:
Debemos conocer las metodologías y procedimientos del Cliente para solicitar
recursos u operaciones sobre los mimos.
Informes semanales del estado de la implantación.
Una herramienta no se considerará implantada hasta que se aporte referencia
documental sobre la misma. Dicha referencia documental debe constar en el
gestor documental del Cliente.
El equipo de DevOps continuará prestando servicio mediante un nuevo contrato
por bolsa de horas.
TABLA DE RIESGOS:
RIESGO TIPO PROBABILIDAD IMPACTO
Rotación de personal Interno Moderada Medio
Reducción de presupuesto Externo Baja Alto
No satisfacción de las necesidades de
Interno Baja Alto
Cliente
Desviación de objetivos y cambios de
Interno Baja Alto
alcance
Falta de recursos durante las visitas a
Externo Baja Medio
Cliente
No se entregan los servidores en el plazo
Externo Media Medio
acordado
Sobrepasar el presupuesto acordado Interno Baja Alto
Problemas con los suministros (luz y agua) Interno Baja Medio
Ausentismo de los trabajadores Interno Baja Medio
Cambios en la
Interno Baja Medio
organización/equipo/dirección
18
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
TABLA DE OPORTUNIDADES:
OPORTUNIDAD TIPO PROBABILIDAD IMPACTO
Finalización adelantada de la ejecución Interno Media Medio
Posibilidad de obtener un nuevo proyecto Interno Media Medio
si presentamos un dossier de futuras
líneas de evolución
Equipo de Proyecto motivado, dinámico y Interno Alto Alto
comprometido
Posibilidad de trabajar desde las Externo Alto Medio
instalaciones Cliente
Posibilidad de saltar burocracia de Cliente Externo Bajo Bajo
Posibilidad de obtener información útil Interno Alta Alto
mediante el uso de encuestas de
satisfacción
Equipo de Proyecto cohesionado y Interno Alto Alto
multidisciplinar
Afianzarnos como proveedor y poder Interno Media Alto
participar en otros proyectos del Cliente
19
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
HITO FECHA
Firma contrato 06/11/2017
Acta de Constitución 10/11/2017
Modelado solución 05/03/2018
Obtencion recursos 09/04/2018
Implantación repositorio 30/04/2018
Implantación integracion continua 23/07/18
Implantacion scripts despliegue 20/08/2018
Implantacion arquetipos 15/20/2013
Implantacion plugin 15/20/2016
Integración proyectos piloto 15/10/2018
Acta de Cierre 22/10/2018
PRESUPUESTO ESTIMADO
Coste Proyecto
Implantación Servicio DevOps 173270,22€
Recursos técnicos 6000,00€
Mobiliario oficina 1.280,00 €
Licencia Servidores Integración Contínua 44000,00€
TOTAL (sin reservas) 224550,22€
Reserva de contingencias (5%) 11227,51€
Reserva de gestión (2%) 4491,00€
TOTAL (con reservas) 240268,74€
Resultado
IVA (21%) 50.456,44 €
IMPORTE COSTE PLANIFICADO 290.725,18 €
IMPORTE COSTE VENTA 319.797,69 €
MARGEN DEL PROYECTO (10% venta) 29.072,52 €
20
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
LISTA DE INTERESADOS
RECURSOS
21
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Director de
Proyecto
Responsable de Responsable de
Responsable de
Responsable de Calidad Riesgos, Responsable de
Adquisiciones y
Costos y Tiempo Seguimiento y Comunicaciones e Desarrollo TIC
Recursos
Control Interesados
22
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
23
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Análisis y compresión del alcance. Esto abarca los requisitos del proyecto y del producto,
criterios, supuestos, restricciones y otras influencias relativas a un proyecto y el modo
en que ellas se gestionarán o abordarán dentro del proyecto de implantación de un
Servicio DevOps.
Entender de qué manera utilizar la información identificada y transformarla luego en un
plan para la dirección del proyecto con un enfoque estructurado, haciendo uso de una
metodología mixta que integre el enfoque predictivo (PMBOK®) con un enfoque ágil
(SCRUM®).
Realizar actividades para producir los entregables requeridos para el proyecto de
restructuración y apertura. Medir y controlar todos los aspectos del avance del proyecto
y realizar las acciones apropiadas para cumplir con los objetivos planteados.
24
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Las técnicas y herramientas que utilizamos para obtener la información necesaria que nos
permite identificar y especificar requisitos son:
25
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Reuniones con el Cliente: Se realizan reuniones con los interesados identificados, con
el fin de determinar que se quiere y que no se quiere, así como identificar sinergias y
puntos críticos.
Analizar de tendencias de mercado: Conocer las capacidades de las herramientas, así
como las tendencias actuales y posibles evoluciones de las tecnologías, será
determinante para presentar al Cliente las líneas de trabajo alternativas y seleccionar
de entre ellas las que mejor se adapten al proyecto.
Estudio de normativa: Conocer que normativa aplica al ámbito de ejecución del
proyecto, así como conocer qué elementos específicos desea el Cliente que se cumplan
o adapten.
Estudio y documentación online: A través de diferentes páginas oficiales de información
se obtiene documentación relevante para la elaboración del alcance del proyecto.
Contacto con proveedores del conjunto Toolchain: El contacto con los proveedores de
las herramientas que implantaremos nos posibilita incluir en el alcance configuraciones
que posibiliten una sencilla actualización de la plataforma o bien evitar malas prácticas.
Comparativa de las alternativas: existentes en el mercado para formar nuestro
Toolchain.
Pruebas de concecpto y pilotos: Para obtener una visión de lo que cada elemento puede
llegar a ofrecer.
Requisitos identificados:
ID REQUISITO PRIORIDAD
26
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
REQ07 El servidor de Integración Contínua debe contar con soporte 24x7 por MEDIA
parte del fabricante.
REQ08 Realizar un plugin que integre la herramienta de seguimiento de ALTA
proyectos e incidencias del Cliente (Jira) con la plataforma DevOps,
permitiendo arrancar el proceso de liberación de versiones.
REQ09 En caso de detectarse un problema con la nueva versión será posible ALTA
realizar Rollback (en menos de dos minutos) a la versión previa de
forma automática desde Jira, mediante el plugin.
REQ10 Los despliegues se podrán parametrizar en base a configuración MEDIA
realizada en el servidor de integración contínua o bien por los
parámetros que le llegan desde el plugin.
REQ11 Los despliegues en producción (incluso rollback) no se realizarán de ALTA
forma automática, la característica quedará deshabilitada. Estos
despliegues se gestionaran mediante tickets Jira, petición expresa del
Cliente.
REQ12 Crear arquetipos-maven (batch, web, servicio web, cliente, librería) ALTA
software que permitan a los equipos de desarrollo generar un
esqueleto para agilizar los desarrollos de nuevas aplicaciones, así
como homogeneizar las arquitecturas, patrones, librerías y
soluciones utilizados.
REQ13 El acceso a la plataforma DevOps estará securizado mediante ALTA
validación contra Directorio Activo (LDAP), además de la gestión de
roles gestionada por cada herramienta.
REQ14 Generar documentación necesaria para que los equipos de desarrollo MEDIA
sepan cómo invocar la liberación de versiones desde Jira, mediante el
plugin.
REQ15 Generar documentación necesaria para que los equipos de desarrollo BAJA
puedan comenzar a utilizar los nuevos arquetipos software.
REQ16 Generar la documentación necesaria para instrumentar desde cero un BAJA
repositorio de código (Subversion y Git) en un entorno productivo.
REQ17 Generar la documentación necesaria para realizar la configuración del BAJA
servidor de artefactos (Artifactory) en un entorno productivo.
REQ18 Generar la documentación necesaria para realizar la configuración del BAJA
servidor de integración contínua (Bamboo) en un entorno productivo.
REQ19 Generar dossier de documentación con la información necesaria para BAJA
realizar la integración del Toolchain en un entorno productivo.
REQ20 Al final del proyecto debe quedar consolidado un equipo de servicio, BAJA
el Equipo DevOps, que se encargará de atender la operativa diaria
desde las instalaciones de Cliente.
REQ21 La plataforma DevOps debe permitir escalabilidad horizontal y estar BAJA
preparado soportar la carga de tres mil proyectos Java.
REQ22 Todas las automatizaciones deben poder ser ejecutadas de forma ALTA
manual a modo de contingencia, por lo que debe constar en la
27
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
OBJETIVOS
OBJETIVOS COMUNES:
OBJETIVOS INTERNOS:
28
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
ENTREGABLES
HITO FECHA
Firma contrato 06/11/2017
Acta de Constitución 10/11/2017
Modelado solución 05/03/2018
Obtencion recursos 09/04/2018
Implantación repositorio 30/04/2018
Documentación repositorio 30/04/2018
Implantación integracion continua 23/07/18
Documentación integracion continua 23/07/19
Implantacion scripts despliegue 20/08/2018
Documentación scripts despliegue 21/08/2018
Arquetipos Backlog 23/05/2018
Plugin Backlog 30/05/2018
Implantacion arquetipos 15/20/2013
Documentación arquetipos 15/20/2014
Dossier Bitácora SCRUM arquetipos 15/20/2015
Implantacion plugin 15/20/2016
Documentación plugin 15/20/2017
Dossier Bitácora SCRUM plugin 15/20/2018
Integración proyectos piloto 15/10/2018
Dossier actas de seguimiento semanal 15/10/2018
Acta de Cierre 22/10/2018
SUPUESTOS Y RESTRICCIONES
SUPUESTOS:
El Cliente nos facilitará el hardware necesario.
El Cliente nos facilitará las máquinas maquetadas.
El Cliente asume la gestión de las Licencias Software de las herramientas a
implantar.
Será responsabilidad del Cliente seleccionar y comunicar los proyectos piloto.
Todo el código generado, así como la documentación asociada será propiedad del
Cliente.
29
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
RESTRICCIONES:
Debemos conocer las metodologías y procedimientos del Cliente para solicitar
recursos u operaciones sobre los mimos.
Informes semanales del estado de la implantación.
Una herramienta no se considerará implantada hasta que se aporte referencia
documental sobre la misma. Dicha referencia documental debe constar en el
gestor documental del Cliente.
El equipo de DevOps continuará prestando servicio mediante un nuevo contrato
por bolsa de horas.
Implantación
Servicio Devops
Gestión Y Diseño Y
Administración Desarrollo
Actividades De
Actividades De Actividades De Actividades De
Ejecución Y
Inicio Planificación Cierre
Control
30
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Implantación
Servicio Devops
Gestión Y
Diseño Y Desarrollo
Administración
Trabajos Trabajos De
Trabajos
Trabajos De Maquetación Desarrollo Del
Maquetación
Adecuación Entorno Plugin De
Entorno TESTING
PRODUCCIÓN Integración
Dossier De Documentación
Oficinas Habilitadas
Licencias Plugin
Recursos Formados
Implantación
Servicio Devops
Gestión Y Diseño Y
Administración Desarrollo
Documentación Documentación
Arquetipos Scripts
31
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Los SCRUM Backlog: Una lista de requisitos del producto que se a generar.
Los SCRUM Sprints: Períodos en los que se realiza un incremento del producto, hasta
conseguir el producto finalizado.
32
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
2.2.4.2. Cronograma
33
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
2.2.5.1 Tipos
Diferenciamos dos grupos, costes materiales y costes de mano de obra:
Costes materiales:
Siguiendo el principio de prudencia ambos costos serán asignados a la actividad inicial ‘Acta de
Constitución’.
Licencia servidor integración contínua: Se compra la licencia para implantar la plataforma por
valor de 44.000,00€ (ver: https://es.atlassian.com/software/bamboo/pricing). Será asignado a
la tarea ‘Obtención de recursos’.
Coste de mano de obra:
Constituyen las tarifas/hora de los recursos que realizarán las actividades del proyecto. El
salario base del empleado se incrementa un 0,55%, que se corresponde con el coste para la
empresa (horas de formación, ausencias remuneradas, Seguridad Social...).
34
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
ACTIVIDAD COSTO
Sprint 1 8.740,80 €
Sprint 2 8.740,80 €
Sprint 3 7.850,00 €
Sprint 4 7.850,00 €
IMPLANTACIÓIN PLUGIN INTEGRACIÓN 30.542,00 €
Sprint 1 8.740,80 €
Sprint 2 7.840,80 €
Sprint 3 6.980,20 €
Sprint 4 6.980,20 €
Integración proyectos piloto 9.228,43 €
Validación Checklist aceptación 484,17 €
Elaborar Acta de Cierre 834,80 €
SEGUIMIENTO Y CONTROL 7.595,47 €
35
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
TOTAL
TOTAL (sin reservas) 224550,22€
Reserva de contingencias (5%) 11227,51€
Reserva de gestión (2%) 4491,00€
TOTAL (con reservas) 240268,74€
RESULTADO
IVA (21%) 50.456,44 €
IMPORTE COSTE PLANIFICADO 290.725,18 €
IMPORTE COSTE VENTA 319.797,69 €
MARGEN DEL PROYECTO (10% venta) 29.072,52 €
2.2.6.1. Roles
ROL RESPONSABILIDAD
36
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Excelente, 5 puntos
Bueno, 4 puntos
Regular,3 puntos
Deficiente, 1 punto
Utilizaremos Microsoft Project para obtener el CPI y el SPI. Y en caso de que el resultado sea
desfavorable (cuando no es mayor que 1), habrá que analizar la causa y realizar los ajustes
necesarios.
CONTROL ACCIONES
37
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Director de
Proyecto
Responsable de Responsable de
Responsable de
Responsable de Calidad Riesgos, Responsable de
Adquisiciones y
Costos y Tiempo Seguimiento y Comunicaciones e Desarrollo TIC
Recursos
Control Interesados
Arquitecto Java
Diseñador Gráfico DeOps Lead Analista Funcional
FullStack
38
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
R: responsable
A: aprueba
PJBACK
PJFRNT
DLEAD
C: consultado
PFULL
PFULL
IDEVS
AFUN
IDEVJ
RCSC
RRCI
ARQ
RAR
RDT
RCT
I: informado
DIS
DP
Firma
R
contrato
Acta de
R C C C C C
Constitución
Modelado
A C C C C C R R R R
solución
Obtencion
A R I I I I I I I I
recursos
Implantación
I I I I I A R R R R R
repositorio
Documentaci
ón I I I I I C R A R R R R
repositorio
Implantación
integracion I I I I I A R R R R R
continua
Documentaci
ón
I I I I I C R A R R R R
integracion
continua
39
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Implantacion
scripts I I I I I A R R R R R
despliegue
Documentaci
ón scripts I I I I I C R A R R R R
despliegue
Arquetipos
I I I I I A R R R C C C
Backlog
Plugin
I I I I I A C R R C C C
Backlog
Implantacion
I I I I I A R R R R R R
arquetipos
Documentaci
I I I I I C R R R R R R
ón arquetipos
Dossier
Bitácora
I I I I A R I I I I I
SCRUM
arquetipos
Implantacion
I I I I I A R R R R R R
plugin
Documentaci
I I I I I C R A R R R R
ón plugin
Dossier
Bitácora
I I I I A I I I I I I
SCRUM
plugin
Integración
proyectos I I I I I I A C R I
piloto
Dossier actas
de
R C C C C C I I I I I I I I I I
seguimiento
semanal
Acta de
R C C C C C
Cierre
40
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Miembro del
Acta de equipo de Equipo de Correo
Reunión Semanales
reunión proyecto proyecto electrónico
asignado
Promotor y
Acta de Director de Correo
Cierre Equipo de Una vez
Cierre Proyecto electrónico
proyecto
ELEMENTO DETALLE
41
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Los riesgos son circunstancias o eventos inciertos que, de producirse, tendrían un impacto
negativo o positivo sobre al menos algún objetivo del proyecto (alcance, tiempo, coste o
calidad).
El fin del “Plan de Gestión de Riesgos” es doble, por un lado, minimizar el impacto de los
riesgos positivos, y por otro maximizar las oportunidades (riesgos positivos).
Este plan define, la estrategia, que en cada caso particular se va a seguir, y cómo serán
organizadas y llevadas a cabo las actividades de gestión de riesgos.
42
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Es de vital importancia para obtener la aceptación y el apoyo de los interesados, con el fin de
que los procesos de gestión de riesgos sean llevados a cabo de forma eficaz durante el ciclo de
vida de nuestro proyecto.
Este proceso es continuo e iterativo, lo que implica que, según avance el proyecto existe la
posibilidad de que se presente nuevos riesgos y evolucionen los planificados inicialmente.
Muy
Bajo Bajo Bajo Moderado Moderado
Baja
IMPACTO
43
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
entorno. La combinación de los dos parámetros, mediante el uso de una matriz, nos permite
obtener el valor cuantitativo del riesgo analizado.
Alta
Alta
0,7 0,4 0,07 0,14 0,28 0,56
Moderada
0,5 0,3 0,05 0,1 0,2 0,4
Baja
0,3 0,02 0,03 0,06 0,12 0,24
Muy
Baja 0,1 0,01 0,01 0,02 0,04 0,08
IMPACTO
44
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
ALTO BAJO
• Empresas de la competencia
• Proveedores recursos hardware
BAJA
En base al análisis previo tendremos que tener especial atención en los siguientes grupos de
influencia:
Áreas transversales cliente: Son las que más pueden influir en nuestro proyecto, de
ellas dependemos en ciertos puntos para poder sacar las actividades adelante. Por ello
deberemos prestar especial atención a las relaciones e intercambios de información
con este grupo.
Áreas funcionales Cliente: Tienen poder, ya que podrían ocasionar desajustes
(presupuestos) o presiones (cambio de plazos) en las actividades del proyecto, pero
directamente no tienen influencia en el desarrollo de las mismas.
Proveedores licencias: Tienen poder, ya que podrían ocasionar desajustes
(presupuestos) o presiones (cambio de plazos) en las actividades del proyecto, pero
directamente no tienen influencia en el desarrollo de las mismas.
Áreas adjuntas: A pesar de tener poder, de entrada, no deberíamos vernos afectados
una vez arrancado el proyecto.
El resto de grupos: Tienen poca capacidad de influencia y poder.
45
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
En ambos casos existe una gran incertidumbre, así como la necesidad de adaptarse rápidamente
a los avances de configuración del entorno DevOps, por lo que se arrancarán como POC (prueba
de concepto), y en consecuencia recibirán una capa de gestión adicional, la capa de Metodología
SCRUM.
De este modo dado que aplicaremos una metodología mixta, durante la ejecución entraran en
juego los siguientes elementos:
46
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Costes incurridos
Desviaciones
Proyecciones de beneficios/pérdidas a final de proyecto
Posibilidades de solicitudes de cambio
Del mismo modo, la documentación generada hasta este momento por el equipo del proyecto
durante la ejecución será actualizada y, se implementarán cambios en lo que refiere a
cualquier concepto relativo al proyecto:
Requisitos
Cronograma
Costes
Calidad
Recursos y Adquisiciones
Riesgos
Comunicaciones
47
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Actas de Reunión
Informes de estado y desempeño
Notificaciones a los interesados
Estado de Solicitudes de cambio
Lecciones aprendidas
48
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Se llevan a cabo reuniones durante el desarrollo del proyecto para realizar el seguimiento del
trabajo y ver el avance del mismo.
Las herramientas:
Microsoft Project
Atlassian Jira, ver ANEXO A1.2 – Jira.
Las herramientas:
Las herramientas:
49
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Las herramientas:
50
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Las herramientas:
Microsoft Project
Las herramientas:
Microsoft Project
Atlassian Tempo, ver ANEXO A8 – Tempo.
Microsoft Excel
Las herramientas:
51
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Las herramientas:
Las herramientas:
Las herramientas:
52
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Estas tareas se realizar con reuniones tanto formales como informales siendo grupales y/o
individuales según decida el Director de Proyecto en cada caso.
Las herramientas:
Tempo
Reuniones de concertación
Reuniones de equipo
Bajo rendimiento
Conflicto
Disponibilidad
Las herramientas:
A medida que el proyecto se va desarrollando se van comparando los requisitos del proyecto
con los entregables, si estos cumplen con las expectativas del cliente se consideran aceptados,
por este motivo se realizará una recepción y revisión formal. En caso contrario, se dará lugar a
una no conformidad y como consecuencia a una solicitud de cambio.
Las herramientas:
53
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Las herramientas:
Reuniones-efectivas
Actas de reunión
Herramientas software:
o Atlassian Jira, ver ANEXO A1.2 – Jira.
o Microsoft Project
o Microsoft Excel
o Atlassian Confluence, ver ANEXO A1.3 – Confluence.
Informe de seguimiento, ver ANEXO A12 – Modelo informe seguimiento.
54
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Nótese que, aunque las metodologías ágiles abogan por ‘no documentar todo’ en este caso si
se considera de utilidad el mantener traza de los temas vistos en las reuniones, por:
Las herramientas:
Actas de reunión
Pizarra SCRUM, ver ANEXO A7 – Pizarras SCRUM.
Gráfico BurnDown SCRUM, ver ANEXO A14 – Gráfico BurnDown.
Atlassian Jira, ver ANEXO A1.2 – Jira.
El Director de Proyecto, con la finalidad de comprobar y demostrar que todos los objetivos
marcados fueron cumplidos bajo los criterios pactados, será el responsable de:
Por tanto, de forma previa se debe preparar la Documentación de Cierre, así como la
Documentación de las Lecciones Aprendidas, adicionalmente se reflejan los datos finales más
relevantes del desempeño del proyecto: cumplimiento de coste, plazo y calidad.
Las herramientas:
55
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Checklist de validación
Project
56
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
3. CONCLUSIÓN
Mencionar el uso de una metodología en dos capas, que hace uso de:
Se tienen en cuenta todos los aspectos Hay una gestión continua del riesgo
del proyecto de una manera global Existe una total flexibilidad en las
Se puede estimar una fecha de modificaciones
finalización, a través del cálculo del Se mantiene una comunicación
camino crítico (CPM) constante con el cliente, y los demás
Resulta posible identificar cuellos de interesados del proyecto
botella (PERT y CPM) Las especificaciones del producto final se
Las dependencias entre las actividades adaptan a parámetros realistas en el
son las que definen un flujo realista de contexto del proyecto
trabajo y una correcta asignación de Revisión y control continuo de los plazos
recursos (PERT) - El proyecto se ajusta a y costes
una estimación de presupuesto Se da una correcta gestión de la
Existe una visión global de los objetivos a incertidumbre, que permite rapidez de
conseguir en el cierre del proyecto y unas respuesta ante situaciones inesperadas
especificaciones concretas - Existe una Se aprende de las lecciones aprendidas
predicción de recursos, y es posible durante la ejecución del proyecto
predecir sobre asignaciones
Se pueden estimar costes, recursos y
resultados a medio y largo plazo
57
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
4. ANEXOS
A1 – Ecosistema Cliente
A1.1 – Estructura
El Departamento de Sistemas se encuentra dividido en áreas, que a su vez según su
naturaleza se clasifican en:
Áreas transversales, orientadas a dar soporte y cubrir necesidades del resto de áreas:
Arquitectura de Software
Arquitectura y Administración Hardware
BBDD
Telecomunicaciones
Seguridad
Operaciones
58
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Las aplicaciones Java que se desarrollan en el seno del Departamento de Sistemas son de los
siguientes tipos:
• Aplicaciones WEB
• Servicios WEB
• Aplicaciones cliente
• Procesos Bach, para ser ejecutados periódicamente o bajo petición
Los equipos pueden integrar en sus desarrollos el uso de los siguientes recursos:
• Maven: La compilación, empaquetado, construcción, ejecución de tests unitarios
y generación de informes de código del proyecto se realizará con la herramienta
Maven.
• Hibernate: Para el acceso a datos se usará el mapeador objeto-relacional (ORM)
Hibernate. Se podrá prescindir en algunos casos del uso de Hibernate siempre
que Arquitectura de Software lo valide bajo petición justificada del equipo de
diseño y desarrollo.
• Spring Framework: Para la gestión de la transaccionalidad sobre Hibernate, la
inyección de dependencias (inyección de las implementaciones de los interfaces),
la integración de las distintas tecnologías usadas en el proyecto, se usa Spring
Framework.
• Spring MVC: En los proyectos con interfaz Web se usará como framework Model-
View-Controller para integrar la capa de modelo con la capa de vista la librería
Spring MVC.
A1.2 – Jira
JIRA es una aplicación Web en Java, desarrollada por Atlassian, para el seguimiento
de incidencias y para la gestión operativa de proyectos.
Inicialmente Jira se utilizó para el desarrollo de software, sirviendo de apoyo para la gestión de
requisitos, seguimiento del estados y errores. Jira puede ser utilizado para la gestión y mejora
de procesos gracias a sus funciones para la organización de flujos de trabajo.
TÉRMINO DEFINICIÓN
Petición Trabajo a realizar, que según los equipos/áreas involucrados puede ser de
ámbito:
Local: tareas, incidencias, mejoras,... a resolver por lo integrantes de
un proyecto o área concretos.
Trasversal: cuando los trabajos se derivan hacia otras áreas del
Departamento de Sistemas.
Proyecto Se identifican como proyecto:
Proyecto: trabajo o conjunto de trabajos definidos como tal por
Oficina de Proyectos.
Agrupación funcional/técnica: conjunto de trabajos en los que
dividimos/agrupamos el evolutivo y correctivo por aplicación y/o
tecnología.
59
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
A1.3 – Confluence
Confluence es un “wiki” corporativo desarrollado en Java, comercializado por Atlassian. Es la
principal base de conocimiento para los equipos de trabajo y a través de esta herramienta
pueden acceder a información sobre los diferentes procesos que deben conocer para desarrollar
su actividad. (Por ejemplo, los procedimientos de interacción entre Áreas
Transversales y Áreas Funcionales).
60
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Confluence posee un sistema de permisos muy granular, que permite controlar quién
puede ver, crear, editar, comentar… contenidos. Es una herramienta intuitiva, fácil de utilizar,
no requiere conocimientos específicos.
61
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
A2 – Herramientas DevOps
Como DevOps pretende ser un modo de trabajo interfuncional, en lugar de una sola herramienta
de DevOps existen conjuntos o toolchains de múltiples herramientas. Se espera que tales
herramientas de DevOps encajen en una o más de estas categorías, que reflejen los aspectos
clave del proceso de desarrollo y entrega:
Algunas categorías son más esenciales en una cadena de herramientas DevOps que otras;
especialmente la integración continua (por ejemplo, Jenkins) y la infraestructura como código
(por ejemplo, Docker).
62
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
63
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
64
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
A5 - Modelo SCRUM
65
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Se definen varios roles, que juntos forman el equipo Scrum. Tendrán distintas funciones durante
el desarrollo del proyecto:
Lista de producto o product backlog: es una lista de los requisitos del producto. El dueño
del producto es el único responsable de su contenido y el orden de prioridades de las
tareas. Puede actualizarse en cualquier momento.
Lista de pendientes del sprint o sprint backlog: elementos de la lista de producto
seleccionados para el próximo sprint.
Incremento o increment: elementos de la lista de productos completados durante un
sprint.
En Scrum existen eventos predefinidos, con la idea de minimizar las reuniones no programadas.
66
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
A6 – Gestión de riesgos
A6.1. – Identificación de riesgos
ID RIESGO NEGATIVO CLASIFICACIÓN
67
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
68
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
69
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
70
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
71
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
72
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
73
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
74
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
75
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
76
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
77
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
78
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
79
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
80
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
81
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
82
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
83
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
84
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
85
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
86
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
87
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Responsable
Financiero
RP18 Evitar Somos una empresa de desarrollo software Director
Bueno no nos interesa ahora esta colaboración. Proyecto
RP19 Favorecer Favorecer el intercambio de información y Director
una moderada participación en tareas Proyecto
entre equipos de diferente especialidad. La
idea es tener una visión global y ‘ver el
Bueno bosque’.
Podemos observar unos casos reales de la herramienta en su versión virtual (Jira) y física:
88
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
A continuación, se muestra un dashboard de Jira adaptado para reflejar el trabajo con SCRUM:
A8 - Tempo
Tempo es un plugin desarrollado para extender las capacidades de Jira en lo concerniente a
time tracking y gestión de recursos. En nuestro caso utilizamos la funcionalidad que permite
llevar un control de las horas incurridas en cada una de las tareas Jira. Una vez registradas es
posible exportar la información en Excel y llevarlo a otras plataformas.
89
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Junto con los datos extraídos de Microsoft Project nos facilita llevar una correcta gestión de los
costos, así como determinar si el equipo es productivo y bajo qué circunstancias.
90
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
91
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
92
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
A continuación, un ejemplo:
El gráfico muestra el número de tareas en el proyecto, así como sus iteraciones. Si el proyecto
está avanzado, la línea se inclinará hacia abajo para mostrar el progreso. Una pendiente hacia
arriba indicará un aumento de las tareas del proyecto, identificando la presencia de problemas
u obstáculos.
93
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Para la obtención de datos se tomaron como referencia los diez proyectos que mejor funcionaba
en el Cliente y se incorporaron al modelo de integración contínua. Así cada nueva versión era
tratada en paralelo.
94
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Los tiempos de despliegue rondan los 25 minutos (como requisito el tiempo máximo no debe
exceder los 10 minutos), sin embargo, esto es debido a que no tenemos todavía el plugin que
actuaría como disparador del proceso y con el esquema actual se revisan los cambios de código
cada 20 minutos (de ahí los tiempos). Con el plugin integrado los tiempos cumplirán con la
checklist.
En base a estos datos, claramente vemos el primer retorno de la implantación, se reduce el TTM,
aumenta la calidad y la fiabilidad del proceso de desarrollo.
Gestión Y Administración
Acta De Constitución De Proyecto: Documento que ofrece una visión global del
documento, con información de alto nivel.
Plan Para La Gestión Del Proyecto: Documento que define como se va a ejecutar el
proyecto.
Informe de Seguimiento Semanal: Documento que refleja la situación del proyecto en
el momento de su realización.
Dossier De Gestión De Cambios: Documento que recoge el registro de cambios
realizados para el proyecto.
Actas SCRUM Weekly: Documentos que reflejan la situación y conclusiones semanales
de los spring.
95
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
Diseño Y Desarrollo
96
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
5. BIBLIOGRAFÍA Y EGRAFÍA
5.1. BIBLIOGRAFÍA
[B01] Material didáctico MDIP, 2018
[B02] PMBOK 6ª Edición, 2017
[B03] Gestión de proyectos en el mundo real, Bonnie Biafore &Teresa S. Stover, 2012
[B04] Microsoft Project 2016 Step by Step, Carl Chatfield & Timothy Johnson, 2016
[B05] Gestión de Proyectos, Dr. William Wallace,2002
[B06] The DevOps Handbook, Gene Kim, Jez Humble, Patrick Debois, John Willis, John
Allspaw,2016
[B07] Essential Scrum: A Practical Guide to the Most Popular Agile Process, Kenneth S.
Rubin, 2012
5.2. EGRAFÍA
[E01] SCRUM, http://www.scrumguides.org/, 2018
[E02] Project Management, https://www.projectmanagement.com, 2018
[E03] Manifiesto ágil, http://agilemanifesto.org/iso/es/manifesto.html, 2018
[E04] Atlassian. Bamboo Jira Confluence SCRUM, https://www.atlassian.com, 2018
[E05] Tempo, https://www.tempo.io/, 2018
[E06] DevOps, http://www.hositech.com, 2018
[E07] DevOps, http://software.microfocus.com, 2018
[E08] DevOps, https://idevops.blog, 2018
[E09] SCRUM, https://rahulchaitanya.wordpress.com, 2018
[E10] SCRUM, https://gustavopeiretti.com/, 2018
[E11] Integración Contínua, https://insights.sei.cmu.edu, 2018
[E12] SCRUM Pizarra, www.patboard.com, 2018
97
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
98
AUTOR: Antonio Garea Muíña - [2018]
IMPLANTACIÓN DE UN SERVICIO DEVOPS
2018
99
AUTOR: Antonio Garea Muíña - [2018]