Вход

Разработка инструментальных средств рефакторинга кодовой базы ПО для поддержания актуальности версий используемых программных компонентов»

Рекомендуемая категория для самостоятельной подготовки:
Дипломная работа*
Код 457997
Дата создания 2020
Страниц 61
Мы сможем обработать ваш заказ (!) 3 мая в 12:00 [мск]
Файлы будут доступны для скачивания только после обработки заказа.
1 990руб.
КУПИТЬ

Содержание

Перечень условных обозначений, символов, единиц, сокращений и терминов 4
Введение 6
Глава 1 8
1.1 Исследование предметной области 8
1.2 Постановка требований 9
1.3 Обзор программных систем существующих на рынке 10
Глава 2 12
2.1 Проектирование архитектуры 12
2.2 Формат отчета об изменениях 13
2.3 Протокол связи 14
2.4 Формат сообщений 15
2.5 Организация работы 15
2.6 Выбор технологий 16
Глава 3. Реализация серверной части 18
3.1 Организация проекта 18
3.2 Использование Gradle 18
3.3 Communication 19
3.3 Router 20
3.4 Внедрение зависимостей 22
3.6 Controller 23
3.7 Migrate 24
Глава 4. Разработка клиентской части 31
4.1 Общее 31
4.2 Electron 31
4.3 Scala.js 32

4.4 Sbt 32
4.5 Модули 33
Заключение 36
Список использованных литературных источников 37
Приложение А 38
Приложение Б 61

Введение


В современно процессе разработки программного обеспечения достаточно часто используются уже готовые сторонние программные компоненты с целью снижения трудоемкости, стоимости и длительности непосредственной разработки. При этом разработка используемых программных компонентов также не прекращается, что ведет к появлению новых версий библиотек.
Можно выделить следующие причины необходимости миграции на новые версии используемых библиотек:
● Новые версии содержат исправления существующих ошибок в работе программного компонента.
● Упрощение API для работы с библиотекой.
● Более длительный срок поддержки со стороны разработчиком компонента.
● Появление нового функционала в программном компоненте.
● Увеличение количества поддерживаемых устройств в новой версии библиотеки.
Исходя из выше написанных причин следует, что поддержка актуальности версий программных компонентов является обязательным условием для написания качественного программного обеспечения. Однако, изменения внешнего API в новых версиях программных компонент приводят к усложнению процесса миграции. Появляется проблема совместимости существующей кодовой базы и новой версии программного компонента. Для решения данной проблемы необходимо произвести рефакторинг существующего исходного кода. Главным недостатком данного решения является сложность и трудоемкость процесса рефакторинга, что ведет к увеличению затрачиваемых человеко-часов на разработку проекта.
Актуальность и практическая значимость дипломной работы заключается в том, что автоматизация процесса миграции позволила бы использовать
рабочее время разработчиков более эффективно за счет уменьшения затрачиваемого времени на рефакторинг кодовой базы.
Целью дипломной работы является разработка прототипа инструмента позволяющего максимально автоматизировать и упростить процесс рефакторинга кодовой базы для поддержания актуальности версий программных компонент.
Объектом исследования в данной работе является система автоматизации обновления версий используемых программных компонент. Для разработки программного средства необходимо решить следующие задачи:
● Провести анализ предметной области.
● Анализ аналогов программных систем, выполняющих схожие задачи.
● Разработать архитектуру программного обеспечения.
● Разработать необходимые структуры данных, а также реализовать алгоритмы программного средства.
● Разработать удобный пользовательский интерфейс для работы с программным средством.
● Тестирование разработанного программного обеспечения
Для выполнения поставленной цели необходимо выполнить следующие этапа работы:
● Исследовать процесс обновления версии используемого компонента
● Составить список требований к разрабатываемому программному средству
● Разработать архитектуру системы под описанные требования
● Выбрать необходимые технологии и средства для решения поставленных целей
● Организовать рабочий процесс для решения поставленных задач.
Теоретической и методологической основой является способы созданния программного обеспечения описанного в книгах Р. Мартина “Чистый код”, Макконнелла С. “Совершенный код”.

Фрагмент работы для ознакомления

Дипломная работа выполнена по всем требованиям и защищена на "отлично".

Список литературы

1. Макконнелл С. Совершенный код. Мастер-класс / Пер. с англ. — М. : Издательско-торговый дом «Русская Редакция» ; СПб.: Питер, 2005. — 896 с.
2. Э. Фримен, Э. Фримен, К. Сьерра, Б. Бейтс. Паттерны проектирования. — СПб.: Питер, 2011. — 656 с.
3. Брюс Эккель Философия Java. 4 изд. СПб.: Питер, 2016. — 1168 с.
4. Building a desktop application with Electron [Электронный ресурс] https://medium.com/developers-writing/building-a-desktop-application-with- electron-204203eeb658
5. Кей Хостманн SCALA для нетерпеливых. — Москва: ДМК Пресс, 2015. — 408 с.
6. Босуэлл Д., Фаучер Т. Читаемый код, или Программирование как искусство.
— CПб.: Питер, 2012. — 208 c.
7. Мартин Фаулер, Кент Бек, Джон Брант, Уильям Апдайк, Дон Робертс, Эрих Гамма Рефакторинг. Улучшение существующего кода. - СПб: Символ-Плюс, 2008. - 432 с.
Очень похожие работы
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.00354
© Рефератбанк, 2002 - 2024