Simple physics:
- velocity = distance / time
- momentum = mass x velocity
An analogy:
- The distance traveled by a single developer in a set amount of time is "velocity"
- The movement of the organization as a whole is "momentum" (the sum of individual velocities)
- If you add more people but reduce velocity then momentum decreases (this is why small teams are sometimes more productive than big teams).
The key contributor in this equation is "distance"-- how much an individual gets done in unit time. Let's break down distance into its contributing components:
velocity = distance / time
distance := (skill x precision x technology) / (friction + overhead)
-
skill := a baseline movement speed
-
precision := the percent of effort that is in the right direction
-
friction := time lost for each unit of forward movement (code review, compile time, waiting for tests, operations and configuration, etc.)
-
overhead := active job time that isn't development
Some notes:
- precision dominates this equation: if you're not working on the right thing, precision is 0, distance is 0, and velocity is 0.
- friction + overhead can quickly overwhelm progress-- if 80% of your productive time is meetings and each piece of work actually shipped means waiting a few cycles for the next task, velocity can approach zero.
Adding a PM either adds or reduces overhead, friction, and precision, depending on the situation and the PM.
-
Adding a PM nearly always adds overhead in the form of meetings, explanations, translations, etc.
-
If a team is spending a lot of time communicating outwards, dealing with inbound requests, justifying its existence with analytics, etc., a PM can take that over, reducing overhead.
-
If a team has no idea what to do (precision is very low) OR the PM is very skilled, adding a PM can improve precision. Only the best PMs can do this quickly in a new business domain above a certain threshold.
-
If a team has poor process and the PM is exceptionally skilled, they can identify ways to improve the process, reducing friction. If the PM is less than exceptional, they may add more process, increasing friction.
-
PMs sometimes mean an increase in distraction: A new PM wants to "look good", which can result in politics + deflecting blame, overshadowing the true aims of the business.