A quick thread about “sprints” and Agile (written first on Twitter).
Frequent integration (of ideas, code, expectations, perspectives, data, etc.) makes absolute sense. It works. There is an optimal tempo, and that point is lower than we intuit most of the time.
Frequent integration will also, defacto, feel a little uncomfortable. By design it will expose disconfirming information, and will always feel a bit premature. Forcing functions are designed to make us pay attention.
A forcing function is an aspect of a design that prevents the user from taking an action without consciously considering information relevant to that action. It forces conscious attention upon something (“bringing to conciousness”) and thus deliberately disrupts the efficient or automatised performance of a task.We have to contend with a limiter…and that is our ability to actually make use of/process the information that the forcing function elicits. A long time-box will yield so much information, that it will be difficult to make full use of the information.
On the flip-side, a super short time-box may be have impossibly high transaction costs, and may produce too little information to be valuable. Our intuition sets this length higher than is optimal. So it is a dance.
The tragedy is that something with the potential to be healthy, to catalyze learning, to de-risk, to make products better…is so frequently abused. The concept of “sprint” as a “mini fixed length project” is taken to morbid extremes. We’ve replaced waterfalls with whirlpools.
I hear “but what if it doesn’t fit into a sprint?” all the time. To me it is a curious question because it seems so obvious to me: “hey, let’s try to keep the spirit of time-boxing in mind. How can we integrate and learn something?
because I am worried we’ll ship crap…This sounds like someone is missing the point, and misinterprets the “job” we hire time-boxes (or other forcing functions if you’re not using sprints) to do. If a team is just ticking off sprints/stories sprint after sprint and never learning/testing…then something is wrong. If a team is just ticking off sprints/stories sprint after sprint and never learning/testing…then something is wrong.
I’ll end with…have a conversation with your team to understand the Why of time-boxes. Respect the needs of others. See them as a healthy forcing function — something the team invites into their work — not as a cat-herding device.