• DocumentCode
    2938912
  • Title

    Protocols and ports: reusable inter-object behavior patterns

  • Author

    Selic, Bran

  • Author_Institution
    ObjecTime Ltd., Kanata, Ont., Canada
  • fYear
    1999
  • fDate
    1999
  • Firstpage
    332
  • Lastpage
    339
  • Abstract
    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. We describe both protocols and ports using the base concepts of the recent Unified Modeling Language (UML) standard
  • Keywords
    formal specification; object-oriented programming; protocols; software reusability; Unified Modeling Language; collaborating objects; complex reusable pattern; formal specification; formal verification; high level behavior; object classes; object oriented programs; protocol specifications; reusable inter-object behavior patterns; two-way interfaces; Books; Collaboration; Electrical capacitance tomography; Protocols; Standards publication; Telecommunication computing; Time factors; Timing; Unified modeling language;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Object-Oriented Real-Time Distributed Computing, 1999. (ISORC '99) Proceedings. 2nd IEEE International Symposium on
  • Conference_Location
    Saint-Malo
  • Print_ISBN
    0-7695-0207-5
  • Type

    conf

  • DOI
    10.1109/ISORC.1999.776401
  • Filename
    776401