Role = Interface: A Merger of Concepts
Friedrich Steimann · 2001
Interfaces are a prominent OO programming concept, since they allow the decoupling of specification and implementation. Roles, on the other hand, are a popular OO modeling concept. For example, UML has rolenames, classifier roles, association roles, and association end roles. Although roles and interfaces appear unrelated at first glance, it is shown that they have much in common in fact, with a few changes in definition, the two concepts can be merged into one.