Relationships meet their roles in object oriented programming

  • Authors:
  • Matteo Baldoni;Guido Boella;Leendert Van Der Torre

  • Affiliations:
  • Dipartimento di Informatica, Università di Torino, Italy;Dipartimento di Informatica, Università di Torino, Italy;Computer Science and Communications, University of Luxembourg

  • Venue:
  • FSEN'07 Proceedings of the 2007 international conference on Fundamentals of software engineering
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper we study how roles can be added to patterns modelling relationships in Object Oriented programming. Relationships can be introduced in programming languages either by reducing them to attributes of the objects which participate in the relationship, or by modelling the relationship itself as a class whose instances have the participants of the relationships among their attributes. However, even if roles have been recognized as an essential component of relationships, also in modelling languages like UML, they have not been introduced in Object Oriented programming when it is necessary to model relationships. Introducing roles allows to add attributes and behaviors to the participants in the relationship, rather than to the relationship itself, and to distinguish the natural types of the participants in the relationships from the roles the participants acquire in the relationships. We show how the role model of the language powerJava can be used to endow the relationship as attribute pattern with roles.