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

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
28
1.3.2. Выбор и обоснование стратегии автоматизации задачи
Проанализируем функциональные и стратегические свойства
внедряемой информационной системы.
Данная информационная система должна отличаться надёжностью
хранения данных и обладать возможностью расширения функционала. После
внедрения информационная система должна иметь широкие и гибкие
настройки позволяющие настроить её под определённые условия. Но так же в
системе не должны присутствовать излишние функции, не относящиеся к
прямому назначению системы. Система не должна зависеть от определённой
операционной системы и иметь интеграции со всем программным
обеспечением используемым в компании.
Главными функциями системы должны быть:
Произведение мониторинга системы контроля версий.
При изменении исходных кодов в репозитории производится
обновление локального хранилища.
Выполнение необходимых проверок и модульных тестов.
Исходные коды компилируются в готовые выполняемые модули.
Выполняются тесты интеграционного уровня.
Генерируется отчёт о тестировании.
Для успешного внедрения системы выделим следующие пункты:
1. Произвести анализ процессов деятельности отдела тестирования
компании и собрать данные следующих показателей: количество написанных
отчётов в день по каждому тестировщику и среднее время написания одного
отчёта.
29
2. Определить границы автоматизируемой задачи, выяснить что
реализовано на данный момент и что должно быть сделано во время
внедрения информационной системы.
3. Выбрать стратегию автоматизации. Необходимо
проанализировать существующие типы стратегий автоматизации и подобрать
наиболее подходящую к рассматриваемой компании.
4. Сформировать и утвердить график выполнения работ и
техническое задание.
Стратегии автоматизации предприятия можно разделить на четыре
варианта: полная автоматизация, автоматизация по направлениям,
автоматизация по участкам и хаотичная автоматизация.
Полная автоматизация - подразумевает под собой автоматизацию всей
компании и всех бизнес-процессов выполняющихся в ней.
Автоматизация по направлениям - затрагивает все подразделения
компании участвующих в автоматизируемом направлении.
Автоматизация по участкам - это автоматизация отдельно взятого
участка или отдела в компании.
Хаотичная автоматизация - представляет из себя автоматизацию
мелких не связанных друг с другом участков компании. Данная
автоматизация применяется для решения локальных задач, не входящих в
план развития компании.
При автоматизации отдела тестирования хаотичная стратегия не
подходит потому что автоматизируется целый отдел.
Так как автоматизируется один определённый отдел компании, то и
стратегия полной автоматизации не подходит, потому что она подразумевает
автоматизацию всей компании в целом.
30
В данной выпускной квалификационной работе лучше всего подходит
стратегия автоматизации по участкам, так как автоматизируется деятельность
одного отдела тестирования. В этом отделе работает 5 человек, которые
заняты рутинной ручной работой по запуску тестов, а так же написанию и
отправки отчётов. После автоматизации данного процесса, можно будет
сократить численность сотрудников, сохранив продуктивность работы
отдела.
1.3.3. Выбор и обоснование способа приобретения ИС для
автоматизации задачи
Для автоматизации процесса тестирования рассматриваются четыре
варианта приобретения программного обеспечения:
Приобретение готового решения специализированной
информационной системы.
Разработка информационной системы используя специалистов,
работающих в компании на постоянной основе.
Разработка информационной системы с привлечением
специалистов из компании занимающейся разработкой программного
обеспечения.
Приобретение информационной системы и её анализ с
последующей доработкой.
Ниже приведена таблица №5, в которой производится сравнение
критериев отбора и способы приобретения информационной системы.
Таблица 5.
Сравнение способов приобретения информационной
системы.
Способ
приобретения
Приобретение
готовой
Разработка
системы
Разработка
системы
Приобретение
информационной
31
\ критерии
информационной
системы
специалистами
работающими
в компании
привлечёнными
специалистами
из компании
занимающейся
разработкой ПО
системы и её
последующая
доработка
Соответствие
поставленной
задаче
Не соответствует
поставленной
задаче, т.к. нет
возможности
автоматизировать
собственные бизнес
процессы
Полностью
соответствует
поставленной
задаче
Частично
соответствует
поставленной
задаче
Полностью
соответствует
поставленной задаче
Стоимость
внедрения
системы
До 200000 рублей
До 300000 рублей
От 400000 рублей
До 250000 рублей
Адаптивность
системы
Нет возможности
изменить систему
Максимально
адаптированная
система
Возможно
адаптировать
привлечёнными
специалистами из
компании
занимающейся
разработкой ПО
Возможно
адаптировать
систему к процессам
компании
Надёжность
системы
Надёжность системы
гарантируется
компанией
разработчиком
Низкая
надёжность
информационной
системы
Надёжность
системы
гарантируется
компанией
разработчиком
Высокая надёжность
информационной
системы
Приобретение готовой информационной системы в данной выпускной
квалификационной работе рассматриваться не будет, так как там нечего
проектировать.
При разработке информационной системы можно привлечь
специалистов из компании занимающейся разработкой программного
обеспечения, согласовав с ними техническое задание или разработать
информационную систему используя специалистов, работающих в компании
на постоянной основе. Оба эти варианта подразумевают высокие затраты как
времени, так и финансов на реализацию проекта.
Приобретение информационной системы и её анализ с последующей
доработкой подразумевает покупку уже готовой информационной системы с
возможностью добавить новые функции силами разработчиков данного
32
программного продукта. Так же доработать систему и добавить новые
необходимые функции может программист или системный администратор,
на постоянной основе работающий в рассматриваемой компании. В таком
случае язык программирования на которым владеет работник компании
должен совпадать или быть близок по семантике к тому языку
программирования, на котором написано данное программное обеспечение.
Исходя из критериев описанных в пункте 1.3.1 было выбрано
приобрести готовую информационную систему и в последствии доработать
её, так как на данный момент процесс выполнения тестов и написание
отчётов по ним не автоматизирован. Из преимуществ такого варианта можно
выделить возможность продолжать работу отдела тестирования без сильных
изменений во время внедрения и доработки информационной системы.
Также этот вариант оптимально подходит потому что если во время
внедрения системы будут выявлены проблемы, то всегда можно прекратить
внедрение, провести анализ ситуации и начать внедрение системы сначала
учтя предыдущие ошибки.
1.4. Обоснование проектных решений
1.4.1. Обоснование проектных решений по информационному
обеспечению
Для организации информационной базы используются три основных
способа:
Файловая организация информационной базы
Интегрированная организация информационной базы
Смешанная организация информационной базы
Файловая организация информационной базы представляет из себя
размещение базы данных на локальном компьютере. Доступ к данной базе
для других пользователей предоставляется стандартными методами
операционной системы передачи данных по сети.
33
Интегрированная организация информационной базы представляет из
себя взаимосвязанные и хранящиеся вместе данные. Допускается
использование этих данных любым программным обеспечением, при этом
обеспечивается независимость данных от самого программного обеспечения.
Используется общий способ управления данными для поддержания этих
данных в актуальном состоянии.
Смешанная организация информационной базы представляет из себя
распределённую базу данных, которая хранится на нескольких серверах
компании и копирует изменения в каждой из них по расписанию. Такая
организация информационной базы применяется для одновременной работы
территориально удалённых филиалов компании в одной информационной
базе.
В данной выпускной квалификационной работе наиболее
оптимальным вариантом организации информационной базы будет
использование интегрированной информационной базы в которой будет
храниться информация о прохождении тестов и результаты этих тестов. Для
обеспечения безопасности, надёжности хранения и целостности информации
необходимо использовать систему управления базами данных.
По способу установления связей между данными существует три
модели логической структуры базы данных:
Иерархическая
Сетевая
Реляционная
В иерархической модели используется древовидная структура
представления данных, которые разделяются на различные уровни. У
каждого объекта данных имеется связь с несколькими объектами более
34
низкого уровня, но имеется только одна связь с объектом более высокого
уровня.
Данная модель удобна для отображения отношений типа «один ко
многим». Вывод структуры иерархической модели возможен только с
корневой вершины. Пропуск одного или нескольких объектов в
иерархическом пути при доступе к заданному объекту недопустим.
Из недостатков иерархической модели можно выделить:
Трудность отображения отношений типа «многие ко многим».
Доступ к объектам которые находятся на нижних уровнях может
занимать длительное время.
Данная модель ориентированна на определённый тип запроса.
Сетевая модель данных является расширением иерархической модели.
Главное отличие от иерархической модели данных состоит в том что объект
более низкого уровня может иметь несколько связей с объектами более
высокого уровня.
Достоинством сетевой модели данных является низкое потребление
памяти и высокая оперативности по сравнению с иерархической моделью.
Недостатком же сетевой модели данных можно отметить высокую
сложность и жёсткость структуры базы данных.
Реляционная модель данных представляет из себя совокупность
данных представленных в виде таблиц. При использовании табличной
организации данных иерархия объектов полностью отсутствует. Реляционная
модель обладает высокой гибкостью потому что столбцы и строки могут
быть просмотрены в любом порядке. Все таблицы состоят из столбцов и
35
строк, а на пересечении этих столбцов и строк находятся определённые
значения.
Можно выделить следующие достоинства реляционной модели
данных:
Информация представлена в виде таблицы, которую легко понять
человеку.
Позволяет коротко описывать операции над данными, т.к. модель
имеет математическое описание.
Есть возможность изменить структуру реляционной базы данных,
так как данные независимы от программного продукта.
Реляционная модель данных выбрана для построения базы данных,
так как для построения запроса легко и быстро формируются связи между
таблицами. Так же в данное время реляционную модель данных можно
назвать стандартом на который ориентируются крупные СУБД решения.
1.4.2. Обоснование проектных решений по программному
обеспечению
Программное обеспечение - это комплекс компьютерных программ,
процедур и документации необходимых для работы информационной
системы. Программное обеспечение в вычислительной системе используется
для увеличения производительности труда, повышения точности получаемых
результатов и для облегчения работы сотрудника.
Для уменьшения времени отправки отчёта с результатами
тестирования через корпоративную электронную почту компании, в
соответствии с принятым корпоративным стандартом, на персональных
компьютерах сотрудников используется программа Microsoft Outlook 2019
входящая в состав офисного пакета Microsoft Office 2019.
36
Для работы этой программы на персональном компьютере сотрудника
должна быть установлена операционная система, указанная в системных
рекомендациях данного программного обеспечения. В соответствии с
принятым корпоративным стандартом в компании используется
операционная система Microsoft Windows 10 Корпоративная, так как в ней
присутствует функция работы в доменной инфраструктуре компании.
Исходя из вышеперечисленных пунктов на персональных
компьютерах сотрудников компании обязательно должны быть установлены
следующие программные продукты:
Операционная система Microsoft Windows 10 Корпоративная.
Почтовый клиент Microsoft Outlook 2019.
Программа для автоматического тестирования исходного кода - это
программа, внедрённая в ходе написания данной выпускной
квалификационной работы. Она просматривает репозиторий исходного кода
и при наличии изменений забирает исходный код из репозитория. Запускает
необходимые тесты и по результатам тестов формирует отчёт, который затем
отправляет веб-программисту.
При выборе операционной системы под данное решение был выбран
Debian GNU/Linux, так как данный вид серверных операционных систем не
сильно требователен к ресурсам, а также давно используются в серверной
инфраструктуре.
Так же необходима закупка нового сервера на котором будет
происходить сборка и тестирование исходного кода. Был выбран Supermicro
AS-1123US-TR4 так как он уже используется в компании и зарекомендовал
себя как надёжное решение с высокой производительностью.
37
1.4.3. Обоснование проектных решений по техническому
обеспечению
Техническое обеспечение - это комплекс компьютерной техники и
средств передачи информации, используемый в информационных и
автоматизированных системах. Координация работы различных узлов и
блоков выполняется при помощи аппаратных интерфейсов.
Для работы системы Jenkins потребуются следующее оборудование:
Сервер - это специальный компьютер, на котором будет
выполняться тестирование исходного кода.
Персональный компьютер сотрудника - это персональный
компьютер, с помощью которого тестировщик будет писать новые тесты, а
веб-программисты создавать веб-сайты и веб-приложения.
Компоненты локальной вычислительной сети - это сетевое
оборудование (сетевые адаптеры, концентраторы, мосты, маршрутизаторы)
и коммуникационные каналы (кабели, разъёмы).
Подберём несколько наиболее важных критериев выбора для каждого
из вышеперечисленных пунктов.
Сервер - это специальный компьютер, расположенный в специально
оборудованных помещениях с регулировкой климата. В помещениях
устанавливают специальные серверные шкафы в которые монтируется
серверное оборудование. Серверные шкафы имеют простой и удобный
доступ к аппаратному обеспечению. Участие человека требуется только для
первичного монтажа оборудования и настройки программного обеспечения,
дальнейшая работа производится с помощью протоколов удалённого
управления операционной системой. Исключением являются только
нештатные ситуации, требующие прямого участия специалиста, и
профилактические работы.

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

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 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 - менеджмент: реализация проекта (на примере ООО "АГРОПАК")