Desenvolvimento de Editores Colaborativos em Tempo Real: Revisão Rápida

  • Laurentino Augusto Dantas IFMS
  • Joab Cavalcante da Silva UEMS
  • Maria da Graça C. Pimentel USP

Resumo


Currently, users expect to collaborate synchronously with others, including over the Web. Developing a real-time collaborative editor (RCE) that enables geographically dispersed users to simultaneously edit the same document relies on specific algorithms and techniques. To understand how real-time collaborative editors are developed and tested, and which algorithms or techniques are crucial for their development, we conducted a systematic review addressing the following questions: For which types of objects does the literature present real-time collaborative editing systems (RTCE)? What is the most commonly used architecture by researchers to implement RTCE systems, how are they represented, and which works present models or roadmaps for the development of RCEs? Between Operational Transformation (OT) and Conflict-free Replicated Data Types (CRDTs) algorithms, which one appears most frequently in the selected works? What are the main types of tests conducted to evaluate collaborative editors, which articles conducted user tests, and what is the average number of users involved in these tests? Which works discuss undo/redo techniques? Which works discuss the use of comments, chat, or history as tools to support collaborative work? After screening 365 records published between 1993 and 2024, the review analyzed 23 studies published between 2002 and 2022. The results revealed various approaches and techniques employed in the implementation of RTCEs, offering a comprehensive view of research in this area. This, in turn, allowed for the identification of challenges that future research should address.
Palavras-chave: Edição colaborativa em tempo real, editor colaborativo em tempo real, groupware, revisão sistemática

Referências

Taslima Akter, Yoonha Cha, Isabela Figueira, Stacy M. Branham, and Anne Marie Piper. 2023. “If I’m supposed to be the facilitator, I should be the host”: Understanding the Accessibility of Videoconferencing for Blind and Low Vision Meeting Facilitators. In Proceedings of the 25th International ACM SIGACCESS Conference on Computers and Accessibility (ASSETS ’23). ACM, Article 45, 14 pages. DOI: 10.1145/3597638.3608420

Noha Alsulami and Asma Cherif. 2017. Collaborative editing over opportunistic networks: State of the art and challenges. International Journal of Advanced Computer Science and Applications 8, 11 (2017).

Hani Bani-Salameh, Clinton Jeffery, Ziad Al-Sharif, and Iyad Abu Doush. 2008. Integrating collaborative program development and debugging within a virtual environment. In Groupware: Design, Implementation, and Use: 14th International Workshop, CRIWG 2008, 2008, Revised Selected Papers 14. Springer, 107–120.

Ulrike Bath, Sumit Shekhar, Jürgen Döllner, and Matthias Trapp. 2021. Colier: Collaborative editing of raster images. In 2021 International Conference on Cyberworlds (CW). IEEE, 33–40.

Ulrike Bath, Sumit Shekhar, Julian Egbert, Julian Schmidt, Amir Semmo, Jürgen Döllner, and Matthias Trapp. 2022. CERVI: collaborative editing of raster and vector images. The Visual Computer 38, 12 (2022), 4057–4070.

Zane L Berge. 1995. Facilitating computer conferencing: Recommendations from the field. Educational technology 35, 1 (1995), 22–30.

Asma Cherif. 2012. Access control models for collaborative applications. Ph. D. Dissertation. Université de Lorraine.

Bryden Cho, Chengzheng Sun, and Agustina Ng. 2019. Issues and Experiences in Building Heterogeneous Co-Editing Systems. Proc. ACM Hum.-Comput. Interact. 3, GROUP, Article 245 (dec 2019), 28 pages. DOI: 10.1145/3361126

Gabriele D’Angelo, Angelo Di Iorio, and Stefano Zacchiroli. 2018. Spacetime Characterization of Real-Time Collaborative Editing. Proc. ACM Hum.-Comput. Interact. 2, CSCW, Article 41 (nov 2018), 19 pages. DOI: 10.1145/3274310

Gabriele d’Angelo, Angelo Di Iorio, and Stefano Zacchiroli. 2018. Spacetime characterization of real-time collaborative editing. Proceedings of the ACM on Human-Computer Interaction 2, CSCW (2018), 1–19.

Pieter de Lange, Paul Nicolaescu, Andreas T. Neumann, et al. 2020. Integrating Web-Based Collaborative Live Editing and Wireframing into a Model-Driven Web Engineering Process. Data Sci. Eng. 5 (2020), 240–260. DOI: 10.1007/s41019-020-00131-3

Andrea De Lucia, Fausto Fasano, Giuseppe Scanniello, and Genny Tortora. 2007. Enhancing collaborative synchronous UML modelling with fine-grained versioning of software artefacts. Journal of Visual Languages & Computing 18, 5 (2007), 492–503.

Thiago A. de S. Silva, Glívia A. R. Barbosa, and Ismael S. Santana. 2018. Evaluation of User Experience and Sociability on Platforms of Ephemeral Narratives: an Instagram Stories Case Study. In Proceedings of the 24th Brazilian Symposium on Multimedia and the Web (WebMedia ’18). ACM, 331–337. DOI: 10.1145/3243082.3243084

Clarence A Ellis and Simon J Gibbs. 1989. Concurrency control in groupware systems. In Proceedings of the 1989 ACM SIGMOD international conference on Management of data. 399–407.

Clarence A Ellis, Simon J Gibbs, and Gail Rein. 1991. Groupware: some issues and experiences. Commun. ACM 34, 1 (1991), 39–58.

R M Featherstone, D M Dryden, M Foisy, J Guise, M D Mitchell, R A Paynter, K A Robinson, C A Umscheid, and L Hartling. 2015. Advancing knowledge of rapid reviews: an analysis of results, conclusions and recommendations from published review articles examining rapid reviews. Systematic reviews 4, 1 (2015), 1–8.

Thore Fechner, Dennis Wilhelm, and Christian Kray. 2015. Ethermap: real-time collaborative map editing. In Proceedings of the 33rd annual ACM conference on human factors in computing systems. 3583–3592.

Roy Thomas Fielding. 2000. REST: architectural styles and the design of networkbased software architectures. Doctoral dissertation, University of California (2000).

Cristian Gadea. 2021. Architectures and Algorithms for Real-Time Web-Based Collaboration. Ph. D. Dissertation. Université d’Ottawa/University of Ottawa.

Liping Gao, Fangyu Yu, Qingkui Chen, and Naixue Xiong. 2016. Consistency maintenance of do and undo/redo operations in real-time collaborative bitmap editing systems. Cluster Computing 19 (2016), 255–267.

Jens Emil Sloth Grønbæk, Juan Sánchez Esquivel, Germán Leiva, Eduardo Velloso, Hans Gellersen, and Ken Pfeuffer. 2024. Blended Whiteboard: Physicality and Reconfigurability in Remote Mixed Reality Collaboration. In Proceedings of the CHI Conference on Human Factors in Computing Systems (CHI ’24). ACM, Article 798, 16 pages. DOI: 10.1145/3613904.3642293

Claudia-Lavinia Ignat and Moira C Norrie. 2003. Customizable collaborative editor relying on treeOPT algorithm. In ECSCW 2003: Proceedings of the Eighth European Conference on Computer Supported Cooperative Work 14–18 September 2003, Helsinki, Finland. Springer, 315–334.

Abdessamad Imine. 2009. Coordination model for real-time collaborative editors. In Coordination Models and Languages: 11th International Conference, COORDINATION 2009, Lisboa, Portugal, June 9-12, 2009. Proceedings 11. Springer, 225–246.

Ryota Inoue, Yudai Kato, Takushi Goda, Tadachika Ozono, Shun Shiramatsu, and Toramatsu Shintani. 2012. A real-time collaborative mechanism for editing a web page and its applications. In 2012 Fifth International Symposium on Parallel Architectures, Algorithms and Programming. IEEE, 186–193.

Kevin Jahns. 2018. HocusPocus - Collaborative editing. [link] hocuspocus/guides/collaborative-editing

Kevin Jahns. 2018. YJS - A CRDT framework with a powerful abstraction of shared data. [link]

Tim Jungnickel and Tobias Herb. 2016. Simultaneous editing of JSON objects via operational transformation. In Proceedings of the 31st Annual ACM Symposium on Applied Computing. 812–815.

Shin-Ya Katayama, Takushi Goda, Shun Shiramatsu, Tadachika Ozono, and Toramatsu Shintani. 2013. A fast synchronization mechanism for collaborative web applications based on HTML5. In 2013 14th ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing. IEEE, 663–668.

Martin Kleppmann. 2020. Moving elements in list CRDTs. In Proceedings of the 7th Workshop on Principles and Practice of Consistency for Distributed Data ( PaPoC’20). ACM, Article 4, 6 pages.

Janne Lautamäki, Antti Nieminen, Johannes Koskinen, Timo Aho, Tommi Mikkonen, and Marc Englund. 2012. CoRED: browser-based Collaborative Real-time Editor for Java web applications. In Proceedings of the ACM 2012 conference on Computer Supported Cooperative Work. 1307–1316.

Stefania Leone, Thomas B Hodel-Widmer, Michael Boehlen, and Klaus R Dittrich. 2006. Tendax, a collaborative database-based real-time editor system. In Advances in Database Technology-EDBT 2006: 10th International Conference on Extending Database Technology, Munich, Germany, March 26-31, 2006 10. Springer, 1135 – 1138.

Kai Lin, David Chen, Chengzheng Sun, and Geoff Dromey. 2007. Leveraging Single-User Microsoft Visio for Multi-user Real-Time Collaboration. In Cooperative Design, Visualization, and Engineering, Yuhua Luo (Ed.). Springer Berlin Heidelberg, 353–360.

Geoffrey Litt, Sarah Lim, Martin Kleppmann, and Peter van Hardenberg. 2022. Peritext: A CRDT for Collaborative Rich Text Editing. Proc. ACM Hum.-Comput. Interact. 6, CSCW2, Article 531 (nov 2022), 36 pages. DOI: 10.1145/3555644

Ming Liu, Leping Liu, and Li Liu. 2018. Group awareness increases student engagement in online collaborative writing. The Internet and Higher Education 38 (2018), 1 – 8.

Paul Benjamin Lowry, Aaron Mosiah Curtis, and Michelle Rene Lowry. 2004. A taxonomy of collaborative writing to improve empirical research, writing practice, and tool development. International Journal of Business Communication 41, 1 (2004), 66–99.

David Moher, Larissa Shamseer, Mike Clarke, Davina Ghersi, Alessandro Liberati, Mark Petticrew, Paul Shekelle, Lesley A Stewart, and Prisma-P Group. 2015. Preferred reporting items for systematic review and meta-analysis protocols (PRISMA-P) 2015 statement. Systematic reviews 4 (2015), 1 – 9.

Stefano Montanelli and Martin Ruskov. 2023. A Systematic Literature Review of Online Collaborative Story Writing. In Human-Computer Interaction – INTERACT 2023: 19th IFIP TC13 International Conference, York, UK, August 28 – September 1, 2023, Proceedings, Part III (York, United Kingdom). Springer-Verlag, 73–93. DOI: 10.1007/978-3-031-42286-7_5

Brice Nédelec, Pascal Molli, and Achour Mostefaoui. 2016. Crate: Writing stories together with our browsers. In Proceedings of the 25th International Conference Companion on World Wide Web. 231–234.

David A Nichols, Pavel Curtis, Michael Dixon, and John Lamping. 1995. Highlatency, low-bandwidth windowing in the Jupiter collaboration system. In Proceedings of the 8th annual ACM symposium on User interface and software technology. 111–120.

Petru Nicolaescu, Mario Rosenstengel, Michael Derntl, Ralf Klamma, and Matthias Jarke. 2018. Near real-time collaborative modeling for view-based web information systems engineering. Information Systems 74 (2018), 23–39.

Pavel Okopnyi, Oskar Juhlin, and Frode Guribye. 2022. Designing for Collaborative Video Editing. In Norddic Human-Computer Interaction Conference ( NordiCHI’22). ACM, Article 3, 11 pages. DOI: 10.1145/3546155.3546664

Gérald Oster, Pascal Urso, Pascal Molli, and Abdessamad Imine. 2006. Data consistency for P2P collaborative editing. In Proceedings of the 2006 20th anniversary conference on Computer supported cooperative work. 259–268.

Tadachika Ozono, Robin ME Swezey, Shun Shiramatsu, Toramatsu Shintani, Takushi Goda, Yudai Kato, and Ryota Inoue. 2012. Differential Synchronizaiton Mechanism for a Real-Time Collaborative Web Page Editing System WFE-S. In 2012 IIAI International Conference on Advanced Applied Informatics. IEEE, 242 – 247.

Tadachika Ozono, Robin ME Swezey, Shun Shiramatsu, Toramatsu Shintani,

Ryota Inoue, Yudai Kato, and Takushi Goda. 2012. A real-time collaborative web page editing system WFE-S based on cloud computing environment. In 2012 IIAI International Conference on Advanced Applied Informatics. IEEE, 224–229.

Lihang Pan, Chun Yu, Zhe He, and Yuanchun Shi. 2023. A Human-Computer Collaborative Editing Tool for Conceptual Diagrams. In Proceedings of the 2023 CHI Conference on Human Factors in Computing Systems (CHI ’23). ACM, Article 360, 29 pages. DOI: 10.1145/3544548.3580676

Postman. 2023. 2023 State of the API Report. Accessed: 2024-06-10.

Matthias Ressel, Doris Nitsche-Ruhland, and Rul Gunzenhäuser. 1996. An integrating, transformation-oriented approach to concurrency control and undo in group editors. In Proceedings of the 1996 ACM conference on Computer supported cooperative work. 288–297.

Gabriele Salvati, Christian Santoni, Valentina Tibaldo, and Fabio Pellacini. 2015. Meshhisto: Collaborative modeling by sharing and retargeting editing histories. ACM Transactions on Graphics (TOG) 34, 6 (2015), 1–10.

Holger J Schünemann and Lorenzo Moja. 2015. Reviews: rapid! rapid! rapid!... and systematic. Systematic reviews 4, 1 (2015), 1–3.

Sharifahtun Naim Shahidan, Zuraina Ali, and Norsuhaily Abu Bakar. 2022. Motivational Impacts of the Google Docs Integration to Support Collaborative Writing: A Review Approach. Intl. Journal of Advances in Social Sciences and Humanities 1, 3 (2022), 166–171.

Marc Shapiro and Nuno Preguiça. 2007. Designing a commutative replicated data type. arXiv preprint arXiv:0710.1784 (2007).

Marc Shapiro, Nuno Preguiça, Carlos Baquero, and Marek Zawirski. 2011. Conflict-free replicated data types. In Stabilization, Safety, and Security of Distributed Systems: 13th International Symposium, SSS 2011, Grenoble, France, October 10-12, 2011. Proceedings 13. Springer, 386–400.

Haifeng Shen and Chengzheng Sun. 2002. Highlighting: a gesturing communication tool for real-time collaborative systems. In Fifth International Conference on Algorithms and Architectures for Parallel Processing, 2002. Proceedings. IEEE, 180–187.

Jaemyung Shin, Bumsoo Kang, Taiwoo Park, Jina Huh, Jinhan Kim, and Junehwa Song. 2016. Beupright: Posture correction using relational norm intervention. In Proceedings of the 2016 CHI Conference on Human Factors in Computing Systems. 6040–6052.

Scott Solomon. 2016. Google and Microsoft’s Battle for the Enterprise: How Users Are Interacting With SaaS Applications - BetterCloud Monitor. BetterCloud Monitor.. [link] Acessado: 45453.

Adrienne Stevens, Mona Hersi, Chantelle Garritty, Lisa Hartling, Beverley J Shea, Lesley A Stewart, Vivian Andrea Welch, and Andrea C Tricco. 2024. Rapid review method series: interim guidance for the reporting of rapid reviews. BMJ Evidence-Based Medicine (2024). DOI: 10.1136/bmjebm2024-112899 [link]

Leo Stewen and Martin Kleppmann. 2024. Undo and Redo Support for Replicated Registers. In Proceedings of the 11th Workshop on Principles and Practice of Consistency for Distributed Data (Athens, Greece) (PaPoC ’24). Association for Computing Machinery, New York, NY, USA, 1–7. DOI: 10.1145/36429763653029

Maher Suleiman, Michele Cart, and Jean Ferrié. 1998. Concurrent operations in a distributed and mobile collaborative environment. In Proceedings 14th International Conference on Data Engineering. IEEE, 36–45.

Chengzheng Sun. 2000. Undo any operation at any time in group editors. In Proceedings of the 2000 ACM Conference on Computer Supported Cooperative Work (CSCW ’00). ACM, 191–200. DOI: 10.1145/358916.358990

Chengzheng Sun, Xiaohua Jia, Yanchun Zhang, Yun Yang, and David Chen. 1998. Achieving convergence, causality preservation, and intention preservation in real-time cooperative editing systems. ACM Transactions on Computer-Human Interaction (TOCHI) 5, 1 (1998), 63–108.

Chengzheng Sun, David Sun, Agustina Ng, Weiwei Cai, and Bryden Cho. 2020. Real Differences between OT and CRDT under a General Transformation Framework for Consistency Maintenance in Co-Editors. Proc. ACM Hum.-Comput. Interact. 4, GROUP, Article 06 (jan 2020), 26 pages. DOI: 10.1145/3375186

Chengzheng Sun, Steven Xia, David Sun, David Chen, Haifeng Shen, and Wentong Cai. 2006. Transparent adaptation of single-user applications for multi-user realtime collaboration. ACM Transactions on Computer-Human Interaction ( TOCHI ) 13, 4 (2006), 531–582.

David Sun, Chengzheng Sun, Agustina Ng, and Weiwei Cai. 2020. Real Differences between OT and CRDT in Correctness and Complexity for Consistency Maintenance in Co-Editors. Proc. ACM Hum.-Comput. Interact. 4, CSCW1, Article 21 (may 2020), 30 pages. DOI: 10.1145/3392825

Xin Tan, Xinyue Lv, Jing Jiang, and Li Zhang. 2024. Understanding Real-Time Collaborative Programming: A Study of Visual Studio Live Share. ACM Trans. Softw. Eng. Methodol. 33, 4, Article 110 (apr 2024), 28 pages. DOI: 10. 1145/3643672

Christian Thum, Michael Schwind, and Martin Schader. 2009. SLIM—A lightweight environment for synchronous collaborative modeling. In Model Driven Engineering Languages and Systems: 12th International Conference, MODELS 2009, Denver, CO, USA, October 4-9, 2009. Proceedings 12. Springer, 137–151.

Jennifer Tsan, Jessica Vandenberg, Zarifa Zakaria, Joseph B. Wiggins, Alexander R. Webber, Amanda Bradbury, Collin Lynch, Eric Wiebe, and Kristy Elizabeth Boyer. 2020. A Comparison of Two Pair Programming Configurations for Upper Elementary Students. In Proceedings of the 51st ACM Technical Symposium on Computer Science Education (Portland, OR, USA) (SIGCSE ’20). ACM, 346–352. DOI: 10.1145/3328778.3366941

A. Omar M. Uscamayta, Bruna C.R. Cunha, Diogo S. Martins, and Maria G. Pimentel. 2017. Collaborative Ad-hoc Multimedia Authoring via Mobile Devices. In Proceedings of the 23rd Brazillian Symposium on Multimedia and the Web (WebMedia ’17). ACM, 61–64. DOI: 10.1145/3126858.3131572

Nicolas Vidot, Michelle Cart, Jean Ferrié, and Maher Suleiman. 2000. Copies convergence in a distributed real-time collaborative environment. In Proceedings of the 2000 ACM conference on Computer supported cooperative work. 171–180.

Victor H. Vieira, Daniel G. Sante, André P. Freire, and Renata P. M. Fortes. 2005. A web service for CSCW applications. In Proceedings of the 11th Brazilian Symposium on Multimedia and the Web (WebMedia ’05). ACM, 1–3. DOI: 10.1145/1114223.1114241

Ruipeng Wei, Ruisheng Zhang, Chen Zhao, Dongmei Yue, and Lian Li. 2009. Design and Implementation of Scientific Collaborative Editing Environment on Chemistry. In 2009 Eighth International Conference on Grid and Cooperative Computing. IEEE, 188–192.

Raymond K Wong. 2004. Collaborative hypertext editing in mobile environment. In 10th International Multimedia Modelling Conference, 2004. Proceedings. IEEE, 300–307.

Steven Xia, David Sun, Chengzheng Sun, David Chen, and Haifeng Shen. 2004. Leveraging single-user applications for multi-user collaboration: the coword approach. In Proceedings of the 2004 ACM conference on Computer supported cooperative work. 162–171.

Xinyue Yu and Tun Lu. 2022. An AST-Based Collaborative Discussion Tool for the MOOC Environment. In CCF Conference on Computer Supported Cooperative Work and Social Computing. Springer, 284–294.
Publicado
14/10/2024
DANTAS, Laurentino Augusto; SILVA, Joab Cavalcante da; PIMENTEL, Maria da Graça C.. Desenvolvimento de Editores Colaborativos em Tempo Real: Revisão Rápida. In: WORKSHOP DE REVISÕES SISTEMÁTICAS DE LITERATURA EM SISTEMAS MULTIMÍDIAS E WEB - SIMPÓSIO BRASILEIRO DE SISTEMAS MULTIMÍDIA E WEB (WEBMEDIA), 30. , 2024, Juiz de Fora/MG. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2024 . p. 129-142. ISSN 2596-1683. DOI: https://doi.org/10.5753/webmedia_estendido.2024.243938.