mejorando la productividad en proyectos java ee con ci y cd - otn 2015
Post on 14-Feb-2017
588 Views
Preview:
TRANSCRIPT
Incrementando la productividad y agilidad en proyectos Java Enterprise con Integración y Entrega contínua
OTN Tour Guatemala 2015
César HernándezCesarHernandezGt@CesarHgt
CesarHernandezGt
César Hernández M.● Arquitecto de software● Ingeniero y M.Sc. Gerencia de
Sistemas de Información.● Oracle Certified Professional● Autor artículos en Oracle Technology
Network Latinoamérica.● Revisor técnico para Manning
Publications Co.● Blogger de TIC’s independiente● +7 años Diseño e impl. de Java EE.● Personal Training y conferencias
técnicas.CesarHernandezGt@CesarHgt
CesarHernandezGt
Artículos OTN.
Participación activa en comunidades
www.guate-jug.net/
/Guate.Java.User.Group
Grupo de Usuarios Java Guatemala
/ouggt
Grupo de Usuarios Oracle Guatemala
/nullpointersband
Java Community Rock Band
/EventosJEspanol
JEspañol
Agenda
● Encuesta● Entorno● Perspectivas● Integración Contínua● DevOps● Entrega Contínua
Entorno“La especie más fuerte no es la que sobrevive, tampoco la
más inteligente, sino la que se adapta mejor al cambio.”- Charles Darwin -
El entorno de un proyecto de software
PERSONAS PROCESOS TECNOLOGÍA PERSONAS
Manifiesto para el Desarrollo Ágil de Software (2001)
http://www.agilemanifesto.org/iso/es/
Perspectivas“La prueba del líder es la capacidad de reconocer un
problema antes de que se convierta en una emergencia”.–John Maxwell
Ciclo de vida del software
Nueva Característica
o BugCodificación Pruebas Nuevo
Release
Ciclo de vida del software
Nueva Característica
o BugCodificación Configuración
Pruebas Funcionales
Pruebas de carga Despliegue Nuevo
Release
Ciclo de vida del software
Nueva Característica
o BugCodificación Integración Configuración
Despliegue Pruebas Unitarias
Pruebas Integración
Pruebas Regresión
Pruebas Funcionales
Pruebas de carga
Nuevo Release
Perspectiva del hardware
Red
Almacenamiento
Procesamiento
Virtualización
Sistema Operativo
JVM
Software
Problemas emergentes
● Poca visibilidad● Falta de automatización● Comunicación reactiva● Versionamiento (SW/HW)● No hay agilidad en el ciclo de desarrollo● Necesidad de replicación entre ambientes ● Alto tiempo de release ● ....
Oportunidades
http://blog.import.io/post/simply-outsourcing-observations-from-my-time-in-india
Oportunidades
http://www.thecloudinfographic.com/2012/03/02/saas-paas-and-iaas-what-are-they.html
● Práctica de desarrollo de software● Desarrolladores integran código en
repositorio varias veces al día. ● Cada registro de versionamiento es
verificado por una construcción automatizada, permitiendo a los equipos para detectar los problemas a tiempo.
● Mediante la integración con regularidad, puede detectar errores de forma rápida, y localizar más fácilmente.
Integración Contínua
Integración Contínua
http://www.teleread.com/chris-meadows/amazons-kiva-robots-herald-warehouse-automation/
● Mantener un único repositorio de código● Automatizar el empaquetado● Hacer el empaquetado self-testing● Cada commit debe ser empaquetado en una
máquina de integración● Mantener rápido el proceso de empaquetado ● Probar en un clon del ambiente de producción● Facilitar a cualquiera tener la última versión del
ejecutable● Todos pueden ver que es lo que pasa● Automatizar el deployment
La Prácticas de Integración Contínua
Costo de detección de errores
Problemas afrontables con CI
En 1 mes, el tiempo muerto por no tener CI
Problemas afrontables con CI
En 1 año...
Optimización de recurso y depuración de tiempos muertos
Problemas afrontables con CI
Developer
Developer
Tomcat
Tomcat
SVN
Sonar
Maven
Integración Manual .
✓ Deploy
✓ Comit
✓ Data Source✓ Properties✓ Reinicios✓ Integración✓ Despliegue Tomcat✓ Versionamiento .
wars✓ Despliegue Sonar✓ Respuesta
✓ Solicitud
Optimiación de recurso y depuración de tiempos muertos
Problemas afrontables con CI
Developer
Developer
Tomcat
Tomcat
SVN
Maven Configuración y Admin. Jenkins
✓ Deploy
✓ Comit
✓ Data Source✓ Properties✓ Reinicios✓ Adm. Jenkins
Sonar
Jenkins
✓ Solicitud
✓ Integración✓ Despliegue Tomcat✓ Despliegue Sonar✓ Versionamiento .
wars✓ Respuesta
¿Donde comenzar?
PERSONAS PROCESOS TECNOLOGÍA PERSONAS
Perspectivas de incorporación de cambios
● Costo● Licenciamiento● Soporte● Tiempo● ROI
Tecnológia
ProcesoRECURSOHUMANO
DEVOPS (2008)
http://corpsite-blog.s3.amazonaws.com/blog/wp-content/uploads/2014/10/Screen-Shot-2014-10-21-at-10.35.35-AM-4061918db9a7d7de7a7ccc9587164f58.png
DESARROLLO
● Nuevas características
● Innovación
OPERACIONES
● Disponibilidad● Confiabilidad● Seguridad
DevOps: Mejorar el software manteniendo el sistema estable, rápido y disponible
DEVOPS (2008)
https://en.wikipedia.org/wiki/File:Devops.svg
● Comunicación● Colaboración● Integración● Automatización
● Extensión natural de integración continua● Eenfoque en el que los equipos garantizan que
cada cambio en el sistema es deployable en producción
● Se puede liberar cualquier versión del software con sólo pulsar un botón.
Entrega continua
● Depende de un proceso maduro que adopte integración contínua
● Confianza en las pruebas automatizadas ● Integridad referencial a nivel de base de
datos● Infraestructura debe de responder con la
misma agilidad que el software
Retos
¿Oportunidades?
The term "Microservice Architecture" has sprung up over the last few years to describe a particular way of designing software applications as suites of independently deployable services. While there is no precise definition of this architectural style, there are certain common characteristics around organization around business capability, automated deployment, intelligence in the endpoints, and decentralized control of languages and data.
Escenario general de CI CD
http://searchdatacenter.techtarget.com/news/4500248868/Enterprise-DevOps-open-source-hits-Targets-bulls-eye
Interacción entre CI y CD
http://searchdatacenter.techtarget.com/news/4500248868/Enterprise-DevOps-open-source-hits-Targets-bulls-eye
Recursos recomendados
http://ora.cl/hn0https://blogs.oracle.com/brunoborges/entry/docker_java_ee_7_and
Recursos recomendados
https://youtu.be/K1l8717tN2chttps://youtu.be/McTZtyb9M38
César Hernández
PREGUNTAS?
OTN Tour Guatemala 2015
CesarHernandezGt@CesarHgt
CesarHernandezGt
top related