Service Oriented Computing and Applications

, Volume 9, Issue 3–4, pp 229–248 | Cite as

A formalized framework for mobile cloud computing

  • Michele Amoretti
  • Alessandro Grazioli
  • Valerio Senni
  • Francesco Tiezzi
  • Francesco Zanichelli
Special Issue Paper


Mobile Cloud Computing (MCC) is an emerging paradigm to transparently provide support for demanding tasks on resource-constrained mobile devices by relying on the integration with remote cloud services. Research in this field is tackling the multiple conceptual and technical challenges (e.g., how and when to offload) that are hindering the full realization of MCC. The Networked Autonomic Machine (NAM) framework is a tool that supports and facilitates the design networks of hardware and software autonomic entities, providing or consuming services or resources. Such a framework can be applied, in particular, to MCC scenarios. In this paper, we focus on NAM’s features related to the key aspects of MCC, in particular those concerning code mobility capabilities and autonomic offloading strategies. Our first contribution is the definition of a set of high-level actions supporting MCC. The second contribution is the proposal of a formal semantics for those actions, which provides the core NAM features with a precise formal characterization. Thus, the third contribution is the further development of the NAM conceptual framework and, in particular, the partial re-engineering of the related Java middleware. We show the effectiveness of the revised middleware by discussing the implementation of a Global Ambient Intelligence case study.


Mobile cloud computing  Programming abstractions Formal semantics  Middleware design 


  1. 1.
    Amoretti M, Grazioli A, Senni V, Tiezzi F, Zanichelli F (2014) Towards a formal approach to mobile cloud computing. In: Parallel, distributed, and network-based processing (4PAD session), pp 743–750. IEEEGoogle Scholar
  2. 2.
    Amoretti M, Laghi MC, Tassoni F, Zanichelli F (2010) Service migration within the cloud: code mobility in SP2A. In: High performance computing and simulation (HPCS), 2010 international conference on, pp 196–202Google Scholar
  3. 3.
    Amoretti M, Picone M, Zanichelli F (2012) Global ambient intelligence: an autonomic approach. In: Pervasive computing and communications workshops (PERCOM), pp 842–847. IEEEGoogle Scholar
  4. 4.
    Andrei O, Kirchner H (2009) A higher-order graph calculus for autonomic computing. In: Graph theory, computational intelligence and thought, volume 5420 of LNCS, pp 15–26. SpringerGoogle Scholar
  5. 5.
    Banâtre JP, Radenac Y, Fradet P (2004) Chemical specification of autonomic systems. In: Intelligent and adaptive systems and software engineering (IASSE), pp 72–79. ISCAGoogle Scholar
  6. 6.
    Bigus JP, Schlosnagle DA, Pilgrim JR, Mills WN III, Diao Y (2002) ABLE: a toolkit for building multiagent autonomic systems. IBM Syst J 41(3):350–371CrossRefGoogle Scholar
  7. 7.
    Bouchenak S, Hagimont D, Krakowiak S, De Palma N, Boyer F (2002) Experiences implementing efficient java thread serialization, mobility and persistence. In: I.N.R.I.A., Research report no. 4662Google Scholar
  8. 8.
    Cabri G, Leonardi L, Quitadamo R (2006) Enabling java mobile computing on the IBM jikes research virtual machine. In: Principles and practice of programming in java (PPPJ), volume 178 of ACM international conference proceeding series, pp 62–71. ACMGoogle Scholar
  9. 9.
    Carzaniga A, Picco GP, Vigna G (2007) Is code still moving around? Looking back at a decade of code mobility. In: ICSE companion volume, pp 9–20. IEEE Computer SocietyGoogle Scholar
  10. 10.
    Da Silva D (2013) Opportunities for autonomic behavior in mobile cloud computing, 2013. Keynote talk at ICAC’13. Available at
  11. 11.
    Dayal U, Hanson EN, Widom J (1994) Active database systems. In: Modern database systems, pp 434–456. ACMGoogle Scholar
  12. 12.
    De Nicola R, Ferrari GL, Pugliese R (1998) KLAIM: a kernel language for agents interaction and mobility. IEEE Trans Softw Eng 24(5):315–330Google Scholar
  13. 13.
    De Nicola R, Katoen JP, Latella D, Loreti M, Massink M (2007) Model checking mobile stochastic logic. Theor Comput Sci 382(1):42–70Google Scholar
  14. 14.
    De Nicola R, Loreti M, Pugliese R, Tiezzi F (2014) A formal approach to autonomic systems programming: the SCEL language. ACM Trans Auton Adapt Syst (To appear)Google Scholar
  15. 15.
    Dinh HT, Lee C, Niyato D, Wang P (2013) A survey of mobile cloud computing: architecture, applications, and approaches. Wirel Commun Mob Comput 13(18):1587–1611CrossRefGoogle Scholar
  16. 16.
    Fernando N, Loke SW, Rahayu W (2013) Mobile cloud computing: a survey. Future Gener Comput Syst 29(1):84–106CrossRefGoogle Scholar
  17. 17.
    Ferrari GL, Pugliese R, Tuosto E (2000) Calculi for network aware programming. In : Workshop “from objects to agents”: evolutive trends of software systems (WOA), pp 23–28. Pitagora Editrice BolognaGoogle Scholar
  18. 18.
    Gamma E, Helm R, Johnson R, Vlissides J (1995) Design patterns: elements of reusable object-oriented software. Addison-Wesley Longman PublishingGoogle Scholar
  19. 19.
    Gelernter D (1985) Generative communication in Linda. ACM Trans Program Lang Syst 7(1):80–112CrossRefMATHGoogle Scholar
  20. 20.
    Gjondrekaj E, Loreti M, Pugliese R, Tiezzi F (2012) Modeling adaptation with a tuple-based coordination language. In: Symposium on applied computing (SAC), pp 1522–1527. ACMGoogle Scholar
  21. 21.
    Grazioli A, Picone M, Zanichelli F, Amoretti M (2013) Code migration in mobile clouds with the NAM4J middleware. In: Mobile data management (MDM), 2013 IEEE 14th international conference onGoogle Scholar
  22. 22.
    IBM (2005) An architectural blueprint for autonomic computing. Technical report, IBM Corporation, Third editionGoogle Scholar
  23. 23.
    Kaiser G, Parekh J, Gross P, Valetto G (2003) Kinesthetics eXtreme: an external infrastructure for monitoring distributed legacy systems. In: Active middleware services (AMS), pp 22–30. IEEE Computer SocietyGoogle Scholar
  24. 24.
    Kovachev D, Klamma R (2012) Beyond the client-server architectures: a survey of mobile cloud techniques. In: Communications in China workshops (ICCC), pp 20–25. IEEE Computer SocietyGoogle Scholar
  25. 25.
    Kumar K, Lu Y-H (2010) Cloud computing for mobile users: can offloading computation save energy? IEEE Comput 43(4):51–56Google Scholar
  26. 26.
    Loreti M (2010) SAM: stochastic analyser for mobility, 2010. Available at
  27. 27.
    Margheri A, Masi M, Pugliese R, Tiezzi F (2013) A formal software engineering approach to policy-based access control. Technical report, DiSIA, Univ. Firenze, 2013 Available at
  28. 28.
    Melcher B, Mitchell B (2004) Towards an autonomic framework: self-configuring network services and developing autonomic applications. Intel Technol J 8(4):279–290Google Scholar
  29. 29.
    Milner R, Parrow J, Walker D (1992) A calculus of mobile processes, I and II. Inf Comput 100(1):1–40, 41–77Google Scholar
  30. 30.
    Oasis WSRF TC (2006) Web services resource framework (WSRF) v1.2, April 2006.
  31. 31.
    OASIS XACML TC (2013) eXtensible access control markup language (XACML) version 3.0, January 2013.
  32. 32.
    Parekh J, Kaiser G, Gross P, Valetto G (2003) Retrofitting autonomic capabilities onto legacy systems. Tech. Rep. CUCS-026-03, Columbia UniversityGoogle Scholar
  33. 33.
    Stoica I, Morris R, Karger D, Kaashoek MF, Balakrishnan H (2001) Chord: a scalable peer-to-peer lookup service for Internet applications. In: Applications, technologies, architectures, and protocols for computer communications (SIGCOMM), pp 149–160. ACMGoogle Scholar
  34. 34.
    Suri N, Bradshaw JM, Breedy MR, Groth PT, Hill GA, Jeffers R, Mitrovich TS (2000) An overview of the NOMADS mobile agent system. In: ECOOP workshop on mobile object systemsGoogle Scholar
  35. 35.
    Viroli M, Pianini D, Montagna S, Stevenson G (2012) Pervasive ecosystems: a coordination model based on semantic chemistry. In: Symposium on applied computing (SAC), pp 295–302. ACMGoogle Scholar

Copyright information

© Springer-Verlag London 2014

Authors and Affiliations

  • Michele Amoretti
    • 1
  • Alessandro Grazioli
    • 1
  • Valerio Senni
    • 2
  • Francesco Tiezzi
    • 2
  • Francesco Zanichelli
    • 1
  1. 1.Department of Information EngineeringUniversity of ParmaParmaItaly
  2. 2.IMT Advanced Studies LuccaLuccaItaly

Personalised recommendations