El panorama de la automatización del lanzamiento de ... · cuenta el quién (mediante la...

7
Convertirse en una fábrica de software La entrega continua es un proceso En el competitivo mercado actual, las empresas de éxito complacen a sus clientes con aplicaciones y prestaciones digitales e innovadoras. Las prácticas ágiles y la cultura de operaciones de desarrollo están desmontando las tradicionales unidades aisladas, lo que permite a las organizaciones alcanzar niveles elevados de colaboración y eficiencia. Las nuevas funcionalidades se entregan en cuestión de horas o días, en lugar de semanas o meses. La metodología elegida es la entrega continua, que incrementa el volumen, la velocidad y la calidad de los lanzamientos. Las soluciones de automatización del lanzamiento de aplicaciones (ARA) proporcionan el conjunto de herramientas que propicia la transformación para lograr esas operaciones de desarrollo y esos objetivos de entrega continua. ¿En qué punto del proceso para lograr una entrega continua se encuentra? Tal vez se encuentre al principio de la curva de madurez, con una pequeña automatización de tareas en equipos inconexos, o quizás ya haya pasado esa etapa, puede que se encuentre en el punto de perfeccionamiento de la cadena de herramientas, en ese momento de esfuerzo constante para conseguir una mejora continua. Las empresas se suelen dar cuenta de que la implementación automatizada y la gestión de lanzamientos (normalmente proporcionadas en forma de soluciones de ARA) son pasos fundamentales para avanzar hacia unas operaciones de desarrollo constantes y un proceso de entrega continua. Las soluciones de ARA empresariales brindarán las funcionalidades necesarias para alcanzar la ventaja competitiva, el retorno de la inversión, una reducción de los costes y la entrega de aplicaciones optimizada que ofrece la entrega continua. RESUMEN EJECUTIVO | NOVIEMBRE DE 2016 El panorama de la automatización del lanzamiento de aplicaciones Aspectos esenciales a la hora de seleccionar un distribuidor

Transcript of El panorama de la automatización del lanzamiento de ... · cuenta el quién (mediante la...

Convertirse en una fábrica de software

La entrega continua es un proceso

En el competitivo mercado actual, las empresas de éxito complacen a sus clientes con aplicaciones y prestaciones digitales e innovadoras. Las prácticas ágiles y la cultura de operaciones de desarrollo están desmontando las tradicionales unidades aisladas, lo que permite a las organizaciones alcanzar niveles elevados de colaboración y eficiencia. Las nuevas funcionalidades se entregan en cuestión de horas o días, en lugar de semanas o meses. La metodología elegida es la entrega continua, que incrementa el volumen, la velocidad y la calidad de los lanzamientos. Las soluciones de automatización del lanzamiento de aplicaciones (ARA) proporcionan el conjunto de herramientas que propicia la transformación para lograr esas operaciones de desarrollo y esos objetivos de entrega continua.

¿En qué punto del proceso para lograr una entrega continua se encuentra? Tal vez se encuentre al principio de la curva de madurez, con una pequeña automatización de tareas en equipos inconexos, o quizás ya haya pasado esa etapa, puede que se encuentre en el punto de perfeccionamiento de la cadena de herramientas, en ese momento de esfuerzo constante para conseguir una mejora continua. Las empresas se suelen dar cuenta de que la implementación automatizada y la gestión de lanzamientos (normalmente proporcionadas en forma de soluciones de ARA) son pasos fundamentales para avanzar hacia unas operaciones de desarrollo constantes y un proceso de entrega continua.

Las soluciones de ARA empresariales brindarán las funcionalidades necesarias para alcanzar la ventaja competitiva, el retorno de la inversión, una reducción de los costes y la entrega de aplicaciones optimizada que ofrece la entrega continua.

RESUMEN EJECUTIVO | NOVIEMBRE DE 2016

El panorama de la automatización del lanzamiento de aplicacionesAspectos esenciales a la hora de seleccionar un distribuidor

2 | RESUMEN EJECUTIVO | NOVIEMBRE DE 2016

La entrega continua necesita una definición

Existe mucha confusión en cuanto a la terminología que se utiliza en el ámbito de la automatización del lanzamiento de aplicaciones y la entrega continua, así que, a continuación, se analizarán algunas de las definiciones.

Canales de código (también denominados “canales de lanzamiento”): representan el flujo de trabajo asociado con la implantación de código o de una aplicación desde la implementación hasta la producción.

Automatización del lanzamiento de aplicaciones (ARA): se refiere al proceso de empaquetado e implementación de una aplicación o a la actualización de esta, desde el desarrollo en diversos entornos, hasta, finalmente, la producción.1 Las soluciones de ARA combinan las prestaciones de automatización de implementaciones con el modelado de entornos y la articulación de lanzamientos con el fin de proporcionar la funcionalidad repetible y verificable para empaquetar, implementar y articular diversas aplicaciones paralelas entre varios equipos y en distintas etapas a través de entornos de múltiples plataformas a lo largo de la cadena de herramientas dedicada al lanzamiento de aplicaciones. Las soluciones de ARA son fundamentales para favorecer la entrega continua a nivel empresarial.

Entrega continua: se trata de la capacidad de incorporar cambios de todo tipo (entre los que se incluyen funciones nuevas, cambios de configuración, correcciones de errores y experimentos) en la producción de forma segura, rápida y sostenible.2 La entrega continua, que resulta decisiva para la transformación de la cultura, los procesos y las herramientas, abarca la noción de agilización de los circuitos de retroalimentación en el ciclo de vida de las aplicaciones para tomar decisiones fundamentadas y mejorar continuamente los procesos y los equipos. Mediante la coordinación de equipos en el ciclo de vida de las aplicaciones en procesos escalables, repetibles y basados en modelos, las organizaciones pueden obtener resultados espectaculares, entre los que figuran retornos de la inversión de casi un 400 %, una reducción de errores del 98 % e implementaciones 20 veces mejores.3 Teniendo en cuenta que la entrega continua es una metodología, las soluciones de ARA proporcionan el conjunto de herramientas necesarias para favorecer la práctica.

ca.com/es

3 | RESUMEN EJECUTIVO | NOVIEMBRE DE 2016

Para facilitar el cumplimiento de los objetivos de la entrega continua, la solución de ARA elegida debe funcionar a la perfección en cinco áreas esenciales:

Automatización estandarizada de toda la cadena de herramientasLa automatización integral es fundamental para conseguir las ventajas de la entrega continua que impulsan la transformación. Las herramientas que solo sirven de apoyo para parte de la cadena de entrega de aplicaciones refuerzan las unidades aisladas por departamentos y limitan la productividad, porque requieren transferencias manuales o secuenciales entre los equipos, dificultan la coordinación entre ellos, carecen de visibilidad y no permiten la estandarización de herramientas y procesos. Además, los conjuntos de herramientas inconexos no admiten los análisis integrales que contribuyen a que las organizaciones identifiquen cuellos de botella y oportunidades para la optimización del ciclo de lanzamientos.

Modelado y gestión de entornosLas soluciones de ARA no solo deben ser capaces de mantener y gestionar lo que se implementa, sino también el lugar de la implementación. Esto incluye la integración con las herramientas de configuración y de aprovisionamiento de infraestructuras existentes para garantizar que los entornos, ya sean locales, basados en la nube o combinados, estén debidamente aprovisionados y configurados. Esta funcionalidad es importante para llevar a cabo una automatización completa.

Planificación y articulación de lanzamientos Imagine una empresa típica con varios equipos distribuidos por todo el mundo que administran cientos de complejas aplicaciones implementadas en entornos que abarcan desde mainframes hasta dispositivos móviles, con miles de lanzamientos al año. Es más, estos lanzamientos se llevan a cabo de manera simultánea, en etapas diferentes y con dependencias específicas, y dependen de los mismos recursos. Los gestores de lanzamientos deben articular todas estas demandas y ajustar los lanzamientos a los períodos de mantenimiento disponibles. La complejidad es inmensa.

Las organizaciones necesitan una plataforma para definir, gestionar y coordinar cientos de canales de lanzamiento complejos. Esta plataforma debería abstraer los elementos del lanzamiento (el qué) de la lógica de la implementación (el cómo) y de los entornos (el dónde), con el fin de conseguir un proceso de lanzamiento automatizado uniforme, repetible y verificable. También debe tener en cuenta el quién (mediante la aplicación del control basado en roles) y el cuándo (con la gestión de dependencias y conflictos).

Un cuadro de mandos con métricas en tiempo real e informes sólidos con análisis históricos proporciona los datos necesarios para identificar cuellos de botella, detectar oportunidades de adopción adicionales y seleccionar áreas para la mejora continua. Es fácil ver cómo, sin esta coordinación, los equipos y procesos inconexos pueden dar lugar a falta de eficacia y errores.

¿Qué debería buscar en una solución de ARA?

“La automatización de los procesos de desarrollo, prueba y lanzamiento repercute en gran medida en la velocidad, la calidad y el coste del lanzamiento de un software”.

—Jez Humble y David Farley.

“Continuous Delivery”.

ca.com/es

4 | RESUMEN EJECUTIVO | NOVIEMBRE DE 2016

Análisis del panorama de los componentes de una solución de ARA

Contenido personalizable: profundidad y extensión de las integraciones La solución de ARA ideal proporciona una cadena de herramientas de solicitud de distribuidores completa y única con la opción de utilizar integraciones predeterminadas para tareas específicas. Una arquitectura de ARA abierta e integrada brinda la máxima flexibilidad y adaptabilidad al implementar una cadena de herramientas de entrega continua e integral, ya que se agiliza la implementación y el tiempo de recuperación de la inversión, a la vez que se ofrece flexibilidad y posibilidad de elección. Estas integraciones, que deberían ser estables y totalmente funcionales desde el primer momento, también deberían poderse personalizar fácilmente para satisfacer los requisitos de las organizaciones individuales.

Experiencia de los distribuidores en operaciones de desarrollo, en la metodología ágil y en la entrega continua Aunque las ventajas de las soluciones de ARA son enormes, la entrega continua depende de que se transformen la cultura, los procesos y las herramientas en la cadena de herramientas de la entrega de aplicaciones. Las organizaciones necesitan un asesor de confianza con una sólida trayectoria en la ayuda a la transición de estas hacia las metodologías de operaciones de desarrollo con la aportación de su experiencia, mejores prácticas y productos de primera calidad que se ajusten a las necesidades empresariales. No todos los procesos de entrega continua serán iguales, pero tendrán en común el hecho de que supondrán retos. Asegúrese de que el distribuidor puede ayudarle a agilizar la adopción y a lograr los resultados esperados.

Muchos distribuidores afirman que apoyan la entrega continua y, aunque es así con algunos aspectos de la cadena de herramientas de aplicaciones, no disponen de la funcionalidad completa de una solución de ARA.

Herramientas de integración continua (CI) y de automatización de la configuración continua (CCA)Tradicionalmente, estas herramientas se han centrado en una fase específica del canal, como la compilación o la gestión de infraestructuras, y resultan idóneas para los casos de uso previstos. Varios de estos distribuidores han introducido funciones ampliadas que admiten casos sencillos de uso de canales de código o de automatización de lanzamientos, pero todavía les falta la funcionalidad de entrega continua íntegra.

Ventajas:

• Idóneas para los casos de uso previstos (compilación, automatización de infraestructuras, etc.).

• La simplicidad de la funcionalidad del canal es adecuada para empresas con un número muy pequeño de aplicaciones, pocos miembros en el equipo y una complejidad mínima.

Requisitos de una solución de ARA según el informe Magic Quadrant de Gartner de 20164

• Proporcionar funcionalidades de automatización, modelado de entornos y coordinación de lanzamientos para favorecer todo el canal de entrega.

• Facilitar motores de flujo y admitir planificaciones, comunicaciones y análisis, al tiempo que se impone la separación de funciones.

• Ofrecer un conjunto de contenidos personalizables diseñado para reducir o eliminar la dependencia de los scripts propios y de los trabajos manuales utilizados en un lanzamiento.

– Para este requisito, Gartner cita el ejemplo de un lanzamiento de aplicaciones automatizado que se pueda realizar cuando un desarrollador cree un código nuevo.

• Proveer modelado de entornos. La solución debe tener la capacidad de descubrir, usar, crear y mantener modelos de entornos existentes y planificados que se usen para respaldar todas las fases del ciclo de vida de la aplicación y del canal de entrega.

ca.com/es

ca.com/es5 | RESUMEN EJECUTIVO | NOVIEMBRE DE 2016

Inconvenientes:

• No están diseñadas para ser usadas en toda la cadena de herramientas de entrega continua.

• No ofrecen visibilidad de varios lanzamientos.

• Carecen de características fundamentales de una solución de ARA, como la coordinación de varios lanzamientos, el calendario y los análisis.

• Están centradas en los desarrolladores, lo que puede impedir la adopción del enfoque de operaciones de desarrollo por la exclusión de otros equipos.

• Poseen un nivel de complejidad alto; son difíciles de configurar y mantener.

Canales de código de implementación en la nube de IaaS y PaaSUna parte de los distribuidores de PaaS e IaaS han diseñado una funcionalidad de canal de código que permite a los equipos de desarrollo verificar e implementar el código automáticamente en la plataforma en la nube del distribuidor. Estas herramientas están optimizadas para casos de uso y podrían ser adecuadas para organizaciones con pocas aplicaciones y con todos sus entornos en un solo distribuidor en la nube; sin embargo, es poco probable que estas soluciones le sirvan a la mayoría de las organizaciones empresariales, que suelen tener aplicaciones que se ejecutan en varios entornos con cientos de ciclos de lanzamiento simultáneos y complejos.

Ventajas:

• Están optimizadas para los desarrolladores, el distribuidor específico y la nube.

• Contarán con integraciones esenciales (si están algo limitadas) de la cadena de herramientas.

• Disponen de interfaces de usuario modernas y sencillas.

• A menudo serán gratis; proporcionadas como valor agregado por el distribuidor.

Inconvenientes:

• Sólo serán aplicables a las implementaciones en la nube.

• Son específicas del distribuidor.

• Resulta complicado cambiar los distribuidores, requerirá tiempo de puesta en marcha.

• Están diseñadas para ser utilizadas por un solo equipo y carecen de separación de funciones.

• Se centran en el canal de implementación (velocidad), en lugar de en el ciclo de vida de la aplicación (planificación, auditoría, mejora continua, eliminación de unidades aisladas, circuitos de retroalimentación, etc.).

6 | RESUMEN EJECUTIVO | NOVIEMBRE DE 2016

CA Release Automation: una base para la entrega continua

Soluciones de ARAAunque muchos distribuidores ofrecen la automatización de algunas de las tareas de los canales de entrega de aplicaciones, solo las soluciones de ARA diseñadas de manera específica permitirán automatizar y articular los lanzamientos a nivel empresarial en todos los equipos y entornos. La articulación y la visibilidad integrales son fundamentales para lograr velocidad y volumen, a la vez que se mejora la calidad y se reduce el riesgo.

Ventajas:

• Proporcionan un conjunto completo de funciones empresariales para la entrega continua.

• Admiten diversos equipos, ofrecen una plataforma común para la colaboración y hacen que las funciones se cumplan.

• Controlan el contenido lanzado durante todo el proceso de publicación.

• Son aptas para varias plataformas, tanto para entornos locales como de mainframe, pasando por la nube.

• Estandarizan las herramientas y los procesos, y se conectan en toda la cadena de herramientas para poder llevar a cabo la organización de forma completa, incluidas la gestión del ciclo de vida de las aplicaciones, la integración continua, las pruebas, la gestión de la configuración y la gestión de cambios.

Inconvenientes:

• Precisan de un cambio de cultura para estandarizar los procesos y el conjunto de herramientas comunes.

• La mensajería de los distribuidores puede resultar confusa y algunos de ellos se exceden en sus promesas. Asegúrese de que el distribuidor puede cumplir lo que dice.

CA Release Automation proporciona el conjunto completo de funcionalidades de una solución de ARA como parte del ecosistema completo, integrado y abierto de entrega continua de CA. Con CA Release Automation, los equipos de operaciones pueden concentrarse en los lanzamientos a través de prácticas ágiles sin comprometer la conformidad ni la estabilidad. Los equipos de desarrollo pueden centrarse en la innovación de las aplicaciones en lugar de en el mantenimiento de scripts y las implementaciones de soluciones de problemas. Además, los gestores de lanzamiento pueden enfocar su atención en la gestión de canales ágiles con mayor visibilidad e información útil. Con CA Release Automation, las empresas pueden llegar a conseguir un retorno de la inversión del 389 % en 2,8 meses.5

Clasificado como líder por Gartner en el informe Magic Quadrant de ARA de 2016, CA Release Automation lidera el mercado con un historial consolidado de clientes satisfechos.

“Con CA Release Automation, podemos ofrecerles a nuestros clientes una calidad excepcional, soluciones de software y un servicio de atención al cliente mientras optimizamos recursos y reducimos los requisitos presupuestarios generales”.

—Mandi Haas, directora de Molina Medicaid Solutions.

ca.com/es

CA Technologies (NASDAQ: CA) crea software que impulsa la transformación de las empresas y les permite aprovechar las oportunidades que brinda la economía de las aplicaciones. El software se encuentra en el núcleo de cada empresa, sea cual sea su sector. Desde la planificación hasta la gestión y la seguridad, pasando por el desarrollo, CA colabora con empresas de todo el mundo para cambiar la forma en que vivimos, realizamos transacciones y nos comunicamos, ya sea a través de la nube pública, la nube privada, plataformas móviles y entornos de mainframe y distribuidos. Para obtener más información, visite ca.com/es.

7 | RESUMEN EJECUTIVO | NOVIEMBRE DE 2016

Para obtener más información acerca de las posibles ventajas económicas que CA Release Automation puede aportar a la organización, utilice nuestra calculadora de beneficios estimados.

Obtenga más información sobre clientes que están consiguiendo buenos resultados de la entrega continua con CA Release Automation.

1 https://en.wikipedia.org/wiki/Application_release_automation#cite_note-1.

2 https://continuousdelivery.com/.

3 Forrester Research, estudio encargado por CA Technologies, “The Total Economic Impact™ of CA Release Automation”, diciembre de 2015.

4 Colin Fletcher, David Paul Williams, Laurie F. Wurster, Gartner, Inc., “Magic Quadrant for Application Release Automation”, 1 de agosto de 2016.

5 Ibíd.

Copyright © 2016 CA. Todos los derechos reservados. Todas las marcas, nombres comerciales, logotipos y marcas de servicio a los que se hace referencia en este documento pertenecen a sus respectivas empresas. CS200-235833_1116

Valor de CA Release Automation para organizaciones de TIComentarios de clientes

Agilización significativa de los ciclos de lanzamiento

ESTUDIOS DE CLIENTES DE CA TECHNOLOGIES RELEASE AUTOMATION

Capacidad de lanzar aplicacionesbajo demanda de forma fiable

Tiempo de inactividad reducido o eliminado

Mayor volumen de lanzamientos

Obtención más rápida de loscomentarios de los clientes

Fuente: encuesta de TechValidate a 43 usuarios de CA Release Automation

Publicado el 9 de agosto de 2016 TVID: 303-2A6-336

19 %

35 %

37 %

53 %

56 %

56 %

58 %

63 %

67 %

Gestión eficiente de entornos deimplementación y dependencias

Mejora de la colaboración y laresponsabilidad entre los equipos

de desarrollo y operaciones

Capacidad para integrarse fácilmente conel entorno y las herramientas existentes

Mejora de la visibilidad, la uniformidady la fiabilidad de los procesos de

lanzamiento mediante el canal

Validado

Ilustración A

TechValidate, encuesta a 43 usuarios de CA Release Automation, 9 de agosto de 2016, TVID: 303-2A6-336

Connect with CA Technologies at ca.com