-
Period: to
Período 1840-1950
-
Ada Lovelace
En la decada de 1840 Ada Lovelace publica el primer algoritmo, ella traducío y amplió un artículo sobre la máquina analítica de Charles Babbage, incluyendo el primer algoritmo para calcular números de Bernoulli, considerado el primer programa de computación. Además, Lovelace anticipa el potencial de las computadoras más allá de los cálculos numéricos y reconoce que los errores pueden deberse a fallos de programación y no solo al hardware. -
Alan Turing
En su artículo "Sobre la comprobación de una rutina grande", Alan Turing plantea métodos para asegurar la corrección de los programas, sentando las bases de la verificación de software. También destaca la importancia de que quien prueba un programa sea diferente de quien lo escribió. -
Period: to
Período 1951-1970
-
Daniel D. McCracken
Daniel D. McCracken publica el primer libro de programación "Programación de computadores digitales", donde destaca la importancia de que el cliente prepare casos de prueba para detectar errores lógicos y malentendidos, recomendando hacerlo antes de la comprobación real. -
Charles L. Baker
Charles L. Baker, en una reseña del libro de McCracken, explica por primera vez la diferencia entre probar y depurar programas. Hasta entonces, los desarrolladores solo corregían defectos sin un concepto formal de pruebas ni roles de probadores. -
Gerald M. Weinberg
En el Proyecto Mercurio (1958), Gerald M. Weinberg introdujo la planificación de pruebas antes de cada mini-incremento. Posteriormente, en 1961, junto a Herbert D. Leeds, publicó Fundamentos de la programación informática, el primer libro en incluir un capítulo dedicado exclusivamente a las pruebas de software. Weinberg destacó la influencia del factor humano en la calidad y advirtió que realizar más pruebas no garantiza mejores resultados si no se aplican de manera adecuada. -
Bill Elmendorf
En 1967, publicó el artículo "Evaluación de las pruebas funcionales de programas de control", donde introdujo por primera vez la necesidad de un enfoque disciplinado para las pruebas funcionales del software. Tres años después, en 1970, publicó otro artículo titulado "Diseño automatizado de librerías de pruebas de programas", en el que propuso la aplicación de pruebas basadas en modelos para evaluar software. -
Robert W. Bemer
En 1968, Robert W. Bemer participó en una conferencia de ingeniería de software patrocinada por la OTAN, donde se trató la garantía de calidad del software. En el informe, se incluyó preguntas clave sobre la calidad del software, como la aprobación del producto para su utilidad y conformidad con las especificaciones, si los programas de prueba siguen los mismos ciclos que el software, y si se asigna una persona a la garantía de calidad por cada diez en la fabricación del software. -
Edsger Dijkstra
En 1968, Edsger Dijkstra criticó el uso excesivo del Go To en programación, lo que marcó el inicio de la programación estructurada. En 1972, recibió el Premio Turing, donde destacó la importancia de evitar errores desde el principio y cuestionó la efectividad de las pruebas para garantizar la corrección de un programa. -
Period: to
Período 1971-1980
-
William C. Hetzel y David Gelperin
En 1973, William C. Hetzel publicó Métodos de prueba de programas, recopilando artículos sobre validación y pruebas de software. En 1984, junto a David Gelperin, organizó la primera conferencia sobre pruebas de software. En 1988, publicaron El crecimiento de las pruebas de software, donde describieron cuatro modelos para pruebas. Ese año, Hetzel publicó Guía completa de pruebas de software. En 1992, inauguraron las conferencias STAR y EuroSTAR sobre pruebas de software. -
Frederick Brooks
En 1975, Frederick Brooks publicó El mítico hombre-mes, destacando la importancia de las pruebas de software. Afirmó que un programa depurado cuesta tres veces más y que los casos de prueba son esenciales durante el desarrollo. También destacó que lo más difícil en la creación de software son la especificación, el diseño y las pruebas de los constructos conceptuales, no los errores de sintaxis. -
Tom Gilb
En 1975, Tom Gilb publicó el artículo Leyes de la no fiabilidad, donde conceptualizó la fiabilidad del sistema y del software, así como la relación entre error humano y error de sistema. En 1976, su libro Métricas de software se convirtió en un texto de referencia por sus numerosas métricas. En 1993, publicó Inspecciones de software junto a Dorothy Graham, detallando el proceso de revisión formal de software. -
Michael E. Fagan
En 1976, Michael E. Fagan publicó el artículo Inspecciones de diseño y código para reducir errores en el desarrollo de programas, proponiendo un proceso sistemático de inspección de diseños y códigos para reducir el costo del retrabajo. IBM logró importantes mejoras en la calidad aplicando las inspecciones de Fagan, duplicando la producción de líneas de código y reduciendo en dos tercios el número de defectos por cada mil líneas de código. -
Thomas J. McCabe
En 1976, Thomas J. McCabe publicó el artículo Una medida de la complejidad, donde introdujo la complejidad ciclomática como métrica de software para medir cuantitativamente la complejidad de un programa. Basada en la teoría de grafos, la complejidad ciclomática considera la estructura del programa sin importar su tamaño o lenguaje de programación. McCabe también propuso la prueba de ruta básica como técnica de prueba de caja blanca. -
William C. Howden
En 1978, William C. Howden publicó el artículo Estudios teóricos y empíricos sobre la comprobación de programas, donde acuñó el término "oráculo" para referirse a un mecanismo que determina si una prueba ha pasado o fallado. -
Glenford Myers
En 1976, Glenford Myers publicó el libro Fiabilidad del software: Principios y prácticas, donde afirmó que "el objetivo de los probadores es hacer que el programa falle". En 1979, en su libro El arte de las pruebas de software, Myers estableció la terminología base de las pruebas de software y introdujo el concepto de pruebas de caja negra. -
Barry W. Boehm
En 1981, Barry Boehm publicó Economía de la ingeniería de software, donde introdujo la noción de que el costo de arreglar un defecto en el software, conocido como costo de retrabajo, aumenta con el tiempo. Boehm presentó un gráfico que muestra cómo el costo de corregir defectos varía según la fase del ciclo de vida del software, con proyectos grandes mostrando un costo más alto en etapas posteriores. Además, presentó el Modelo de Costos Constructivos (COCOMO) para el costeo de software. -
Period: to
Período 1981-1990
-
James Martin
En 1984, James Martin publicó Manifiesto de los sistemas de información, donde indicó que la distribución de la inserción de defectos en un proyecto de software es la siguiente: 56% durante la fase de requisitos, 27% durante el diseño y 7% durante la codificación. -
Paul E. Rook
Publicó el artículo "Control de proyectos de software", donde presentó el Modelo V para la creación de software, introduciendo un enfoque estructurado para las pruebas. Este modelo se popularizó en Europa como alternativa al Modelo Cascada, asociando a cada fase del ciclo de vida una fase correspondiente de pruebas: requisitos con pruebas de aceptación, diseño de sistema con pruebas de sistemas, diseño de software con pruebas de integración, y diseño de componentes con pruebas de unidad. -
Robert B. Grady
En 1987, Robert B. Grady, junto con Deborah L. Caswell, publicó "Métricas de software", detallando las métricas y su utilidad. En 1996, explicó cómo aplicar el ciclo PDCA en "Mejora exitosa de los procesos de software" para mejorar procesos en el ámbito del software. -
CemKaner
Cem Kaner publicó "Pruebas de software informático", introduciendo el término "prueba exploratoria". Junto a James Bach, presentó las escuelas de pensamiento en pruebas de software y en 1999 nació la Escuela de Pruebas Dirigidas por el Contexto. En 2001, publicó "Lecciones aprendidas en pruebas de software". Además, contribuyó a leyes en EE. UU. sobre licenciamiento y calidad de software. -
Watts Humphrey
Watts Humphrey, padre de la calidad de software, fundó el programa de procesos de software del SEI. En 1989, propuso el modelo CMM para mejorar el desarrollo de software. En 2005, introdujo el proceso personal de software (PSP) y en 2006, el proceso de software en equipo (TSP) para liderar equipos de ingenieros formados en PSP. -
Boris Beizer
En 1990, Boris Beizer propuso una clasificación de defectos de software en su libro Técnicas de pruebas de software. También acuñó el término "paradoja del pesticida", que describe cómo, a medida que se prueba más un software, se vuelve más inmune a las pruebas. -
Dorothy Graham
En 1991, Dorothy Graham publicó el primer "Reporte sobre pruebas de software asistidas por computador (CAST)". En 1999, junto a Mark Fewster, publicó "Automatización de pruebas de software", una obra clave en la automatización de pruebas. En 2006, coescribió "Fundamentos de las pruebas de software: Certificación ISTQB". -
Period: to
Período 1991-2000
-
Brian Marick
En 1994, Brian Marick publicó El arte de las pruebas de software, enfocándose en pruebas de subsistemas. En 2001, fue uno de los autores del Manifiesto Ágil. En 2003, Marick escribió varios artículos sobre pruebas ágiles, incluido "Cuadrantes de pruebas ágiles", donde categoriza los tipos de pruebas en dos dimensiones: orientadas al negocio versus a la tecnología, y las que apoyan la programación versus las que critican el producto. -
Paul C. Jorgensen
En 1995, Paul C. Jorgensen, matemático y doctor en informática, publicó el libro "Pruebas de software: Un enfoque artesanal". En 2022, junto con Byron DeVries, lanzó la quinta edición. Esta obra se ha consolidado como una referencia clave en el área de pruebas de software, adaptándose a la evolución de las tecnologías. -
R. Geoff Dromey
En 1996, R. Geoff Dromey, doctor en físico-química, publicó el artículo "Acorralando a la quimera", donde propuso un modelo de calidad para abordar la intangibilidad de las características de calidad definidas en la norma ISO/IEC 9126:1991. -
James Bach
En 1996, James Bach propuso el Modelo de Estrategia de Pruebas Heurísticas, basado en patrones para diseñar y seleccionar pruebas considerando el entorno del proyecto, el producto y los criterios de calidad. En 2001, desarrolló la metodología Pruebas Rápidas de Software (Rapid Software Testing), alineada a la Escuela de Pruebas Dirigidas por el Contexto. -
Eric S. Raymond
En 1999, Eric S. Raymond publicó "La catedral y el bazar", donde describe el método de desarrollo utilizado por Linus Torvalds para Linux. Raymond expone 19 pautas para crear buen software de código abierto y presenta la Ley de Linus, que sostiene que, con suficientes revisores, los errores en el software se vuelven más fáciles de detectar y corregir. -
Jonathan Bach
En 2000, Jonathan Bach publicó el artículo "Gestión de pruebas basada en la sesión", donde introduce el concepto de sesiones de prueba como bloques de esfuerzo enfocados con pruebas exploratorias. En 2007, propuso la escala de libertad del probador, que modela el grado de autonomía permitido al realizar pruebas, desde "completamente guiado" hasta "estilo libre exploratorio". -
Period: to
Período 2001-2024
-
Kent Beck
En 2002, Kent Beck publicó "Desarrollo dirigido por pruebas: Mediante el ejemplo", donde presenta el Desarrollo Guiado por Pruebas (TDD), que consiste en escribir primero las pruebas antes del código. Además, Beck contribuyó al desarrollo de los patrones de software, la familia de herramientas de pruebas unitarias xUnit y la metodología de programación extrema (XP). -
Bret Pettichord
En 2003, Bret Pettichord presentó en una conferencia la idea de las cuatro escuelas de pruebas de software: analítica, dirigida por normas, orientada hacia la calidad y dirigida por el contexto. Posteriormente, también se reconoció la escuela ágil como parte de estas corrientes de pensamiento en el ámbito de las pruebas de software. -
Michael Bolton
En 2004, Michael Bolton se unió como coautor de la metodología Rapid Software Testing (RST) junto a James Bach. En 2009, en su artículo "Probando vs. Comprobando", Bolton diferenció entre comprobar (verificar automáticamente) y probar (explorar, investigar y aprender a través de la acción del probador). -
Erik Van Veenendaal
En 2005, Erik Van Veenendaal, junto a otros expertos, fundó la Fundación TMMI para desarrollar el Modelo de Madurez de Pruebas Integrado (TMMI). Este modelo, basado en el TMM de 1996 del Instituto de Tecnología de Illinois, permite evaluar y mejorar los procesos de pruebas en las organizaciones. -
Doron Reuveni
En 2007, Doron Reuveni y Roy Solomon publicaron "Guía esencial de crowdtesting", donde presentan el concepto de crowdtesting, inspirado en el crowdsourcing. Esta metodología promueve realizar pruebas de software en entornos reales y diversos, en lugar de laboratorios controlados, para abarcar una mayor variedad de contextos y dispositivos. -
Mike Cohn
En 2009, Mike Cohn publicó "Triunfando con la agilidad", donde propuso la pirámide de automatización de pruebas, un modelo que sugiere automatizar pruebas en tres niveles: unidad, servicio e interfaz de usuario, para lograr una estrategia de pruebas más eficaz. -
Lisa Crispin
En 2009, Lisa Crispin y Janet Gregory publicaron "Pruebas ágiles: Una guía práctica para probadores y equipos ágiles", obra pionera en el ámbito de las pruebas ágiles, que incluye un capítulo sobre pruebas exploratorias con la colaboración de Michael Bolton. En 2014, ambas autoras lanzaron "Más pruebas ágiles", enfocado en la adaptación, el aprendizaje y la mejora continua de los procesos de prueba en equipos ágiles. -
Jonathan Kohl
En 2012, Jonathan Kohl contribuyó al libro "Experiencias de automatización de pruebas" con el capítulo "La automatización es mucho más que pruebas de regresión: Pensando fuera de la caja". Propone usar la automatización no solo para pruebas de regresión, sino también para tareas como configuración de pruebas, generación de datos y gestión de flujos de trabajo. Además, resalta la importancia de pruebas exploratorias manuales para detectar defectos difíciles de encontrar mediante automatización.