When we introduced scrum we followed the conventional wisdom of having cross-functional teams with 7+/-2 members. While I’m still sold on “cross-functional”, I wouldn’t follow the 7+/-2 advice anymore. I’ve observed 5 +/- 1 as the sweet spot (dev team only; SM and PO are additional members).
The big advantage is that communication and coordination is usually easy and effortless at that size.
The disadvantage is that illnesses and vacations hit small teams harder than large ones. That’s why a clever team strives to have every “area” covered by least 2 team members.
But this recommendation is probably highly dependent on context. It doesn’t matter that 5 people can collaborate more easily than 8, when you need at least 8 developers to cover all skills the team will need to create the product.
But in our context – every team covers 3 areas: front end, middle ware, back end; on top of that some teams cover an additional area such as apps, “back back end”, … – 5 +/- 1 members work great together!