Skip to main content

Towards the Development of Ubiquitous Middleware Product Lines

  • Conference paper
Software Engineering and Middleware (SEM 2004)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 3437))

Included in the following conference series:

Abstract

Ubiquitous computing is a challenge for the design of middleware. The reasons are resource constraints, mobility, heterogeneity, etc., just to name a few. We argue that such middleware has to be tailored to the application scenario as well as to the target platform. Such tailor-made middleware has to be be built from minimal fine-grained components, and the system structure must be highly configurable, as we will explain. We propose to use the well-known mixin layer approach to build the flexible lightweight middleware envisioned. We show that the thoughtful use of mixin layers is promising in this specific domain and allows to deal with issues such as device heterogeneity and resource constraints. To do so, we present the design and implementation of a middleware and three configurations derived from it. Our evaluation criteria are the number of supported features and the memory footprint. The middleware configurations derived perform well in these respects.

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 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Batory, D., O’Malley, S.: The Design and Implementation of Hierarchical Software Systems with Reusable Components. ACM Transactions on Software Engineering and Methodology 1(4) (1992)

    Google Scholar 

  2. Batory, D., Sarvela, J.N., Rauschmayer, A.: Scaling Step-Wise Refinement. In: Proc. of the 25th Int. Conference on Software Engineering (2003)

    Google Scholar 

  3. Blair, G.S., et al.: Reflection, Self-awareness and Self-healing in OpenORB. In: Proc. of the 1st Workshop on Self-healing Systems (2002)

    Google Scholar 

  4. B. Box et al.: Simple Object Access Protocol 1.1. Technical report, W 3 C (2000), http://www.w3c.org/TR/SOAP

  5. Bracha, G., Cook, W.: Mixin-Based Inheritance. In: Proc. of ECOOP / OOPSLA (1990)

    Google Scholar 

  6. Capra, L., Emmerich, W., Mascolo, C.: CARISMA: Context-Aware Reflective Middleware System for Mobile Applications. IEEE Transactions on Software Engineering 29(10) (2003)

    Google Scholar 

  7. Cardone, R., Batory, D., Lin, C.: Java Layers: Extending Java to Support Component-Based Programming. Technical Report CS-TR-00-11, Computer Sciences Department, University of Texas (2000)

    Google Scholar 

  8. Colyer, A., Clement, A.: Large-scale AOSD for middleware. In: Proc. of the 3rd Int. Conference on Aspect-Oriented Software Development (2004)

    Google Scholar 

  9. Eide., E., et al.: Dynamic CPU Management for Real-Time, Middleware-Based Systems. In: 10th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS 2004), Toronto, Canada (2004)

    Google Scholar 

  10. Engelen, R.A., Gallivan, K.A.: The gSOAP Toolkit for Web Services and Peer-To-Peer Computing Networks. In: Proc. of IEEE CCGrid Conference (2002), http://www.cs.fsu.edu/~engelen/soap.html.

  11. Gill, C., et al.: ORB Middleware Evolution for Networked Embedded Systems. In: Proc. of the 8th Int. Workshop on Object Oriented Real-time Dependable Systems (WORDS 2003), Guadalajara, Mexico (2003)

    Google Scholar 

  12. Grace, P., Blair, G.S., Samuel, S.: ReMMoC: A Reflective Middleware to Support Mobile Client Interoperability. In: Meersman, R., Tari, Z., Schmidt, D.C. (eds.) CoopIS 2003, DOA 2003, and ODBASE 2003. LNCS, vol. 2888, pp. 1170–1187. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  13. Kiczales., G., et al.: Aspect-Oriented Programming. In: Aksit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  14. Kon, F., et al.: Monitoring, Security, and Dynamic Configuration with the dynamicTAO Reflective ORB. In: Coulson, G., Sventek, J. (eds.) Middleware 2000. LNCS, vol. 1795, p. 121. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  15. Ledoux, T.: OpenCorba: A Reflective Open Broker. In: Cointe, P. (ed.) Reflection 1999. LNCS, vol. 1616, p. 197. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  16. McKinnon., A.D., et al.: A Configurable Middleware Framework with Multiple Quality of Service Properties for Small Embedded Systems. In: Proc. of 2nd IEEE Int. Symposium on Network Computing and Applications, Cambridge, MA (2003)

    Google Scholar 

  17. Omohundro, S.M.: The Sather Programming Language. Dr. Dobb’s Journal 18(11) (1993)

    Google Scholar 

  18. Ossher, H., Tarr, P.: Multi-Dimensional Separation of Concerns and The Hyperspace Approach. In: Proc. of the Symposium on Software Architectures and Component Technology: The State of the Art in Software Development (2000)

    Google Scholar 

  19. Parnas, D.L.: Designing Software for Ease of Extension and Contraction. IEEE Transaction on Software Engineering SE-5(2) (1979)

    Google Scholar 

  20. Román, M., Kon, F., Campbell, R.: Reflective Middleware: From Your Desk to Your Hand. IEEE Distributed Systems Online (Special Issue on Reflective Middleware) 2(5) (2001)

    Google Scholar 

  21. Schmidt., D.C., et al.: TAO: A Pattern-Oriented Object Request Broker for Distributed Real-time and Embedded Systems. IEEE Distributed Systems Online 3(2) (2002)

    Google Scholar 

  22. Smaragdakis, Y., Batory, D.: Mixin Layers: An Object-Oriented Implementation Technique for Refinements and Collabroation-Based Designs. ACM Transactions on Software Engineering and Methodology 11(2) (2002)

    Google Scholar 

  23. Stroustrup, B.: The C++ Programming Language. Addison-Wesley, Reading (1997)

    Google Scholar 

  24. Subramonian., V., et al.: Middleware Specialization for Memory-Constrained Networked Embedded Systems. In: 10th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS 2004), Toronto, Canada (2004)

    Google Scholar 

  25. Weiser, M.: The Computer for the 21st Century, Sepetember 1991. Scientific American (1991)

    Google Scholar 

  26. Weiser, M.: Hot Topics: Ubiquitous Computing. IEEE Computer 26(10) (1993)

    Google Scholar 

  27. Zhang, C., Jacobsen, H.-A.: Refactoring Middleware with Aspects. IEEE Transations on Parallel and Distributed Systems 14(11) (2003)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Apel, S., Böhm, K. (2005). Towards the Development of Ubiquitous Middleware Product Lines. In: Gschwind, T., Mascolo, C. (eds) Software Engineering and Middleware. SEM 2004. Lecture Notes in Computer Science, vol 3437. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11407386_11

Download citation

  • DOI: https://doi.org/10.1007/11407386_11

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-25328-0

  • Online ISBN: 978-3-540-31975-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics