Offline-provisioning and Synchronization of Content for Mobile Webapps

Tim A. Majchrzak, Timo Hillmann


Despite progress in the development of cross-platform frameworks, today’s apps often are realized either as native apps or as Webapps. The latter are easy to implement and rely on robust and future-proof technologies such as HTML5, Cascading Style Sheets (CSS) and JavaScript. However, Webapps commonly require a stable Internet connection. Recent developments facilitate offline-enabled Webapps. If an app is able to store data locally, it should also be enabled to synchronize with a server backend. We assess current HTML5 storage capabilities and discuss their possibilities along with considerations of mobile computing synchronization strategies. Our work includes the compilation of requirements that Webapps have regarding their offline capabilities. Moreover, we discuss the status quo of offline storage and give an outlook based on a proof-of-concept implementation.


  1. Agrawal, N., Aranya, A., and Ungureanu, C. (2013). Mobile data sync in a blink. In Proc. HotStorage 7813, HotStorage'13, Berkeley, CA, USA. USENIX Association.
  2. Amza, C., Cox, A. L., and Zwaenepoel, W. (2003). Distributed versioning: Consistent replication for scaling back-end databases of dynamic content web sites. In Proc. Middleware 7803, pages 282-304, New York, NY, USA. Springer.
  3. Ananthanarayanan, G., Blagsvedt, S., and Toyama, K. (2006). Oweb: A framework for offline Web browsing.
  4. Apache Cordova. (2014). Retrieved from http://cordova.
  5. Archibald, J. (2012). “Application Cache is a Douchebag”. Retrieved from
  6. “Basic concepts - IndexedDB”. (2013). Retrieved from Basic Concepts Behind IndexedDB
  7. Berjon, R., Faulkner, S., Leithead, T., Doyle Navara, E., O'Connor, E., Pfeiffer, S., and Hickson, I. (2013). Offline Web applications. Retrieved from browsers.html#offline
  8. Bidelman, E. (2010). A Beginner's Guide to Using the Application Cache. Retrieved from en/tutorials/appcache/beginner/
  9. Bidelman, E. (2011). Exploring the FileSystem APIs. Retrieved from file/filesystem/
  10. Cannon, B. and Wohlstadter, E. (2010). Automated object persistence for JavaScript. In Proc. WWW 7810, pages 191-200, New York, NY, USA. ACM.
  11. Charland, A. and Leroux, B. (2011). Mobile application development: Web vs. native. Commun. ACM, 54:49- 53.
  12. Coda File System. (2014). Retrieved from http://www.coda.
  13. Conway, J., Hillegass, A., and Keur, C. (2014). iOS Programming. Big Nerd Ranch, 4th edition.
  14. Dar, S., Franklin, M. J., Jónsson, B. T., Srivastava, D., and Tan, M. (1996). Semantic data caching and replacement. In Proc. VLDB 7896, pages 330-341, San Francisco, CA, USA. Morgan Kaufmann.
  15. Deveria, A. (2014). Can I use ? Retrieved from http://
  16. Felke-Morris, T. (2014). Web Development and Design Foundations with HTML5. Addison-Wesley Professional, 7th edition.
  17. Flanagan, D. (2006). JavaScript. O'Reilly, 5 edition.
  18. Fraser, N. (2009). Differential synchronization. In Proc. 2009 ACM DocEng'09, pages 13-20, New York, NY, USA. Retrieved from writing/sync/eng047-fraser.pdf
  19. Gaubatz, P., Hummer, W., Zdun, U., and Strembeck, M. (2014). Enforcing entailment constraints in offline editing scenarios for real-time collaborative Web documents. In Proc. SAC 7814, pages 735-742, New York, NY, USA. ACM.
  20. Goncalves, E. and Leitao, A. M. (2007). Offline execution in workflow-enabled Web applications. In Proc. QUATIC 7807, pages 204-207, Washington, DC, USA. IEEE CS.
  21. Gonc¸alves, E. E. M. and Leita˜o, A. M. (2009). Using common lisp to prototype offline work in web applications for rich domains. In Proc. 6th Europ. Lisp Workshop, pages 18-27, New York, NY, USA. ACM.
  22. Google Docs. (2015).
  23. Green, I. (2011). Migrating your WebSQL DB to IndexedDB. Retrieved from webdatabase/websql-indexeddb/
  24. Groothuyse, T., Sivasubramanian, S., and Pierre, G. (2007). Globetp: Template-based database replication for scalable Web applications. In Proc. WWW 7807, WWW 7807, pages 301-310, New York, NY, USA. ACM.
  25. Hales, W. (2012). HTML5 and JavaScript Web Apps. O'Reilly.
  26. Heitk ötter, H., Hanschke, S., and Majchrzak, T. A. (2013). Evaluating cross-platform development approaches for mobile applications. In LNBIP, volume 140, pages 120-138. Springer.
  27. Heitk ötter, H., Majchrzak, T. A., and Kuchen, H. (2013). Cross-platform model-driven development of mobile applications with MD2. In Proc. SAC 7813, pages 526- 533.
  28. Heitk ötter, H., Majchrzak, T. A., Ruland, B., and Weber, T. (2013). Evaluating frameworks for creating mobile Web apps. In Proc. WEBIST 13, pages 209-221. SciTePress.
  29. Hickson, I. (2010). Web SQL Database. Retrieved from
  30. Hickson, I. (2013). Web Storage. Retrieved from http://
  31. H öpfner, H., Mansour, E., and Nicklas, D. (2009). Review of Data Management Mechanisms on Mobile Devices. it - information technology, 51(2):79-84.
  32. HTML5. (2014). Retrieved from html5/.
  33. Hurth, D. (2010). JSON Beats XML, or Ajaj vs Ajax. Retrieved from json-beats-xml-or-ajaj-vs-ajax
  34. Kao, Y.-W., Chow, T.-H., and Yuan, S.-M. (2011). Offline Web browsing for mobile devices. J. Web Eng., 10(1):21-47.
  35. Kao, Y.-W., Lin, C., Yang, K.-A., and Yuan, S.-M. (2012). A Web-based, offline-able, and personalized runtime environment for executing applications on mobile devices. Comput. Stand. Interf., 34(1):212-224.
  36. Karthik, R., Patlolla, D. R., Sorokine, A., White, D. A., and Myers, A. T. (2014). Building a secure and featurerich mobile mapping service app using HTML5: Challenges and best practices. In Proc. of the 12th ACM Int. Symp. on MobiWac 7814, MobiWac 7814, pages 115-118, New York, NY, USA. ACM.
  37. König-Ries, B., Türker, C., and Höpfner, H. (2007). Informationsnutzung und -verarbeitung mit mobilen Geräten - Verf ügbarkeit und Konsistenz. Datenbank-Spektrum, 7(23):45-53.
  38. Kovatsch, M., Mayer, S., and Ostermaier, B. (2012). Moving application logic from the firmware to the cloud. In Proc. IMIS 7812, pages 751-756. IEEE.
  39. Kristol, D. and Montulli, L. (1997). Request for comments 2109 - HTTP state management mechanism. Retrieved from
  40. Lam, F., Lam, N., and Wong, R. (2002). Efficient synchronization for mobile XML data. In Proc. CIKM 7802, pages 153-160, New York, NY, USA. ACM.
  41. Lin, Y., Kemme, B., Patino-Martinez, M., and JimenezPeris, R. (2006). Applying database replication to multi-player online games. In Proc. NetGames 7806, New York, NY, USA. ACM.
  42. Lomotey, R. K. and Deters, R. (2014). Mobile-based medical data accessibility in mhealth. In Proc. MOBILECLOUD 7814, pages 91-100, Washington, DC, USA. IEEE CS.
  43. Macedonia, M. (2007). iPhones Target the Tech Elite. Computer, 40:94-95.
  44. Majchrzak, T. A. and Heitkötter, H. (2014). Status quo and best practices of app development in regional companies. In LNBIP, volume 189, pages 189-206. Springer.
  45. Makzan (2014). HTML5 Game Development Hotshot. Packt Publishing.
  46. Marco, F., Gallud, J., Penichet, V., and Winckler, M. (2013). A model-based approach for supporting offline interaction with web sites resilient to interruptions. In Current Trends in Web Engineering, volume 8295 of LNCS, pages 156-171. Springer, Heidelberg, Germany.
  47. Mednieks, Z., Dornin, L., Meike, G. B., and Nakamura, M. (2012). Programming Android. O'Reilly.
  48. Narasimhan, P. (2014). IndexedDB polyfill over WebSql. Retrieved from
  49. Ohrt, J. and Turau, V. (2012). Cross-platform development tools for smartphone applications. IEEE Computer, 45(9):72-79.
  50. Powell, A. (2012). db.js. Retrieved from http://aaronpowell.
  51. Quilligan, A. (2013). HTML5 Vs. Native Mobile Apps: Myths and Misconceptions. Retrieved from http://
  52. Ranganathan, A. and Sicking, J. (2013). File API.
  53. Rodriguez, A. (2008). RESTful Web services: The basics. Retrieved from webservices/library/ws-restful/
  54. Roth, G. (2009). RESTful HTTP in practice. Retrieved from
  55. Satyanarayanan, M. (1996). Fundamental challenges in mobile computing. In Proc. PODC 7896, pages 1-7, New York, NY, USA. ACM.
  56. Sharp, R. (2010). What is a Polyfill? Retrieved from
  57. Shrestha, S., Moore, J., and Nocera, J. A. (2011). Opensource platform: Exploring the opportunities for offline mobile learning. In Proc. MobileHCI 7811, pages 653- 658, New York, NY, USA. ACM.
  58. Song, J., Yu, G., Wang, D., and Nie, T. (2006). Offline web client: Approach, design and implementation based on web system. In Proc. WISE 7806, pages 308-314, Berlin, Heidelberg, Germany. Springer.
  59. Takada, M. (2012). Modern Web applications: an overview. Retrieved from goal.html
  60. TodoMVC. (2014). Retrieved from
  61. Uhrhane, E. (2012). File API: Directories and System. Retrieved from
  62. Vora, A., Tari, Z., and Bertok, P. (2004). An hoarding approach for supporting disconnected write operations in mobile environments. In Proc. SRDS 7804, pages 276-288, Washington, DC, USA. IEEE CS.
  63. Weeks, M. (2014). Creating a web-based, 2-D action game in JavaScript with HTML5. In Proceedings of the 2014 ACM Southeast Regional Conference, ACM SE 7814, pages 7:1-7:6, New York, NY, USA. ACM.
  64. Weikum, G. and Vossen, G. (2001). Transactional Information Systems. Morgan Kaufmann, San Francisco, CA, USA.
  65. West, W. and Pulimood, S. M. (2012). Analysis of privacy and security in HTML5 web storage. J. Comput. Sci. Coll., 27(3):80-87.
  66. Wiesmann, M., Pedone, F., Schiper, A., Kemme, B., and Alonso, G. (2000a). Understanding replication in databases and distributed systems. In Proc. of the 20th ICDCS, Washington, DC, USA. IEEE CS.
  67. Wiesmann, M., Schiper, A., Pedone, F., Kemme, B., and Alonso, G. (2000b). Database replication techniques: A three parameter classification. In Proc. of the 19th IEEE SRDS, Washington, DC, USA. IEEE CS.
  68. Yasuda, K. (2013). Quota Management API. Retrieved from
  69. Zorrilla, M., Martin, A., Sanchez, J. R., Tamayo, I. n., and Olaizola, I. G. (2014). HTML5-based system for interoperable 3D digital home applications. Multimedia Tools Appl., 71(2):533-553.

Paper Citation

in Harvard Style

A. Majchrzak T. and Hillmann T. (2015). Offline-provisioning and Synchronization of Content for Mobile Webapps . In Proceedings of the 11th International Conference on Web Information Systems and Technologies - Volume 1: WEBIST, ISBN 978-989-758-106-9, pages 601-612. DOI: 10.5220/0005423206010612

in Bibtex Style

author={Tim A. Majchrzak and Timo Hillmann},
title={Offline-provisioning and Synchronization of Content for Mobile Webapps},
booktitle={Proceedings of the 11th International Conference on Web Information Systems and Technologies - Volume 1: WEBIST,},

in EndNote Style

JO - Proceedings of the 11th International Conference on Web Information Systems and Technologies - Volume 1: WEBIST,
TI - Offline-provisioning and Synchronization of Content for Mobile Webapps
SN - 978-989-758-106-9
AU - A. Majchrzak T.
AU - Hillmann T.
PY - 2015
SP - 601
EP - 612
DO - 10.5220/0005423206010612