Protocols and Ports: Reusable Inter-Object Behavior Patterns

  • Authors:
  • Bran Selic

  • Affiliations:
  • -

  • Venue:
  • ISORC '99 Proceedings of the 2nd IEEE International Symposium on Object-Oriented Real-Time Distributed Computing
  • Year:
  • 1999

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper we introduce the concept of protocols. A protocol is a formal specification of potentially complex reusable pattern of inter-object behavior. To make it reusable, a protocol is defined independently of any specific object classes or instances. Even though they are defined independently of individual classes, we demonstrate how, using the notion of two-way interfaces called ports, protocols can be formally bound to structures of collaborating objects.This gives us a framework in which it is possible to formally verify if a particular combination of objects can indeed achieve the desired inter-object behavior. A further advantage is that programs with protocol specifications are more understandable and more maintainable than traditional object-oriented programs since the required high-level behavior is explicit. In the paper, we describe both protocols and ports using the base concepts of the recent Unified Modeling Language (UML) standard.