Faculté des sciences

Distributed virtual worlds : abstract model and design of the MaDViWorld software framework

Fuhrer, Patrik ; Pasquier-Rocha, Jacques (Dir.) ; Savoy, Jacques (Codir.)

Thèse de doctorat : Université de Fribourg, 2004 ; no 1458.

Les mondes virtuels distribués sont des applications multi-utilisateurs fonctionnant sur plusieurs machines reliées par un réseau. Ils vont au-delà du "World Wide Web" traditionnel basé sur les documents car plusieurs utilisateurs, évoluant au sein d'un espace commun et conscients de leur présence mutuelle, peuvent y interagir. L'enseignement à distance, la télemédecine, les jeux... Di più

Aggiungi alla tua lista
    Résumé
    Les mondes virtuels distribués sont des applications multi-utilisateurs fonctionnant sur plusieurs machines reliées par un réseau. Ils vont au-delà du "World Wide Web" traditionnel basé sur les documents car plusieurs utilisateurs, évoluant au sein d'un espace commun et conscients de leur présence mutuelle, peuvent y interagir. L'enseignement à distance, la télemédecine, les jeux d'aventures, les téléconférences, ainsi que les supermarchés, musées ou e-banking virtuels ne sont que quelques exemples du large éventail d'applications possibles de ces mondes. La première contribution de cette thèse dans le domaine des mondes virtuels est la conception d'un modèle abstrait original et général définissant les différentes composantes d'un monde virtuel. Cette approche formelle vise à fournir une base commune à une multitude d'implémentations logicielles possibles. La deuxième contribution principale est la création de MaDViWorld, une implémentation concrète hautement distribuée d'une des instantiations possibles du modèle abstrait. MaDViWorld est un cadre logiciel réutilisable pour le développement de mondes virtuels distribués. Ce cadre logiciel est programmé en Java et repose sur la technologie Jini. Sa principale originalité réside dans sa structure hautement modulaire intégrant une multitude de concepts du génie logiciel documentés avec minutie. MaDViWorld permet la création de pièces d'un monde virtuel sur plusieurs machines, chacune hébergeant une application serveur. Il est alors possible de connecter les pièces entre elles par de simples portes et de les peupler avec des objets actifs. Finalement, des avatars gérés par des applications clientes visitent les pièces et interagissent avec les objets actifs. Cette approche ouvre de prometteuses perspectives pour des applications futures. De plus, le projet MaDViWorld a servi de base pour plusieurs projets d'étudiants présentant ainsi un réel intérêt académique et pédagogique. En outre, le fait d'inclure des personnes externes en tant que programmeurs utilisant et testant le cadre logiciel a été très utile pour l'améliorer et a fortement contribué à sa validation.
    Summary
    Distributed virtual worlds are multi-user applications running on several computers connected by a network. They go beyond the traditional document based World Wide Web since multiple users interact within a shared space and are aware of each other. Distance learning, telemedicine, adventure games, virtual shopping malls, virtual conferencing, virtual museums, virtual e-banking are just some examples in the wide spectrum of applications for distributed virtual worlds. The first contribution of this thesis to the field of virtual worlds is the elaboration of an original and general abstract model defining the different components of a virtual world. This formal approach is intended to provide a common basis for many possible software implementations. The second major contribution is the creation of MaDViWorld, a concrete highly distributed implementation of one of the possible model instantiations. MaDViWorld is an extensible Java and Jini-based software framework supporting distributed virtual worlds. Its main originality is a highly modular structure integrating a lot of carefully documented software engineering concepts. MaDViWorld allows for creating the rooms of a given world on several machines, each running a server application. It is then possible to connect the rooms by way of simple doors and to populate them with active objects. Finally, avatars managed by the client application visit the rooms and interact with the active objects. This approach opens promising perspectives for future applications. The MaDViWorld project further served as a test-bed for many student projects thus presenting a real academic and pedagogical interest. Furthermore, involving external people as programmers using and testing the framework was very useful for its improvement and validation.