Enriching Web Applications with Collaboration Support Using Dependency Injection

  • Matthias Heinrich
  • Franz Josef Grüneberger
  • Thomas Springer
  • Martin Gaedke
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7387)


Web-based collaboration tools such as Google Docs are pervasive in our daily lives since they have proven to efficiently support joint work of distributed teams. Nevertheless, the development of web-based groupware systems is a time-consuming and costly task because developers either have to become familiar with specific groupware libraries or are asked to re-implement concurrency control services (i.e. document synchronization, conflict resolution). Therefore, we propose a dependency injection mechanism using declarative annotations to incorporate concurrency control services into web applications. Instead of adopting comprehensive libraries or implementing application-specific components, synchronization capabilities are integrated in a lightweight and rapid fashion. To validate the approach, we enriched the widely-adopted Knockout framework with dependency injection facilities and transformed two Knockout-based applications into collaborative ones.


Concurrency Control Operational Transformation Bold Text Collaboration Service Apache Software Foundation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Heinrich, M., Lehmann, F., Springer, T., Gaedke, M.: Exploiting single-user web applications for shared editing: a generic transformation approach. In: WWW, pp. 1057–1066 (2012)Google Scholar
  2. 2.
    Apache Software Foundation: Apache Wave (2011),
  3. 3.
    Gentle, J.: ShareJS – Concurrent editing in your app. (2012),
  4. 4.
    The Dojo Foundation: OpenCoWeb Framework (2012),
  5. 5.
    Sanderson, S.: Knockout: Home (2012),
  6. 6.
    Ellis, C.A., Gibbs, S.J.: Concurrency Control in Groupware Systems. In: SIGMOD Conference, pp. 399–407 (1989)Google Scholar
  7. 7.
    Rickayzen, A.: Simple way to model processes in the Web (2011),
  8. 8.
    Osmani, A., Boushley, A., Sorhus, S.: TodoMVC (2012),

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Matthias Heinrich
    • 1
  • Franz Josef Grüneberger
    • 1
  • Thomas Springer
    • 2
  • Martin Gaedke
    • 3
  1. 1.SAP ResearchGermany
  2. 2.Dresden University of TechnologyGermany
  3. 3.Chemnitz University of TechnologyGermany

Personalised recommendations