Black & White, Never Grey: On Interfaces, Synchronization, Pragmatics, and Responsibilities

Abstract

When composing systems from components we have to deal with involved aspects like synchronization or non-functional properties like performance. It is nearly impossible to clearly specify such aspects in interfaces. Looking behind the interfaces (into grey boxes) does not solve the problem because of lost substitutability. In this paper we explain on the example of synchronization, first, how pragmatic descriptions solve the problem in usual cases and, second, that moving and splitting responsibility for synchronization between components is helpful in further cases. We argue that there is a general pattern applicable to many functional and nonfunctional aspects behind this solution.

    Similar works

    Full text

    thumbnail-image

    Available Versions