Масштабирование концентрируется на процессах и движущих силах, которые должны использовать организации на протяжении всего жизненного цикла. Помимо заметной роли масштабирования в процессе внедрения devops в больших корпорациях, оно также позволяет управлять другими столпами эффективных devops-методик на уровне организаций. Это управление осуществляется по мере роста, достижения зрелости и даже сокращения организаций. Имеют место разные соображения, как технические, так и культурные, связанные с организациями разного масштаба. В части V мы рассмотрим, каким образом применяются эти соображения в организациях, которые не попадают в категорию «типичных» devops-культур.
Благодаря использованию четырех столпов эффективных devops-методик вы можете устранить культурные и технические проблемы, влияющие на разработку программного обеспечения. Эти столпы будут подробнее рассмотрены в каждой из следующих четырех частей книги. Примеры использования этих методик, позаимствованные из практики реального бизнеса, относятся к самым разным компаниям – от веб-стартапов до крупных корпораций. Хотя и необязательно читать главы книги по порядку, но мы все же рекомендуем вам прочесть все главы книги. Это позволит вам осознать, каким образом гармоническое сочетание четырех столпов devops позволит devops-методологии стать по-настоящему эффективной.
Часть II. Сотрудничество
Глава 7. Совместная работа
Формирование устойчивых и долговременных взаимоотношений является критически важным для людей, проводящих долгие часы в совместной работе. Сотрудничество – это процесс получения определенных результатов с помощью взаимодействий, вклада и поддержки множества людей. Один из примеров сотрудничества, и далеко не единственный, – парное программирование. Суть этой методики, появившейся в рамках концепции гибкой разработки программного обеспечения, заключается в одновременной работе двух человек над одним фрагментом кода.
«Я действительно думаю, что у нас есть отличная возможность создать наш новый сервис по работе с отзывами на базе MongoDB. Я прочел отличное руководство по этой системе, где рассказывается, как можно быстро и легко разработать нужный нам компонент, не неся бремя административных расходов, как в случае с другими решениями», – сказал Джорди, разработчик внешних клиентских интерфейсов в компании Sparkle Corp.
Заразившись энтузиазмом Джорди, Дженераль прикинула потенциальные выгоды от включения MongoDB в стек инструментов Sparkle Corp. «У кого-нибудь есть какие-либо соображения или опасения по поводу MongoDB?» – обратилась она к группе разработчиков.
«В нашем стеке мы уже поддерживаем MySQL и связанные с ним компоненты. Мы уже вложили достаточно много усилий в интеграцию MySQL. Использование MongoDB приведет к дополнительным затратам на поддержку и техническое обслуживание. Может ли MongoDB дать нам что-то полезное, компенсирующее дополнительные затраты?» – спросила Элис, старший разработчик из компании Sparkle Corp.
Разногласия подобного рода часто проявляются в команде. Каким образом сотрудники могут ухудшить или улучшить отношения в команде? Давайте углубимся в devops-пакт и изучим способы налаживания сотрудничества между коллегами.
Являясь одним из базовых столпов devops, сотрудничество относится к интенциональным процессам и к общим целям отдельных сотрудников. Практические примеры сотрудничества приведены в следующем списке:
• асинхронный анализ кода;
• документирование;
• выпуски обновлений и отчеты об ошибках;
• демонстрация еженедельного прогресса;
• регулярное обновление статуса;
• парная работа.
Важно распознавать ценность и назначение разных форм сотрудничества. Один вид коллективной работы выполняется совместно с другими сотрудниками. При этом каждый сотрудник несет ответственность за свою часть работы, которую он выполняет на пути к достижению общей цели. Другой тип коллективной работы выполняется непрерывно, двумя или большим количеством сотрудников, которые работают вместе для достижения общей цели. Выбор формы сотрудничества зависит от характера работы и окружающего контента.
И помните о том, что зацикливание на единственном типе совместной работы подобно утверждению о том, что бег – это единственная форма физических упражнений.