We propose an algebraic characterisation of the notion of coordination in the sense of recently proposed languages and computational models that provide a clear separation between the modelling of individual software components and their interaction in the overall software organisation. We show how this separation can be captured in Goguen’s categorical approach to General Systems Theory and borrow examples from specification logics, program design languages, mathematical models of behaviour, and coordination languages to illustrate the applicability of our algebraic characterisation.