The ImpUNITY framework is an extension of the UNITY framework. It contains several program structuring mechanisms and puts special emphasis on compositional refinement of both specifications and programs. It has an associated temporal logic, formal refinement notions, and program transformation rules. In this paper we show how coordination in the form of a shared tuple space between communicating ImpUNITY programs is modelled and used during formal program specification and refinement. We exemplify our formalism by a larger case study on a phone system where communication in the system is partly taken care of via a tuple space