Arbab argues that viewing component instances as the implementation of an object-oriented interface hinders reusability and becomes a source of problems as the size and complexity of the glue code increases. Instead, he thinks that a component instance should be viewed as an abstract device that sends or receives plain data through ports, and that coordination should be exogenous and application domain independent.
In this report, he summarizes previous results of implementations of Reo, which is a model to describe synchronization patterns based on constrained data flows. It is appropriate for a tutorial, since most of the effort is in presenting the motivation and many examples to introduce the reader to Reo; for further information on its semantics, reconfiguration capabilities, or application programming interface, I recommend visiting http://www.cwi.nl/htbin/reo/view.
I think the main feature of Reo is that it does not provide a set of predefined synchronization devices, but the foundations to define and combine them arbitrarily. Unfortunately, there is no conclusive proof that it does not suffer from the problems Arbab mentions regarding object-oriented glue code. Furthermore, I do not think object-oriented interfaces will fade away easily, which may be a major obstacle to Reo being incorporated into mainstream component infrastructures. A complementary approach, in which Reo is used to describe the dynamics of such interfaces, would probably be more practical.