DevOps больше не новое слово в ИТ -индустрии; Это 2020 год, и почти каждая организация либо хочет, либо пытается развивать свою культуру и методы для этих способов работы. Тем не менее, принятие таких революционных изменений не является легким, и многочисленные проблемы сталкиваются как с лидерами, так и «деятельными»; DevOps-это очень снизу вверх и сверху вниз. Вот некоторые общие проблемы, которые я заметил в своей полевой работе:
1. Дисфункциональная культура Культуры, которые в значительной степени управляют и контролируют и бюрократику могут быть очень демотивирующими местами для работы. Там, где люди наказаны за поднятие проблем или знания и информация, скрыты, останут людям делиться и сотрудничать. Там, где сбои, чего можно избежать, люди будут пытаться скрыть ошибки, а не учиться у них, и они будут бояться пробовать новые вещи. Культура очень трудно определить и, кажется, очень трудно изменить. Это ценности и поведение людей в организации, и они должны быть рассмотрены на этом человеческом уровне; Это требует, чтобы мы говорили об эмоциях и чувствах, а не только о битах и байтах.
2. Сопротивление к изменениям Не многие люди любят изменить свой способ работы; Они привыкли к своему методу ведения дел и часто не хотят корректировать свою обычную рутину или процессы. Многие люди предпочитают работать в бункерах и, возможно, не захотят общаться с другими, и поэтому лидеры DevOps часто сталкиваются с сопротивлением в процессе трансформации. Некоторые нейробиологи, такие как Бритт Андреатта, считают, что люди принципиально стремятся противостоять изменениям по эволюционным причинам. Вот пример того, где агент изменений или организация может испытывать сопротивление: тестер, который традиционно выполнял ручное тестирование, может быть предложено автоматизировать тестовый сценарий или шаги в трубопроводе непрерывной интеграции. Они могут сопротивляться изменению своего стиля работы, потому что им нужно научиться автоматизировать свои предыдущие сценарии ручного тестирования и чувствовать, что это выходит за рамки их возможностей. Другим примером является менеджер по QA, который привык иметь большую команду тестеров для наблюдения: они могут видеть, что их тестеры распределяются по нескольким командам в рамках организационной редизайны для межфункциональных отрядов, которые могут чувствовать угрозу, что их Статус лидера и менеджера.
3. Отсутствие ясности видения Многие организации хотят улучшения, которые обещает DevOps, но часто недостаточное время было вложено в правильное планирование того, как будут приняты DevOps. Лидеры, возможно, не изучили то, что DevOps может потребоваться с точки зрения организационного редизайна, или они могут быть устойчивы к этому. Организации часто оставляют лидеров DevOps и выступают за планирование в одиночку без поддержки лидерства, чтобы воспитывать и практиковать истинную культуру DevOps. Преобразования DevOps без надлежащих планов и стратегии затрудняют достижение его целей. Отсутствие видения заставляет лидеров DevOps создать четкий план, когда речь заходит о оценке, дорожных картах и результатах. И это также очень затрудняет общение и разделение видения в более широкой организации, когда ей не хватает ясности. Иногда агенты смены DevOps имеют надлежащий план и стратегию для принятия DevOps, которые они предложили нашему управлению или C-Suite, но если эти лидеры не открывают, и евангелизируют план выполнения для реализации DevOps, это может задержать процессы принятия DevOps.
4. Команды не сотрудничают Основная цель в DevOps — поощрять и позволить DEV, OPS и другим командам работать вместе, разбивая барьеры между бунными силосами. Команды будут иметь свои собственные цели; Команда разработчиков сосредоточена на изменениях и команде ИТ -операций на стабильности. Обеспечение того, чтобы команды делялись целями, является фундаментальной проблемой для тех ведущих ведущих DevOps. Кроме того, когда организация географически рассеяна, сотрудничество по перекрестной команде может быть еще более сложным. В то время как DevOps и Agile модели поощряют совместное расположение, это часто не практично или даже возможно. Кроме того, многие организации аутсорсируют такие работы, как тестирование или ИТ-операции, потенциально для значительно различных географических регионов, усугубляющих проблему из-за временных и языковых осложнений.
5. Среда не стандартизирована Работа с несколькими приложениями или сервисными версиями в среде DevOps может привести к более медленным выпускам производства и увеличению заболеваемости ошибок и проблем в наших продуктах. Отсутствие стандартной среды или производственных испытательных сред, часто приводит к инцидентам, поскольку несоответствие приводит к непредсказуемости. Недостаточная среда применения может вызвать дополнительную боль и задержки в выпуске новой стоимости для клиентов, поскольку команды могут ждать, например, доступ к общим условиям тестовых сред.
6. Инструменты в споре Разработка и ИТ -команды часто используют разные наборы инструментов, но часто они пытаются сделать одно и то же или управлять одной и той же работой. Задача состоит в том, чтобы убедиться, что правильный инструмент реализуется и что он соответствует целям всех команд и целями компании. Выбор инструмента является спорной областью, поскольку люди имеют (часто эмоциональные) предпочтения. Как только инструмент выбран, люди научились использовать его, и он содержит значительные объемы данных или индивидуальных рабочих процессов, поэтому трудно изменить инструмент — даже когда выявлено, что есть другой, который теперь подходит для команд и целей компании.
7. Управление выпуском вызывает задержки Традиционно организации выпустили большие партии функций, используя проектный подход. Эти релизы часто координируются через централизованную команду релиза с использованием календаря релиза, где команды бронируют слоты (часто требуя работы по выходным). Эти релизы часто выполняются вручную или с кучей сценариев, только менеджер релизов понимает, поскольку они построили их. Все это означает, что выпуски случаются нечасто и подвергаются высокому риску возникновения проблем, которые необходимо исправить. Команды часто также больше сосредоточены на возникновении проблем, чем изучение того, почему возникла проблема, и обеспечение того, чтобы обучение было включено в организацию. Подобно тому, как проектные команды часто распадаются после даты жизни, и отсутствие пост-внедрения проверяет, привело ли усилия к предполагаемым результатам.
8. Ручное тестирование обременительно и занимает много времени Тестирование вручную очень много времени и часто выполняется отдельными командами в отдельных этапах, создавая задержки в потоке стоимости для клиента. Кроме того, невозможно выполнить истинную непрерывную интеграцию без автоматизации с минимумом модульного теста — в идеале интеграция и принятие пользователей также будут автоматизированы. Автоматизация тестирования может показаться огромной и подавляющей задачей, особенно когда в организации есть несколько ресурсов, способных выполнять эту работу. Люди часто воспринимают тестирование как дорогостоящее, когда это требует большой ручной работы, и пытаются ограничить инвестиции, что приводит к низкому качеству и простоям в дальнейшем.
Заключение Усыновление DevOps — это путешествие, которое занимает значительное время. Это требует, чтобы организации приняли динамическое и непрерывное обучение. Осведомленность об этих восьми ключевых проблемах на очень ранней стадии поможет предвидеть проблемы и расставить приоритеты в усилиях. Во второй части этой серии блога. Я изучу, как преодолеть эти проблемы в части 2.
Оригинал: «https://dev.to/devops4me/8-everyday-challenges-in-devops-adoption-and-how-to-solve-them-challenges-part-1-18ba»