К каталогу
paper
telemetry
experience-report

Enabling the Study of Software Development Behavior With Cross-Tool Logs

Разбор InSession от Google: кросс-инструментальные логи, архитектура сессий, privacy-принципы, PABAK-валидация и прикладные кейсы productivity.

Открыть PDF

Практика чтения для этого источника ещё не опубликована

Ниже доступен готовый редакционный brief из прежнего каталога. Он даёт контекст, но не засчитывается как lab.

Открыть оригинал

Готовый редакционный разбор

Он сохранён из прежней версии каталога и расположен после самостоятельной практики, чтобы не подменять чтение оригинала готовым пересказом.

Paper

Enabling the Study of Software Development Behavior With Cross-Tool Logs

IEEE Software, 2020.

Перейти на сайт

Исследование описывает InSession — систему Google для анализа поведения разработчиков через кросс-инструментальные логи. Главная идея: строить измерения продуктивности и процессов на основе реальных сигналов из dev-toolchain, не устанавливая отдельные агенты на рабочие машины.

Первая страница paper Enabling the Study of Software Development Behavior With Cross-Tool Logs

Первая страница whitepaper (клик по изображению откроет PDF).

Основа [1/3]

Telegram пост #3561

Архитектура InSession, источники данных и модель сессий.

Перейти на сайт

Архитектура InSession

Events

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

Artifacts

  • Task-identifying артефакты нужны для склейки событий в одну задачу разработки.
  • Informational артефакты дают контекст (тип активности, связанная сущность и т.д.).

Sessions

  • События группируются в сессии по дню, близости во времени (10 минут) и task-артефактам.
  • Сессии становятся базовым атомом для вычисления метрик поведения.

Metrics

  • Из сессий выводятся 7 метрик: coding, reviewing, shepherding, investigation, development, email, meeting.
  • Метрики используются для исследования процессов, а не для прямой индивидуальной оценки.

Визуализация сессий и task-группировок

Figure 1: grouping cross-tool events into sessions

Figure 1 из статьи: как события code review / code search склеиваются в сессии и затем формируют task-level timeline инженера.

Источники данных

  • Buganizer (issue tracking)
  • Code Search
  • Cider (web IDE)
  • Blaze (distributed build)
  • Critique (code review)
  • Gmail и Calendar (ограниченные метаданные)
  • 90+ инструментов командной строки

Основа [2/3]

Telegram пост #3562

Privacy-принципы, валидация PABAK и кейс readability certification.

Перейти на сайт

Принципы конфиденциальности

  • Сбор только по сотрудникам и только в рабочем инструментальном контуре.
  • Не собирается содержимое, создаваемое сотрудниками (content abstinence).
  • Шифрование данных и аудируемый доступ к наборам измерений.
  • Отчетность по individual-level данным запрещена без согласия.
  • Удаление данных по истечении окна хранения (3 года).

Валидация на дневниках инженеров (PABAK)

0.81

Reviewing

PABAK agreement

0.69

Coding

PABAK agreement

0.70

Investigation

PABAK agreement

N=25

Dataset

дневники инженеров для валидации

Figure 2: PABAK scores segmented by activity type

Figure 2 из статьи: распределение PABAK-согласия по типам активности.

Кейс: readability certification

  • C++: reviewing time -4.5%, shepherding time -10.5%.
  • Java: shepherding time -10.0%.
  • 88% инженеров после Java readability-процесса оценили опыт положительно.

Где методология InSession использовалась дальше

Практические выводы

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

Связанные главы

InSession важен как пример того, как исследовательская методология превращается в операционный инструмент улучшения engineering-процессов на масштабе big tech.