Gartner утверждает, что с началом цифровизации возникла огромная потребность в поддержке бизнеса, который должен действовать быстрее и с большей гибкостью. Это имело результатом быстрое распространение DevOps и превращение данной методологии во многих организациях в важнейший способ получения конкурентного преимущества. Ниже рассматриваются тенденции развития DevOps.

DevSecOps

Это расширяющаяся практика вовлечения специалистов по безопасности в процесс разработки приложений вместо обращения к ним, когда разработчики сочтут приложение законченным. Для мелких стартапов DevSecOps не имеет большого значения, но является важным для организаций, предъявляющих жесткие требования к безопасности и выполнению решений регуляторов, таких как финансовые и медицинские предприятия и правительственные органы.

Проблема в том, что согласно исторически сложившейся практике разработчики и безопасники действуют независимо друг от друга. Причем последние часто узнают о новом бизнес-приложении только тогда, когда оно готово к работе. Во многих случаях они накладывают вето на приложение как не соответствующее требованиям регуляторов. Сотни человеко-часов труда разработчиков оказываются потраченными впустую. Возникают конфликты между ИБ-специалистами и разработчиками.

DevSecOps представляет собой попытку избежать подобного исхода, добавляя обязательные проверки защищенности в ключевые точки процесса разработки, чтобы готовое приложение было уже тщательно проверено. В результате потенциальные проблемы решаются на ранних этапах разработки, а если их не удается решить, разработка приложения прекращается.

Непрерывная доставка приложений

Застывший код и пакетированные релизы могут вскоре разделить судьбу динозавров. Это вызвано тем, что непрерывная доставка приложений и тесно связанное с ней непрерывное развертывание все чаще становятся стандартными операциями команд разработчиков. (При непрерывной доставке, как и при непрерывном развертывании, код всегда готов к включению в производственные системы. В первом случае это делается вручную, а во втором автоматически). Традиционные циклы выпуска ПО крайне неэффективны. Они требуют, чтобы через заданные промежутки времени код замораживался и оформлялся в виде релиза. Пока это делается, разработчики могут бездельничать или заниматься другим проектом.

Непрерывная доставка открывает путь к ускоренному, эффективному развертыванию. Код автоматически передается в непроизводственную среду, проходит серию непрерывных тестов, воспроизводящих развертывание в производственной системе. Иными словами, вместо редко выпускаемых крупных релизов разработчики чаще выдают более мелкие релизы. В результате ПО быстрее попадает в руки пользователей, разработчики скорее получают отзывы, и в конечном итоге это сокращает время выхода на рынок и увеличивает полезность ПО для бизнеса.

Облако 

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

Возросшая осведомленность

Сегодня трудно найти ИТ-менеджера или директора по инжинирингу, не знакомого с DevOps, хот еще пять лет назад ситуация была иной. Теперь методология и передовой опыт DevOps активно обсуждаются в Интернете, в кругу коллег и на крупных ИТ-конференциях. Это замечательно для получения результатов, но создает определенный риск для компаний, поскольку более шустрый конкурент может воспользоваться коллективной мудростью всемирного сообщества разработчиков и опередить, не жертвуя надежностью или стабильностью.

Иными словами, когда все знакомы с DevOps, эта методология, если ее неправильно применить (или не применять вовсе), не только не дает конкурентного преимущества, но превращается в обузу.

Автоматизация

Она заложена в самой природе DevOps. Чтобы разработчики могли больше делать самостоятельно, необходимо автоматизировать определенные повторяющиеся процессы, избавив человека от необходимости вмешиваться в них. Проиллюстрируем это следующим примером. При непрерывном развертывании код автоматически направляется в тестовые среды, которые предоставляются также автоматически. В этих средах автоматически осуществляются некоторые проверки (на совместимость, функциональность, производительность и т. д.), не требуя траты времени от разработчика.

Эти методы уже используются сегодня, расширяя спектр доступных для автоматизации функций. Например, в связи с растущим использованием многооблачных сред в будущем тестовые среды будут, вероятно, предоставляться в интероперабельных средах, охватывающих несколько облаков. Применяя передовой опыт DevSecOps, проверки на безопасность, скорее всего, также будут требовать меньше ручного труда специалистов по безопасности и соблюдению требований регуляторов. Такие проверки будут автоматизированы. Но участие человека не будет полностью устранено. Успешная реализация DevOps требует четкого обмена информацией между командами. Лишь «теневая зона», где требуется прямое одобрение человека, будет все больше сокращаться.

По материалам: itWeek