مهندسی معکوس یا Reverse Engineering یکی از واژه هایی است که طی دهه های اخیر بسیار بیشتر از  گذشته مورد استفاده قرار می‌گیرد و حتی در ادبیات عمومی و اجتماعی هم وارد شده است.

تعریف مهندسی معکوس

مهندسی معکوس یک فرایند حل مسئله است که به جای آنکه از سوال آغاز شود، از پاسخ موجودآغاز می‌شود. کاربرد اصلی مهندسی معکوس در یکی از دو مورد زیر است:

  • وقتی جواب یک مسئله را می‌دانیم. اما نمی‌دانیم این جواب پاسخ به چه سوالی است.
  • وقتی سوال و پاسخ را می‌دانیم. اما نمی‌دانیم مسیر و فرایند رسیدن به این پاسخ چه بوده است.

معمولاً هدف مهندسی معکوس، استخراج دانش یا طراحی نهفته در یک محصول (کالا یا خدمت) است. این کار عموماً با هدف تولید مجدد آن محصول یا تحلیل آن محصول انجام می‌شود.

کاربردهای مهندسی معکوس چیست؟

طبیعتاً با توجه به تعریف فوق می‌توان کاربردهای بسیار متنوعی برای مهندسی معکوس در نظر گرفت.

در اینجا برخی از این کاربردها را مرور می‌کنیم:

  • زمانی که یک قطعه‌ی صنعتی، مثلاً یک گیربکس یا موتور، به خوبی کار می‌کند و عملکرد بالایی دارد ممکن است یک شرکت تولیدی تصمیم بگیرد به جای طراحی از نقطه‌ی صفر، آن قطعه را به اجزای کوچک‌تر تفکیک کرده و هر جزء را تحلیل و مدلسازی کند تا به توانایی بازتولید آن قطعه دست پیدا کند.
  • وقتی دندان پزشکان بر اساس شکل یک دندان قالب می‌سازند و می‌کوشند مدلی مشابه آن را تولید کنند.
  • وقتی یک برنامه نویس، به جای طراحی سیستم و برنامه نویسی از نقطه صفر، یک برنامه یا سیستم موفق را مورد تجزیه و تحلیل قرار می‌دهد و سعی می‌کند اجزای آن را بازتولید کند.
  • وقتی ارتش یا سازمان‌های نظامی یک کشور، محصولات نظامی کشور دیگر را به دست می‌آورند و می‌کوشند با مهندسی معکوس به دانش و فن آوری آن کشور دست یابند یا لااقل توان علمی و فنی سازنده را ارزیابی کنند.
  • تلاش برای استخراج کدهای سطح بالای یک برنامه نرم افزاری بر اساس کدهای اسمبلی محصول نهایی

نقاشی های هایپررئال را هم می‌توان نمونه ای از کاربرد مهندسی معکوس در نظر گرفت

آیا مهندسی معکوس را یک فعالیت منفی و نامطلوب می‌دانند؟

اگر کپی کردن محصولات و کالاهای دیگران را به عنوان مصداق مهندسی معکوس در نظر بگیریم، می‌توانیم بگوییم که مهندسی معکوس می‌تواند موجب نقض مالکیت معنوی شود.

شاید نمونه کارهای شرکتهای چینی طی دهه‌های اخیر و تولید نسخه‌ی غیراصلی (Fake) محصولات، نمونه‌ی مناسبی برای این شکل از مهندسی معکوس باشد.