CoPhotoshop:  converting single-user Photoshop into a real-time collaborative image editing tool

Computer-based tools for supporting the creation and use of interactive digital media have become one of the fastest growing industries.  Efficient creation and effective use of digital contents often require collaboration among multiple designers with different expertise and at different locations, but none of existing digital media  design software tools in the market is capable of supporting multi-user real-time collaboration over the Internet.   The goal of our research is to investigate and develop innovative technologies and software tools for supporting  Internet-based real-time collaborative creation and application of interactive digital media, to significantly increase the productivity and quality of digital media professionals.

Single-user-oriented digital media design tools have already had a well-established multi-billion dollars market, with millions users. Vast investment has been made by software vendors in researching, developing and producing existing single-user design tools, and by organizations or individual users in purchasing and learning these tools for solving real-world problems.  For any collaborative digital media design tools to gain acceptance from the end-users,  they must be able to preserve the conventional functionalities and interface features in existing single-user digital media design tools, while providing new advanced real-time collaboration support over the Internet.  This requirement imposes a major constraint on our work: the collaborative technologies developed from this project must be integrated into existing single-user digital media design tools without making any change to the original tools.

This project builds on and extends the Transparent Adaptation (TA) technology from prior CoWord and CoPowerPoint projects (http:///  We focus on researching advanced collaboration, graphics/images, and human computer interaction technologies for support multiple users to jointly design shared digital media over the Internet, and on converting a mainstream image editing tool – Adobe Photoshop  - into a real-time collaborative image editing tool, named CoPhotoshop.


The TA-based CoPhotoshop architecture consists of three components,  as shown below:




  1. Single-user Application (SA) provides conventional single-user Photoshop functionalities and interface features,  but has no knowledge about multi-user collaboration.
  2. Collaboration Adaptor (CA), which bridges the single-user application with the underlying GCE (see below). The CA component uses the SA API (Application Programming Interface) to augment the SA with collaboration capabilities without accessing the source code of the SA.  
  3. Generic Collaboration Engine (GCE), which provides application-independent collaboration capabilities in consistency maintenance, concurrency control, group awareness, interaction control, etc. The GCE component can be shared by a wide range of  TA-based collaborative applications.


Based on this TA architecture and a reusable GCE component, the task of converting a new single-user application is reduced into the task of researching, designing and implementing a new CA for this new application.  For more detailed information on TA and GCE,  please read the following article:


Chengzheng Sun, Steven Xia, David Sun, David Chen. Haifeng Shen, Wentong Cai: "Transparent adaptation of single-user applications for multi-user real-time collaboration,"  ACM Transactions on Computer-Human Interaction,  Vol. 13, No.4, December 2006, pp.531-582.  In ACM Digital Library.  (please contact us if you cannot access this article from the ACM digital library).


Principle Investigator:     Professor Sun Chengzheng  

        School of Computer Engineering  

        Nanyang Technological University