Administración de Aplicaciones en ambientes Web
En el ambiente económico actual, es importante para las compañías proteger los ingresos generados vía Web y asegurar que los clientes estén bien atendidos y satisfechos con su experiencia online.
De hecho, los actuales retos económicos pueden acelerar las decisiones de mover las aplicaciones de negocios clave a la Web por muchas razones: para incrementar el acceso de los clientes, socios y empleados; para tomar ventaja de la infraestructura y recursos existentes y crecer; o para disminuir los costos mientras se mejora la eficiencia.
Independientemente de los factores que impulsan esta creación, está claro que cada vez más las transacciones de negocios fluyen a través de una aplicación basada en Web.
Hoy, las aplicaciones basadas en Web generan flujos de ingresos críticos y ofrecen oportunidades para incrementar los ingresos en el futuro. Administrar esas aplicaciones provee beneficios como asegurar la disponibilidad y desempeño mientras se da valor al negocio. Los lazos críticos entre el desempeño de la aplicación, crecimiento y protección de los ingresos, y la satisfacción del cliente son la base para establecer el retorno de la inversión y valor comercial de las aplicaciones basadas en Web.
Muchas empresas carecen de una forma para medir la experiencia real de sus clientes al usar aplicaciones basadas en Web. Esto es sorprendente porque si uno no entiende la experiencia de los clientes, es difícil juzgar si están satisfechos o van directo a la competencia. Si un banco tiene 20 clientes esperando en la fila de una sucursal, la acción inmediata es abrir más ventanillas de atención. De manera similar, si los usuarios de Web están esperando en fila debido a que un sistema back-end está caído, será complicado tomar decisiones si el banco no tiene una forma de medir la experiencia real sus clientes.
El reto de satisfacer al cliente es más difícil online porque los usuarios tienen un conjunto de expectativas diferentes que en el mundo físico. Usando el ejemplo del banco otra vez, si estoy en la fila y hay 20 clientes adelante de mi, tal vez esté insatisfecho, pero no me importaría esperar porque entiendo que tienen la necesidad de ser atendidos primero. Sin embargo, cuando acceso al sitio Web del mismo banco a las 2 a.m., para mi, soy el único cliente que tiene el banco y el sistema debe funcionar con gran rapidez. Una efectiva solución de administración del desempeño de las aplicaciones no puede sólo proveer información de la experiencia del cliente sino también ayudar a asegurar que los objetivos de negocios se cumplan.
Administrando el Desempeño de las Aplicaciones
Los objetivos básicos de una efectiva administración del desempeño de aplicaciones – al mantener activas las aplicaciones clave, minimizando la inactividad, y cumpliendo los acuerdos de nivel de servicio, no son tareas sencillas en el cada vez más complejo ambiente computacional de la actualidad. La escala de diversidad de aplicaciones, el alcance de la complejidad de la infraestructura, y la velocidad del cambio, todo contribuye para seguir la lucha de las TI para mantener el caos.
Un estudio de Forrester de Octubre de 2008 sobre el mercado de la administración del desempeño de aplicaciones muestra cómo la escala de diversidad de aplicaciones ha cambiado en las últimas décadas. Desde un simple lote computacional en los 70s, a las transacciones y bases de datos en los 80s, a UNIX, aplicaciones empacadas y cómputo cliente-servidor en los 90s, hasta los actuales basados en Web J2EE, .NET, SOA, y ambientes Web 2.0, la tendencia es clara, – la diversidad de aplicaciones ha crecido tremendamente y lo continuará haciendo en el futuro. Mientras los nuevos niveles de infraestructura tecnológica son introducidos al ecosistema de las aplicaciones, éstos deben ser administrados junto con los niveles actuales. Ello significa que una solución de gestión efectiva para las aplicaciones actuales basadas en Web debe estar disponible para vincular el desempeño de las tecnologías de siguiente generación a aplicaciones empacadas, de mainframe y pesadas aplicaciones de cliente que interactúan en los sistemas de hoy en día.
Otro factor que impacta en la administración del desempeño de aplicaciones es en el alcance de la complejidad de infraestructura. La llegada de aplicaciones Web a finales de los 90s creó una arquitectura de niveles en la que las aplicaciones interactuaban con cierto número de sistemas habituales y back-end.
Hoy, las tendencias de TI como virtualización, cloud computing y el SOA (Servicio Orientado a la Arquitectura), le han dado un giro a toda la infraestructura hacia un ambiente tridimensional donde interactúan múltiples sistemas, algunos incluso fuera del firewall empresarial, para el servir a las necesidades de negocio.
Adicionalmente al incremento de la escala de diversidad de aplicaciones y el alcance de la infraestructura, los cambios han ocurrido cada vez más rápido. Los días de administrar los cambios al resistirse o estancarse se han ido. Una ruta de procesamiento de las transacciones puede REWIRE a sí misma cuando la transacción llega a la superficie de una infraestructura y en el momento de su salida.
La aplicación puede cambiar mientras se procesa una transacción. Al utilizar tecnologías de virtualización de servidores más sofisticadas, el hardware puede cambiar desde el fragmento de un código, de nuevo mientras éste procesa una transacción.
De acuerdo con reciente estudio de Accenture, los entornos de alto desempeño de TI pasan mucho menos tiempo solucionando problemas y más tiempo mejorando y construyendo nuevas aplicaciones. Mientras la complejidad incrementa, se puede ser capaz de encontrar y arreglar los incidentes rápidamente – y solucionar los incidentes primero – lo que crea una oportunidad de construir mayor valor para el negocio.
La experiencia muestra usualmente que la identificación del problema es más larga en la mayoría de los entornos de aplicaciones Web. Desde que sus arquitectos y desarrolladores senior están dedicados a resolver problemas de aplicaciones en .NET y aplicaciones J2EE, se es capaz de reducir el Periodo Clave para Identificar un Problema, lo que permite el desarrollo de la organización para enfocarse en construir una nueva funcionalidad de negocios en lugar de combatir bomberazos o depurar.
Al administrar día a día los incidentes, ¿qué puede hacerse para asegurar el desempeño y disponibilidad de las aplicaciones Web y estar seguro de que los problemas se identifican de tal manera que se de un mayor valor al negocio, dando más tiempo de construcción y mejora de las aplicaciones en lugar de sólo arreglarlas? La clave para administrar infraestructuras complejas, especialmente si están en constante cambio, es enfocarse en las transacciones de negocios; entendiendo cómo se desenvuelven las aplicaciones Web y cómo su desempeño afecta el éxito del negocio. Del mismo modo, identificando y priorizando los problemas en el momento de presentarse requiere no sólo un vistazo de complejo mundo de las TI desde una perspectiva de la transacción, sino también el entendimiento de cómo las aplicaciones afectan las ganancias y la satisfacción del cliente.
Entendiendo al Cliente y el Valor de los Negocios
Las TI necesitan entender el valor de una aplicación y el de los clientes para el negocio, de manera que se respondan efectivamente a los problemas que afectan el flujo de ganancias. ¿Qué aplicaciones generan las mayores ganancias? ¿Cuándo? ¿Qué aplicaciones son más importantes desde una perspectiva estratégica? ¿Las TI están cumpliendo los Acuerdos de Nivel de Servicio (SLA) para los clientes clave y socios? Estas preguntas deberían ser importantes para cualquier negocio que sirve a sus clientes vía Web. Si uno no entiende el valor del negocio de las transacciones y no tienen la visión de la satisfacción del cliente, ¿cómo se justifica el ROI de infraestructuras Web y despliegues SOA que actualmente están haciendo su propio camino a ambientes de producción?
Todos los Usuarios, Todas las Transacciones, Todo el Tiempo: La administración de transacciones es la clave para gestionar las aplicaciones y que puedan dar el más positivo valor de negocio. Las transacciones relacionan a las TI con los negocios, a la infraestructura con el cliente, y ayudan a que las TI trasciendan la complejidad y el caos creado por el creciente ámbito de la infraestructura y la velocidad de los cambios. Aunque el hardware o los puntos de toque puedan cambiar, la entrega de transacciones para los servicios de negocio permanece constante. Al enfocarse en las transacciones, las TI tienen un rumbo claro y administrar para un óptimo valor de negocio. Cuando el 100% de las transacciones son analizadas en tiempo real, uno tiene el poder de solucionar los problemas antes de que los clientes sean afectados, gestionando los SLA oportunamente, administrando los incidentes por impacto de negocio, y protegiendo el crecimiento de las ganancias. El sistema debería ser capaz de monitorear todas las transacciones con un desgaste mínimo de los recursos del sistema usados en las aplicaciones.
Monitoreo Proactivo y Predictivo: Una visión profunda de la aplicación y transacción, acompañada de capacidad de administración, son necesarias para una gestión del desempeño de las aplicaciones. Además de monitorear la experiencia del usuario final y los tiempos de respuesta, una solución APM debería monitorear la lógica interna de aplicación, cómo éstas interactúan con otros sistemas back-end, cómo los cambios y errores en el entorno afectan el desempeño, y los problemas como cuestiones de puesto o pérdida de memoria pueden incapacitar la habilidad de las aplicaciones para prestar servicios a tiempo. La capacidad de monitorear las diferentes dimensiones de la administración de aplicaciones y unirlas usando la heurística para identificar los problemas antes de que afecten a los clientes, es el poder real de la APM.
(*) El autor es Director de CA para la unidad de negocios APM/Wily América Latina.
Fuente: Christian Lewis (*) – computerworld.com.co