You are on page 1of 16

7 mtricas de

desempeo para
liberar mejor software
ms rpido
Con ejemplos reales de fallas en aplicaciones y cmo evitarlas

Subtitle of Slide Story book goes here


2015 Dynatrace

Tabla de Contenido

DevOps: Construyendo
mejor software ms
rpidamente

Las mtricas:
aprender de otros

La vida de una
mtrica

Pgina 5

7 mtricas de desempeo para liberar mejor software ms rpidamente


2015 Dynatrace

Pgina 8

Pgina 13

Regreso a Tabla de Contenido

,QWURGXFFLQ
Los consumidores mviles hper conectados de la actualidad
estn impulsando una transformacin en las industrias.
Tienen altas expectativas y para competir, usted debe proporcionar una experiencia digital
responsiva y superior. Las mejores prcticas de Entrega Continua de DevOps hacen que esto
sea posible, pero para hacerlo correctamente, usted necesitar una red de seguridad. La
administracin de desempeo de aplicaciones impulsada por mtricas trata precisamente
de eso. Le permite desplegar ms rpidamente sin fallar ms rpidamente con mtricas
clave de arquitectura, escalabilidad y desempeo proporcionndole control total
sobre su secuencia de entrega de software.
En este eBook, le diremos cmo empezar con el monitoreo de mtricas de desempeo.
Compartiremos ejemplos de la vida real de fallas en aplicaciones y cmo evitarlas
utilizando las 7 mtricas clave para encontrar problemas al inicio. Despus le
mostraremos cmo las cosas realmente funcionan en la vida de una mtrica
y cmo integrar mtricas de desempeo en herramientas de automatizacin
a lo largo de su cadena de entrega de aplicaciones.
Feliz monitoreo!

7 mtricas de desempeo para liberar mejor software ms rpidamente


2015 Dynatrace

Regreso a Tabla de Contenido

Nuestros autores:
Dos tipos que comen, beben e respiran DevOps

Andreas Grabner
Defensor de Desempeo,
Centro de Excelencia,
Dynatrace
Blog: blog.dynatrace.com
Twitter: @grabnerandi

Andreas Grabner tiene ms de 15 aos de experiencia como un arquitecto


y desarrollador en el espacio de Java y .NET y es un defensor de aplicaciones con
alto desempeo. Contribuye peridicamente en grandes comunidades de desempeo
y es un orador frecuente en conferencias de tecnologa.

Brett Hofer
Arquitecto Senior de
Soluciones, Dynatrace
Blog: blog.dynatrace.com
Twitter: @brett_solarch

Brett Hofer es un apasionado de DevOps y se especializa en entregar software


complejo de misin crtica. Con ms de 20 aos de experienciapartiendo del diseo
de productos y arquitecto de soluciones a alta gerenciatiene una perspectiva nica
de 360 acerca de TI.

7 mtricas de desempeo para liberar mejor software ms rpidamente


2015 Dynatrace

Regreso a Tabla de Contenido

Seccin 1

DevOps: Construyendo mejor


software ms rpidamente

2015 Dynatrace

Regreso a Tabla de Contenido

DevOps: Construyendo mejor software ms rpidamente


Un nio de cuatro aos con un iPad, el Uber chino y un unicornio
Qu tienen en comn un nio de
4 aos con un iPad, el Uber chino
(alias Didi Kuaidi) y un unicornio?
Nos estn obligando a construir
mejor software ms rpidamente.
Est ocurriendo una revolucin digital en las
industrias, impulsada por los consumidores mviles
hper conectados de la actualidad. Tienen altas
expectativas quieren lo que quieren, cundo lo
quieren y dentro de su contexto (basado en ubicacin,
tarea que efectan, preferencias, etc.).
Sus dispositivos mviles son responsables de ms
trco e ingresos que nunca antes:
> En Wal-Mart, en el Lunes Ciberntico de 2014,
70% del trco fue Mvil.
> Visa predice que la mitad de todos los pagos
sern mviles para el 2020.

Y el unicornio en todo esto? Los gigantes tecnolgicos como


Facebook, Google, Etsy y Pinterest. Estn abriendo el camino,
proporcionando experiencias digitales responsivas superiores.

La compaa de
taxis ms grande
del mundo no es
duea de ningn
vehculo.

Uber

Estos unicornios tambin estn respondindole al consumidor


con modelos de negocios completamente nuevos. Uber, la
compaa de taxis ms grande del mundo, no es duea de
ningn vehculo y Facebook, el dueo de medios ms popular
del mundo, no crea contenido.

La compaa
de medios ms
grande del mundo
no crea contenido.

Facebook
El minorista
ms valioso
no tiene
inventario.

Alibaba

En Asia, esta revolucin digital se amplica. Uber


proporciona un gran nmero de viajes en taxi 1 milln.
Pero el equivalente en China? Proporciona 5 millones.2

El proveedor de
alojamiento ms
grande del mundo
no es dueo de
ninguna propiedad.

Cmo est usted respondiendo a estos mercados,


requerimientos y expectativas de usuarios tan rpidamente
cambiantes? Cuenta usted con los procesos correctos y
las mtricas para soportar la entrega continua y para construir
una mejor experiencia digital ms rpidamente mientras
mantiene contentos a sus clientes??

Airbnb

Algo interesante est ocurriendo.


Tom Goodwin

> En 2014, las sesiones de apps de compras


(iOS y Android) crecieron 174% Ao sobre Ao.1

7 mtricas de desempeo para liberar mejor software ms rpidamente


2015 Dynatrace

1.
2. 2. KPCB, Uber. Fecha: Mayo 2014 (Didi), Feb 2015 (Uber)

Regreso a Tabla de Contenido

DevOps: Construyendo mejor software ms rpidamente


Cmo desplegar ms rpidamente y no fallar ms rpidamente
DevOps es acerca de responder a las
dinmicas cambiantes del mercado
para hacer llegar ideas a los clientes
nales tan rpidamente como sea
posible, minimizando el ciclo de tiempo
de caractersticas. Sin embargo, los
unicornios de DevOps no son
solamente Facebook y Google.
Estas son organizaciones de servicios nancieros
y minoristas tambin: 3

Usted puede estar pensando en resultados ms all


de estas compaas individuales. Realmente DevOps
entrega resultados? Bueno, las personas con alto
desempeo de DevOps son: 4
> Ms giles, con despliegues 30 veces ms
frecuentes 8,000 veces ms rpidos en
entregar que sus.
> Ms conables, con 2 veces la tasa de xito del
cambio y 12 veces ms rpidos en el tiempo
promedio de recuperacin.

> CapitalOne hace 1 despliegue por mes


para cada una de sus 200 aplicaciones.
> IG dice: Todos pueden hacer entrega continua.

Qu necesita usted para hacer


DevOps como un unicornio?
Usted necesita una red de seguridad. Necesita
monitoreo de desempeo con visibilidad completa
y las mtricas correctas como compuertas de calidad
a lo largo de la secuencia de desarrollo de aplicaciones.
En las siguientes pginas, utilizaremos tres ejemplos
de la vida real de fallas en aplicaciones y las mtricas
que usted necesita para encontrar problemas al
inicio . Despus, seguiremos la vida de una mtrica
a lo largo de la secuencia del desarrollo de
aplicaciones, desde la IDE de sus desarrolladores
hasta la entrada en produccin.

> Target, con 30 APIs y +500M visitantes


mensuales, tiene 80 despliegues por semana
y menos de 10 incidentes por mes.

7 mtricas de desempeo para liberar mejor software ms rpidamente


2015 Dynatrace

3. Velocity conference, 2015


4. PuppetLabs, 2013 (survey of 4,000 organizations)

Regreso a Tabla de Contenido

Seccin 2

Mtricas: aprender de otros

2015 Dynatrace

Regreso a Tabla de Contenido

Mtricas: aprender de otros


No presione sin un plan
Si sus aplicaciones no estn preparadas
y son demasiados lentas en cargar
(o se caen), su campaa de marketing
ms inteligente realmente es su peor
campaa de marketing.
Mtricas
1

Nmero de recursos

Tamao de recursos

Tamao de pgina

Caso de Estudio 1
400 seles
He aqu un ejemplo de una gran campaa de
marketing con pobre implementacin. Uno de los
anunciantes del Super Bowl les solicit a los
consumidores tomarse seles y despus cargarlas
al sitio web mvil. El plan era para que un anuncio
corriera durante el Super Bowl, jalando trco al sitio
para ver las ltimas 400 seles cargadas.
Desafortunadamente, se implement como una
matriz de imagen de 20x20 con archivos de imgenes
individuales servidos desde el mismo dominio de
imgenes. Cuando lo probamos con un iPhone,
tenamos que descargar increblemente 20 MB
de contenido y 434 recursos ignorando
completamente las mejores prcticas del
desempeo web.

Caso de Estudio 2
El favicon que fue 150 veces
demasiado grande
Durante otro importante evento deportivo, el elemento
ms grande en la pgina de aterrizaje del sitio web mvil
era un favicon con 370 kilobytes de tamao. Este es el icono
que normalmente est colocado en la parte superior
izquierda de la ventana del navegador y generalmente
tiene un tamao de 16x16 o 32x32 pixeles.
Tomaron el logotipo de alta resolucin, lo convirtieron
directamente en un icono y lo colocaron en el sitio web.

Debi haber sido de un par


de bytes, no 370 kilobytes.
Alguien no estaba pensando.
Estas dos instancias requeran pruebas bsicas de
optimizacin de desempeo y pruebas de desempeo
desde la mquina del desarrollador a lo largo de la
secuencia de desarrollo antes de entrar a produccin
para el gran evento.

7 mtricas de desempeo para liberar mejor software ms rpidamente


2015 Dynatrace

Regreso a Tabla de Contenido

120
48

Mtricas: aprender de otros


No presuponga que conoce el ambiente

0K

60

.02

0
30

MP

Sus aplicaciones se ejecutan en el borde 300 millas/hora un rcord mundial!


de Internet, a travs de una multitud de
Runtastic es una app mvil social que da seguimiento a su rutina de ejercicio y le permite ponerla en Facebook
dispositivos (por ejemplo, smartphones, para presumirla a sus amigos. En este caso, alguien hizo bicicleta durante una hora y la app le dijo que recorri
tabletas, navegadores), a travs de
480 km. Eso representa 300 millas/hora un rcord mundial!
backbones de proveedores de servicio
Cuando algo as ocurre, las probabilidades de que las personas utilicen su app se reducirn y dirn en Twitter, Facebook,
y de aplicaciones de terceros. Existen
o en la tienda de apps:Esto es s%#&! Su app no funciona! No la compren!! Los ingenieros en este caso tenan un plan.
muchos puntos potenciales de falla,
Saban que no podan probar todas las combinaciones de Android OS en todos los dispositivos, por lo que:
por lo que no debe presuponer que
conoce el ambiente sin una verdadera
> Desarrollaron una prueba unitaria para vericar el clculo de distancia GPS cada vez que la app desplegada inicia.
perspectiva de usuarios reales.
> Entonces, utilizando monitoreo de usuarios reales cada vez que la app corra en millones de instalaciones,
Mtricas
4

Nmero de errores funcionales

llamadas de tercers

encontraron que el problema ocurre slo en ciertas conguraciones de hardware de Android.


> Una bsqueda en Google les indic que era un problema bien conocido con la conguracin de OS/hardware
y fuera del control de Runtastic.
> Les informaron a sus usuarios acerca del problema y sugirieron que era tiempo de actualizar su versin
de Android, utilizando canales como Twitter o Facebook y un canal de noticias interconstruidos en la app.
Los usuarios de Runtastic tambin tienen problemas en ocasiones para cargar sus resultados a Facebook y Twitter.
Al monitorear activamente, Runtastic identica la fuente externa del problema y les dice a sus usuarios que
intenten nuevamente ms tarde.

7 mtricas de desempeo para liberar mejor software ms rpidamente


2015 Dynatrace

10

Regreso a Tabla de Contenido

Mtricas: aprender de otros


No (re) utilice componentes ciegamente

Su equipo de ingeniera es ingenioso.


An si no saben cmo hacer algo
inmediatamente, lo van a resolver.
Esto no siempre funciona a su favor
y es por eso que usted necesita
monitorear en forma cercana antes
de que las cosas lleguen a produccin.
Mtricas
6
7

Nmero de ejecuciones SQL


Nmero de mismas SQLs

Los desarrolladores siempre estn reutilizando


componentes existentes. El siguiente ejemplo realmente
nos ocurri a nosotros en Dynatrace. Necesitbamos un
reporte HTML simple para nuestros registros de pruebas
gratuitas. l no tena mucha experiencia en crear pginas
HTML o reportes para clientes, por lo que hizo lo que los
desarrolladores hacen y lo busc en Google. Nuestro
desarrollador del back-end encontr el cdigo de muestra
en GitHub y lo integr. El reporte trabaj muy bien al
principio, pero despus se hizo extremadamente lento
en los siguientes meses, tomando minutos para generarse.
Investigamos atrs del escenario y encontramos que la
muestra que el reutiliz estaba basada en Hibernate
un Marco de Trabajo de Mapeo Relacional de Objetos
(OR) para acceder a datos en la base de datos. El cdigo
no estaba utilizando ninguna de las caractersticas
avanzadas de optimizacin de Hibernate para un acceso
mejor a la base de datos. En este caso, Hibernate estaba
ejecutando declaraciones de la base de datos de 4K para
generar tres lneas en el reporte HTML.

7 mtricas de desempeo para liberar mejor software ms rpidamente


2015 Dynatrace

Ms mtricas
Estas 7 mtricas son tan slo el comienzo.
Una forma sencilla de iniciar es darles seguimiento
manualmente a travs de su secuencia de
desarrollo de aplicaciones. Una vez que usted tenga
el control de lo que tiene que saber, es tiempo de
comenzar a buscar como automatizar el monitoreo
de desempeo. Este es el objetivo de la entrega
continua: automatizar su secuencia de desarrollo
con compuertas de calidad basadas en mtricas
en cada etapa.
He aqu algunas otras mtricas a considerar:
>
>
>
>
>
>

Tiempo invertido en API


Llamadas a API
# de dominios
Tamao total
# de artculos por pgina
# AJAX por pgina

Para ms mtricas, consulte nuestra serie de blogs


sobre mtricas de calidad de software.

11

Regreso a Tabla de Contenido

Seccin 3

La vida de una mtrica

2015 Dynatrace

Regreso a Tabla de Contenido

La vida de una mtrica


Usted podra estar pensando: Cmo es que sto realmente funciona?

El monitoreo de desempeo le dar seguimiento


Cmo y cundo recopilo estas mtricas de
desempeo? Para contestar esta pregunta, lo
transportaremos a travs de la vida de una
mtrica en este caso, # de ejecuciones SQL
con unos cuantos pasos en el ciclo de vida
de entrega continua.
1 IDE/Eclipse del Desarrollador: La estacin de trabajo de
desarrolladores el lugar ms subutilizado para el monitoreo del
desempeo. Es muy simple. Si sus desarrolladores son capaces
de hacer el anlisis antes de registrar el cdigo, pueden detener
problemas al inicio del ciclo de vida y reducir los costos generales.
En este ejemplo, las herramientas de monitoreo de desempeo
estn integradas en Eclipse. Los mximos estn congurados
para mtricas de desempeo, incluyendo nuestra mtrica:
# de ejecuciones SQL. Entonces, cada vez que desarrollador
ejecute una llamada a SQL, el monitoreo de desempeo
le dar seguimiento.

7 mtricas de desempeo para liberar mejor software ms rpidamente


2015 Dynatrace

CONTINUOUS DELIVERY

IDE

EXAMPLE TECHNOLOGIES

SOURCE CONTROL

TESTING

CONTINUOUS DELIVERY

BUILD AUTOMATION

BUILD SERVER / CI

CONFIG MGMT

- Link builds to test


run monitoring
- Report build
health based on
metric evaluation

- Evaluate local
processes
- Code Linking
- Architectural
Evaluations-Metric
evaluation prior
to check-ins

- Agent injections
to monitor and
record tests
- Monitor for metric
degradation

13

Regreso a Tabla de Contenido

La vida de una mtrica


Usted podra estar pensando: Cmo es que sto realmente funciona?

4 CI build server/Jenkins: Si todo sale bien en los


2 Unit test/JUnit: En el siguiente paso, el desarrollador
anteriores pasos, el desarrollador entregar el
se convierte en el autor de la clase de casos de prueba
cdigo. El Jenkins build server registra el cambio
JUnit. El monitoreo de desempeo se congura para
y corre los casos de prueba. Se podran disparar
observar casos de prueba y para medir cada mtrica
alertas de monitoreo de desempeo. Jenkins va
pre denida para cada caso de prueba. Es aqu en donde
al servidor de monitoreo de desempeo y recopila
el desarrollador evaluar el # de ejecuciones SQL por
los datos acerca de lo que ocurri, incluyendo el #
cada prueba.
de ejecuciones SQL. Las decisiones de despliegue
3 Build automation/Maven: El desarrollador entonces
son Go o No go con reportes de excepciones.
correr una prueba MAVEN con cdigo local y utilizar
El resultado? Conanza funcional y arquitectural
el monitoreo de desempeo para evaluar las call stacks
antes del auto despliegue.
y el # de ejecuciones SQL. En este punto, el arquitecto
puede efectuar un anlisis rpido de mtricas y de
validacin arquitectural, en lugar de efectuar una revisin
de cdigo larga y tediosa. Entonces el desarrollador
decidir si el cdigo est listo para ser promovido al
sistema de administracin de conguraciones.

7 mtricas de desempeo para liberar mejor software ms rpidamente


2015 Dynatrace

14

Regreso a Tabla de Contenido

Sus siguientes pasos


Reproducciones de Webinars

Sabemos que usted est enfrentando algunos cambios importantes en los mercados,
en los requerimientos y en las expectativas de los usuarios. Sus usuarios quieren una
experiencia digital responsiva y la quieren ahora. La entrega continua es la respuesta
si usted construye una red de seguridad de desempeo. Deseamos que estas mtricas
le otorguen a usted un buen punto de inicio. Proceda a automatizar tanto como sea posible
y mantngase enfocado en ms rpido y mejor!
A continuacin encontrar algunos recursos adicionales nu estros que le ayudarn en su camino.
Herramientas DevOps que amamos
He aqu una coleccin de herramientas que fomentan la colaboracin entre equipos de
Administracin de Productos, Desarrollo, Operaciones de TI y Soporte Tcnico para permitirles
construir ms calidad en sus productos y apoyarlo a usted en establecer mejores canales
de retroalimentacin.
>
>
>
>
>
>
>

Controles de Cambio JIRA Agile


Desarrollo Eclipse
Control de Fuentes Git/GitHub
Build Automation Ant and Maven
Administracin de Conguraciones Ansible, Chef y Puppet

> 5 Key Metrics to Release Better


Software Faster
> DevOps: From Adoption to Performance
El blogroll
> DevOps reactions
Enjoy some DevOps humor!
> Dynatrace APM on DevOps
> IT Revolutions DevOps
> Software Quality Metrics for Your
Continuous Delivery
Lecturas Recomendadas
> Continuous Delivery by Jez Humble and
David Farley

Automatizacin de Pruebas LoadRunner y Selenium


Tecnologas VM, Nube y Container: Vagrant, Packer, VeeWee,
Docker y Cloud Foundry

7 mtricas de desempeo para liberar mejor software ms rpidamente


2015 Dynatrace

15

Conozca ms en dynatrace.com
Dynatrace es el innovador atrs de la Plataforma de Desempeo Digital ms importante de la industria, haciendo que la informacin en tiempo real del desempeo digital sea visible y que se pueda tomar accin con sta por todos en el negocio
y en TI. Ayudamos a clientes de todos los tamaos a ver sus aplicaciones y canales digitales a travs del lente de sus usuarios nales. Ms de 7,500 organizaciones utilizan estas perspectivas para superar la complejidad, obtener agilidad
operacional y aumentar los ingresos entregando experiencias sorprendentes para los usuarios.
9.16.15 417_SS_7PerformanceMetrics_jw

You might also like