In programming distributed object-oriented systems, there are several appro
aches for achieving binary interactions in a multiprocess environment. Usua
lly these approaches take care only of synchronisation or communication. In
this paper Me describe a way of designing and implementing a more general
concept: multiparty interactions. In a multiparty interaction, several part
ies (objects or processes) somehow "come together" to produce an intermedia
te and temporary combined state, use this state to execute some activity, a
nd then leave this interaction and continue their normal execution. The con
cept of multiparty interactions has been investigated by several researcher
s, but to the best of our knowledge none have considered how failures in on
e or more participants of the multiparty interaction can be dealt with. In
this paper, we propose a general scheme for constructing dependable multipa
rty interactions in a distributed object-oriented system, and describe its
implementation in Java. In particular, we extend the notion of multiparty i
nteraction to include facilities for handling exceptions. To show how our s
cheme can be used, we use our framework to build an abstraction mechanism t
hat supports cooperative and competitive concurrency in distributed systems
. This mechanism is then applied to program a system in which multiparty in
teractions are more than simple synchronisations or communications.