Radek wrote a brilliant post.

He wrote:

Many people say – deliver small User Stories (tasks).

I would say – focus on the transaction cost.

If:

  • Your build takes several hours.
  • Tests require hours or even days of work.
  • Writing a deployment summary is manual.
  • Approval takes about a week.
  • Fixing everything around takes twice as long as writing the code.

Then there’s no way you’ll be able to deliver in small batches. You’ll spend time splitting tasks, only to make up for it in surrounding operations.

Focus on improving operational work first. Only then break things into smaller pieces.

PS. On this topic, I recommend The Principles of Product Development Flow by Donald G. Reinertsen.

I added my experience#

Exactly. That’s why we need to streamline the pipeline, educate developers on topics like TDD, breaking work into small pieces, CI, collaborative development, and effective communication with users and stakeholders. We need to merge testing and development into a single, continuous process and, ultimately, eliminate the need for pull request approvals—just push commits straight to main.