If you have any way to abstract your specific use case into something we can discuss, great. If not, we can continue to talk about things in terms that don't relate to you or or your original question.
>I created multiple queues with a group for each
why? And, why did you create so many queues? Note that 100 queues means a customer has 100 choices as the first box he's choosing. This kills user experience. It's not a nice thing to do to your customer.
>Every there are different groups of agents which have different access to queues. Isn't it mentioned that in order to achieve this, each queue must belong to its own group?
No. I've never seen any documentation that relates to that.
> So there will be as much queues with its individual groups needed to divide groups of agents by theirs designation.
I ... don't know how to translate this into English.
> Its obvious that agents related to Software development cannot and must no see tickets designated to HW support team and vice versa.
sure. Queues and groups are more related to agents than customers anyway.
> Using service in other hand does not limit (or does?) access for agents to their designated role in company.
Does not. Services are attached to customers. WIth ACL, what a customer chooses as Queue can affect the choices of service the customer has (of the services that belongs to the customer.) Likewise, with ACL, if a customer starts with service, the Queue(s) that are available to the customer can be restricted.