Skip to main content
Log in

FiVES: an aspect-oriented approach for shared virtual environments in the web

  • Original Article
  • Published:
The Visual Computer Aims and scope Submit manuscript

Abstract

Virtual Environments have become a compelling tool for various applications beyond gaming and Virtual Worlds, for example, for education, collaborative engineering, or simulation and visualization. In the emerging field of smart environments, like Smart Cities and Smart Factories for industry or agriculture, a digital counterpart of a real-world site, driven by hundreds of Internet of Things sensors that emit their data in real-time, is a central part of the application. Maintaining such a large-scale virtual environment and keeping it up-to-date with changing requirements set by connected sensors and services is a challenge. For this, we present FiVES, a server framework that is based on an aspect-oriented architecture to create highly maintainable large-scale virtual environments by avoiding cross-cutting concerns like tangling or scattering of code between modules in resulting applications. We present a fully functional implementation of our system that builds on an extendable and versatile data model, a flexible plugin mechanism, and a transparent yet efficient synchronization layer that is independent of the modules from which applications are assembled.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8

Similar content being viewed by others

Notes

  1. http://secondlife.com/.

  2. http://www.opensimulator.org/.

  3. http://www.realxtend.org.

  4. http://www.ogre3d.org/.

  5. http://clb.demon.fi/knet/.

  6. http://www.unity3d.com.

  7. https://www.unrealengine.com/.

  8. https://github.com/tospie/SINFONI.

  9. https://thrift.apache.org/.

  10. http://www.khronos.org/registry/webgl/specs/latest/.

  11. https://threejs.org/.

  12. https://aframe.io/.

  13. http://www.jboss.org.

References

  1. Lifton, J., Paradiso, J.A.: Dual Reality: Merging the Real and Virtual, pp. 12–28. Springer, Berlin (2010)

    Google Scholar 

  2. Blom, K.J., Beckhaus, S.: On the creation of dynamic, interactive virtual environments. In: IEEE VR 2008 Workshop SEARIS: Software Engineering and Architectures for Interactive Systems (2008)

  3. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C.V., Loingtier, J.-M., Irwin, J.: Aspect-oriented programming. In: Proceedings of the European Conference on Object-Oriented Programming (ECOOP), (Finland). Springer, Berlin (June 1997)

  4. Hof, R.: My virtual life. Bus. Week (2006). https://www.bloomberg.com/news/articles/2006-04-30/my-virtual-life

  5. Alatalo, T.: An entity-component model for extensible virtual worlds. IEEE Internet Comput. 15(5), 30–37 (2011)

    Article  Google Scholar 

  6. Dahl, T., Koskela, T., Hickey, S., Vatjus-Anttila, J.: A virtual world web client utilizing an entity-component model. In: NGMAST, pp. 7–12. IEEE (2013)

  7. Kaplan, J., Yankelovich, N.: Open wonderland: an extensible virtual world architecture. IEEE Internet Comput. 15(5), 38–45 (2011)

    Article  Google Scholar 

  8. Kienzle, J., Verbrugge, C., Kemme, B., Denault, A., Hawker, M.: Mammoth: a massively multiplayer game research framework. In: Proceedings of the 4th International Conference on Foundations of Digital Games, FDG ’09 (New York, NY, USA), pp. 308–315. ACM (2009)

  9. C. Cañas, K. Zhang, B. Kemme, J. Kienzle, and H.-A. Jacobsen, “Publish/subscribe network designs for multiplayer games,” in Proceedings of the 15th International Middleware Conference, Middleware ’14, (New York, NY, USA), pp. 241–252, ACM, 2014

  10. Najaran, M.T., Hu, S., Hutchinson, N.C.: SPEX: scalable spatial publish/subscribe for distributed virtual worlds without borders. In: Multimedia Systems Conference 2014, MMSys ’14, Singapore, March 19–21, 2014, pp. 127–138 (2014)

  11. Aguilera, M.K., Merchant, A., Shah, M., Veitch, A., Karamanolis, C.: Sinfonia: a new paradigm for building scalable distributed systems. In: Proceedings of Twenty-first ACM SIGOPS Symposium on Operating Systems Principles, SOSP ’07 (New York, NY, USA), pp. 159–174. ACM (2007)

  12. Najaran, M.T., Hutchinson, N.C.: Innesto: a searchable key/value store for highly dimensional data. In: Proceedings of the 2013 IEEE International Conference on Cloud Computing Technology and Science-Volume 01, CLOUDCOM ’13 (Washington, DC, USA), pp. 411–420. IEEE Computer Society (2013)

  13. Castro, M., Druschel, P., Kermarrec, A.-M., Rowstron, A.I.T.: Scribe: a large-scale and decentralized application-level multicast infrastructure. IEEE J. Sel. Areas Commun. 20(8), 1489–1499 (2002)

    Article  Google Scholar 

  14. Fayad, M., Pinto, M., Troya, J., Fuentes, L.: Towards an aspect-oriented framework in the design of collaborative virtual environments. In: 8th IEEE Workshop on Future Trends of Distributed Computing Systems, p. 9 (2001)

  15. Valadares, A., Lopes, C.V., Achar, R., Bowman, M.: Cadis: aspect-oriented architecture for collaborative modeling and simulation. In: Proceedings of the 2016 Winter Simulation Conference, WSC ’16 (Piscataway, NJ, USA), pp. 1024–1035. IEEE Press (2016)

  16. Dionisio, J.D.N., Gilbert, R.: 3D virtual worlds and the metaverse: Current status and future possibilities. ACM Comput. Surv. 45, 34:1–34:38 (2013)

    Article  Google Scholar 

  17. Byelozyorov, S., Rubinstein, D., Pegoraro, V., Slusallek, P.: An open modular middleware for interoperable virtual environments. In: Cyberworlds (CW) 2013 International Conference on, pp. 94–100. IEEE (2013)

  18. Nicol, G., Wood, L., Champion, M., Byrne, S.: Document object model (dom) level 3 core specification. W3C Recommendation (2001)

  19. Behr, J., Eschler, P., Jung, Y., Zöllner, M.: X3DOM: a DOM-based HTML5/X3D integration model. In: Proceedings of the 14th International Conference on 3D Web Technology, Web3D ’09 (New York, NY, USA), pp. 127–135. ACM (2009)

  20. Sons, K., Klein, F., Rubinstein, D., Byelozyorov, S., Slusallek, P.: XML3D: interactive 3D graphics for the Web. In: Proceedings of the 15th International Conference on Web 3D Technology, Web3D ’10 (New York, NY, USA), pp. 175–184. ACM (2010)

  21. Klein, F., Spieldenner, T., Sons, K., Slusallek, P.: Configurable instances of 3D models for declarative 3D in the web. In: Proceedings of the Nineteenth International ACM Conference on 3D Web Technologies. ACM International Conference on 3D Web Technology (Web3D-14), 19th, August 8–10, Vancouver, BC, Canada, pp. 71–79. ACM (2014)

  22. Potel, M.: MVP: model-view-presenter the taligent programming model for c++ and java. Taligent Inc, Ottawa (1996)

    Google Scholar 

  23. Gusella, R., Zatti, S.: The accuracy of the clock synchronization achieved by tempo in berkeley unix 4.3bsd. Technical Reports on UCB/CSD-87-337. EECS Department, University of California, Berkeley (Jan 1987)

  24. Liu, H., Bowman, M., Chang, F.: Survey of state melding in virtual worlds. ACM Comput. Surv. 44, 21:1–21:25 (2012)

    Article  Google Scholar 

  25. Claypool, M., Claypool, K.: Latency and player actions in online games. Commun. ACM 49, 40–45 (2006)

    Article  Google Scholar 

  26. Gupta, N., Demers, A.J., Gehrke, J., Unterbrunner, P., White, W.M.: Scalability for virtual worlds. In: Ioannidis, Y.E., Lee, D.L., Ng, R.T. (eds.) ICDE, pp. 1311–1314. IEEE, Piscataway (2009)

    Google Scholar 

  27. Farooq, U., Glauert, J.: Integrating dynamic scalability into the opensimulator framework. Simul. Model. Pract. Theory 72, 118–130 (2017)

    Article  Google Scholar 

  28. Shukla, A., Chaturvedi, S., Simmhan, Y.: Riotbench: a real-time iot benchmark for distributed stream processing platforms. ArXiv preprint arXiv:1701.08530 (2017)

  29. Lake, D., Bowman, M., Liu, H.: Distributed scene graph to enable thousands of interacting users in a virtual environment. In: Proceedings of the 9th Annual Workshop on Network and Systems Support for Games, p. 19. IEEE Press (2010)

  30. W3C: Resource description framework (RDF), W3C Specification (2014). https://www.w3.org/RDF/. Accessed 11 May 2017

Download references

Acknowledgements

The work presented in this paper received funding from the European Union’s project FI-NEXT under Grant Agreement No 732851 and FP7/ICT-FI project FI-CORE under Grant Agreement No 632893, and from the project INVERSIV, funded by the German Ministry of Education and Research (BMBF) under Grant Agreement No 01IW14004.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Torsten Spieldenner.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Spieldenner, T., Byelozyorov, S., Guldner, M. et al. FiVES: an aspect-oriented approach for shared virtual environments in the web. Vis Comput 34, 1269–1282 (2018). https://doi.org/10.1007/s00371-018-1564-0

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00371-018-1564-0

Keywords

Navigation