Философия DevOps. Искусство управления IT (Дэниелс, Дэвис) - страница 187

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


Применение закона Конвея для выбора инструмента

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

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

Влияние инструментов на культуру

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


Инструменты, влияющие на процесс общения

Инструменты формируют поведение, поэтому они облегчают завязывание и поддержку общения между разными командами. Если, например, в компании не используются программы поддержки чата либо имеют место технические ограничения, препятствующие общению между командами, наладить общение будет намного сложнее.

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

Зачастую важнее не то, какой инструмент выбирается, а то, как он используется. Например, рассмотрим систему отслеживания ошибок. Если команды примут решение о том, что инструменты не имеют значения, и выберут систему отслеживания ошибок, дополняющую используемый этими командами рабочий стиль, велика вероятность, что применяемые в этих командах разные средства и практики существенно затруднят эффективную совместную работу.