Details

Title: Автоматизация миграции Java-программ на новый набор библиотек: магистерская диссертация: 09.04.01
Creators: Алексюк Артем Олегович
Scientific adviser: Ицыксон Владимир Михайлович
Organization: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Imprint: Санкт-Петербург, 2017
Collection: Выпускные квалификационные работы; Общая коллекция
Subjects: Java, язык программирования; Вычислительные машины электронные персональные — Библиотеки программ; трансформация программ; миграция программ
UDC: 004.438(043.3); 004.422.8(043.3)
Document type: Master graduation qualification work
File type: PDF
Language: Russian
Level of education: Master
Speciality code (FGOS): 09.04.01
Speciality group (FGOS): 090000 - Информатика и вычислительная техника
DOI: 10.18720/SPBPU/2/v17-4102
Rights: Доступ по паролю из сети Интернет (чтение, печать, копирование)
Record key: RU\SPSTU\edoc\44776

Allowed Actions:

Action 'Read' will be available if you login or access site from another network Action 'Download' will be available if you login or access site from another network

Group: Anonymous

Network: Internet

Annotation

Целью этой магистерской диссертации является разработка процедуры автоматизированной миграции Java-программ на новый набор библиотек. Задача миграции (портирования) кода часто встречается в современных программных проектах. Например, такая задача может возникнуть, когда проект необходимо перенести на новую библиотеку или на новую платформу. В данной работе представлена процедура автоматизированной миграции, основанная на семантическом подходе. Для процедуры миграции была разработана метамодель библиотеки, использующая предложенный ранее формализм и предназначенная для описания библиотек на объектно-ориентированных языках. Процедура разбита на пять этапов, каждый этап подробно описан в тексте диссертации. Предложенная процедура реализована в прототипе инструмента миграции. Инструмент включает в себя модули извлечения трассы выполнения программ, визуализации моделей библиотек, взаимодействия с пользователем и непосредственно миграции. Для инструмента был разработан язык описания библиотек. Прототип инструмента был протестирован как на искусственных примерах, так и на существующем проекте. Результаты тестирования показали, что миграция кода может быть успешно автоматизирована, и разработанная процедура может использоваться для решения задачи миграции программного кода.

Document access rights

Network User group Action
ILC SPbPU Local Network All Read Print Download
Internet Authorized users SPbPU Read Print Download
-> Internet Anonymous

Table of Contents

  • ВВЕДЕНИЕ
  • 1. Анализ подходов к миграции программ
    • 1.1. Основные особенности задачи миграции
    • 1.2. Критерии оценки подходов к миграции
    • 1.3. Трансляция вызовов
    • 1.4. Виртуализация уровня операционной системы
    • 1.5. Использование программ-оберток
    • 1.6. Синтаксический подход
    • 1.7. Семантический подход
    • 1.8. Выводы
  • 2. Постановка задачи и выбор пути решения
    • 2.1. Решаемые задачи
    • 2.2. Формулирование требований к разрабатываемой системе
      • 2.2.1. Требования к процедуре миграции
      • 2.2.2. Требования к прототипу инструмента миграции
      • 2.2.3. Ограничения разрабатываемого прототипа и инструмента миграции
    • 2.3. Анализ задач и выбор пути решения
    • 2.4. Выводы
  • 3. Проектирование автоматизированной системы миграции кода
    • 3.1. Построение метамодели
    • 3.2. Разработка процедуры миграции программного кода
      • 3.2.1. Извлечение трассы
      • 3.2.2. Отображение трассы на модель
      • 3.2.3. Поиск эквивалентной трассы
      • 3.2.4. Отображение трассы на АСД
      • 3.2.5. Трансформация программы
    • 3.3. Выводы
  • 4. Разработка инструмента автоматизированной миграции Java-программ
    • 4.1. Средства разработки
    • 4.2. Выбор модели кода
    • 4.3. Реализация предложенной процедуры в инструменте миграции
      • 4.3.1. Структура инструмента миграции
      • 4.3.2. Процесс миграции
      • 4.3.3. Отображение трассы на модель библиотеки
      • 4.3.4. Поиск эквивалентной трассы
      • 4.3.5. Отображение трассы на AST
      • 4.3.6. Трансформация программы
    • 4.4. Разработка языка описания моделей библиотек
    • 4.5. Организация взаимодействия системы с пользователем
    • 4.6. Визуализация моделей библиотек
    • 4.7. Получение трассы выполнения
    • 4.8. Выводы
  • 5. Тестирование инструмента автоматизированной миграции программ
    • 5.1. Программа тестирования
    • 5.2. Методика тестирования
      • 5.2.1. Написание моделей библиотек
      • 5.2.2. Разработка тестовых примеров
      • 5.2.3. Организация тестовой среды
    • 5.3. Протокол испытаний
    • 5.4. Выводы
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
  • ПРИЛОЖЕНИЕ А. Фрагменты текста программы инструмента автоматизированной миграции
  • ПРИЛОЖЕНИЕ Б. Фрагмент текста программы instragram-java-scraper до и после миграции

Usage statistics

stat Access count: 280
Last 30 days: 0
Detailed usage statistics