Диплом: Внедрение системы непрерывной интеграции для ООО «Руби Кейк»

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
8
Содержание
Введение ...................................................................................................................... 9
1. Аналитическая часть ..................................................................................... 11
1.1. Технико-экономическая характеристика предметной области и
предприятия. Анализ деятельности «КАК ЕСТЬ» ................................ 11
1.2. Характеристика комплекса задач, задачи и обоснование
необходимости автоматизации ................................................................ 17
1.3. Анализ существующих разработок и выбор стратегии автоматизации
«КАК ДОЛЖНО БЫТЬ» .......................................................................... 23
1.4. Обоснование проектных решений.................................................... 32
2. Проектная часть ............................................................................................. 41
2.1. Разработка проекта автоматизации .................................................. 41
2.2. Информационное обеспечение задачи ............................................. 51
2.3. Программное обеспечение задачи .................................................... 57
2.4. Контрольный пример реализации проекта и его описание ........... 63
3. Обоснование экономической эффективности проекта ............................. 67
3.1 Выбор и обоснование методики расчёта экономической
эффективности ........................................................................................... 67
3.2 Расчёт показателей экономической эффективности проекта ......... 68
Заключение ........................................................................................................ 73
Список использованной литературы ............................................................... 74
Приложения ....................................................................................................... 76
9
Введение
В мире современной экономики использование цифровых
инструментов в бизнес-решениях играет главную роль. Вместе с ростом
сложности современных высокотехнологичных систем одним из главных
факторов становится стабильность работы важных ИТ-систем. Данное
направление коснулось и разработки программного обеспечения.
На этапе разработки возможность непрерывного тестирования и
доставки исходного кода позволяет увеличить скорость и качество готового
продукта. Непрерывное слияние рабочих копий исходного кода в общую
основную ветвь и тестирование результатов сформировало концепцию
«непрерывной интеграции и доставки» (Continuous Integration & Continuous
Delivery или сокращённо CI/CD), которую предложил Гради Буч ещё в 1991
году.
В данной выпускной квалификационной работе будет исследована
деятельность компании «Руби Кейк». Данная компания занимается
разработкой веб-сайтов и веб-приложений.
Для ускорения процесса разработки и улучшения программного кода
генеральным директором было принято решение об оптимизации ключевых
бизнес процессов.
В первой главе данной выпускной квалификационной работы будет
проведён анализ существующего процесса тестирования и слияния
программного кода.
Во второй главе будет сформирован проект внедрения в компанию
системы непрерывной интеграции, на основе данных полученных в первой
главе. Будет выбран стандарт жизненного цикла, по которому в дальнейшем
будет осуществляться проект, описана информационная модель проекта,
входная и выходная информация, используемые в системе, а так же процессы
преобразования этой информации, рассмотрено программное и
10
технологическое обеспечение задачи. Так же во второй главе рассмотрена
реализация задачи на контрольном примере.
В третьей главе выбрана методика расчёта экономической
эффективности проекта, а так же произведён сам расчёт. Рассмотрены
затрачиваемые ресурсы до внедрения системы в эксплуатацию и после.
11
1. Аналитическая часть
1.1. Технико-экономическая характеристика предметной области
и предприятия. Анализ деятельности «КАК ЕСТЬ»
1.1.1. Характеристика предприятия и его деятельности
Компания «Руби Кейк» была организована в 2015 году и за столь
короткий промежуток времени зарекомендовала себя в качестве надёжного
партнёра.
Главный принцип создания веб-сайтов и веб-приложений компанией
«Руби Кейк» можно охарактеризовать как «создавай сайт так, как если бы
пользовался им сам». «Работа, которая нравится» - а такой метод
используется для их разработки.
Основная цель компании - развитие бизнеса за счёт увеличения
продаж, привлечения новых клиентов и партнёров. Максимальное
достижение данной цели возможно только благодаря ответственному
подходу к разработке и продвижению веб-сайта.
Слаженная и качественная работа специалистов позволяет добиваться
реальных успехов и получать на выходе не просто сайт, а эффективный
инструмент маркетинга, который в обязательном порядке приведёт новых
клиентов и партнёров.
В портфолио компании «Руби Кейк» - уже более 200 сайтов
довольных клиентов. Среди осуществлённых проектов - интернет-магазины
различных товаров, корпоративные сайты, а так же уникальные комплексные
проекты, разработанные как для частных лиц, так и для крупных
государственных корпораций.
Основные технико-экономические показатели компании
представлены в таблице №1.
Таблица 1.
Основные технико-экономические показатели компании.
12
Наименование
характеристики
(показателя)
2018
2019
2020
Количество
сотрудников
25 сотрудников
30 сотрудников
35 сотрудников
Оборот компании
за месяц
2,5 млн. рублей в
месяц
2,8 млн. рублей в
месяц
3 млн. рублей в
месяц
Количество
изменений кода в
день
20 коммитов
25 коммитов
30 коммитов
Количество
тестировщиков
3 сотрудников
4 сотрудников
5 сотрудников
Среднее
арифметическое
количество
времени,
затраченное на
проведение
тестов и
написания отчёта
по каждому
коммиту в мин.
60 мин.
60 мин.
60 мин.
1.1.2. Организационная структура управления предприятием
Организационная структура управления компанией представлена на
рисунке №1.
Рисунок 1. Схема организационной структуры управления
компанией.
На данной схеме представлены связи взаимодействия сотрудников в
компании.
13
Генеральный директор является руководителем фирмы. В его
подчинении находятся руководители всех отделов компании.
Руководитель отдела по работе с клиентами подчиняется
генеральному директору. Вместе с менеджерами по работе с клиентами
поддерживает связь с заказчиком, уточняет и формирует его требования к
проекту. После согласования всех пожеланий заказчика, определяет сроки
выполнения данного задания.
Руководитель отдела веб-дизайна подчиняется генеральному
директору. Вместе с дизайнерами работает над созданием пробных макетов
будущего веб-сайта или веб-приложения. Утверждает окончательный
вариант внешнего вида веб-сайта или веб-приложения.
Руководитель отдела веб-программирования подчиняется
генеральному директору. Вместе с программистами осуществляет все
требования и пожелания заказчика касающихся программной части проекта.
Руководитель отдела тестирования подчиняется генеральному
директору. Вместе с тестировщиками проверяет работоспособности всех
функций веб-сайта или веб-приложения. В случае нахождения каких-либо
ошибок в программной или графической составляющей проекта, он
передаётся на доработку в отдел веб-программирования, затем повторно
тестируется до полного исправления всех выявленных ошибок.
Бухгалтер подчиняется генеральному директору, осуществляет
организацию ведения бухгалтерского учёта, организует учётную политику
компании, контролирует соблюдение порядка при оформления первичных и
бухгалтерских документов.
Менеджеры по работе с клиентами подчиняются руководителю отдела
по работе с клиентами. Поддерживают связь с заказчиком, уточняют и
формируют требования к проекту.
14
Дизайнеры подчиняются руководителю отдела веб-дизайна. Работают
над созданием пробных макетов будущего веб-сайта или веб-приложения.
Frontend программисты подчиняются руководителю отдела веб-
программирования.
Осуществляют все требования и пожелания заказчика относящихся к
программной части проекта. Занимаются разработкой пользовательского
интерфейса, то есть внешней части веб-сайта. Главная задача frontend
программистов — сделать максимально удобным взаимодействие
пользователей с веб-сайтом или веб-приложением.
Backend программисты подчиняются руководителю отдела веб-
программирования. Осуществляют все требования и пожелания заказчика
относящихся к программной части проекта. Занимаются программно-
административной частью веб-приложения, внутренним содержанием
системы, серверными технологиями - базой данных, архитектурой,
программной логикой.
Тестировщики подчиняются руководителю отдела тестирования.
Проверяют работоспособность всех функций веб-сайта или веб-приложения.
В случае нахождения каких-либо ошибок в в программной или графической
составляющей проекта, он передаётся на доработку в отдел веб-
программирования, затем повторно тестируется до полного исправления всех
выявленных ошибок.
1.1.3. Программная и техническая архитектура ИС предприятия
На рисунке №2 показана техническая архитектура компании «Руби
Кейк». Структура представляет собой комплекс из сервера,
маршрутизаторов, свитчей и точек доступа. Основным брандмауэром в
системе является CheckPoint 1550 Security Gateway, он выполняет роль
фильтрация и анализа трафика, также он выполняет функции создания и
15
поддержки VPN-туннелей с удалёнными рабочими местами пользователей.
Основные сетевые маршрутизаторы и коммутаторы используется от
производителя CISCO (1800 CISCO1801 и WS-C2960L-16TS-LL) как самые
надёжные в своём классе.
Рисунок 2. Техническая архитектура предприятия.
Программная архитектура компании «Руби Кейк» изображена на
рисунке №3. На рабочих станциях всех сотрудников установлена
операционная система Microsoft Windows 10, в процессе работы используется
Microsoft Office 2019, защиту компьютеров от вирусов и нежелательного
программного обеспечения обеспечивает антивирус Kaspersky Endpoint
Security, в качестве корпоративной почты используется система Exchange
Server 2019 компании Microsoft.
Бухгалтер для начисления заработной платы и ведения данных по
сотрудникам использует программу 1С: Предприятие 8.3.
Дизайнеры для работы над макетами веб-сайтов и веб-приложений
используют Adobe Photoshop и Adobe XD.
16
Сотрудники отделов тестирования и веб-программирования
используют разные инструменты для написания программного кода и тестов,
среди них: JetBrains PyCharm, JetBrains RubyMine, JetBrains WebStorm и
Microsoft Visual Studio Code. Так же используется Git - распределённая
система контроля версий, и Gitea - пакет программного обеспечения для
хранения проектов и контроля версий с помощью Git, а также других
функций совместной работы, таких как отслеживание ошибок, вики и
просмотр исходного кода.
Рисунок 3. Программная архитектура предприятия.
17
1.2. Характеристика комплекса задач, задачи и обоснование
необходимости автоматизации
1.2.1. Выбор комплекса задач автоматизации и характеристика
существующих бизнес процессов
На рисунке №4 представлена схема комплекса задач в виде
функциональной диаграммы.
Рисунок 4. Комплекс задач создания веб-сайта.
В описанном выше комплексе задач присутствуют следующие бизнес
процессы:
1. Разработка технического задания.
2. Подготовка макета веб-сайта.
3. Вёрстка макета веб-сайта.
4. Программирование веб-сайта.
5. Тестирование веб-сайта.
В данном комплексе задач по созданию веб-сайта считаю
необходимым

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Agile-методология в управлении проектами на примере ООО «Ресурсный центр «Академия КлассИнфо»
Aвтoмaтизaция пpoцecca вeдeния инфopмaциoннoй бaзы o дoлжнocтяx и вaкaнcияx c укaзaниeм тpeбoвaний к уpoвню знaний и нaвыкoв кaндидaтoв для гpуппы кaдpoв вoйcкoвoй чacти 3474»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
Cовершенствование управления рентабельности предприятия (на примере гуипп «бендерская типография «полиграфист»)
Event - менеджмент: реализация проекта (на примере ООО "АГРОПАК")