SlideShare una empresa de Scribd logo
26.10.2017
Plain Concepts
Web Day
Rodrigo Cabello
VSTS, GIT, Integración continua y
deployment
Software Engineer
2
9:00 – 9:45 Diseño Web - Paloma Celaá
9:50 - 10:35 Arquitectura de componentes Front. Typescript y Angular – Carlos
Bastos
10:40 - 11:25 Autenticación. Configuración del inyector de depencias y
controladores – Carlos Landeras
11:25 - 11:45 Break
11:45 - 12:30 Integración de Front con Back. Nswag: cómo generar los typing – Luis
Ruiz Pavón
12:35 - 13:20 Estrategias de testing. Buenas prácticas – Unai Zorrilla
13:25 – 14:10 VSTS, GIT, Integración continua y
deployment – Rodrigo Cabello
Plain
Concepts
Web Day
Experiencia de más de 8 años en el desarrollo de aplicaciones web.
Apasionado de las nuevas tecnologías y aplicaciones que utilizan
técnicas basadas en Inteligencia Artificial.
Rodrigo Cabello
@plainconcepts #WebDayMadrid 3
@mrcabellom
Software Engineer
Qué veremos
4
1. DevOps
2. Metodologías ágiles
3. Control de versiones
4. Integración continua
5. Entrega continua
5
DevOps
¿Qué es DevOps?
• Desarrollo + Operaciones (Comunicación, colaboración e integración entre desarrolladores software e IT).
• Metodología para creación de Software.
• Realizar Software más rápidamente, con mayor calidad, menor coste y altísima frecuencia de releases.
Dev Ops
@plainconcepts 6
7
Metodologías Ágiles
SCRUM
Implementa los principios ágiles como un conjunto de artefactos, prácticas y roles
Metodologías Ágiles
@plainconcepts 8
Roles de SCRUM
- Product Owner
- Scrum Master
- Scrum Team
Kanban
• Utiliza principios y artefactos propios diferentes de SCRUM.
• No especifica nada acera de liturgias y Roles.
• Flujo de trabajo continuo y constante.
• Concepto de Work in progress (WIP).
Metodologías Ágiles
@plainconcepts 9
Visual Studio Team Services
• Soporte para SCRUM (Sprints, capacidad..) y Kanban (WIP)
• Definición de Epics, Features e Historias de Usuario y Bugs
• Métricas y seguimiento. Burndown, cumulative Flow.
Metodologías Ágiles
@plainconcepts 10
11
Control de Versiones
• Realizar un control de versiones del código fuente.
• Git como sistema de control de versiones.
• Gestionar ramas de una manera fácil y eficiente (según nuestras necesidades)
– Dev
– Master
Control de Versiones
@plainconcepts 12
Sistema de control de versiones distribuidos
• Modelo de ramas dependiente del proyecto y del estado del mismo.
– Dev
– QA (testing exploratorio)
– master
• Rama feature/--- por historia de usuario.
• Rama hotfix/--- por cada corrección sobre master.
• Tags en master y QA
• Política de ramas:
– Pull request master
– Mínimo de 2 aprobadores
Control de Versiones
@plainconcepts 13
14
Integración Continua
• Realizar integraciones automáticas de un proyecto lo más a menudo posible.
• Ventajas:
– Feedback rápido. Detección de errores.
• Ejecución automática cada vez que se sube código a una rama.
• Principales tareas:
– Compilación.
– Ejecución de pruebas (test unitarios, integración, e2e…)
– Creación artefacto.
Integración Continua
@plainconcepts 15
Visual Studio Team Services
• Fácil definición de tareas para realizar la integración continua.
• Soporte para aplicaciones .Net, Java, PHP o Python
• Agrupación de tareas.
• Definición de triggers para cada rama.
Integración Continua
@plainconcepts 16
Tokenize tasks
17
Entrega Continua
• Proceso que consiste en la prueba, preparación y
despliegue de un artefacto a un entorno de producción.
• Diferentes entornos y pipelines
– Desarrollo
– QA
– Pre
• Tiene lugar después de cada integración continua.
• Soporte de patrones como Blue/Green deployment (slots)
Entrega Continua
@plainconcepts 18
Visual Studio Team Services
• Fácil creación de Pipelines:
– Artefactos
– Entornos
• Definición de precondiciones y postcondiciones para los
distintos entornos
– Aprobadores
– Triggers (Filtrado por artefacto)
Entrega Continua
@plainconcepts 19
¡GRACIAS!
www.plainconcepts.com
@plainconcepts
www.plainconcepts.com
MADRID
Paseo de la Castellana 163, 10º
28046 Madrid. España
T. (+34) 91 5346 836
BILBAO
Calle Ledesma 10-bis 3º
48001 Bilbao. España
T. (+34) 94 6073 371
BARCELONA
Carrer Compte d’Urgell 240 4º 1A
08036 Barcelona. España
T. (+34) 93 7978 566
SEVILLA
Avenida de la innovación s/n
Edificio Renta Sevilla, 3º A
41020 Sevilla. España
DUBAI
Dubai Internet City. Building 1
73030 Dubai. EAU
T. (+971) 4 551 6653
LONDON
Impact Hub Kings Cross
24B York Way, N1 9AB
London. UK
SEATTLE
1511, Third Ave
Seattle WA 98101. USA
T. (+1) 206 708 1285

Más contenido relacionado

La actualidad más candente

Novedades .Net Core - NetBaires
Novedades .Net Core - NetBairesNovedades .Net Core - NetBaires
Novedades .Net Core - NetBaires
fernando sonego
 
Gestión de proyectos con Maven
Gestión de proyectos con MavenGestión de proyectos con Maven
Gestión de proyectos con Maven
Víctor Leonel Orozco López
 
ASP.NET MVC Workshop Día 3
ASP.NET MVC Workshop Día 3ASP.NET MVC Workshop Día 3
ASP.NET MVC Workshop Día 3
Rodolfo Finochietti
 
Autobuses de Madrid en tiempo real con Azure Relay
Autobuses de Madrid en tiempo real con Azure RelayAutobuses de Madrid en tiempo real con Azure Relay
Autobuses de Madrid en tiempo real con Azure Relay
Manuel Rodrigo Cabello Malagón
 
Kubernetes: Do's, don'ts and why's
Kubernetes: Do's, don'ts and why'sKubernetes: Do's, don'ts and why's
Kubernetes: Do's, don'ts and why's
Eduard Tomàs
 
[El comercio]php zend framework (speech)
[El comercio]php zend framework (speech)[El comercio]php zend framework (speech)
[El comercio]php zend framework (speech)
Ernesto Anaya
 
Introducción a ASP.NET Web API
Introducción a ASP.NET Web APIIntroducción a ASP.NET Web API
Introducción a ASP.NET Web API
Rodolfo Finochietti
 
IoT y Dispositivos
IoT y DispositivosIoT y Dispositivos
IoT y Dispositivos
Rodolfo Finochietti
 
Containers en .NET (Dot Net 2018 - Spain)
Containers en .NET (Dot Net 2018 - Spain)Containers en .NET (Dot Net 2018 - Spain)
Containers en .NET (Dot Net 2018 - Spain)
Eduard Tomàs
 
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
César Hernández
 
Docker y todo eso... más o menos
Docker y todo eso... más o menosDocker y todo eso... más o menos
Docker y todo eso... más o menos
Eduard Tomàs
 
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDAKCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
Eduard Tomàs
 
Testing de integración en Azure DevOps con Docker - Plain Concepts DevOps day
 Testing de integración en Azure DevOps con Docker - Plain Concepts DevOps day Testing de integración en Azure DevOps con Docker - Plain Concepts DevOps day
Testing de integración en Azure DevOps con Docker - Plain Concepts DevOps day
Plain Concepts
 
Azure IoT Hub
Azure IoT HubAzure IoT Hub
Azure IoT Hub
Rodolfo Finochietti
 
Keda o como convertir Kubernetess en Serverless
Keda o como convertir Kubernetess en ServerlessKeda o como convertir Kubernetess en Serverless
Keda o como convertir Kubernetess en Serverless
Eduard Tomàs
 
ASP.NET 5
ASP.NET 5ASP.NET 5
Serverless application repository
Serverless application repositoryServerless application repository
Serverless application repository
Paola Velazquez
 
Desarrollo moderno con DevOps y Cloud Native
Desarrollo moderno con DevOps y Cloud NativeDesarrollo moderno con DevOps y Cloud Native
Desarrollo moderno con DevOps y Cloud Native
Víctor Leonel Orozco López
 
Introducción a microservicios
Introducción a microserviciosIntroducción a microservicios
Introducción a microservicios
Erasmo Domínguez Jiménez
 

La actualidad más candente (20)

Novedades .Net Core - NetBaires
Novedades .Net Core - NetBairesNovedades .Net Core - NetBaires
Novedades .Net Core - NetBaires
 
.NET Multiplataforma
.NET Multiplataforma .NET Multiplataforma
.NET Multiplataforma
 
Gestión de proyectos con Maven
Gestión de proyectos con MavenGestión de proyectos con Maven
Gestión de proyectos con Maven
 
ASP.NET MVC Workshop Día 3
ASP.NET MVC Workshop Día 3ASP.NET MVC Workshop Día 3
ASP.NET MVC Workshop Día 3
 
Autobuses de Madrid en tiempo real con Azure Relay
Autobuses de Madrid en tiempo real con Azure RelayAutobuses de Madrid en tiempo real con Azure Relay
Autobuses de Madrid en tiempo real con Azure Relay
 
Kubernetes: Do's, don'ts and why's
Kubernetes: Do's, don'ts and why'sKubernetes: Do's, don'ts and why's
Kubernetes: Do's, don'ts and why's
 
[El comercio]php zend framework (speech)
[El comercio]php zend framework (speech)[El comercio]php zend framework (speech)
[El comercio]php zend framework (speech)
 
Introducción a ASP.NET Web API
Introducción a ASP.NET Web APIIntroducción a ASP.NET Web API
Introducción a ASP.NET Web API
 
IoT y Dispositivos
IoT y DispositivosIoT y Dispositivos
IoT y Dispositivos
 
Containers en .NET (Dot Net 2018 - Spain)
Containers en .NET (Dot Net 2018 - Spain)Containers en .NET (Dot Net 2018 - Spain)
Containers en .NET (Dot Net 2018 - Spain)
 
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
7 Recomendaciones para migrar tus aplicaciones a Jakarta EE utilizando Apache...
 
Docker y todo eso... más o menos
Docker y todo eso... más o menosDocker y todo eso... más o menos
Docker y todo eso... más o menos
 
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDAKCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
KCDS 2021- Escalando workloads serverless en Kubernetes con KEDA
 
Testing de integración en Azure DevOps con Docker - Plain Concepts DevOps day
 Testing de integración en Azure DevOps con Docker - Plain Concepts DevOps day Testing de integración en Azure DevOps con Docker - Plain Concepts DevOps day
Testing de integración en Azure DevOps con Docker - Plain Concepts DevOps day
 
Azure IoT Hub
Azure IoT HubAzure IoT Hub
Azure IoT Hub
 
Keda o como convertir Kubernetess en Serverless
Keda o como convertir Kubernetess en ServerlessKeda o como convertir Kubernetess en Serverless
Keda o como convertir Kubernetess en Serverless
 
ASP.NET 5
ASP.NET 5ASP.NET 5
ASP.NET 5
 
Serverless application repository
Serverless application repositoryServerless application repository
Serverless application repository
 
Desarrollo moderno con DevOps y Cloud Native
Desarrollo moderno con DevOps y Cloud NativeDesarrollo moderno con DevOps y Cloud Native
Desarrollo moderno con DevOps y Cloud Native
 
Introducción a microservicios
Introducción a microserviciosIntroducción a microservicios
Introducción a microservicios
 

Similar a Web Day Devops - Plain Concepts

Arquitectura de web components - Plain Concepts Web Day
Arquitectura de web components - Plain Concepts Web DayArquitectura de web components - Plain Concepts Web Day
Arquitectura de web components - Plain Concepts Web Day
Plain Concepts
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas
.. ..
 
24 Horas Español 2014 - ALM para el desarrollo de base de datos SQL Server
24 Horas Español 2014 - ALM para el desarrollo de base de datos SQL Server24 Horas Español 2014 - ALM para el desarrollo de base de datos SQL Server
24 Horas Español 2014 - ALM para el desarrollo de base de datos SQL Server
John Bulla
 
Commit 2018 - Integrando Microservicios y Machine Learning
Commit 2018 - Integrando Microservicios y Machine LearningCommit 2018 - Integrando Microservicios y Machine Learning
Commit 2018 - Integrando Microservicios y Machine Learning
Rafa Hidalgo
 
Testing como parte de la cultura DevOps
Testing como parte de la cultura DevOpsTesting como parte de la cultura DevOps
Testing como parte de la cultura DevOps
Abel Quintana Lopez
 
Integración continua y despliegue automático en Azure 
Integración continua y despliegue automático en Azure Integración continua y despliegue automático en Azure 
Integración continua y despliegue automático en Azure 
Plain Concepts
 
24 HOP edición Español - Alm para el desarrollo de base de datos sql server -...
24 HOP edición Español - Alm para el desarrollo de base de datos sql server -...24 HOP edición Español - Alm para el desarrollo de base de datos sql server -...
24 HOP edición Español - Alm para el desarrollo de base de datos sql server -...
SpanishPASSVC
 
KronOps - Perfil Corporativo
KronOps - Perfil CorporativoKronOps - Perfil Corporativo
KronOps - Perfil Corporativo
KronOps
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
Domingo Gallardo
 
Cruzando el abismo educativo de la ingeniería de software utilizando Software...
Cruzando el abismo educativo de la ingeniería de software utilizando Software...Cruzando el abismo educativo de la ingeniería de software utilizando Software...
Cruzando el abismo educativo de la ingeniería de software utilizando Software...
Applied Computing Group
 
02 proceso ciclodevida
02 proceso ciclodevida02 proceso ciclodevida
02 proceso ciclodevidaclaudiappaez
 
DevOps+[Chef/Docker]
 DevOps+[Chef/Docker] DevOps+[Chef/Docker]
DevOps+[Chef/Docker]
Christian Rodriguez
 
Sesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de procesoSesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de proceso
Coesi Consultoria
 
Sesión 3: Modelos prescriptivos de proceso de software
Sesión 3: Modelos prescriptivos de proceso de softwareSesión 3: Modelos prescriptivos de proceso de software
Sesión 3: Modelos prescriptivos de proceso de software
Luis Fernández
 
Conociendo Nuestro Fua interno
Conociendo Nuestro Fua internoConociendo Nuestro Fua interno
Conociendo Nuestro Fua interno
Jose Patricio Bovet Derpich
 
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOpsMeetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
avanttic Consultoría Tecnológica
 
Ingenia's DevSecOps strategy
Ingenia's DevSecOps strategyIngenia's DevSecOps strategy
Ingenia's DevSecOps strategy
r_ghio
 
BBVA Arquitectura - Demo DevOps
BBVA Arquitectura - Demo DevOpsBBVA Arquitectura - Demo DevOps
BBVA Arquitectura - Demo DevOps
Ernesto Anaya
 
Metodo watch y lps
Metodo watch y lpsMetodo watch y lps
Metodo watch y lps
joseantonio2704
 

Similar a Web Day Devops - Plain Concepts (20)

Arquitectura de web components - Plain Concepts Web Day
Arquitectura de web components - Plain Concepts Web DayArquitectura de web components - Plain Concepts Web Day
Arquitectura de web components - Plain Concepts Web Day
 
Desarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por PruebasDesarrollo de Software Guiado por Pruebas
Desarrollo de Software Guiado por Pruebas
 
24 Horas Español 2014 - ALM para el desarrollo de base de datos SQL Server
24 Horas Español 2014 - ALM para el desarrollo de base de datos SQL Server24 Horas Español 2014 - ALM para el desarrollo de base de datos SQL Server
24 Horas Español 2014 - ALM para el desarrollo de base de datos SQL Server
 
Commit 2018 - Integrando Microservicios y Machine Learning
Commit 2018 - Integrando Microservicios y Machine LearningCommit 2018 - Integrando Microservicios y Machine Learning
Commit 2018 - Integrando Microservicios y Machine Learning
 
Testing como parte de la cultura DevOps
Testing como parte de la cultura DevOpsTesting como parte de la cultura DevOps
Testing como parte de la cultura DevOps
 
Integración continua y despliegue automático en Azure 
Integración continua y despliegue automático en Azure Integración continua y despliegue automático en Azure 
Integración continua y despliegue automático en Azure 
 
24 HOP edición Español - Alm para el desarrollo de base de datos sql server -...
24 HOP edición Español - Alm para el desarrollo de base de datos sql server -...24 HOP edición Español - Alm para el desarrollo de base de datos sql server -...
24 HOP edición Español - Alm para el desarrollo de base de datos sql server -...
 
KronOps - Perfil Corporativo
KronOps - Perfil CorporativoKronOps - Perfil Corporativo
KronOps - Perfil Corporativo
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 
Cruzando el abismo educativo de la ingeniería de software utilizando Software...
Cruzando el abismo educativo de la ingeniería de software utilizando Software...Cruzando el abismo educativo de la ingeniería de software utilizando Software...
Cruzando el abismo educativo de la ingeniería de software utilizando Software...
 
02 proceso ciclodevida
02 proceso ciclodevida02 proceso ciclodevida
02 proceso ciclodevida
 
DevOps+[Chef/Docker]
 DevOps+[Chef/Docker] DevOps+[Chef/Docker]
DevOps+[Chef/Docker]
 
Sesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de procesoSesión 3: Modelos prescriptivos de proceso
Sesión 3: Modelos prescriptivos de proceso
 
Sesión 3: Modelos prescriptivos de proceso de software
Sesión 3: Modelos prescriptivos de proceso de softwareSesión 3: Modelos prescriptivos de proceso de software
Sesión 3: Modelos prescriptivos de proceso de software
 
Conociendo Nuestro Fua interno
Conociendo Nuestro Fua internoConociendo Nuestro Fua interno
Conociendo Nuestro Fua interno
 
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOpsMeetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
Meetup Oracle Technology MAD_BCN: 6.2 DevOps y DataOps
 
3. modelos prescriptivos de proceso
3. modelos prescriptivos de proceso3. modelos prescriptivos de proceso
3. modelos prescriptivos de proceso
 
Ingenia's DevSecOps strategy
Ingenia's DevSecOps strategyIngenia's DevSecOps strategy
Ingenia's DevSecOps strategy
 
BBVA Arquitectura - Demo DevOps
BBVA Arquitectura - Demo DevOpsBBVA Arquitectura - Demo DevOps
BBVA Arquitectura - Demo DevOps
 
Metodo watch y lps
Metodo watch y lpsMetodo watch y lps
Metodo watch y lps
 

Más de Manuel Rodrigo Cabello Malagón

MLOPS_GlobalAI2023.pptx
MLOPS_GlobalAI2023.pptxMLOPS_GlobalAI2023.pptx
MLOPS_GlobalAI2023.pptx
Manuel Rodrigo Cabello Malagón
 
GlobalAIObjectDetection.pptx
GlobalAIObjectDetection.pptxGlobalAIObjectDetection.pptx
GlobalAIObjectDetection.pptx
Manuel Rodrigo Cabello Malagón
 
pydataPointCloud.pptx
pydataPointCloud.pptxpydataPointCloud.pptx
pydataPointCloud.pptx
Manuel Rodrigo Cabello Malagón
 
Deep Learning para Desarrolladores C#
Deep Learning para Desarrolladores C#Deep Learning para Desarrolladores C#
Deep Learning para Desarrolladores C#
Manuel Rodrigo Cabello Malagón
 
Deep Learning, Python, C# y Azure
Deep Learning, Python, C# y AzureDeep Learning, Python, C# y Azure
Deep Learning, Python, C# y Azure
Manuel Rodrigo Cabello Malagón
 
.NET Core en mi Raspberry Pi y una aplicación en tiempo real
.NET Core en mi Raspberry Pi y una aplicación en tiempo real.NET Core en mi Raspberry Pi y una aplicación en tiempo real
.NET Core en mi Raspberry Pi y una aplicación en tiempo real
Manuel Rodrigo Cabello Malagón
 
Azure Relay .Net Core y una Raspberry Pi
Azure Relay .Net Core y una Raspberry PiAzure Relay .Net Core y una Raspberry Pi
Azure Relay .Net Core y una Raspberry Pi
Manuel Rodrigo Cabello Malagón
 
Machine Learning for Developers (PyConEs2017)
Machine Learning for Developers (PyConEs2017)Machine Learning for Developers (PyConEs2017)
Machine Learning for Developers (PyConEs2017)
Manuel Rodrigo Cabello Malagón
 
Azure Relay (Hybrid connections) & .NET Core ARM
Azure Relay (Hybrid connections) & .NET Core ARMAzure Relay (Hybrid connections) & .NET Core ARM
Azure Relay (Hybrid connections) & .NET Core ARM
Manuel Rodrigo Cabello Malagón
 
Azure BootCamp 2017 Madrid
Azure BootCamp 2017 MadridAzure BootCamp 2017 Madrid
Azure BootCamp 2017 Madrid
Manuel Rodrigo Cabello Malagón
 

Más de Manuel Rodrigo Cabello Malagón (10)

MLOPS_GlobalAI2023.pptx
MLOPS_GlobalAI2023.pptxMLOPS_GlobalAI2023.pptx
MLOPS_GlobalAI2023.pptx
 
GlobalAIObjectDetection.pptx
GlobalAIObjectDetection.pptxGlobalAIObjectDetection.pptx
GlobalAIObjectDetection.pptx
 
pydataPointCloud.pptx
pydataPointCloud.pptxpydataPointCloud.pptx
pydataPointCloud.pptx
 
Deep Learning para Desarrolladores C#
Deep Learning para Desarrolladores C#Deep Learning para Desarrolladores C#
Deep Learning para Desarrolladores C#
 
Deep Learning, Python, C# y Azure
Deep Learning, Python, C# y AzureDeep Learning, Python, C# y Azure
Deep Learning, Python, C# y Azure
 
.NET Core en mi Raspberry Pi y una aplicación en tiempo real
.NET Core en mi Raspberry Pi y una aplicación en tiempo real.NET Core en mi Raspberry Pi y una aplicación en tiempo real
.NET Core en mi Raspberry Pi y una aplicación en tiempo real
 
Azure Relay .Net Core y una Raspberry Pi
Azure Relay .Net Core y una Raspberry PiAzure Relay .Net Core y una Raspberry Pi
Azure Relay .Net Core y una Raspberry Pi
 
Machine Learning for Developers (PyConEs2017)
Machine Learning for Developers (PyConEs2017)Machine Learning for Developers (PyConEs2017)
Machine Learning for Developers (PyConEs2017)
 
Azure Relay (Hybrid connections) & .NET Core ARM
Azure Relay (Hybrid connections) & .NET Core ARMAzure Relay (Hybrid connections) & .NET Core ARM
Azure Relay (Hybrid connections) & .NET Core ARM
 
Azure BootCamp 2017 Madrid
Azure BootCamp 2017 MadridAzure BootCamp 2017 Madrid
Azure BootCamp 2017 Madrid
 

Último

Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
cofferub
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
Emilio Casbas
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
ItsSofi
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
Fernando Villares
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
coloradxmaria
 
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
CrystalRomero18
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Telefónica
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
zoecaicedosalazar
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
AlejandraCasallas7
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
cj3806354
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
cdraco
 
Alan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónAlan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentación
JuanPrez962115
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
ManuelCampos464987
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
cristianrb0324
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 
Robótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptxRobótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptx
44652726
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
rafaelsalazar0615
 

Último (20)

Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
 
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
Alan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentaciónAlan Turing Vida o biografía resumida como presentación
Alan Turing Vida o biografía resumida como presentación
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
Robótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptxRobótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptx
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
 

Web Day Devops - Plain Concepts

  • 1. 26.10.2017 Plain Concepts Web Day Rodrigo Cabello VSTS, GIT, Integración continua y deployment Software Engineer
  • 2. 2 9:00 – 9:45 Diseño Web - Paloma Celaá 9:50 - 10:35 Arquitectura de componentes Front. Typescript y Angular – Carlos Bastos 10:40 - 11:25 Autenticación. Configuración del inyector de depencias y controladores – Carlos Landeras 11:25 - 11:45 Break 11:45 - 12:30 Integración de Front con Back. Nswag: cómo generar los typing – Luis Ruiz Pavón 12:35 - 13:20 Estrategias de testing. Buenas prácticas – Unai Zorrilla 13:25 – 14:10 VSTS, GIT, Integración continua y deployment – Rodrigo Cabello Plain Concepts Web Day
  • 3. Experiencia de más de 8 años en el desarrollo de aplicaciones web. Apasionado de las nuevas tecnologías y aplicaciones que utilizan técnicas basadas en Inteligencia Artificial. Rodrigo Cabello @plainconcepts #WebDayMadrid 3 @mrcabellom Software Engineer
  • 4. Qué veremos 4 1. DevOps 2. Metodologías ágiles 3. Control de versiones 4. Integración continua 5. Entrega continua
  • 6. ¿Qué es DevOps? • Desarrollo + Operaciones (Comunicación, colaboración e integración entre desarrolladores software e IT). • Metodología para creación de Software. • Realizar Software más rápidamente, con mayor calidad, menor coste y altísima frecuencia de releases. Dev Ops @plainconcepts 6
  • 8. SCRUM Implementa los principios ágiles como un conjunto de artefactos, prácticas y roles Metodologías Ágiles @plainconcepts 8 Roles de SCRUM - Product Owner - Scrum Master - Scrum Team
  • 9. Kanban • Utiliza principios y artefactos propios diferentes de SCRUM. • No especifica nada acera de liturgias y Roles. • Flujo de trabajo continuo y constante. • Concepto de Work in progress (WIP). Metodologías Ágiles @plainconcepts 9
  • 10. Visual Studio Team Services • Soporte para SCRUM (Sprints, capacidad..) y Kanban (WIP) • Definición de Epics, Features e Historias de Usuario y Bugs • Métricas y seguimiento. Burndown, cumulative Flow. Metodologías Ágiles @plainconcepts 10
  • 12. • Realizar un control de versiones del código fuente. • Git como sistema de control de versiones. • Gestionar ramas de una manera fácil y eficiente (según nuestras necesidades) – Dev – Master Control de Versiones @plainconcepts 12 Sistema de control de versiones distribuidos
  • 13. • Modelo de ramas dependiente del proyecto y del estado del mismo. – Dev – QA (testing exploratorio) – master • Rama feature/--- por historia de usuario. • Rama hotfix/--- por cada corrección sobre master. • Tags en master y QA • Política de ramas: – Pull request master – Mínimo de 2 aprobadores Control de Versiones @plainconcepts 13
  • 15. • Realizar integraciones automáticas de un proyecto lo más a menudo posible. • Ventajas: – Feedback rápido. Detección de errores. • Ejecución automática cada vez que se sube código a una rama. • Principales tareas: – Compilación. – Ejecución de pruebas (test unitarios, integración, e2e…) – Creación artefacto. Integración Continua @plainconcepts 15
  • 16. Visual Studio Team Services • Fácil definición de tareas para realizar la integración continua. • Soporte para aplicaciones .Net, Java, PHP o Python • Agrupación de tareas. • Definición de triggers para cada rama. Integración Continua @plainconcepts 16 Tokenize tasks
  • 18. • Proceso que consiste en la prueba, preparación y despliegue de un artefacto a un entorno de producción. • Diferentes entornos y pipelines – Desarrollo – QA – Pre • Tiene lugar después de cada integración continua. • Soporte de patrones como Blue/Green deployment (slots) Entrega Continua @plainconcepts 18
  • 19. Visual Studio Team Services • Fácil creación de Pipelines: – Artefactos – Entornos • Definición de precondiciones y postcondiciones para los distintos entornos – Aprobadores – Triggers (Filtrado por artefacto) Entrega Continua @plainconcepts 19
  • 21. www.plainconcepts.com MADRID Paseo de la Castellana 163, 10º 28046 Madrid. España T. (+34) 91 5346 836 BILBAO Calle Ledesma 10-bis 3º 48001 Bilbao. España T. (+34) 94 6073 371 BARCELONA Carrer Compte d’Urgell 240 4º 1A 08036 Barcelona. España T. (+34) 93 7978 566 SEVILLA Avenida de la innovación s/n Edificio Renta Sevilla, 3º A 41020 Sevilla. España DUBAI Dubai Internet City. Building 1 73030 Dubai. EAU T. (+971) 4 551 6653 LONDON Impact Hub Kings Cross 24B York Way, N1 9AB London. UK SEATTLE 1511, Third Ave Seattle WA 98101. USA T. (+1) 206 708 1285