-
En 1949, planteó un método para comprobar la corrección de programas, introduciendo la idea de que la persona que prueba debe ser distinta al programador. Su enfoque sigue siendo base para la verificación de software.
-
Escribió el primer algoritmo destinado a ser procesado por una máquina (la máquina analítica de Babbage), considerado el primer programa de computación. También anticipó el potencial de las computadoras para realizar tareas más allá de los cálculos numéricos.
-
Participó en la Conferencia de Ingeniería de Software en 1968, donde se discutió la garantía de calidad de software. Propuso una lista de chequeo para planificar la producción de sistemas de software, resaltando la importancia de probar los programas no solo para cumplir con las especificaciones, sino también para ser útiles para los clientes.
-
Publicó el primer libro sobre programación de computadores en 1957, donde introdujo la idea de que los clientes deberían preparar los casos de prueba.
-
Su carta de 1968 sobre los peligros del uso excesivo de la sentencia "Go To" marcó el inicio de la programación estructurada. Enfatizó que las pruebas pueden detectar la presencia de errores, pero no garantizar su ausencia.
-
En 1957, explicó por primera vez la diferencia entre probar programas y depurarlos, destacando que en esa época no existía el concepto de pruebas formales ni de probadores. La atención se centraba en corregir defectos detectados en el código.
-
En 1967, introdujo la necesidad de un enfoque disciplinado para las pruebas funcionales del software. En 1970, propuso la automatización de las pruebas mediante modelos para mejorar la eficiencia.
-
En 1961, escribieron el primer libro con un capítulo dedicado a pruebas de software. Propusieron principios que incluían pensar en las pruebas al codificar y utilizar herramientas de depuración.
-
En 1976, propuso el proceso de inspección sistemática de diseño y código en su artículo "Inspecciones de diseño y código para reducir errores", mejorando la calidad de software en IBM al reducir defectos y aumentar la productividad.
-
En 1978, acuñó el término oráculo para referirse a un mecanismo para determinar si una prueba ha pasado o fallado, en su artículo sobre la comprobación de programas.
-
En 1987, Grady y Caswell publicaron "Métricas de software", explicando cómo implementar programas de métricas a nivel empresarial. Posteriormente, Grady publicó obras sobre la mejora de procesos y la aplicación del ciclo PDCA en software.
-
En 1990, Beizer introdujo la paradoja del pesticida en su libro "Técnicas de pruebas de software", señalando que cuanto más se prueba un software, más resistente se vuelve a las pruebas.
-
En 1991, Graham publicó el primer "Reporte sobre pruebas de software asistidas por computador (CAST)". En 1999, coescribió "Automatización de pruebas de software" con Mark Fewster, consolidando las bases para la automatización de pruebas.
-
En 2000, Bach presentó el concepto de gestión de pruebas basada en la sesión, un enfoque que combina pruebas exploratorias con reportes al término de cada sesión de pruebas.
-
Fundador del programa de procesos de software del SEI, desarrolló el Modelo de Madurez de Capacidades (CMM) para mejorar la calidad y productividad en el desarrollo de software.
-
En 1975, Tom Gilb publicó "Leyes de la no fiabilidad", donde fue uno de los primeros en conceptualizar la fiabilidad del software y la relación entre errores humanos y errores del sistema. En 1976, lanzó "Métricas de software", un texto de referencia por la cantidad de métricas que presentó para evaluar el software. En 1993, publicó junto con Dorothy Graham "Inspecciones de software", detallando un proceso formal de revisión de software.
-
Introdujo la complejidad ciclomática como métrica para controlar la complejidad de programas y propuso la prueba de ruta básica como técnica de prueba de caja blanca en 1976.
-
En 1984, Martin destacó en su libro "Manifiesto de los sistemas de información" que el 56% de los defectos de software se introducen en la fase de requisitos, mientras que solo un 7% ocurre en la codificación.
-
En 1994, Marick escribió "El arte de las pruebas de software", centrado en la enseñanza práctica de las pruebas. Participó en la redacción del Manifiesto Ágil en 2001 y definió los cuadrantes de pruebas ágiles en 2003.
-
En 1996, Bach introdujo el Modelo de Estrategia de Pruebas Heurísticas, enfatizando la adaptabilidad de las técnicas de prueba al contexto del proyecto. En 2001, creó la metodología Pruebas Rápidas de Software (RST).
-
En 1999, publicó "La catedral y el bazar", donde describió el método de desarrollo de software de código abierto utilizado para crear Linux y formuló la Ley de Linus, que sostiene que cuantos más ojos revisen el código, más rápido se detectan los errores.
-
n los años 80, organizaron conferencias dedicadas a pruebas de software y propusieron modelos para prevenir y detectar defectos.
-
Introdujo el modelo COCOMO para estimar costos de software y mostró cómo el costo de corregir defectos aumenta cuanto más tarde se descubren en el ciclo de vida del software.
-
Pionero en el uso de pruebas exploratorias y cofundador de la Escuela de Pruebas Dirigidas por el Contexto, que promueve adaptar las pruebas al contexto específico de cada proyecto.
-
En 1975, Frederick Brooks publicó "El mítico hombre-mes", una obra que incluye ensayos sobre ingeniería de software, como "No hay bala de plata". Brooks estimó que el costo de depurar un programa triplica el costo de desarrollo, y destacó la importancia de tener casos de prueba adecuados. Resaltó que los errores más difíciles de prevenir son los conceptuales en la especificación y diseño, más que los de sintaxis.
-
En 1976, Myers publicó "Fiabilidad del software", donde estableció que el objetivo de las pruebas es hacer que el software falle. En 1979, formalizó terminologías clave en su libro "El arte de las pruebas de software", incluyendo el concepto de pruebas de caja negra.
-
En 1986, introdujo el Modelo V de desarrollo de software, que relaciona cada fase de desarrollo con su fase de pruebas correspondiente, como una alternativa al modelo tradicional en cascada.
-
En 1995, Jorgensen publicó "Pruebas de software: Un enfoque artesanal", que se convirtió en una referencia fundamental en la evolución de las pruebas de software.
-
En 1996, Dromey propuso un modelo de calidad para hacer más tangibles las características de calidad definidas en la norma ISO/IEC 9126:1991 en su artículo "Acorralando a la quimera".
-
En 2005, creó la Fundación TMMI y desarrolló el Modelo de Madurez de Pruebas Integrado (TMMI), que permite evaluar y mejorar los procesos de prueba de las organizaciones.
-
En 2009, propuso la pirámide de automatización de pruebas, que sugiere que las pruebas deben automatizarse en tres niveles: unidad, servicio e interfaz de usuario.
-
Diferenció entre probar (explorar y aprender) y comprobar (validar automáticamente), enfatizando el valor de la prueba exploratoria.
-
Coautora de uno de los primeros textos sobre pruebas ágiles, promoviendo su integración con equipos ágiles y la mejora continua.
-
Redescubrió y popularizó el desarrollo guiado por pruebas (TDD) y fue uno de los creadores de la metodología de programación extrema (XP).
-
En 2003, identificó cuatro escuelas de pensamiento en pruebas de software: analítica, dirigida por normas, orientada hacia la calidad, y dirigida por el contexto. Posteriormente, se añadió la escuela ágil a la lista.
-
En 2007, introdujo el término crowdtesting, basado en el crowdsourcing, para realizar pruebas en entornos reales utilizando una gran variedad de dispositivos y contextos de uso.
-
En 2012, contribuyó al libro "Experiencias de automatización de pruebas", proponiendo el uso de la automatización para tareas como la configuración de pruebas y la generación de datos, destacando también la importancia de las pruebas exploratorias manuales.