Virtual environment architectures: interoperability through software interconnection technology

Virtual reality (VR) is emerging as an important approach to the modeling and simulation of complex systems, but software technology for scientists to build VR-based applications fosters the development of closed applications, each built from scratch. A scientist's ability to merge models and systems, once developed, is solely dependent upon his ability to 'hack' software, since the principles of VR system interconnection are poorly understood and no software engineering guidelines have ever been developed for use in VR applications. We are studying the area of interoperation among VR systems (i.e. the virtual environment) in order to discover essential principles governing their construction and effective use. Our approach focuses upon the control properties of interfaces between VR applications: existing VR applications are being examined in order to expose commonalities, and our abstractions of VR control behavior are being specified in terms of the software bus model of interconnection. This paper presents our vision for virtual environment infrastructure, and describes the current state of our work in progress. There are several direct applications of our VE exploration to collaboration infrastructure. First, some of the VR systems we are using allow collaborative interactions of multiple users. Secondly, our investigations involve combining the Polylith software interconnection technology with Trellis, a multiuser collaborative hypermedia technology.<<ETX>>

[1]  P. David Stotts,et al.  Programmable browsing semantics in Trellis , 1989, Hypertext.

[2]  Mario R. Barbacci,et al.  Developing Applications for Heterogeneous Machine Networks: The Durra Environment , 1989 .

[3]  P. David Stotts,et al.  Temporal hyperprogramming , 1990, J. Vis. Lang. Comput..

[4]  David Notkin,et al.  Gandalf: Software development environments , 1986, IEEE Transactions on Software Engineering.

[5]  Jack C. Wileden,et al.  Specification-level interoperability , 1991, CACM.

[6]  Jeannette M. Wing,et al.  Developing Applications for Heterogeneous Machine Networks: The Durra Network , 1989, Comput. Syst..

[7]  P. David Stotts,et al.  Petri-net-based hypertext: document structure with browsing semantics , 1989, TOIS.

[8]  James M. Purtilo,et al.  An Environment for Developing Fault-Tolerant Software , 1991, IEEE Trans. Software Eng..

[9]  P. David Stotts,et al.  Hyperdocuments as automata: trace-based browsing property verification , 1992, ECHT '92.

[10]  P. David Stotts,et al.  Hypertextual concurrent control of a Lisp Kernel , 1992, J. Vis. Lang. Comput..

[11]  David Lorge Parnas,et al.  Using assertions about traces to write abstract specifications for software modules , 1978, ECI.

[12]  L.M.G. Feijs,et al.  The interface description language: definition and use. , 1990 .

[13]  James M. Purtilo,et al.  Environments for Prototyping Parallel Algorithms , 1988, J. Parallel Distributed Comput..

[14]  D. Perry The Inscape Environment , 1989, 11th International Conference on Software Engineering.

[15]  Michael B. Jones,et al.  Matchmaker: an interface specification language for distributed processing , 1985, POPL.

[16]  James M. Purtilo,et al.  The POLYLITH software bus , 1994, TOPL.

[17]  Richard Furuta,et al.  Modelling and Prototyping Collaborative Software Processes , 1993 .

[18]  E. Clarke,et al.  Automatic Veriication of Nite-state Concurrent Systems Using Temporal-logic Speciications. Acm , 1993 .

[19]  Richard D. Schlichting,et al.  A simple system for constructing distributed, mixed‐language programs , 1988, Softw. Pract. Exp..

[20]  D. Stotts,et al.  MODELING AND PROTOTYPING COLLABORATIVE SOFTWARE PROCESSES P � , 1994 .

[21]  Liuba Shrira,et al.  Promises: linguistic support for efficient asynchronous procedure calls in distributed systems , 1988, PLDI '88.

[22]  Daniel Hoffman,et al.  Trace Specifications: Methodology and Models , 1988, IEEE Trans. Software Eng..

[23]  Morris Sloman,et al.  Constructing Distributed Systems in Conic , 1989, IEEE Trans. Software Eng..

[24]  P. David Stotts,et al.  Browsing Parallel Process Networks , 1990, J. Parallel Distributed Comput..

[25]  Andrew P. Black,et al.  Interconnecting heterogeneous computer systems , 1988, CACM.