Skip to main content

AHL: Model-Driven Engineering of Android Applications with BLE Peripherals

  • Conference paper
  • First Online:
Book cover E-Technologies: Embracing the Internet of Things (MCETECH 2017)

Part of the book series: Lecture Notes in Business Information Processing ((LNBIP,volume 289))

Included in the following conference series:

Abstract

Today, an increasing number of “smart devices” are becoming available to consumers, enabling them to quantify their physical activity and health status and to receive updates from their environment and applications. The preferred method of tethering these devices to the Internet is through the BLE (Bluetooth Low Energy) communication protocol connecting them to special-purpose mobile applications. The efficient development of high-quality applications of this type can present challenges to developers who have to familiarize themselves with a number of new technologies and platform-specific architectural patterns. A combination of domain-specific languages and code-generation techniques is a potential solution to this problem.

In this paper, we present (a) a generic reference architecture for Android BLE-enables applications, and (b) our AHL (Android Health Language), a domain-specific language and a corresponding code-generation framework that enables the easy and rapid development of the core elements of a typical BLE-enabled data-collection application in this architecture. The generated code is functional and does not need any modifications. This model-driven application-construction process relieves developers from the burden of dealing with complex Android concepts and components. Thus, AHL can save time and reduce the cost of Android application development for developers. In this paper, we explain the AHL framework, its models, its underlying DSL, and the methodology we used to design and implement it. We evaluate our work with two functional applications and compare them to the existing ones developed from scratch.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    https://developer.android.com/guide/topics/renderscript/compute.html.

  2. 2.

    http://hipacc-lang.org.

  3. 3.

    http://www.arndaleboard.org/wiki/index.php/Main_Page.

  4. 4.

    http://www.jdom.org/.

  5. 5.

    https://www.bluetooth.com/what-is-bluetooth-technology/bluetooth-technology-basics/low-energy.

  6. 6.

    https://github.com/BoD/android-contentprovider-generator.

  7. 7.

    https://developer.android.com/training/scheduling/alarms.html.

  8. 8.

    http://estimote.com/.

References

  1. Acceleo. https://eclipse.org/acceleo/. Accessed 10 Nov 2016

  2. Atom3 a tool for multi-formalism meta-modelling. http://atom3.cs.mcgill.ca/. Accessed 10 Nov 2016

  3. Azghandi, M.V., Nikolaidis, I., Stroulia, E.: Multi-occupant movement tracking in smart home environments. In: Inclusive Smart Cities and e-Health - 13th International Conference on Smart Homes and Health Telematics, ICOST 2015, Geneva, Switzerland, 10–12 June 2015, Proceedings, pp. 319–324 (2015)

    Google Scholar 

  4. Bazelli, B., Stroulia, E.: WL++: a framework to build cross-platform mobile applications and restful back-ends. IJBPIM 8(1), 1–15 (2017)

    Article  Google Scholar 

  5. De Smedt, P.: Comparing three graphical DSL editors: Atom3, metaedit+ and poseidon for DSLs. Preprint, Submitted to Elsevier, University of Antwerp (2011)

    Google Scholar 

  6. Eclipse modeling framework. http://www.eclipse.org/modeling/emf/. Accessed 10 Nov 2016

  7. Emftext. http://www.emftext.org/index.php/EMFText. Accessed 10 Nov 2016

  8. Graphical modeling project. http://www.eclipse.org/modeling/gmp/. Accessed 10 Nov 2016

  9. Guana, V., Stroulia, E., Nguyen, V.: Building a game engine: a tale of modern model-driven engineering. In: 4th IEEE/ACM International Workshop on Games and Software Engineering, GAS 2015, Florence, Italy, 18 May 2015, pp. 15–21 (2015)

    Google Scholar 

  10. IDC: Smartphone OS market share 2015, 2014, 2013, and 2012. http://www.idc.com/prodserv/smartphone-os-market-share.jsp. Accessed 22 July 2016

  11. Kim, W.Y., Son, H.S., Kim, J.S., Kim, R.Y.C.: Adapting model transformation approach for android smartphone application. In: Kim, T., Adeli, H., Robles, R.J., Balitanas, M. (eds.) ACN 2011. CCIS, vol. 199, pp. 421–429. Springer, Heidelberg (2011). doi:10.1007/978-3-642-23312-8_53

    Chapter  Google Scholar 

  12. Kim, W.Y., Son, H.S., Kim, R.Y.C.: Design of code template for automatic code generation of heterogeneous smartphone application. In: Kim, T., Adeli, H., Robles, R.J., Balitanas, M. (eds.) ACN 2011. CCIS, vol. 199, pp. 292–297. Springer, Heidelberg (2011). doi:10.1007/978-3-642-23312-8_37

    Chapter  Google Scholar 

  13. Lachgar, M., Abdali, A.: Modeling and generating the user interface of mobile devices and web development with DSL. J. Theor. Appl. Inf. Technol. 72(1), 124–132 (2015)

    Google Scholar 

  14. Membarth, R., Reiche, O., Hannig, F., Teich, J.: Code generation for embedded heterogeneous architectures on android. In: Proceedings of the Conference on Design, Automation & Test in Europe, p. 86. European Design and Automation Association (2014)

    Google Scholar 

  15. Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Comput. Surv. (CSUR) 37(4), 316–344 (2005)

    Article  Google Scholar 

  16. Metaedit+ domain-specific modeling tools. http://www.metacase.com/products.html. Accessed 10 Nov 2016

  17. Jetbrains meta programming system. https://www.jetbrains.com/mps/. Accessed 10 Nov 2016

  18. Generator overview mps 3.3 documentation confluence. https://confluence.jetbrains.com/display/MPSD33/Generator+Overview. Accessed 10 Nov 2016

  19. Overview of domain-specific language tools. https://msdn.microsoft.com/en-us/library/bb126327.aspx. Accessed 10 Nov 2016

  20. Parada, A.G., de Brisolara, L.B.: A model driven approach for android applications development. In: 2012 Brazilian Symposium on Computing System Engineering (SBESC), pp. 192–197. IEEE (2012)

    Google Scholar 

  21. Parada, A.G., Siegert, E., de Brisolara, L.B.: Generating Java code from UML class and sequence diagrams. In: 2011 Brazilian Symposium on Computing System Engineering (2011)

    Google Scholar 

  22. Pelechano, V., Albert, M., Muñoz, J., Cetina, C.: Building tools for model driven development. Comparing microsoft DSL tools and eclipse modeling plug-ins. In: DSDM (2006)

    Google Scholar 

  23. Radhakrishnan, M., Misra, A., Balan, R.K., Lee, Y.: Smartphones and BLE services: empirical insights. In: 2015 IEEE 12th International Conference on Mobile Ad Hoc and Sensor Systems (MASS), pp. 226–234. IEEE (2015)

    Google Scholar 

  24. Sabraoui, A., El Koutbi, M., Khriss, I.: GUI code generation for android applications using a MDA approach. In: 2012 International Conference on Complex Systems (ICCS), pp. 1–6. IEEE (2012)

    Google Scholar 

  25. Vlasenko, I., Nikolaidis, I., Stroulia, E.: The smart-condo: optimizing sensor placement for indoor localization. IEEE Trans. Syst. Man Cybern. Syst. 45(3), 436–453 (2015)

    Article  Google Scholar 

  26. Xtend - modernized Java. https://eclipse.org/xtend/index.html. Accessed 10 Nov 2016

  27. Xtext - language engineering made easy! https://eclipse.org/Xtext/. Accessed 10 Nov 2016

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Eleni Stroulia .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Veisi, P., Stroulia, E. (2017). AHL: Model-Driven Engineering of Android Applications with BLE Peripherals. In: Aïmeur, E., Ruhi, U., Weiss, M. (eds) E-Technologies: Embracing the Internet of Things . MCETECH 2017. Lecture Notes in Business Information Processing, vol 289. Springer, Cham. https://doi.org/10.1007/978-3-319-59041-7_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-59041-7_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-59040-0

  • Online ISBN: 978-3-319-59041-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics