Блог SkillsCup.com

Доклад "Работа с зависимостями между командами"

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

Всё это усложняет работу, снижает эффективность команд и задерживает выпуск продукта.

Что же с этим делать?

Обсудим, как эффективно справляться с этими зависимостями с помощью планирования и трекинга, изменения архитектуры, использования досок зависимостей, кросс-командных ревью кода, декомпозиции на инкременты, регулярных синхронизаций типа PIP, POSync и демонстраций, и других приёмов. Важная часть – обучение сотрудников для повышения кросс-функциональности; мы рассмотрим примеры, когда наши специалисты командируются на задачи других команд и наоборот, и как это помогает решать проблемы быстрее.

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

Предполагаемая аудитория

Тим-лиды, ИТ-лиды, пиэмы, релиз-менеджеры, деливери-менеджеры.

Виды зависимостей по источнику возникновения

  1. Части общей цели
  2. Hardware: сервер, среда, площадка, VM
  3. Software: библиотеки, инструменты тестирования, CI/CD pipeline, лицензии
  4. Части общего инкремента и интеграция
  5. Архитектурно слои: Front, Back, DB
  6. Архитектурно компоненты: API, micro-services, общие сервисы типа аутентификации
  7. Shared codebase
  8. Ожидание документации: спеки, планы, архитектура
  9. Части общего процесса SwD: разработка, тестирование, поставка (deliverable handoffs)
  10. Ожидание решения, согласования
  11. Maintenance windows and shared services like Support team
  12. Расписание релизов
  13. Потребность в экспертизе: предметная область и техническая

Группы подходов, с помощью которых работаем с зависимостями

  1. Архитектура
  2. Оргструктура
  3. Процесс SwD с этапами, чеклистами, согласующими
  4. Роли, права, доступы к ИС, документам, репозиториям
  5. Цели и ответственность за них
  6. Компетенции сотрудников
  7. Координация, встречи, тулы
  8. Личные отношения

Способы работы с зависимостями "УСПТ"

Для многих действий ниже необходимо проанализировать существующие документы из списка выше:
  1. Архитектура, интеграции
  2. Оргструктура
  3. Процесс SwD с этапами, чеклистами, согласующими
  4. Роли, права, доступы к ИС, документам, репозиториям
Далее все способы работы с зависимостями я разложу по 4 секторам.

Устранить

Устранить заранее, в корне. Pro-active: знаем, убираем заранее

  1. Изменить ответственность + независимая ответственность
  2. Научить или нанять + права доступа: Командировка нашего на наши задачи, Командировка их к нам, Командировка нашего на их задачи, Cross-team code review
  3. Изменить оргструктуру (кросс-ф.)
  4. Изменить архитектуру
  5. Убрать naming должностей ради T-shape (привет Scrum) и нанимаем таких в будущем
  6. Делегирование decision making
  7. AT, CI/CD

Смягчить

Смягчить, сгладить, облегчить: планируй, мониторь. Active: знаем, но не убираем, а подготовились
  1. Изменить ответственность + шире или уровнем выше
  2. Научить или нанять – без прав доступа
  3. Risk register запланировать и трекать: Dependency board (Gantt chart), синхронизации до, во время, после
  4. Декомпозировать, часть добиться от смежников, часть сделать самим
  5. Интеграции вперёд
  6. Открытая документация и история изменений
Collaborative tools
Буферное время

Предвидеть

Предвидеть. Pro-active: не знаем, но поискали, чтобы подготовиться
  1. Обогатить Stakeholder matrix + plan "дружить"

Тушить

Тушить: реагировать. Re-active: не знали или знали, но случилось
  1. Декомпозировать и часть вообще не делать
  2. Попросить смежников взять в бэклог
  3. Попросить команду 3 освободить нам слот в бэклоге команды 2
  4. Поделиться $
  5. Зайти через начальника
2023-07-30 20:54 Проект