МЕТОД ПОИСКА КЛОНОВ В ПРОГРАММНОМ КОДЕ
Аннотация:
Предмет исследования. Исследованы существующие подходы и методы поиска клонов в программном коде. В результате исследования разработан метод, реализующий семантический подход поиска дублированных фрагментов, направленный на поиск клонов всех типов. Метод. Разработанный метод основан на анализе построенного по файлам исходного кода графа зависимостей программы. Для обнаружения дублированных фрагментов для каждого файла исходного кода генерируются графы зависимостей программы, узлы которых хешируются на основе свойств их содержимого. Пара узлов выбирается из каждого класса эквивалентности. Два изоморфных подграфа, которые включают в себя пару узлов, идентифицируются. Если пара клонов включена в другую пару, она удаляется из набора обнаруженных пар дублированных фрагментов. Набор клонов генерируется из пар дублированных фрагментов, совместно использующих те же изоморфные подграфы. Таким образом, происходит расширение пар клонов. Основные результаты. Для оценки эффективности работы разработанного метода поиска клонов проведено сравнение файлов для определения типов клонов, которые обнаруживает система, использующая данный метод, и тестирование работы на компонентах реальной системы. Выполнено сравнение результатов работы разработанной системы с реально существующими. Практическая значимость. Предложенный метод позволяет автоматизировать анализ исходных файлов. Поиск клонов в программном коде является приоритетным направлением в анализе кода. Обнаружение дублированных фрагментов позволяет бороться с недобросовестным копированием программного кода.
Ключевые слова:
Постоянный URL
Статьи в номере
- АНАЛИЗ ТЕХНОЛОГИЧНОСТИ ЛИНЗОВОЙ СИСТЕМЫ НА ЭТАПЕ ОПТИЧЕСКОГО ПРОЕКТИРОВАНИЯ(на англ. яз.)
- ИССЛЕДОВАНИЕ ВЛИЯНИЯ ПАРАМЕТРОВ ЛАЗЕРНОЙ ОБРАБОТКИ НА СПЕКТРАЛЬНЫЕ ХАРАКТЕРИСТИКИ СЕРЕБРОСОДЕРЖАЩИХ ПЛЕНОКДИОКСИДА ТИТАНА
- ПРОЕКТИРОВАНИЕ ОПТИЧЕСКОГО МОДУЛЯ ОЧКОВ ДОПОЛНЕННОЙ РЕАЛЬНОСТИ
- МЕТОДИКА И ЧАСТНЫЕ РЕЗУЛЬТАТЫ ИССЛЕДОВАНИЯ КАЧЕСТВА ПОИСКА КЛЮЧЕВЫХ ТОЧЕК ПО МАТЕРИАЛАМ ОПТИКО-ЭЛЕКТРОННОЙ АЭРОСЪЕМКИ
- ИССЛЕДОВАНИЕ ШЕРОХОВАТОСТИ БУМАГИ ИЗ ВТОРИЧНОГО СЫРЬЯ МЕТОДОМ АТОМНО-СИЛОВОЙ МИКРОСКОПИИ
- МЕТОД ВЫБОРА ГИПЕРПАРАМЕТРОВ В ЗАДАЧАХ МАШИННОГО ОБУЧЕНИЯ ДЛЯ КЛАССИФИКАЦИИ СТОХАСТИЧЕСКИХ ОБЪЕКТОВ
- СИНТЕЗ ИЕРАРХИЧЕСКОЙ ДИАГНОСТИЧЕСКОЙ МОДЕЛИ ПОТОКОВОЙ ВЫЧИСЛИТЕЛЬНОЙ СИСТЕМЫ РЕАЛЬНОГО ВРЕМЕНИ
- СРАВНИТЕЛЬНЫЙ АНАЛИЗ МЕТОДОВ УСТРАНЕНИЯ ДИСБАЛАНСА КЛАССОВ ЭМОЦИЙ В ВИДЕОДАННЫХ ВЫРАЖЕНИЙ ЛИЦ
- АНАЛИЗ РАБОТЫ ПРОТОКОЛА CSMA/CA В СРЕДЕ OMNET++ С ИСПОЛЬЗОВАНИЕМ INET FRAMEWORK
- ПРИМЕНЕНИЕ МЕТОДА УРОВНЕЙ ПРИСПОСОБЛЕННОСТИ ДЛЯ АНАЛИЗА ДИНАМИКИ РАБОТЫ ЭВОЛЮЦИОННЫХ АЛГОРИТМОВ
- МЕТОД ОПРЕДЕЛЕНИЯ УПАКОВАННЫХ И ЗАШИФРОВАННЫХ ДАННЫХ ВО ВСТРОЕННОМ ПРОГРАММНОМ ОБЕСПЕЧЕНИИ
- КОНФИГУРИРУЕМЫЕ IOT-УСТРОЙСТВА НА ОСНОВЕ SOC-СИСТЕМ ESP8266 И ПРОТОКОЛА MQTT
- ПОМЕХОЗАЩИЩЕННОСТЬ БЕСПРОВОДНЫХ ПЕРСОНАЛЬНЫХ СЕТЕЙ В УСЛОВИЯХ ЦИФРОВОГО ПРОИЗВОДСТВА
- МОДЕЛЬ РАСПРЕДЕЛЕННОЙ СВЕРТОЧНОЙ НЕЙРОННОЙ СЕТИ НА КЛАСТЕРЕ КОМПЬЮТЕРОВ С ОГРАНИЧЕННЫМИ ВЫЧИСЛИТЕЛЬНЫМИ РЕСУРСАМИ
- ИССЛЕДОВАНИЕ ИСКАЖЕНИЙ ИСХОДНОГО ЦИФРОВОГО ОТПЕЧАТКА РЕАЛИЗАЦИЙ КЛИЕНТСКОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ В ПРОЦЕССЕ ЕГО ПЕРЕДАЧИ
- ПРИМЕНЕНИЕ МЕТОДА K-СРЕДНИХ В ЗАДАЧЕ ОЦЕНКИ ХАРАКТЕРИСТИК ПРОЦЕССА ДЛЯ ВЕБ-ПРИЛОЖЕНИЙ
- МОДЕЛЬ КОНСТРУКЦИИ МУЛЬТИСТРОЧНОГО ДИСПЛЕЯ БРАЙЛЯ
- ПРИМЕНЕНИЕ ЛАЗЕРНОГО ИЗЛУЧЕНИЯ ДЛЯ СТИМУЛЯЦИИ РОСТА РАСТЕНИЙ
- ВЫЯВЛЕНИЕ РИСКОВ НАРУШЕНИЙ ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ КИБЕРФИЗИЧЕСКИХ СИСТЕМ НА ОСНОВЕ АНАЛИЗА ЦИФРОВЫХ СИГНАЛОВ