Controle su entorno de prueba con realidad virtual

Foto biográfica de Jochem Freekes, consultor de soluciones empresariales de Parasoft

Por Jochem Feekes

Enero

5  min leer

¿Qué tal controlar su entorno de prueba con realidad virtual? Esta publicación le presentará cómo se siente controlar sus condiciones de prueba mediante la adopción de la virtualización de servicios.

Una de las cosas maravillosas de Parasoft es que la compañía tiene un fuerte enfoque en ayudar a las organizaciones de todos los tamaños a lograr el cumplimiento y altos niveles de calidad para desarrollar soluciones de software utilizando nuestro conjunto de pruebas de calidad continua. Este blog no es para contarte sobre las cosas interesantes que hacemos en Parasoft, sino para compartir contigo una observación que hice recientemente.

Paralelos del entorno de prueba de dibujo

De vez en cuando recibimos actualizaciones de nuestros clientes sobre sus proyectos. Recientemente, escuché de uno de nuestros clientes desde hace mucho tiempo que compartía cómo están usando nuestra solución. Me intrigó mucho su aplicación. Algunos de ustedes pueden estar familiarizados con el tanque Leopard 2.

Tanque Leopard 2
Tanque Leopard 2 | Fuente: KMW

En la guerra, los tanques tienen una historia relativamente corta. Fueron ampliamente utilizados por primera vez a principios del siglo XX. A lo largo de las décadas, se han realizado mejoras significativas, incluida la introducción de tecnología. Hay mucho que decir sobre lo que es posible hoy en día cuando se trata de tecnología.

Me pareció particularmente interesante cómo el proceso de formación de la tripulación ofrece paralelismos con el desarrollo de software.

Según el ensayo, Entrenamiento: La base para el éxito en el combate:

Al diseñar un programa de entrenamiento de combate militar, generalmente hay tres componentes.

  1. La tarea en sí: qué se espera que logre quién / qué.
  2. Las condiciones: las circunstancias en las que se completará la tarea (p. Ej., De día o de noche, en movimiento o estacionaria, plena capacidad o no, fuerte resistencia del enemigo o no).
  3. Los estándares: el nivel de competencia y eficacia en el que se espera que se lleve a cabo la tarea (p. Ej., Porcentaje de sistemas listos y disponibles, enemigos muertos, precisión de dar en el blanco).

Con esos componentes de entrenamiento en mente, ¿cuáles son los métodos para transformar un grupo diverso de soldados en un equipo endurecido por la batalla que esté listo para cada posible encuentro?

Entornos de prueba: Real vs. Virtual

La forma tradicional, y aún efectiva, de entrenar a un equipo militar es en el campo, en un entorno real con condiciones climáticas reales y munición real. La desventaja de este tipo de capacitación es que es muy costosa.

Además, muchas de las condiciones encontradas no son repetibles. Esto puede ser muy frustrante cuando la tarea no cumplió con los estándares y no se puede volver a intentar porque no hay control sobre las condiciones en el entorno de capacitación.

Ilustración que muestra los mismos tanques militares en los mismos lugares de entrenamiento durante diferentes temporadas para demostrar el costo de la espera
Esperar la temporada adecuada o trasladar el entrenamiento a un lugar diferente es una tarea costosa y que requiere mucho tiempo.

A principios de la década de 1980, el ejército de EE. UU. Se dio cuenta de que poder controlar las condiciones durante el entrenamiento le permitiría ser más eficiente y efectivo. Como tal, SIMNET se realizó en 1986.

SIMNET permitiría que varias tripulaciones se sometieran a una formación rigurosa en un entorno de realidad virtual (VR) totalmente controlado. Probablemente puedas imaginar que tener un control total sobre el medio ambiente y sus condiciones, permitió que la tripulación estuviera expuesta a muchos escenarios diferentes, preparándose mejor para cualquier tarea que tuvieran que completar en una batalla real.

Imagen de la sala de entrenamiento del simulador de aviones de combate con múltiples pantallas y controles para practicar la simulación del entorno de prueba
Simuladores de aviones de combate en una sala de entrenamiento.

¿Qué tiene que ver todo esto con el desarrollo de software?

Como desarrollador, necesita producir software que funcione. Los componentes de software a menudo tienen que integrarse o interactuar con otro software. Esto sucede a menudo en un entorno "hostil" llamado producción.

En producción, el software debe poder manejar muchos escenarios diferentes, muchos de los cuales podemos prepararnos. ¿Reconoce el paralelo con el ejército que entrega tripulaciones bien entrenadas para completar sus misiones?

Dos ilustraciones de tanques Izquierda - Entrenamiento en el campo | Derecha: formación mediante la simulación del entorno de prueba
Es imposible ejecutar la misma sesión de entrenamiento en una temporada diferente o en una ubicación geográfica diferente (izquierda). Con VR (derecha), puede cambiar las condiciones de entrenamiento con solo presionar un botón.
Dos ilustraciones de tanques: Izquierda - Desarrollo / Prueba en el campo; Derecha: desarrollo / prueba usando simulaciones
Usando el ejército como una analogía para el desarrollo de software: Los equipos de la izquierda que trabajan en el sistema bajo prueba (SUT) no tienen el control de los sistemas ascendentes y descendentes y su comportamiento. Al introducir la realidad virtual para el SUT (también conocida como virtualización de servicios), los equipos eliminan las influencias no deseadas y ahora tienen el control total del comportamiento de los sistemas ascendentes y descendentes.

Desarrollo de software para el mundo real

Al desarrollar software, desea que la aplicación esté lo más lista posible antes de exponerla al mundo real, al igual que la tripulación de un tanque. Todos los componentes del software deben funcionar como una máquina bien engrasada.

Está diseñando el software para manejar todas las situaciones esperadas y para ser capaz de manejar situaciones inesperadas. Pide respuestas a preguntas.

  • ¿Qué sucede si ejerce una presión tremenda sobre el software?
  • ¿Qué pasa si uno de los componentes queda incapacitado?
  • ¿Podrás seguir alcanzando los objetivos definidos si ocurre algo inesperado?

El costo de la falta de preparación podría ser catastrófico.

¿Cómo podemos llevar el desarrollo de software más allá de las limitaciones de la realidad?

Muchas organizaciones están desperdiciando muchos recursos y todavía no pueden entregar software reforzado antes de lanzarlo. Necesitamos romper con la idea de que las pruebas solo se pueden realizar en el entorno real. Hemos dado algunos pasos hacia adelante. Ahora es el momento de dar un salto adelante.

Al igual que los militares usan la realidad virtual para controlar las condiciones de sus entornos, las organizaciones de desarrollo pueden aprovechar la virtualización de servicios para lograr el mismo efecto.

Tome el control de su entorno de prueba con la virtualización de servicios

Al tomar el control de sus condiciones de prueba, facilita la prueba y verificación completa de las tareas de su aplicación y se asegura de que cumpla con los estándares necesarios para la implementación. Esto da como resultado costos más bajos, mayor productividad y una entrega más rápida a la producción.

Afortunadamente, veo que más organizaciones dan los primeros pasos para obtener el control de sus entornos de desarrollo y prueba al adopción de la virtualización de servicios. ¿Tiene curiosidad acerca de cómo podría tomar el control de sus entornos? ¿Se pregunta cuál es la estrategia de adopción adecuada para usted?

Llegar a mí para discutir más estas ideas sobre la simulación del entorno de prueba. Me complace responder a cualquiera de sus preguntas y brindarle una demostración personal. También puede consultar nuestro documento técnico.

Cómo elegir la solución de virtualización de servicios adecuada
Foto biográfica de Jochem Freekes, consultor de soluciones empresariales de Parasoft

Por Jochem Feekes

Jochem ha pasado los últimos dos años trabajando como consultor de soluciones empresariales para Parasoft, después de trabajar como consultor de la industria con una empresa de integración de sistemas global. Le gusta ayudar a los clientes a tomar el control de sus entornos de prueba.

Reciba las últimas noticias y recursos sobre pruebas de software en su bandeja de entrada.