We have designed our system with the follow steps:
Backlog (epics) Ready for discovery (epics) In discovery (epics) Ready to break into stories / 3 amigos (epics->stories) Ready for development (stories) In development (stories) Ready for QA (stories) Ready for PO review (stories) Done (stories)
We designed it so that the team can take more ownership for creating the stories as we don't have an experienced PO.
We have a weekly queue replenishment meeting. We focus on the input queue i.e. at the incoming epics.
So far it seems to be working fine however I want everyone to keep on top of the stories that are coming out of the epics being broken down.
So my question is how do we ensure that epics don't spawn endless stories - since the developers are creating the stories.
I do coach the developers on the importance of having defined epics with a start and finish and not to use them as containers.
Update: Example of an Epic:
It's a BI/Data Science team, so this is a rough example of an epic: Airflow pipeline - create a json data contract between an existing application and a nightly s3 bucket and in turn it transforms the data several times and eventually the data ends up in snowflake
Second example of an epic:
Create a dashboard for a specific business department in Looker (would include Explore, LookML)