What does a queue actually do, and when would you use one?
Testing How you describe ownership. A queue owning a record is the part that changes how everything else behaves.
A queue holds records nobody has picked up yet, and it owns them — the OwnerId points at the queue rather than a person. Members can see what is in it and take a record, which sets them as the owner. It is the right shape for incoming work: leads, cases, anything where the team decides who takes what rather than an individual being assigned up front.
The important part is that a queue is an owner. That means anything keyed on
ownership behaves differently while a record sits in one — the role
hierarchy grants nothing, because a queue has no place in it, so visibility
comes from queue membership instead. Members can be users, roles, public
groups or partner users, and adding a role adds everyone in it, which is
where a queue quietly becomes visible to more people than intended. Two
practical notes: assignment rules are usually what puts records in a queue
rather than a person doing it, and reports on ownership will show the
queue's name in Owner.Name, which surprises whoever built the report on the
assumption owners are people.
They'll ask next Which objects can a queue own?
Leads, cases, orders, tasks, knowledge articles and custom objects, among others. Not every standard object, which is worth checking before designing around it.
They'll ask next What happens to sharing when someone takes the record?
Ownership moves to them, the role hierarchy starts applying, and any manual shares from the queue era are gone. That is a real access change.