Einige Begriffe sind selbsterklärend. Dies ist beim Reverse Engineering der Fall, bei dem etwas buchstäblich auseinandergenommen und wieder zusammengesetzt wird. Dies kann physisch oder virtuell erfolgen, und die Absicht besteht darin, herauszufinden, wie etwas funktioniert, um etwas Ähnliches zu erstellen.
Reverse Engineering gibt es schon seit vielen Jahrhunderten, fast so lange wie Menschen Dinge erschaffen. Manchmal wird Reverse Engineering mit dem Ziel durchgeführt, eine bestehende Kreation zu verbessern, während andere Fälle von Reverse Engineering das Stehlen von Technologie beinhalten. Letzteres war in der Kriegsgeschichte vor allem bei Waffen der Fall.
Nicht nur Waffen sind Gegenstand des Reverse Engineering. Alltägliche Dinge wie Fahrzeuge, DVDs und Haushaltsgeräte werden weltweit intensiv geprüft. Einige Unternehmen haben es sich zur Gewohnheit gemacht, Waren aus anderen Ländern zu importieren, diese Stück für Stück auseinander zu nehmen und dann mit Reverse Engineering ihre eigenen herzustellen.
Reverse Engineering findet auch in der virtuellen Welt statt. Computerkünstler und Wissenschaftler praktizieren Reverse Engineering, indem sie 3D-Modelle von realen Geräten erstellen und diese dann virtuell dekonstruieren, um zu sehen, wie sie funktionieren. Manchmal setzen sie sie wieder zusammen, entweder genau oder auf eine etwas andere Art und Weise. Das Aufkommen von Hochleistungsservern und Grafiksuiten hat dies sowohl möglich als auch wünschenswert gemacht.
Computer praktizieren Reverse Engineering auch auf einer grundlegenderen Ebene. Eine Form dieser Art von Reverse Engineering ist die Dekompilierung. Dekompilieren ist ein Prozess, bei dem ein Computer Informationen von einem Low-Level-Format (Computercode) in ein High-Level-Format (ASCII-Text und -Zahlen) umwandelt, damit Menschen Dinge wie Anweisungen und Webartikel lesen können. Häufige Fälle von Dekompilierung sind die Übertragung von Dateien von einem Benutzer an einen anderen, beispielsweise beim Austausch von Daten oder Bildern in einer E-Mail oder bei der Wiederherstellung einer beschädigten oder nie abgeschlossenen Codierung. Die Dekompilierung kann auch in Form von Sicherheitsverletzungen erfolgen, bei denen ein Hacker mithilfe von Reverse Engineering die Daten rekonstruiert, die ein anderer so dringend per Verschlüsselung verbergen wollte.
Eine weitere doppelte Verwendung von Reverse Engineering ist die Erzeugung und Verhinderung von Computerviren. Virenentwickler dringen in das Innere von Computercode ein, um Orte zu finden, an denen sie ihre Kreationen vergraben können. Durch die Wiederherstellung des Maschinencodes als Quellcode kann der Virenersteller finden, wonach er sucht. Auf der Kehrseite dieser Aktionen stehen die Menschen, die Computerviren verhindern oder zerstören wollen. Auch sie verwenden Reverse Engineering, um den Virus selbst zu dekonstruieren und die schädlichen ausführbaren Dateien zu zerstören oder zu antizipieren.