conference-paper Open access

What's DAT? Three Case Studies of Measuring Software Development Productivity at Meta With Diff Authoring Time

Research footprint

At a glance

Citations
0
References
0
Comments
0
Paper overview

Öz

This paper introduces Diff Authoring Time (DAT), a precise, yet conceptually simple approach to measuring software development productivity that enables rigorous experimentation. DAT is a time-based metric, which assesses how much active work time engineers take to develop self-contained changes. It uses a bespoke telemetry system integrated with version control, the Integrated Development Environments, and the Operating System. We validate DAT through observational studies, surveys, visualizations, and descriptive statistics. At Meta, DAT elevates the internal tool development workflow to the scientifically grounded, experiment-driven development flow already present for external-facing products. As such, DAT enables rigorous experimentation on long-standing software engineering questions like “do types make development more efficient?” DAT has powered experiments and case studies on more than 20 projects at Meta. Here, we highlight (1) a controlled experiment on introducing mock types, which showed that typed mocks in tests yield a 14% DAT improvement, (2) a case study on the development of automatic memoization in the React compiler, a 33% improvement, and (3) a framework to estimate the thousands of DAT hours saved annually through code sharing (> 50% improvement). Overall, this paper contributes a novel, yet straightforward way to measure development velocity, DAT. It describes how the use of this metric has enabled rigorous experimentation on development productivity at industry scale, and paves the way toward a more scientific mindset in internal product development.

Record transparency

Publication details

DOI
10.1145/3786583.3786901
OpenAlex
W4417281710
Document type
conference-paper
Language
EN
Last metadata update
Community

Comments

Oturum Açın to join the discussion.

  1. No comments yet. Start the discussion.