The MoDisco role component introduced the "role" concept. A role is a kind of virtual class extension. Those "virtual classes" will never have instances. An object can be conform to a role but can not be an instance of a role.
For example, assuming we have a class named Employee and two roles: "Manager" and "Developer". We will have a set of Employee instances and some of them will have the role of "Manager" or "Developer".
The goal of role concept introduction is to be able to highlight some model elements having a specific role.
The MoDisco role feature allows describing and using roles. The description is done by editing a model and the use is done through an API. The main client of this API is the MoDisco browser.