Personal and Ubiquitous Computing

, Volume 18, Issue 5, pp 1099–1116 | Cite as

A pluggable middleware architecture for developing context-aware mobile applications

  • Nearchos PaspallisEmail author
  • George A. Papadopoulos
Original Article


The proliferation of powerful smartphone devices provides a great opportunity for context-aware mobile applications becoming mainstream. However, we argue that conventional software development techniques suffer because of the added complexity required for collecting and managing context information. This paper presents a component-based middleware architecture which facilitates the development and deployment of context-aware applications via reusable components. The main contribution of this approach is the combination of a development methodology with the middleware architecture, which together bring significant value to developers of context-aware applications. Further contributions include the following: The methodology utilizes separation of concerns, thus decreasing the developmental cost and improving the productivity. The design and implementation of context-aware applications are also eased via the use of reusable components, called context plug-ins. Finally, the middleware architecture facilitates the deployment and management of the context plug-ins in a resource-aware manner. The proposed methodology and middleware architecture are evaluated both quantitatively and qualitatively.


Context-awareness Middleware Reusability Pluggability Modularity Mobile devices Separation-of-concerns 



The authors acknowledge the partial financial support given to this research by UCLan Cyprus and the EU (6th Framework Programme, contract number 35166).


  1. 1.
    ITU-international telecommunication union (2010) Measuring the information society: the ict development index.
  2. 2.
    Angeles-Pina C (2008) Distribution of context information using the session initiation protocol (SIP). Master of science thesis, KTH Information and Communication TechnologyGoogle Scholar
  3. 3.
    Brown PJ, Bovey JD, Chen X (1997) Context-aware applications: from the laboratory to the marketplace. IEEE Pers Commun 4(5):58–64. doi: 10.1109/98.626984 Google Scholar
  4. 4.
    Conan D, Rouvoy R, Seinturier L (2007) Scalable processing of context information with COSMOS. In: Proceedings of the 7th IFIP international conference on distributed applications and interoperable systems (DAIS’07), vol 4531. Springer, Paphos, pp 210–224Google Scholar
  5. 5.
    Dey AK (2000) Providing architectural support for building context-aware applications. Ph.D. thesis, Georgia Institute of TechnologyGoogle Scholar
  6. 6.
    Dey AK (2001) Understanding and using context. Pers Ubiquitous Comput 5(1):4–7CrossRefGoogle Scholar
  7. 7.
    Dey AK, Abowd GD, Salber D (2001) A conceptual framework and a toolkit for supporting the rapid prototyping of context-aware applications. Hum Comput Interact 16(2):97–166CrossRefGoogle Scholar
  8. 8.
    Floch J, Fra C, Fricke R, Geihs K, Wagner M, Lorenzo J, Soladana E, Mehlhase S, Paspallis N, Rahnama H, Ruiz PA, Scholz U (2012) Playing music building context-aware and self-adaptive mobile applications. Softw Pract Exp J. doi: 10.1002/spe.2116
  9. 9.
    Fra C, Valla M, Paspallis N (2011) High level context query processing: an experience report. In: Proceedings of the 8th IEEE workshop on context modeling and reasoning (CoMoRea’11) in conjunction with the 9th IEEE international conference on pervasive computing and communication (PerCom’11). IEEE Computer Society, Seattle, Washington, USAGoogle Scholar
  10. 10.
    Hallsteinsen S, Geihs K, Paspallis N, Eliassen F, Horn G, Lorenzo J, Mamelli A, Papadopoulos GA (2012) A development framework and methodology for self-adapting applications in ubiquitous computing environments. J Syst Softw 85(12):2840–2859CrossRefGoogle Scholar
  11. 11.
    Henricksen K, Indulska J (2004) A software engineering framework for context-aware pervasive computing. In: Proceedings of the 2nd IEEE annual conference on pervasive computing and communications (PerCom’04), pp 77–86. IEEE Computer Society, Orlando, Florida, USAGoogle Scholar
  12. 12.
    Henricksen K, Indulska J (2006) Developing context-aware pervasive computing applications: models and approach. Pervasive Mob Comput 2(1):37–64CrossRefGoogle Scholar
  13. 13.
    Henricksen K, Indulska J, McFadden T, Balasubramaniam S (2005) Middleware for distributed context-aware systems. In: Proceedings of the 7th international conference on distributed objects and applications (DOA’05), LNCS, vol 3760. Springer, Agia Napa, pp 846–863Google Scholar
  14. 14.
    Henricksen K, Indulska J, Rakotonirainy A (2006) Using context and preferences to implement self-adapting pervasive computing applications. Softw Pract Exp 36(11–12):1307–1330CrossRefGoogle Scholar
  15. 15.
    Hong JI (2005) An architecture for privacy-sensitive ubiquitous computing. PhD thesis, University of California, BerkeleyGoogle Scholar
  16. 16.
    Judd G, Steenkiste P (2003) Providing contextual information to pervasive computing applications. In: Proceedings of the 1st IEEE international conference on pervasive computing and communications. IEEE Computer Society, Dallas-Fort Worth, Texas, USA, p 133Google Scholar
  17. 17.
    Julien C, Roman G (2006) EgoSpaces: facilitating rapid development of context-aware mobile applications. IEEE Trans Softw Eng 32(5):281–298CrossRefGoogle Scholar
  18. 18.
    Kakousis K, Paspallis N, Papadopoulos GA, Ruiz PA (2010) Testing self-adaptive applications with simulation of context events. In: Proceedings of the 3rd DisCoTec workshop on context-aware adaptation mechanisms for pervasive and ubiquitous services (CAMPUS’10) in conjuction with the 10th IFIP international conference on distributed applications and interoperable systems (DAIS), electronic communications, vol 28. EASST, AmsterdamGoogle Scholar
  19. 19.
    Long S, Kooper R, Abowd GD, Atkeson CG (1996) Rapid prototyping of mobile context-aware applications: the cyberguide case study. In: Proceedings of the 2nd annual international conference on mobile computing and networking. ACM, Rye, pp 97–107Google Scholar
  20. 20.
    Paspallis N (2009) Middleware-based development of context-aware applications with reusable components. PhD thesis, University of CyprusGoogle Scholar
  21. 21.
    Paspallis N, Achilleos A, Kakousis K, Papadopoulos GA (2010) Context-aware media player (CaMP): developing context-aware applications with separation of concerns. In: Proceedings of the IEEE Globecom 2010 workshop on ubiquitous computing and networks (UbiCoNet 2010). IEEE Digital Library, Miami, Florida, USA, pp 1–6Google Scholar
  22. 22.
    Paspallis N, Eliassen F, Hallsteinsen S, Papadopoulos GA (2009) Developing self-adaptive mobile applications and services with separation-of-concerns. In: Nitto ED, Sassen A, Zwegers A (eds) At your service: service-oriented computing from an EU perspective. MIT Press, Cambridge, pp 129–158Google Scholar
  23. 23.
    Paspallis N, Papadopoulos GA (2006) An approach for developing adaptive, mobile applications with separation of concerns. In: Proceedings of the 30th annual international computer software and applications conference (COMPSAC ’06), vol 1. IEEE Computer Society Press, Chicago, pp 299–306Google Scholar
  24. 24.
    Paspallis N, Rouvoy R, Barone P, Papadopoulos GA, Eliassen F, Mamelli A (2008) A pluggable and reconfigurable architecture for a context-aware enabling middleware system. In: Proceedings of the 10th international symposium on distributed objects, middleware, and applications (DOA’08), LNCS, vol 5331. Springer, Monterrey, pp 553–570Google Scholar
  25. 25.
    Paymans TF, Lindenberg J, Neerincx M (2004) Usability trade-offs for adaptive user interfaces: ease of use and learnability. In: Proceedings of the 9th international conference on intelligent user interfaces. ACM, Funchal, pp 301–303Google Scholar
  26. 26.
    Reichle R, Wagner M, Khan M, Geihs K, Lorenzo J, Valla M, Fra C, Paspallis N, Papadopoulos GA (2008) A comprehensive context modeling framework for pervasive computing systems. In: Proceedings of the 8th IFIP international conference on distributed applications and interoperable systems (DAIS’08), LNCS, vol 5053. Springer, Oslo, pp 281–295Google Scholar
  27. 27.
    Reichle R, Wagner M, Khan MU, Geihs K, Valla M, Fra C, Paspallis N, Papadopoulos GA (2008) A context query language for pervasive computing environments. In: Proceedings of the 5th IEEE workshop on context modeling and reasoning (CoMoRea’08) in conjunction with the 6th IEEE international conference on pervasive computing and communication (PerCom’08), pp 434–440. IEEE Computer Society, Hong Kong. doi: 10.1109/PERCOM.2008.29
  28. 28.
    Romero JJ (2011) Smartphones: the pocketable pc. IEEE Spectrum. Available online at
  29. 29.
    Rouvoy R, Conan D, Seinturier L (2008) Software architecture patterns for a context-processing middleware framework. IEEE Distrib Syst Online 9(6):1Google Scholar
  30. 30.
    Salber D, Dey AK, Abowd GD (1999) The context toolkit: aiding the development of context-enabled applications. In: Proceedings of the SIGCHI conference on human factors in computing systems. ACM, Pittsburgh, pp 434–441Google Scholar
  31. 31.
    Schilit BN, Adams NI, Want R (1994) Context-aware computing applications. In: Proceedings of the 1st workshop on mobile computing systems and applications (WMCSA’94). IEEE Computer Society, Santa Cruz, CA, pp 85–90Google Scholar
  32. 32.
    Szyperski C (1997) Component software: beyond object-oriented programming. Addison-Wesley ProfessionalGoogle Scholar
  33. 33.
    Want R, Hopper A, Falco V, Gibbons J (1992) The active badge location system. ACM Trans Inf Syst 10(1):91–102CrossRefGoogle Scholar
  34. 34.
    Want R, Schilit B, Adams N, Gold R, Petersen K, Goldberg D, Ellis J, Weiser M (1996) The parctab ubiquitous computing experiment. In: Mobile computing, the springer international series in engineering and computer science, vol. 353. Springer, Berlin, pp 45–101Google Scholar
  35. 35.
    Weiser M (1993) Hot topics: ubiquitous computing. IEEE Comput 26(10):71–72CrossRefGoogle Scholar
  36. 36.
    Yau SS, Karim F, Wang Y, Wang B, Gupta SKS (2002) Reconfigurable context-sensitive middleware for pervasive computing. IEEE Pervasive Comput 1(3):33–40CrossRefGoogle Scholar

Copyright information

© Springer-Verlag London 2013

Authors and Affiliations

  1. 1.UCLan CyprusPylaCyprus
  2. 2.University of CyprusAglantziaCyprus

Personalised recommendations