Interaction-oriented programming

The paper presents a technique, called interaction oriented programming (IOP), which facilitates the design of large reactive systems. IOP is based on the assumption that it is better to separate the coordination of the components from the components itself, making coordination patterns explicit. This contrasts with the usual practice, in which the coordination is directly handled inside the components. Apart from the basic technique, some extensions are presented which enable restrictions on roles, time constrained execution and localised code in order to specify more realistic coordination patterns.