is a behavioral pattern which describes how one acting object performs a set of related services.

From Webster:

Roles are used to describe properties, and are related to object designs by projection. Roles are used to link properties and objects. Projections are used for synthesis of new objects and for documenting existing objects.