🛠️ Invento o técnica

Diseño por contrato

Design by contract

Fecha
1986 · fiabilidad media
Lugar
Santa Bárbara, California, Estados Unidos
Autoría
Bertrand Meyer
Ámbito
Saber y símbolos

Qué es

Método de diseño de software en el que cada componente define formalmente precondiciones, poscondiciones e invariantes, como cláusulas de un contrato que obligan tanto a quien llama a una operación como a quien la implementa. Se introdujo junto con el lenguaje de programación Eiffel.

Propuesto por Bertrand Meyer en Interactive Software Engineering (Santa Bárbara, California) junto con el lenguaje Eiffel, a mediados de los años 80.

A qué dio paso

  • adopción del lenguaje Eiffel como implementación de referencia
  • influencia en anotaciones de contratos de otros lenguajes (Ada, C#, Java)
  • prácticas de verificación formal ligera en ingeniería del software

Enlaces

Fuentes✓ verificado 2026-09-28