To main content

KevoreeJS: Enabling dynamic software reconfigurations in the Browser


The architecture of classic productivity software are moving from a traditional desktop-based software to a client server architecture hosted in the Cloud. In this context, web browsers behave as application containers that allow users to access a variety of Cloud-based applications and services, such as IDEs, Word processors, Music Collection Managers, etc. As a result, a significant part of these software run in the browser and accesses remote services. A lesson learned from development framework used in distributed applications is the success of pluggable architecture pattern as a core architecture concept, i.e., a Software Architecture that promotes the use of Pluggable Module to dynamically plug. Following this trend, this paper discusses the main challenges to create a component-based platform supporting the development of dynamically adaptable single web page applications. This paper also presents an approach called KevoreeJS based on models@runtime to control browser as component platform which address some of these challenges. We validate this work by presenting the design of a dashboard for sensor based system and highlighting the capacity of KevoreeJS to dynamically choose the placement of code on the server or client side and how KevoreeJS can be used to dynamically install or remove running components.


Academic chapter/article/Conference paper




  • Maxime Tricoire
  • Olivier Barais
  • Manuel Leduc
  • Johann Bourcier
  • Francois Fouquet
  • Gregory Nain
  • Ludovic Mouline
  • Gerson Sunye
  • Brice Morin


  • University of Rennes I
  • Luxembourg
  • University of Nantes
  • SINTEF Digital / Software and Service Innovation






19th International ACM SIGSOFT Symposium on Component-Based Software Engineering (CBSE), 2016, Venice, Italy, 5–8 April 2016




49 - 58

View this publication at Cristin