There must be a Product Owner, a Dev Ops lead, a UX designer etc. Yes these activities all need to be covered, but when you start giving people roles, it creates a desire within people to fulfil their role at all cost - dangerous stuff. Thinking back on all the dev teams (including Agile, RAD, Waterfall) that I've worked with, the best ones included at least one of each of these types.
The Creative
Bringing great ideas to the team and to the business. This is not always the official 'creative' on the team.
The Cynic.
Points out all the flaws in the Creative's bright ideas.
The Pragmatist
Finds a way to deliver great ideas that work.
The Implementor
Just gets on with it and saves the team from disasters
The Destroyer
Every team needs someone that has the knack of breaking things. They can come up with unhappy paths that no-one ever dreamed of! Sometimes they are called testers, although not all testers have this ability ;-)
I hope that gets you thinking about your team and how it works. If you have any thoughts on this theme I'd love to hear from you. Who knows, I might be able to gather enough data to prove I'm right!