Using separation and composition of concerns to build multiuser virtual environments

Developing multiuser virtual environments (MUVE) is a very complex task since it involves several engineering domain aspects such as virtual reality, cooperative work and distributed systems. Furthermore, existing technologies like graphics capabilities, processing power and network bandwidth, are permanently evolving. For MUVE systems to be successfully developed, they must not only deal with all the different aspects that are inherent to these systems but also have the ability to deal with the continuous technology and requirements evolution. To cope with these problems, a software engineering separation of concerns approach is proposed. Concerns are identified for each of the different aspects of MUVEs. To obtain the necessary flexibility, each one of the concerns should abstract its possible variations in order to support the future system evolution. Moreover it is shown how concerns composition has the necessary expressive power to build multiuser virtual environments.

[1]  Wolfgang Broll,et al.  Distributed virtual reality for everyone-a framework for networked VR on the Internet , 1997, Proceedings of IEEE 1997 Annual International Symposium on Virtual Reality.

[2]  Steve Benford,et al.  A Spatial Model of Interaction in Large Virtual Environments , 1993, ECSCW.

[3]  David Lorge Parnas,et al.  Some software engineering principles , 2001 .

[4]  Michael Zyda,et al.  Exploiting reality with multicast groups , 1995, IEEE Computer Graphics and Applications.

[5]  Richard C. Waters,et al.  Locales: supporting large multiuser virtual environments , 1996, IEEE Computer Graphics and Applications.

[6]  Emmanuel Frécon,et al.  DIVE: a scaleable network architecture for distributed virtual environments , 1998, Distributed Syst. Eng..

[7]  Gurminder Singh,et al.  NetEffect: a network architecture for large-scale multi-user virtual worlds , 1997, VRST '97.

[8]  Steve Benford,et al.  Boundaries, awareness and interaction in collaborative virtual environments , 1997, Proceedings of IEEE 6th Workshop on Enabling Technologies: Infrastructure for Collaborative Enterprises.

[9]  Thomas A. Funkhouser,et al.  RING: a client-server system for multi-user virtual environments , 1995, I3D '95.

[10]  Chris Greenhalgh,et al.  Extending locales: awareness management in MASSIVE-3 , 2000, Proceedings IEEE Virtual Reality 2000 (Cat. No.00CB37048).

[11]  José Alves Marques,et al.  Development of distributed applications with separation of concerns , 1995, Proceedings 1995 Asia Pacific Software Engineering Conference.