Customer Service Collaboration and Swarming

Many Customer Service teams struggle to find the most effective way to use their top skilled and knowledgeable resources.

Traditionally, Support teams have implemented a tiered approach for problem resolution, allowing a case to be routed and reassigned to individuals or queues with the appropriate level of expertise. Leveraging skills-based routing and escalation workflows, Microsoft Dynamics can facilitate the tiered model as well as any enterprise case management solution.

Many organizations are looking to shake up the traditional tiered model and, instead, leverage a collaboration-based approach in order to increase CSR engagement, share knowledge and increase problem solving skills. This collaboration-based model is often known as "Swarming." The following post will explore the ways in which Swarming can be accomplished using Microsoft Dynamics and some of the benefits that Customer Service teams can glean from such a model.

Intelligent Swarming methodology has been defined by the Consortium for Service Innovation and we will be leveraging their definition to explore how to implement swarming to facilitate collaborative problem solving using Microsoft Dynamics.

Who is the best person to help?

Defining User Profiles and Skills

Microsoft Dynamics allows for user profiles to be defined with custom attributes that can be used to facilitate collaboration and to help identify the best resources to solve challenging problems.

Information to build into a robust user profile includes:

  • Language(s) spoken
  • Channel preference (email, phone, chat)
  • Competencies and Skills
  • Product Specialization or Certification

Fields and attributes can be easily configured in Microsoft Dynamics by an administrative or business user without the need to deploy code or IT resources!

Defining Teams

Microsoft Dynamics supports the concept of teams which allow users from different business units in an organization to collaborate on an issue or record. Users can belong to multiple teams and membership to a team can give a user additional rights and permissions, providing necessary visibility and accountability on relevant issues.

For example, a user who has the right to read and update cases they own can also read and update relevant cases for collaboration when associated to a team that user belongs to.

Microsoft Dynamics differentiates between owning teams and access teams. Owning teams allow a record such as a case to be assigned and owned by a group of users as opposed to an individual. This can be especially beneficial for reporting purposes and allows for a CSR to reassign an issue to a team for resolution. While this can be an effective escalation path, swarming is most impactful when ownership and responsibility for a case or issue does not transfer hands.

This is where access teams come in. Access teams in Microsoft Dynamics are temporary, created and dissolved as needed. This allows for users to swarm a problem, collaborate and then disband once the swarm has completed. Since different types of issues may require teams comprised of different skills and resources, access teams allow for the most relevant users to be tagged to help for specific problems.


As the image above shows, an access team allows different users from different business units and roles to be temporarily linked together in order to collaborate and solve a problem. The access team can be disbanded once a resolution has been reached.

Access teams can be created manually by users who need assistance as well as leveraging team templates to auto-create access teams with necessary permissions when appropriate.


Capturing Reputation and Metrics

User profiles support Subgrids and Charts to show historical collaboration data and reputation information in an easily readable graphical format.

As with all fields on a Microsoft Dynamics form, user permissions can be defined for visibility and read/write access to these data points as appropriate.


Requesting Help

One of the most important aspects of Swarming is making it simple and seamless to request help. The user who needs assistance should be able to very quickly ask a question or raise their hand to engage a Swarm.

Asking Questions of Teams

Sometimes, a CSR working on an issue encounters a question or problem they want Swarmed. Using Microsoft Dynamics Activities directly within the case form, a question can be posed to a Swarm Team and assigned with defined priority, resolution date and other configurable information.


Once the activity has been created, the team and/or user(s) are notified of the request for help and any actions taken against the activity and case are logged.

If an organization leverages Microsoft Yammer, questions can be posed and shared directly within the case form as well and different groups, teams and people can be tagged to assist.


Assign to Teams

As described above, Microsoft Dynamics allows for the creation of Owning Teams to which cases and problematic records can be assigned. This transfers ownership of the record to a team to swarm and resolve. Security Roles for users on the Owning Team are applied as though they are the owner of the case or record . Once the problem has been addressed, the team can reassign the case back to the original owner or return the case to a queue.

When an organization does not want to transfer ownership of the case to a team, an Access Team can be defined to share the record with a team to swarm and resolve. As we saw before, Access Team Templates can be defined for specific entities. A CSR can use views to search for users with particular skillsets or characteristics to add to an Access Team in order to Swarm.


You can also leverage workflow in Microsoft Dynamics to assemble Access Teams automatically when the CSR who owns the case needs help. For example, a CSR changes the status of the case to "Hand Raised" to indicate that the case needs Swarming assistance as seen in the screen shot above. The status change can trigger a workflow that shares case access to individuals or teams which meet specific criteria. Then, when the status of the case changes, and the CSR's hand is no longer raised, the sharing can be removed and Access Team automatically dissolved.

// Grant a team read/write access to a case.
var caseReference = new EntityReference(Incident.EntityLogicalName, _incidentId);
var teamReference = new EntityReference(Team.EntityLogicalName, _teamId);
var grantAccessRequest = new GrantAccessRequest{

PrincipalAccess = new PrincipalAccess{

AccessMask = AccessRights.ReadAccess | AccessRights.WriteAccess,
Principal = teamReference


Target = caseReference


Offering Help

List Views and Dashboards can be configured to help Subject Matter Experts and Resources identify areas where they can be of assistance. Users who can proactively offer help and collaboration assistance should be assigned SME Resource security roles that allow them to monitor cases owned by other users.

Some ideas of criteria to define for list views and dashboards include:

  • Cases related to SME product that have been open for more than X hours/days
  • Cases close to violating resolution SLA
  • Cases in the "hand raised" status

Microsoft Office Groups within Microsoft Dynamics

Customers with a Microsoft Office 365 Subscription are able to leverage the power of Office 365 Groups directly within Microsoft Dynamics.  Office 365 Groups are a shared workspace for email, conversations, files, and events where group members can Swarm to collaborate.

You can use groups to Swarm with people across your company, even if they don’t have access to Microsoft Dynamics. For example, you can create a group for a software defect Swarm and invite other Office 365 users to join the group, and then share documents, conversations, meeting notes, and OneNote information related to that specific issue, defect or product.


Comments (0)

Skip to main content