In computer science, there currently exist several definitions of roles. We introduce roles from the perspective of a task relationship defined as a connection between entities via a set of tasks. In our view, a role is a component of a task relationship within the context of a cooperative multiagent system or organization. We describe a model of roles that approaches the meaning of what a role is from a computational perspective in task allocation and treats roles as participants in a task relationship. We utilize notation from linguistics to introduce how roles can influence each other. We argue that the key features of current models of roles can be mapped into our task relationship model, and we illustrate how this approach satisfies most of the desired properties of roles.