Tersine mühendislik
Tersine mühendisliğin türleri ve uygulamaları

Bilgisayar destekli tasarım (CAD) daha popüler hâle geldikçe, tersine mühendislik, 3D bilgisayar destekli tasarım (CAD), bilgisayar destekli üretim (CAM), bilgisayar destekli mühendislik (CAE) ve diğer yazılımlarda kullanılmak üzere, var olan parçaların üç boyutlu sanal modellerinin yaratılması için kullanılabilir bir metot hâline gelmiştir. Tersine mühendislik işlemi bir objenin ölçümünü ve ardından üç boyutlu model olarak oluşturulmasını içerir. Fiziksel objenin boyutları, koordinat ölçme makinesi (Coordinat measuring machine, CMM), üç boyutlu üçgenli lazer tarayıcılar, üç boyutlu yapısal ışık sayısallaştırıcılı tarayıcı veya bilgisayarlı tomografi gibi üç boyutlu tarama teknolojileri kullanılarak ölçülebilir. Genellikle bir nokta bulutu olarak temsil edilen ölçülmüş veri kendi başına, topolojik bilgi eksikliği taşır ve bu yüzden sıklıkla, üçgen kaplı ağ veya bir CAD modeli gibi daha kullanışlı bir formata dönüştürülür. Imageware Rapidform 11 Ekim 2016 tarihinde Wayback Machine sitesinde arşivlendi. veya Geomagic gibi uygulamalar nokta bulutlarını; 3D CAD, CAM, CAE gibi uygulamalarda veya görselleştirmede kullanılabilecek formatlara dönüştürür.
Tersine mühendislik, sıklıkla, diğer milletlerin teknolojilerini, aletlerini, bilgilerini veya sahada sıradan askerler tarafından toplanan veya haberalma operasyonlarıyla toplanan bilgi parçalarını kopyalamak için, ordu tarafından sık sık kullanılır. İkinci Dünya Savaşı'nda ve Soğuk Savaş'ta sıkça kullanılmıştır. II. Dünya Savaşı’ndan çok bilinen örnekler şunlardır:
Jerry bidonu: İngiliz ve Amerikan kuvvetleri Almanların "Jerry can" denen ve mükemmel bir tasarıma sahip olan benzin bidonlarına sahip olduklarını fark ettiler. Bu bidonların kopyaları üzerine ters mühendislik uyguladılar. Bu bidonlar popüler olarak “Jerry can” olarak bilinirler.
Tupolev Tu-4: Japonya görevi sırasında birçok B-29 Superfortress bombardıman uçağı Sovyetler Birliği'ne (SSCB) inmek zorundaydı. Böyle stratejik bir bombardıman uçağına sahip olmayan Sovyetler B-29'u kopyalamaya karar verdiler. Birkaç yıl içinde neredeyse mükemmel bir kopyası olan Tu-4'ü geliştirdiler.
V2 Roketi: Sovyet ve yakalanmış Alman mühendisler, daha sonra R-7 Semyorka'nın öncüsü ve uzay programının başlangıcı olan, kendi klon roketleri R-1'i yapmak için ele geçirilen dokümanlardan yola çıkarak, yeni teknik dokümanlar ve planlar oluşturdular.
Birlikte işlerlik amacıyla (örneğin; belgesiz dosya formatlarını veya donanım ekipmanlarını desteklemek için) yapılmış tersine mühendislik donanım veya yazılımlarının, patent sahipleri çoğunlukla buna karşı çıksa da ve kendi ürünlerinin herhangi bir sebeple ters mühendisliğe uğramasını engellemeye çalışsa da, legal olduğuna inanılır.
Benzer şekilde, yazılım mühendisliğindeki kara kutu testinin ters mühendislikle pek çok ortak noktası vardır. Testi yapan çoğunlukla uygulama programlama arayüzüne sahiptir fakat amaçları, ürüne dışarıdan saldırarak hataları ve belgelendirilmemiş özellikleri bulmaktır.
Güvenlik denetimi, kopya korumanın kaldırılması (yazılımı kırma, krekleme), tüketici elektronik eşyalarında bulunan erişim önlemesini giderme, gömülü sistemlerin (motor yönetim sistemleri gibi) uyarlanmasında, ev içi tamirat ve uyarlamalarda, düşük maliyetli arızalı donanımlarda (bazı grafik kartları çipleri gibi) ek özelliklerin sağlanmasında veya sadece merak gidermek gibi amaçlar, tersine mühendisliğin diğer amaçlarındandır.
Tersine mühendislik aynı zamanda, işletmeler tarafından, kendi ürünlerinin üç boyutlu dijital kayıtlarını yapmak veya rakiplerinin ürünlerine değer biçmek için, var olan fiziksel geometriyi dijital ürün geliştirme ortamlarına aktarmak için kullanılır. Örneğin; bir ürünün nasıl çalıştığını, ne yaptığını, hangi bileşenlerden oluştuğunu analiz etmek için, maliyetini hesaplamak için ve potansiyel patent ihlalini saptamak için kullanılır.
Değer mühendisliği işletmeler tarafından kullanılan benzer bir aktivitedir. Yapı çözümlemeyi ve ürünü analiz etmeyi içerir ancak asıl amacı maliyeti azaltmak için fırsatlar bulmaktır.
Son olarak, tersine mühendislik sıklıkla özel bir aletin dokümanlarının kaybolması (veya hiç yazılmaması) ve onu inşa eden kişinin artık şirket için çalışmaması sebebiyle yapılır. Entegre devreler çoğunlukla modası geçmiş, tescilli sistemler üzerine dizayn edilir, bu şu anlama gelir; işlevselliği yeni teknoloji ile birleştirmenin tek yolu, var olan çip üzerinde tersine mühendislik yapmak ve onu yeniden dizayn etmektir.
Bir diğer önemli tersine mühendislik örneği ise string ifadeleri tersten yazdırmaktır.