Compatible con versiones anteriores (retrocompatibilidad)
Compatible con versiones anteriores (o a veces retrocompatible o compatible con versiones anteriores) se refiere a un sistema de hardware o software que puede utilizar satisfactoriamente interfaces y datos de versiones anteriores del sistema o con otros sistemas. Por ejemplo, Perl, el lenguaje de scripting, fue diseñado para ser compatible hacia atrás con awk, un lenguaje anterior que Perl fue diseñado para reemplazar.
La compatibilidad hacia atrás se logra más fácilmente si las versiones anteriores han sido diseñadas para ser compatibles hacia adelante, o extensibles, con características incorporadas como Hooks, plug-in, o una interfaz de programa de aplicación (API) que permite la adición de nuevas características.
El término retrocompatible (fíjese en la «b») se utiliza a veces para describir el hardware o el software que se ha diseñado sin tener en cuenta la compatibilidad con las versiones anteriores, lo que hace que las dos versiones luchen (o combatan) entre sí. En este caso, las dos versiones no pueden compartir datos fácilmente y pueden tener características que causan errores o bloqueos cuando se instalan en el mismo ordenador, a menudo porque el ordenador no entiende a qué versión se refiere. Incluso si se elimina la versión anterior, los vestigios que quedan de ella pueden causar problemas al ejecutar la versión más reciente.