What are users' groups?
Users' groups are a way to create a differentiation between your agents at the permission level they have and or access to tickets from a certain label/s.
You can also limit the assignments options available to these agents; whether they can assign tickets to everyone or just a certain group. For example: We want to create a group for our support agents, Dan, Roy and David, so they could only see and take (permission) tickets regarding support issues (topic / label). What we need to do is to create a group which contains the "Support" label in it and choose the permission type. In our case: "View and take selected labels". We can also decide to allow our group members to only assign tickets to other group members. After creating the group we need to associate Dan, Roy and David with it. Once a new ticket being labeled as "Support" (the label is attached to the ticket manually or by tickets' rules) it can be viewed and taken only by Dan, Roy and David.
You can also use user's groups to restrict your agents to specific knowledge bases.