Cinco limitaciones de desarrollo y prueba que afectan la velocidad

Anuncio
Serie de libros electrónicos para el desarrollo ágil paralelo: Capítulo 2
Cinco limitaciones de
desarrollo y prueba que afectan
la velocidad, el costo y la
calidad de sus aplicaciones
Nuevas presiones, más limitaciones
No es ningún secreto que en la economía de aplicaciones las organizaciones
líderes crean una ventaja competitiva mediante el desarrollo de nuevas
innovaciones digitales y su combinación con bienes y servicios existentes.
Esto se conoce como Transformación digital, es una iniciativa que se
propagó entre las empresas que desean satisfacer la demanda siempre
creciente de usuarios que se capacitaron con la Internet, dispositivos
móviles y redes sociales que exigen el desempeño perfecto de todos los
servicios digitales que consumen.
Una parte de esta transformación implica que las organizaciones están
presionadas para entregar nuevas aplicaciones y servicios a una velocidad
acelerada y a la vez para mantener una calidad alta del software y los costos
de desarrollo y prueba a un nivel razonable. A pesar de tener las mejores
intenciones, los equipos de desarrollo y prueba a menudo tienen dificultades
para cumplir con uno o más objetivos de velocidad, costo y calidad debido
al desafío persistente de las limitaciones.
Encuesta sobre Transformación digital de Altimeter Group, 2014 N=59
1
2
¿Qué es la
transformación
digital?
?
Altimeter la define como “la reorganización
de la tecnología y los modelos de
negocios o la inversión en ellos para
comunicarse de manera más efectiva
con los clientes digitales en todo punto
de contacto del ciclo de vida de la
experiencia del cliente”1.
Cómo las limitaciones
restringen el potencial
de desarrollo
Probablemente escuchó el dicho “una cadena es tan fuerte como su eslabón más débil”.
Para los equipos de desarrollo y prueba, existe una relación similar entre el ciclo de vida
de la entrega de software (SDLC) y las limitaciones.
A menudo, en la cadena
de entrega que representa
el SDLC, las limitaciones
se esconden detrás del
eslabón más débil.
Acuñada por Eliyahu M. Goldratt en su libro, La Meta, la teoría de las limitaciones explica
que dentro de todo sistema administrable existen limitaciones que pueden afectar
el logro de un objetivo en particular. Por ejemplo, los equipos de desarrollo y prueba se
topan con muchas limitaciones de entorno, datos, prueba y visibilidad dentro de las etapas
individuales del SDLC; cada una de ellas genera demoras o dificultades específicas que
impiden la entrega de servicios de alta calidad a los costos y velocidades esperados.
Esto significa que incluso si el negocio y los usuarios quieren mejores aplicaciones y entregas
más rápidas, TI solo podrá desarrollar y probarlas a la velocidad y frecuencia que permitan
las limitaciones del SDLC. Entonces, si desea alcanzar niveles más altos de velocidad, costos
y calidad, debe comprender las limitaciones comunes que plagan el SDLC y cómo
minimizarlas o eliminarlas.
3
Cinco limitaciones comunes en el SDLC
A menudo, identificar y resolver las limitaciones en el SDLC puede ser algo de nunca acabar, cuando se resuelve una, aparece otra por aquí,
otras aparecen por allá y pueden ser difíciles de predecir. A continuación se enumeran algunos de los tipos de limitaciones comunes que se
deben buscar cuando se revisan las prácticas de desarrollo y prueba:
1
2
Limitaciones de aplicaciones
compuestas
Limitaciones de entorno
Cuenta con muchos equipos de entrega de
aplicaciones pero no suficientes entornos de
desarrollo y prueba donde trabajar. El resultado
inevitable es que los equipos experimentan tiempo
de inactividad no productivo mientras esperan que
los sistemas o entornos que necesitan estén
disponibles.
Las aplicaciones modernas se ensamblan de
varias API, UI, componentes y servicios, puede
tener acceso limitado a mucha de ellas para las
actividades de desarrollo y prueba. Cuando estos
componentes son de terceros, a menudo tiene que
pagar cargos de acceso que pueden acrecentarse
rápidamente con el tiempo.
4
Cinco limitaciones comunes en el SDLC
3
4
5
Limitaciones de datos
Limitaciones de prueba
Limitaciones de visibilidad
Para asegurar que una aplicación funcionará al
nivel esperado en la producción, debe evaluarla
con datos que se acerquen a las condiciones
“reales” y que tengan la amplitud necesaria para
cubrir todos los casos de uso. Si los equipos de
prueba no tienen fácil acceso a ese tipo de datos,
deben crear datos de prueba de calidad de
producción manualmente, lo que implica costos
y demoras adicionales en los proyectos.
Muchos equipos de TI creen que los
procedimientos de prueba están automatizados,
pero solo la prueba está automatizada.
Para llegar a ese paso, tienen que desarrollar
scripts y código manualmente que impulse la
automatización. Usualmente, estos recursos
de prueba no pueden compartirse en las etapas
de prueba (por ejemplo: unidad, funcional, esión,
integración, desempeño, etc.) y generan la
necesidad de duplicar el esfuerzo.
Cuando las pruebas demuestran defectos de
la aplicación, los equipos de TI deben localizar
la raíz del problema para poder resolverlo.
En un entorno de aplicación compuesta, es más
fácil decirlo que hacerlo, en particular cuando
hay escasa visibilidad integral de la ruta de
transacciones y se dificulta el descubrimiento
de información útil.
5
Cómo las limitaciones de
desarrollo y prueba afectan
su negocio
Si bien las limitaciones se manifiestan como desafíos técnicos que los equipos de TI deben resolver
dentro y fuera del SDLC, también afectan el negocio en su totalidad de varias maneras significativas.
Innovación ralentizada
Pensar en una idea de software innovadora es solo la mitad de la ecuación, la otra es
llevarla al mercado rápidamente y con un nivel de calidad que generará una ventaja
competitiva y superará las expectativas de los usuarios. Sin embargo, muchas de las
limitaciones discutidas anteriormente contribuyen al tiempo de inactividad y al esfuerzo
manual que prologan los cronogramas de los proyectos y así frenan la innovación y les dan
la oportunidad a los competidores de llegar primero al mercado.
Calidad reducida
Cuando los equipos no tienen acceso oportuno a recursos de prueba de condiciones reales,
no pueden realizar las pruebas tan eficientemente y exhaustivamente como es necesario
para garantizar el desempeño listo para la producción. Cuando una aplicación de baja
calidad llega al mercado, desalientan a los clientes, pueden dañar su marca y requieren
una revisión de desarrollo y prueba importante.
Mayores costos
Tratar de esquivar las limitaciones genera ineficiencias en el SDLC que resultan en costos
de hardware y software para el negocio. Por ejemplo, cuando los codificadores utilizan su
valioso tiempo para crear scripts o simulacros de escaso valor, el “costo humano” de la
entrega de la aplicación aumenta. También existe el impacto sobre las ganancias conocido
en el presente o desconocido en el futuro cuando se lanza al mercado de forma prematura
un servicio lleno de errores.
6
Resolver el problema de las limitaciones
con el desarrollo ágil paralelo
Para limitar los efectos de las limitaciones en la velocidad, la calidad y los costos del desarrollo de software, las organizaciones líderes
adoptaron herramientas y metodologías de desarrollo ágiles y en paralelo.
Con el desarrollo ágil paralelo, puede reducir o eliminar:
Las limitaciones de pruebas al permitirles
a múltiples miembros de equipos interfuncionales
(incluso de desarrollo y control de calidad) diseñar
y ejecutar rápidamente pruebas automatizadas de unidad,
función, regresión, integración, carga y desempeño.
Las limitaciones de aplicaciones compuestas
y de entorno al modelar y simular el
comportamiento y las características de sistemas
y servicios dependientes
Las limitaciones de datos mediante la captura de
transacciones reales en entornos de prueba y ensayo
y la creación inteligente de recursos de servicio virtual
“realista” y de automatización de prueba para
incrementar la calidad
Las limitaciones de visibilidad gracias
a la adquisición de una comprensión al nivel de
la transacción de las aplicaciones modernas y complejas
y así acelerar el análisis de las raíces de los defectos
y la remediación de los problemas encontrados
de forma intuitiva
El resultado es que los equipos de TI pueden trabajar en paralelo y “trasladar a la izquierda”
las actividades de desarrollo y prueba; entonces, puede entregar nuevos y mejores servicios
al mercado más rápido y así satisfacer la demanda de los clientes.
7
¿Qué sigue?
En el capítulo 3 de la serie, veremos de cerca lo que se necesita para lograr un desarrollo ágil paralelo
y cómo está conectado de forma directa a sus capacidades de virtualización, colaboración, calidad
del software y administración.
¿Las limitaciones lo retrasan? Descubra sus fortalezas y debilidades en la Evaluación de desarrollo y prueba
y obtenga orientación que puede utilizar para comenzar a resolver sus desafíos de desarrollo y prueba hoy.
CA Technologies (NASDAQ: CA) crea un software que impulsa la transformación en las empresas y les permite aprovechar
las oportunidades de la economía de aplicaciones. El software es el centro de cada empresa, en cada industria. Desde la
planificación hasta el desarrollo, la administración y la seguridad, CA trabaja con empresas en todo el mundo para cambiar
la forma de vivir, realizar transacciones y comunicarse, mediante entornos móviles, de nube pública y privada, centrales
y distribuidos. Obtenga más información en ca.com/ar.
© Copyright CA 2015. Todos los derechos reservados. El propósito de este documento es meramente informativo y no constituye ningún tipo
de garantía. Todas las marcas registradas, los nombres comerciales, las marcas de servicios y los logotipos mencionados en este documento
pertenecen a sus respectivas empresas.
CS200-127705-2
Descargar