Previously, we developed a method and a distributed platform for the re-engineering of applications by adding cooperation. The goal was to supply a way of communication based on the exchange of events, messages and shared data. Now, we propose to adapt this approach (method and platform) to distributed multimedia applications. These applications present the characteristic to be organized around the communication. So, we can consider them as composed of distributed components which have to collaborate. Because it is heavily interactive, such an application needs to adapt itself in real-time to the user and to the environment in which it runs. Our approach consists in breaking down the application into two levels : the first one reflects the users’ point of view in terms of functionalities. The second one, reflects the way to achieve these functionalities in terms of quality of service. We propose to organize components into workgroups and subworkgroups corresponding to this two level...