Generic selectors
Exact matches only
Search in title
Search in content
Menu
دوره آموزشی هدف گذاری (کلیک کنید)


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


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

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

در اینجا مروری خلاصه بر مفهوم مهندسی معکوس و کاربردهای مهندسی معکوس خواهیم داشت.

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

اگر چه بر اساس نوع کاربرد و رشته‌ای که در مورد آن صحبت می‌کنیم، معنا و مفهوم مهندسی معکوس تفاوت خواهد داشت، اما شاید بتوان تعریف زیر را به عنوان یک تعریف مختصر و مفید از مهندسی معکوس پذیرفت:

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

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

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

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

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

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

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

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

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

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

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

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

محدودیت در دسترسی کامل به این مطلب

برای مشاهدهٔ متن کامل این مطلب کافی است (بدون پرداخت هرگونه هزینه) در سایت متمم ثبت نام کنید. پس از ثبت‌نام به تعداد قابل‌توجهی از درس‌‌های متمم دسترسی پیدا خواهید کرد نمونهٔ آن‌ها را می‌توانید از طریق لینک زیر ببینید:

نمونه درس‌های کاربر آزاد متمم

البته اگر بخواهید به همهٔ درس‌های متمم دسترسی داشته باشید، لازم است حق اشتراک بپردازید.

ثبت نام رایگان    تجربه‌ٔ متممی‌ها

[کتاب برای مطالعه تکمیلی: Reverse Engineering – Technology of Reinvention]

[منبع برای مطالعه تکمیلی: Reverse Engineering – Computer World]

چه کاربردهای دیگری از مهندسی معکوس را می‌شناسید و در ذهن دارید؟

 

برخی از سوالهای متداول درباره متمم (روی هر سوال کلیک کنید)

متمم چیست و چه می‌کند؟ (+ دانلود فایل PDF معرفی متمم)
چه درس‌هایی در متمم ارائه می‌شوند؟
هزینه ثبت‌نام در متمم چقدر است؟
آیا در متمم فایل‌های صوتی رایگان هم برای دانلود وجود دارد؟

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

    پرطرفدارترین دیدگاه به انتخاب متممی‌ها در این بحث

    نویسنده‌ی دیدگاه : مریم

    یکی از کاربردهاش در زمان کنکور است که مثلا در درس ریاضی حل معادله درجه سه به بالا بسیار مشکل و وقتگیر و در بیشتر موارد بی قاعده است در این موارد توصیه میشود که گزینه ها را در معادله امتحان کنیم و هر کدام که جواب داد را انتخاب کنیم یا خودمون برای معادله جواب حدس بزنیم و در معادله امتحان کنیم.

    من خودم یک بار در نوشتن یک بازی با زبان برنامه نویسی C چون هیچ ایده ای برای این کار نداشتم مجبور شدم برنامه یک بازی ساده را از اینترنت پیدا کنم و قسمت قسمت اجراش کنم تا عملکرد هر قسمت را بفهمم بعد عملکرد کل برنامه را متوجه بشم. و حقیقتا مهندسی معکوس به خصوص در برنامه نویسی کار به شدت سخت و زمانبری است چون هر کسی سبک خاص خودش رو در کدزنی داره و ما در واقع داریم خط فکری صاحب کد رو کشف میکنیم.

     
    تمرین‌ها و نظرات ثبت شده روی این درس صرفاً برای اعضای متمم نمایش داده می‌شود.
    .