> .. then the Developer takes in the materials of each of these steps
IME this is the main problem, the "Developer" must be heavily involved from step 1 (and work in a close feedback loop with QA). Everything else follows automatically in ever smaller iteration steps. Software development is first and foremost experimental research work, not a factory line.
E.g. if a specific software development task feels like boring/repeating factory work, it should have been automated already.
It is hard because more people means more opinions.
* Involving the developers in everything that the product team does as well as all of their own work is too inefficient.
* Involving the wrong developer means you might not ask the right questions up-front.
* Some developers are too negative and block things early on
* Some developers are too positive and will say yes to everything even if it is unreasonable
* There is not always a clear authority between product owners and developers
* A lot of decisions are based on company priorities that might need someone outside of the product/development team to argue for
IME this is the main problem, the "Developer" must be heavily involved from step 1 (and work in a close feedback loop with QA). Everything else follows automatically in ever smaller iteration steps. Software development is first and foremost experimental research work, not a factory line.
E.g. if a specific software development task feels like boring/repeating factory work, it should have been automated already.