Нажмите "Enter" для пропуска содержимого

Что такое «Метод обратного проектирования»?

Думаю, каждый инженер хотя бы раз в жизни слышал это выражение – «метод обратного проектирования» — но не каждый сразу понял, что оно значит.

Метод обратного проектирования

Изначально метод «обратной разработки» означает буквально то, что и вытекает из его названия – разработка устройства не с нуля по чертежам из головы разработчика, а методом исследования готового изделия и копирования его частей. Английский вариант этого понятия звучит как «reverse engineering», и довольно часто его можно слышать в среде программистов и прочих разработчиков электроники. Зачастую под ним подразумевается взлом программного продукта с целью выделить исходные коды и повторить программу. Естественно, такие методы незаконны, так как зачастую нарушают законодательство в части защиты авторских прав как минимум.

Можно выделить, пожалуй, три основных направления в сфере обратной разработки в исконном ее значении:

  1. Обратная разработка в сфере машиностроения. То есть копирование различных механизмов и их частей с целью использования в своих разработках. Как примеры таких разработок можно рассматривать советский бомбардировщик ТУ-4, который является практически полной копией американского Боинга В29. Ну и китайцев, само собой, с их «недорогими аналогами Ленд-Роверов» и прочими копиями известных брендов.
  2. В части электроники можно рассмотреть различные радиолампы из той эпохи, когда они еще были в ходу – многие из них были копиями американских. Туда же можно отнести и некоторые советские микросхемы.
  3. Программное обеспечение. Здесь для обратного проектирования очень много применений: это и просто копирование интерфейсов и функционала программ, и взлом интерфейсов обмена данными (протоколы общения мессенджеров для сторонних клиентов), взлом протоколов общения между клиент-серверными приложениями с целью внедрения сторонних команд или кражи данных, взлом закрытых форматов хранения данных… Продолжать можно бесконечно.

Все эти пункты объединяет одно – разработка чего-либо, будь то программы или механические конструкции, ведется методом копирования оригинала, с предварительной разборкой оного и детальным изучением принципов его работы.

И все бы ничего, если бы не один случай, после которого я стал замечать, что это словосочетание употребляется еще и в некотором другом смысле. А именно, под «обратным проектированием» понимают разработку документации на изделие по принципу «трехмерная модель – чертежи». Видимо, пошло это выражение от людей, которые привыкли сначала чертить документацию на кульмане (или его электронном аналоге), а уже потом получать вживую готовые детали и собирать из них железо. Разработка сначала модели, выглядящей как живая деталь, сборки из них, а уже потом черчение документации – это прямо что-то необычное, как бы идущее в разрез с идеологией конструкторской работы, отсюда и называние этого стандартного ныне метода «обратным».

Надо заметить, что в первый раз я вообще не сразу понял, когда про мои модели услышал, что я работаю по методу обратной разработки. И даже переспросил. Но с тех пор я слышал это выражение именно в таком ключе не один раз, причем от разных людей. В основном, конечно, тех, кто застал на своем веку отсутствие трехмерного моделирования и полноценных САПР-систем для персонального компьютера.

Так что, если когда-нибудь вам доведется услышать из уст коллеги, особенно в возрасте старше среднего, выражение «обратная разработка» — не удивляйтесь. Скорее всего, он будет иметь в виду принцип «трехмерная модель – документация».

Станьте первым комментатором

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *