Читать статья по информационному обеспечению, программированию: "Реализация методологии "Continuous Integration" в разработке веб-приложения" Страница 1

назад (Назад)скачать (Cкачать работу)

Функция "чтения" служит для ознакомления с работой. Разметка, таблицы и картинки документа могут отображаться неверно или не в полном объёме!

Пензенский государственный технологический университет РЕАЛИЗАЦИЯ МЕТОДОЛОГИИ "CONTINUOUS INTEGRATION" В РАЗРАБОТКЕ ВЕБ-ПРИЛОЖЕНИЯ Чинков М.Ю. г. Пенза, Россия Аннотация В статье рассматривается методология "Continuous Integration", её роль в разработке программного обеспечения (в частности веб-приложений), а также показан пример реализации данной методологии на практике.

Ключевые слова: Continuous Integration, сборка, развертывание, Jenkins, веб-приложение, разработка программного обеспечения.

This article considers "Continuous Integration" methodology, its role in software development (web-applications in particular) and practical implementation.

Keywords: Continuous Integration, build, deployment, Jenkins, web-application, software development. Одними из наиболее важных компонентов в разработке программного обеспечения являются сборка и развертывание продукта. Сборка - процесс преобразования исходного кода проекта в упакованный запускаемый файл. Примером сборки может служить упаковывание Java-приложения в jar-файл для запуска на Java Virtual Machine (JVM). Развертыванием продукта является процесс переноса изменений в приложении с локальной среды разработчиков в среду эксплуатации (по другому данная среда описывается термином production). Обычно в процессе развертывание происходит доставка собранного проекта в специальный репозиторий и дальнейшее скачивание проекта вместе с его установкой и конфигурацией.

На данный момент в разработке веб-приложений как подтипа программного обеспечения существует четкая тенденция к ускорению цикла разработки: кодирование - тестирование - сборка - развертывание. Конечным результатом цикла является новый релиз программного продукта. Очень часто команде разработчиков приходится доставлять новые релизы по несколько раз день. В свою очередь, все процессы, описанные в цикле, занимают достаточно много времени и являются рутинной работой. Дополнительно можно упомянуть человеческий фактор, когда небольшое отклонение от процедуры может привести к ошибкам в новом релизе, которые впоследствии очень сложно отследить.

Данная проблема может быть решена посредством внедрения в процесс разработки методологии "Continuous Integration" (CI). "Continuous Integration" является практикой автоматизированного выполнения фаз сборки и развертывания неограниченное количество раз, стремясь к одинаковому результату и выполнению задач цикла. Понятие "Continuous Integration" было открыто в 1994 году американским инженером Гради Бучем в книге "Объектно-ориентированный анализ и проектирование". Этим термином Грэди Буч пытался объяснить, каким образом реализуются микро-процессы, формирующие цикл релиза программного продукта. Однако данная методология приобрела свою популярность только в середине 2000-х годов. Наиболее подробное объяснение методологии можно найти в статье британского программиста Мартина Фаулера "Continuous Integration", опубликованной в мае 2006 года. Именно тогда стали появляться консоли сборки, доступные через веб-интерфейс.

Методология "Continuous Integration" имеет конечную цель в виде построения максимально быстрого, повторяемого и надежного процесса внедрения изменений в программный продукт. В качестве рабочих микро-процессов рассматриваются коммит, тестирование, сборка, регистрация пакета и развертывание. Коммитом является изменение программного кода, зарегистрированного системой контроля версий и отправленное для проверки в интеграционное


Интересная статья: Быстрое написание курсовой работы