Abstract
Network-based computer environments emulating selected aspects of the physical world and allowing interaction among their human users first appeared in the late 1970s. These environments implemented a networked version of a role-playing fantasy game known as Dungeons and Dragons, hence their acronym MUD (Multi-user Dungeons). When it became obvious that many MUD users use the environment mainly to meet virtually with other users rather than to play games, new forms of MUDs and other types of emulated universes were developed and the term Virtual Environment (VE) was introduced to refer to all of them.
Since their inception, VEs evolved in several interesting directions, including environments with new types of user interfaces, for example emulating visual aspects of physical reality via VRML and other means [8], and object-oriented environments known as MOOs (MUD Object-Oriented) allowing their users to extend the environment and communicate with it via a programming language [22]. As virtual environments became better known and more sophisticated, their user populations reached hundreds of thousands. At present, VEs are used for recreation, education [16], particularly distance education, and in work, particularly for collaboration among physically separated team members [6, 26, 36, 15, 45]. There is also a large and growing body of research on existing and potential VE uses, and several meetings similar to this workshop are held every year to address both the usage and the technical aspects of VEs. Collaborative work is, of course, an area of major interest to software developers and we will thus address this issue further.
Collaboration is emerging as a major application of computer networks and the use of MOO-based virtual environments based for this purpose is gaining interest. This is because of the growing pervasiveness of computer networks, and because MOOs perfectly satisfy collaboration needs. They are persistent (thus capable of maintaining history), allow user proxies and software agents to inhabit and create separate scopes for private and group communication in both synchronous and asynchronous forms, let them posses and hold on to objects and tools, and enable navigation and porting of tools and objects from one internal scope to another. Most importantly, MOOs are extendible without limits both in terms of instantiation of existing types of entities and creation of new ones.
Because of their extendibility and persistence, MOOs can support such CSCW features as knowledge management, role-based control of access to tools and control of their usage policy, objects, or places, workflow definition, separation of projects and teams from one another, history, and others. The fact that MOOs are based on a very natural metaphor and are easy and fun to use is critical for their usability.
Besides the fact that virtual environments offer a powerful paradigm for collaboration,VEs also have a great technical interest as well. TraditionalMOOs are client-server Internet-based applications. The typical server holds the universe and implements an interpreter of MOO commands coming from the client. Commands often use a special-purpose language developed just for this purpose. Until very recently, the client was typically a Telnet-based textual interface used to enter commands interpreted on the server, and to display messages from the server. Recently, new approaches addressed the implementation of more user-friendly clients, mainly aimed at replacing the primitive text-based user interface with HTML or Java applets.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
N. Budhiraja, K. Marzullo, F. Schneider, and S. Toueg. The primary-backup approach. In S.J. Mullender, editor, Distributed Systems, 2nd Edition, ACMPress, chapter 8. Addison-Wesley, 1993.
W. Cellary, W. Picard, and W. Wieczerzycki. Web-based business-to-business negotiation support. In Proceedings of < the International Conference on Trends in Electronic Comerce, Hamburg, Germany, 1998.
Z. Choukair. COREMO: A CORBA Real-Time Extension Model. PhD thesis, Orsay U./ENST Bretagne, 1997.
Z. Choukair and al. Contraintes temps-réel des applications multimédia en environnement distribué. Technical report, ENST Bretagne, 1994.
Z. Choukair and al. Distribution architecture overview and representation mechanisms for the amusement project. Technical report, ENST Bretagne, 1998.
E. Churchill and S. Bly. Virtual envirnments at work: Ongoing use of mud’s in the workplace. In Proceedings of WACC’99, ACM Press, 1999.
F. Cosquer, P. Antunes, and P. Veríssimo. Enhancing dependability of cooperative application in partitionable environments. In Proceedings of the 2nd European Dependable Computing Conference, Taormina, Italy, October 1996.
B. Damers. Avatars! Peachpit Press, 1998.
DASCo. Development of Distributed Applications with Separation of Concerns Project. DASCo Home Page URL: http://www.esw.inesc.pt/~ars/dasco.
A. Diaz, B. Groth, and R. Melster. ’score’-the virtual museum, development of a distributed, object oriented system for 3d real-time visualization. In Proceedings of the InternationalWorkshop on Communication-Based Systems, pages 137–146, Berlin, Germany, October 1995. IEEE Computer Society Press. Technical Report 1998-15.
A. Díaz and R. Melster. Designing virtual WWW environments: Flexible design for supporting dynamic behavior. In First ICSE Workshop on Web Engineering, May 1999.
J.L. Diez and al. Virtualarch: A distributed virtual reality platform. Master’s thesis, ENST Bretagne, 1998.
P. Dourish and M. Chalmers. Running out of space: Models of information. HCI’94, 1994.
A. Downing, I. Greenberg, and J. Peha. Oscar: A system for weak-consistency replication. In Proceedings of the Workshop on the Management of Replicate Data, pages 26–30, Houston-USA, November 1990. IEEE.
P. Spellman et al. Collaborative virtual workspace. In Proceedings of Group’97 ACM SIGGROUP, pages 197–203, 1997.
V. O’Day et al. Moving practice: From classrooms to moo rooms. Journal of Collaborative Computing, 7(1-2), 1998.
S. Evans. Building blocks of text-based virtual environments. Technical report, Computer Science University, University of Virginia, April 1993.
E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley, 1994.
T. Goncalves and A.R. Silva. Passive Replicator: A Design Pattern for Object Replication. In The 2 nd European Conference on Pattern Languages of Programming, EuroPLoP’ 97, pages 165–178, Kloster Irsee, Germany. Siemens Technical Report 120/SW1/FB, 1997, July 1997.
G. Gray and D. Cheriton. Leases: An efficient fault-tolerant mechanism for distributed file cache consistency. In Proc. 12th ACM Symposium on Operating Systems Principles, pages 202–210, Litch field Park, Arizona, December 1989.
M. Haahr. Implementation and Evaluation of Scalability Techniques in the ECO Model. Master’s thesis, Department of Computer Science, University of Copenhagen, Denmark, August 1998.
C. Haynes and J.R. Holmevik. High wired: On the design, use, and theory of educational MOOs. University of Michigan Press, 1998.
R. Hayton, J. Bacon, J. Bates, and K. Moody. Using Events to Build Large Scale Distributed Applications. In Proceedings of the Seventh ACM SIGOPS European Workshop, pages 9–16. Association for Computing Machinery, September 1996.
J. Heidemen, T. Page, R. Guy, and G. Popek. Primarily disconnected operation: Experiences with ficus. In Proceedings of the Second Workshop on the Management of Replicated Data, pages 2–5, Monterey, California, November 1992. IEEE.
L. Lamport and al. Time, clocks and the ordering of events in a distributed system. ACM, 21(7), 1978.
M. Mateas and S. Lewis. A moo-based virtual training environment. Journal of Computer-Mediated Communication, 2(3), 1996.
K. O’Connell. System Support for Multi-User Distributed Virtual Worlds. PhD thesis, Trinity College, Department of Computer Science, Dublin, Ireland, October 1997.
A. Ohnishi. Card: an environment for software requirements definition. In Proc. 2nd Asia Pacific Software Engineering Conference (APSEC’95), pages 420–429, December 1995.
A. Ohnishi. Visual software requirements definition environment. In Proc. IEEE 21st Compsac, pages 624–629, August 1997.
S.J. Powers, M.R. Hinds, and J. Morphett. Distributed entertainment environment. In BT Technology Journal Vol 15 No 4. British Telecommunications, October 1997.
M. Prieto and P. Victory. Subjective object behavior. Object Expert, 2(3), 1997.
K. Ramamritham and al. Efficient scheduling algorithms for real-time multiprocessor systems. IEEE Transactions on Parallel and Distributed Systems, 1990.
M. Raynal. Distributed Algorithms and Protocols. John Wiley, 1988.
M. Resnik, editor. Turtles, termites and Traffic jamps. Exploration in Massively Parallel Microworlds. MIT Press, 1994.
F.A. Rosa and A.R. Silva. Functionality and Partitioning Configuration: Design Patterns and Framework. In IEEE Fourth International Conference on Configurable Distributed Systems, pages 79–89, Annapolis, Maryland, USA, May 1998.
Roseman, M. Greenberg, and S. TeamRooms. Network places for collaboration. In Proceedings of CSCW’96, pages 325–333, 1996.
A.R. Silva, J. Pereira, and J.A. Marques. Object Recovery. In R. Martin, D. Riehle, and F. Buschman, editors, Pattern Languages of Program Design 3, chapter 15, pages 261–276. Addison-Wesley, 1997.
A.R. Silva, J. Pereira, and J.A. Marques. Object Synchronizer. In Neil Harrison, Brian Foote, and Hans Rohnert, editors, Pattern Languages of Program Design 4, chapter 8. Addison-Wesley, 1999.
A.R. Silva, F.A. Rosa, and T. Goncalves. Distributed Proxy: A Design Pattern for Distributed Object Communication. In The 4 th Conference on Pattern Languages of Programming, PLoP’ 97(Washington University technical report #WUCS-97-34), Allerton Park, Illinois, September 1997.
A.R. Silva, P. Sousa, and M. Antunes. Naming: Design Pattern and Framework. In IEEE 22nd Annual International Computer Software and Applications Conference, pages 316–323, Vienna, Austria, August 1998.
Antóonio Rito Silva. Development and Extension of a Three-Layered Framework. In Saba Zamir, editor, Handbook of Object Technology, chapter 27. New York, CRC Press, 1998.
S Singhal and al. Networked virtual environments. ACM press, January 98.
D. Snowdon and al. A review of distributed architectures for networked virtual reality. Virtual Reality Press, 2(1):155–175, 1996.
G. Starovic, V. Cahill, and B. Tangney. An Event Based Object Model for Distributed Programming. In J. Murphy and B. Stone, editors, Proceedings of the 1995 International Conference on Object Oriented Information Systems, pages 72–86, London, December 1995. Dublin City University, Ireland, Springer-Verlag.
I. Tomek and R. Giles. Virtual environments for work, study, and leisure. To be published, 1999.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 1999 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Tomek, I. et al. (1999). Multi-user Object-Oriented Environments. In: Moreira, A. (eds) Object-Oriented Technology ECOOP’99 Workshop Reader. ECOOP 1999. Lecture Notes in Computer Science, vol 1743. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-46589-8_5
Download citation
DOI: https://doi.org/10.1007/3-540-46589-8_5
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-66954-8
Online ISBN: 978-3-540-46589-8
eBook Packages: Springer Book Archive