Книга: Руководство по DevOps
Распространяйте знания, используя автоматизированные тесты как документацию и механизм обмена опытом
Распространяйте знания, используя автоматизированные тесты как документацию и механизм обмена опытом
После того как мы создали общие для всей организации библиотеки, стоит заняться быстрым распространением профессиональных компетенций и улучшений. Включение в библиотеки большого количества автоматизированных тестов сделает их самодокументирующимися, и другим инженерам будет легко понять, как они работают.
Если мы внедрили методологию разработки через тестирование (TDD), где тесты пишутся до кода, то такое преимущество мы получим практически без лишних действий. Такой подход превращает наши наборы тестов в актуальную спецификацию системы. Любой сотрудник, желающий понять, как работать с какой-либо системой, может просто взглянуть на набор тестов и увидеть работающие примеры того, как пользоваться API-системой.
В идеале у каждой библиотеки должен быть свой хранитель или своя команда. Они становятся источником знаний о данной библиотеке. Кроме того, в эксплуатации должна использоваться только одна, наилучшая версия библиотеки (в идеальном случае), отражающая накопленные знания и опыт организации.
В этой модели инженер, ответственный за библиотеку, также отвечает и за перевод всех групп, пользующихся его репозиторием, с устаревшей версии на новую. Это, в свою очередь, требует быстрого обнаружения ошибок перехода между версиями библиотеки. Помочь могут исчерпывающее автоматизированное тестирование и непрерывная интеграция для всех систем, использующих ту или иную библиотеку.
Чтобы быстрее распространять знания, можно также создать группы обсуждений или чаты для каждой библиотеки и сервиса. Благодаря этому любой сотрудник, имеющий вопросы, может получить ответ от других пользователей, часто отвечающих быстрее, чем разработчики.
С помощью такого инструмента коммуникации мы облегчаем обмен знаниями и опытом, а сотрудники получают возможность помогать друг другу с проблемами и новыми подходами к разработке.
- Используйте чаты и чат-ботов, чтобы автоматизировать и сохранять знания компании
- Автоматизируйте типовые процессы в ПО для многократного использования
- Создайте единый общедоступный репозиторий для всей организации
- Распространяйте знания, используя автоматизированные тесты как документацию и механизм обмена опытом
- Определите четкие нефункциональные требования, чтобы при проектировании учитывались пожелания эксплуатации
- Встройте пожелания команд эксплуатации в процесс разработки
- Используйте технологии, работающие на достижение целей компании
- Практический пример
- Стандартизация нового стека технологий в Etsy (2010 г.)
- Заключение
- Расширение механизма событий
- 8.8.11. Мероприятие 12: Раскрытие информации о механизмах агрессивного налогового планирования
- Можно ли выполнять сложные вычисления, используя Калькулятор Windows?
- Перестаньте пытаться написать идеальную документацию
- Как правильно создать рекламу, используя восприятие информации аудиторией
- 1.2.3. Поисковый механизм
- Буфер обмена и команды для работы с ним
- Использование буфера обмена
- Базовые криптографические механизмы сервисов безопасности PKI
- Автоматизированные биржи ссылок
- 4.17.1. Термины последовательного обмена
- Эмоции, связанные непосредственно с покупательским опытом