I worked with a software development team once that had very positive feedback from the business about what they were able to get done. But the team felt frustrated because the business kept changing its mind about what was important.
We tackled this in 2 ways:
1. Worked with the Product Manager to better define the product roadmap and get it agreed with the business.
2. Worked with the team to break work down into smaller pieces of work that delivered what customers or the business needed
The problem wasn’t that priorities were changing, they were that the team couldn’t finish delivering the value they were working on before the business needed to change directions. By teaching the team to break their work down into smaller pieces, and reduce batch size, I helped put them in a position where they stopped being the bottleneck. The business could ask for what it needed, and change it when they needed, without the development team getting hurt or frustrated by the changes.
There was a whole separate piece of work on helping the business learn to quantify the value of what it wanted to do, and therefore learn to run experiments and tests that validated what it thought of as customer needs and drivers.