Developing Collaborative Applications Using Sliverware
Despite computers’ widespread use for personal applications, very few programming frameworks exist for creating synchronous collaborative applications. Existing research in CSCW (computer supported cooperative work), specifically approaches that attempt to make current application implementations collaboration-aware, are difficult to implement for two reasons: the systems are focused too narrowly (e.g., on Internet-only applications), or the systems are simply too complicated to be adopted (e.g., they are hard to set up and adapt to concrete applications). Enabling real-time collaboration demands lightweight, modular middleware—sliverware—that enables the fine-grained interactions required by collaborative applications. In this paper, we introduce sliverware and give a specific example in the guise of a distributed keyboard that multiplexes input from several users into a single stream that each user receives just like input from a normal keyboard. The result is simple, real-time collaboration based on a shared, distributed view of data that enables rapid development of highly coupled coordinating applications.
KeywordsGroup Membership Application Developer Group Policy Collaborative Application Collaborative Service
Unable to display preview. Download preview PDF.
- 1.Abowd, G., Atkeson, C., Feinstein, A., Hmelo, C., Kooper, R., Long, S., Sawhney, N., Tani, M.: Teaching and learning as multimedia authoring: The classroom 2000 project. In: ACM Multimedia, pp. 187–198 (1996)Google Scholar
- 3.Aim (2006), http://www.aim.com/
- 4.Barrios, B.: Tutorial microsoft office word 2003: Collaboration (2002), http://getit.rutgers.edu/tutorials/word_collaboration/media/collaborative.pdf
- 5.Beck, K., Andres, C.: Extreme Programming Explained: Embrace Change, 2nd edn. Addison-Wesley Professional, Reading (2004)Google Scholar
- 6.Bentley, R., Horstmann, T., Trevor, J., Sikkel, K.: Supporting collaborative information sharing with the world wide web: The BSCW shared workspace system. In: 4th International World Wide Web Conference, pp. 63–74 (1995)Google Scholar
- 7.Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley Professional Computing Series). Addison-Wesley Professional, Reading (1995)Google Scholar
- 10.Jotspot live (2006), http://www.jotlive.com/
- 12.Lin, J., Paul, S.: RMTP: A reliable multicast transport protocol. In: INFOCOM, pp. 1414–1424 (1996)Google Scholar
- 17.Synchroedit (2006), http://www.synchroedit.com/
- 18.Writely (2006), http://www.writely.com/