MoMIT: Porting a JavaScript Interpreter on a Quarter Coin. Morales, R. and Gu�h�neuc, R. S. Y. Transactions on Software Engineering (TSE), IEEE CS Press, January, 2020. 15 pages.
MoMIT: Porting a JavaScript Interpreter on a Quarter Coin [pdf]Paper  abstract   bibtex   
The Internet of Things (IoT) is a network of physical, connected devices providing services through private networks and the Internet. The devices connect through the Internet to Web servers and other devices. One of the popular programming languages for communicating Web pages and Web apps is JavaScript (JS). Hence, the devices would benefit from JS apps. However, porting JS apps to the many IoT devices, e.g., System-on-a-Chip (SoCs) devices (e.g., Arduino Uno), is challenging because of their limited memory, storage, and CPU capabilities. Also, some devices may lack hardware/software capabilities for running JS apps "as is". Thus, we propose MoMIT, a multiobjective optimization approach to miniaturize JS apps to run on IoT devices. We implement MoMIT using three different search algorithms. We miniaturize a JS interpreter and measure the characteristics of 23 apps before/after applying MoMIT. We find reductions of code size, memory usage, and CPU time of 31%, 56%, and 36%, respectively (medians). We show that MoMIT allows apps to run on up to two additional devices in comparison to the original JS interpreter.
@ARTICLE{Morales20-TSE-MoMITQuarterCoin,
   AUTHOR       = {Rodrigo Morales and Rub�n Saborido Yann-Ga�l Gu�h�neuc},
   JOURNAL      = {Transactions on Software Engineering (TSE)},
   TITLE        = {MoMIT: Porting a JavaScript Interpreter on a Quarter 
      Coin},
   YEAR         = {2020},
   MONTH        = {January},
   NOTE         = {15 pages.},
   OPTNUMBER    = {},
   OPTPAGES     = {},
   OPTVOLUME    = {},
   KEYWORDS     = {Features and requirements, TSE},
   PUBLISHER    = {IEEE CS Press},
   URL          = {http://www.ptidej.net/publications/documents/TSE20.doc.pdf},
   ABSTRACT     = {The Internet of Things (IoT) is a network of physical, 
      connected devices providing services through private networks and the 
      Internet. The devices connect through the Internet to Web servers and 
      other devices. One of the popular programming languages for 
      communicating Web pages and Web apps is JavaScript (JS). Hence, the 
      devices would benefit from JS apps. However, porting JS apps to the 
      many IoT devices, e.g., System-on-a-Chip (SoCs) devices (e.g., 
      Arduino Uno), is challenging because of their limited memory, 
      storage, and CPU capabilities. Also, some devices may lack 
      hardware/software capabilities for running JS apps "as is". Thus, we 
      propose MoMIT, a multiobjective optimization approach to miniaturize 
      JS apps to run on IoT devices. We implement MoMIT using three 
      different search algorithms. We miniaturize a JS interpreter and 
      measure the characteristics of 23 apps before/after applying MoMIT. 
      We find reductions of code size, memory usage, and CPU time of 31%, 
      56%, and 36%, respectively (medians). We show that MoMIT allows apps 
      to run on up to two additional devices in comparison to the original 
      JS interpreter.}
}
Downloads: 0