Ir al contenido principal

Las pruebas no son una opción en el desarrollo de software.

¿Cómo es posible que algo empiece a fallar sino ha sufrido cambio alguno?
     Seguro que, si te dedicas o te has dedicado en tu vida laboral, en algún momento, a temas relacionados con la calidad del software te has hecho esta pregunta. Y seguro que, una vez que has comprendido que cualquier cambio en el código de una aplicación, por pequeño e inofensivo que parezca, puede tener consecuencias inesperadas, te has hecho esta otra.

¿Cómo garantizo que las partes que funcionaban siguen funcionando igual que lo hacían?
     A este efecto, en el que el software falla en alguna de las partes que han permanecido inalteradas, después de un cambio o ampliación, se le denomina regresión, y a probarlo se le denomina hacer pruebas de regresión.
Cuando hacemos pruebas de regresión, estamos comprobando varías cosas, cada vez que ejecutamos las pruebas:
  •  Comprobamos que el código que hemos modificado se comporta como debe.
  •  Comprobamos que el cambio realizado no ha causado problemas a otras partes del código.
  •  Comprobamos que errores detectados y corregidos, no vuelven a aparecer.


Tener software, sin pruebas, es garantía de problemas.
    Si no te has encontrado ya, te garantizo que te encontrarás, en la situación de tener que ampliar y/o modificar software que ha estado tiempo inalterado, incluso habiéndolo desarrollado tú mismo, que no reconocerás y que, dime algo, cómo “meterás mano a este código” sin estar seguro de que lo que no “toques” seguirá funcionando.

     Recuerda algo, puedes tener el mejor software del mundo, que si falla darás una impresión muy pobre. Por este motivo, las pruebas de regresión son una pieza esencial en cualquier ciclo de desarrollo de software.

     Además, a medida que el proyecto avanza, la batería de pruebas de regresión cada se hace más y más grande, llegando a consumir mucho tiempo, y en un mundo claramente dominado por la tendencia a la reducción en los tiempos de desarrollo, el esfuerzo disponible para realizar pruebas se ve irremediablemente reducido, transformando a la estrategia y planificación de pruebas, en uno de los mayores retos de la industria de la calidad del software.
Por todos estos motivos, haz pruebas siempre, al principio realiza pruebas básicas, pequeñas, pero déjalas programadas, te ayudarán a entregar código de calidad.

Comentarios

Entradas populares de este blog

Gestión de activos y configuración del servicio en el desarrollo de software

PROCESOS ITIL PROCESO DE TRANSICION DEL SERVICIO EN EL DESARROLLO E SOFTWARE IV GESTION DE ACTIVOS Y CONFIGURACION DEL SERVICIO Asegura que los componentes de un servicio, sistema o producto que constituyen su configuración se identifican, mantienen y tienen línea base y que sus cambios están controlados. También asegura que las entregas se hagan en entornos controlados y su uso en el entorno de operación. Para ello, proporciona un modelo de configuración de los servicios, activos e infraestructura. ¿Cómo encaja la gestión de activos y configuración del servicio en el proceso elemental de desarrollo de software? La Gestión de Configuración del Servicio da respuesta a las siguientes cuestiones: ¿Cómo identifica y gestiona una organización las muchas versiones existentes de un programa (y su documentación) de forma que se puedan introducir cambios eficientemente? IDENTIFICACION: Se trata de establecer estándares de documentación y un esquema de identificación de do...

Gestión del cambio en el desarrollo de software

PROCESOS ITIL PROCESO DE TRANSICION DEL SERVICIO EN EL DESARROLLO DE SOFTWARE III GESTION DEL CAMBIO La Gestión del Cambio, supone la evaluación y planificación del proceso de cambio para asegurarnos que se realice de la forma más eficiente, siguiendo procedimientos establecidos y en todo momento asegurando la calidad y continuidad del servicio. La Gestión del Cambio es uno de los procesos más críticos en la Gestión de Servicios y de los Sistemas de Información. Es el proceso responsable de aceptar los cambios que se llevarán a cabo en la infraestructura y de supervisar, asumiendo la responsabilidad, de que el cambio se acepte como definitivo. Es primordial para el negocio disponer de un proceso en el que los cambios se puedan gestionar para optimizar la exposición al riesgo, la severidad del impacto y aumentar las probabilidad de tener éxito al primer intento. De ahí que el segundo objetivo de la Gestión del Cambio sea reducir los riesgos técnicos, económicos y de tiempo. ¿P...

Propuesta de integración de un service desk con desarrollo

PROPUESTA DE INTEGRACIÓN        En esta propuesta, se tratará el enlace entre el equipo de Service Desk con desarrollo de una misma herramienta, para optimizar la gestión de problemas que pueden tener los distintos clientes y la resolución de los mismos.      Se analizarán las necesidades del Service Desk con respecto a desarrollo, dejando fuera de esta propuesta otras necesidades que requiere un Service Desk. Además, mostraré la visión que necesita desarrollo del Service Desk para organizar el trabajo y tener una visión más cercana de los problemas del cliente.      La comunicación entre clientes, Service Desk y desarrollo es vital para garantizar el éxito del proyecto ya que entre los tres equipos fluye mucha información.      Esta información tiene que estar recogida en una herramienta de fácil uso y accesible a todos los equipos, de forma que si algún miembro del equipo tiene una duda o necesita consulta...