Ursprünglich stammt Reverse Engineering aus dem Maschinenbau. Heute noch werden mit 3D-Scan-Verfahren, Computer-Tomographie, Ultraschallvermessung und anderen Möglichkeiten Informationen gewonnen, um die Funktionsweise einer Maschine oder eines mechanischen Geräts zu verstehen. Wo beim Engineering die Bestandteile eines Produkts entworfen und so zusammengesetzt werden, dass ein funktionsfähiges Gerät daraus entsteht, kehrt das Reverse Engineering diesen Prozess um.
Die Rückentwicklung soll Aufschluss darüber geben, wie die einzelnen Bestandteile funktionieren und verhilft so zu einem kompletten Funktionsverständnis. Gerade deswegen wird die Technik auch gern bei Konkurrenzprodukten angewendet: Man verspricht sich so, sein eigenes Produkt verbessern oder anpassen zu können, um im Wettbewerb am Markt zu bestehen. Reverse Engineering wird aber auch aus vielen weiteren Gründen eingesetzt und ist nicht auf Hardware begrenzt. Wie und warum wird Reverse Engineering für Software eingesetzt?