ABSTRACT
Traditionally, extensibility and adaptability in middleware is achieved through thorough design of the problem domain. The key variability points are modeled at design time to allow plugin of new functionality at different points in the system. Unfortunately, it is historically shown that the actual adaptability needs at some point differs from the ones predicted.
We argue that the seams, which are hidden in middleware with seamless design, should be accessible for pervasive computing application developers. It cannot be foreseen which aspects of a seam the domain or application need. We suggest that in addition to modeling the domain variability points the middleware should expose a model of the internal processing mechanisms of the middleware itself. The middleware should support modification of this model. Furthermore, at all places where the middleware achieves the normal seamless use of the domain, the model should be adaptable and adaptations should be absorbed into the middleware.
We present model-based translucency as a middleware construction goal. The supporting arguments are given and examples of use of models in middleware are compared to the requirements for which we argue.
- Balz, M., Striewe, M., and Goedicke, M. Embedding State Machine Models in Object-Oriented Source Code. In Proceedings of the 3rd Workshop on Models@ run. time at MODELS (2008), pp. 6--15.Google Scholar
- Bellavista, P., Corradi, A., and Giannelli, C. The PoSIM middleware for translucent and context-aware integrated management of heterogeneous positioning systems. Computer Communications 31, 6 (2008), 1078--1090. Google ScholarDigital Library
- Benford, S., Crabtree, A., Flintham, M., Drozd, A., Anastasi, R., Paxton, M., Tandavanitj, N., Adams, M., and Row-Farr, J. Can you see me now? ACM Trans. Comput.-Hum. Interact 13, 1 (2006), 100--133. Google ScholarDigital Library
- Blair, G., Coulson, G., Andersen, A., Blair, L., Clarke, M., Costa, F., Duran-Limon, H., Fitzpatrick, T., Johnston, L., Moreira, R., et al. The design and implementation of Open ORB 2. IEEE Distributed Systems Online 2, 6 (2001), 1--40. Google ScholarDigital Library
- Bruneton, E., Coupaye, T., Leclercq, M., Quéma, V., and Stefani, J. The fractal component model and its support in java. Software: Practice and Experience 36, 11--12 (2006), 1257--1284. Google ScholarDigital Library
- Capra, L., Emmerich, W., and Mascolo, C. Reflective middleware solutions for context-aware applications. Metalevel Architectures and Separation of Crosscutting Concerns (2001), 126--133. Google ScholarDigital Library
- Chalmers, M., and Galani, A. Seamful interweaving: heterogeneity in the theory and design of interactive systems. In Proceedings of the Conference on Designing Interactive Systems: Processes, Practices, Methods, and Techniques (2004), ACM, pp. 243--252. Google ScholarDigital Library
- Cheng, S., Garlan, D., Schmerl, B., Sousa, J., Spitnagel, B., and Steenkiste, P. Using architectural style as a basis for system self-repair. In Proceedings of the IFIP 17th World Computer Congress-TC2 Stream/3rd IEEE/IFIP Conference on Software Architecture: System Design, Development and Maintenance (2002), pp. 45--59. Google ScholarDigital Library
- Gjerlufsen, T., Ingstrup, M., and Olsen, J. Mirrors of meaning: Supporting inspectable runtime models. Computer 42, 10 (2009), 61--68. Google ScholarDigital Library
- Graumann, D., Hightower, J., Lara, W., and Borriello, G. Real-world implementation of the location stack: The universal location framework. In Fifth IEEE Workshop on Mobile Computing Systems and Applications, 2003. Proceedings (2003), IEEE Computer Society, pp. 122--128.Google ScholarCross Ref
- Ingstrup, M., and Hansen, K. A declarative approach to architectural reflection. In Software Architecture, 2005. WICSA 2005. 5th Working IEEE/IFIP Conference on (2005), pp. 149--158. Google ScholarDigital Library
- Jensen, J. L., Schougaard, K. R., Kjærgaard, M. B., and Toftkjær, T. Perpos: a translucent positioning middleware supporting adaptation of internal positioning processes. In Middleware '10: Proceedings of the 11th ACM/IFIP/USENIX International Conference on Middleware (2010). Google ScholarDigital Library
- Klues, K., Hackmann, G., Chipara, O., and Lu, C. A component-based architecture for power-efficient media access control in wireless sensor networks. Proceedings of the 5th international conference on Embedded networked sensor systems - SenSys '07 (2007), 59. Google ScholarDigital Library
- Kon, F., Costa, F., Blair, G., and Campbell, R. H. The case for reflective middleware. Communications of the ACM 45, 6 (2002), 33--38. Google ScholarDigital Library
- Sivaharan, T., Blair, G., and Coulson, G. Green: A configurable and re-configurable publish-subscribe middleware for pervasive computing. In On the Move to Meaningful Internet Systems 2005: CoopIS, DOA, and ODBASE, R. Meersman and Z. Tari, Eds., vol. 3760 of Lecture Notes in Computer Science. Springer Berlin/Heidelberg, 2005, pp. 732--749. Google ScholarDigital Library
- Weiser, M. The computer for the 21st century. Scientific American 265, 3 (1991), 94--104.Google ScholarCross Ref
- Welbourne, E., Khoussainova, N., Letchner, J., Li, Y., Balazinska, M., Borriello, G., and Suciu, D. Cascadia: a system for specifying, detecting, and managing RFID events. In Proceedings of the 6th International Conference on Mobile Systems, Applications, and Services (2008), pp. 281--294. Google ScholarDigital Library
- Yau, S. S., Karim, F., Wang, Y., Wang, B., and Gupta, S. K. Reconfigurable context-sensitive middleware for pervasive computing. IEEE Pervasive Computing 1 (2002), 33--40. Google ScholarDigital Library
Index Terms
- Model-based translucency in middleware: supporting seamful development
Recommendations
Towards Real-Time Fault-Tolerant CORBA Middleware
An increasing number of applications are being developed using Distributed Object Computing (DOC) middleware, such as CORBA. Many of these applications require the underlying middleware, operating systems, and networks to provide dependable end-to-end ...
Context-based heterogeneous middleware integration
WMUPS '09: Proceedings of the 2009 Workshop on Middleware for Ubiquitous and Pervasive SystemsThe use of context provision middleware is a promising approach to deal with the low-level functions involved in handling contextual events when building ubiquitous applications. Several middleware are currently available that provide support for ...
Addressing the middleware configuration challenges using model-based techniques
ACM-SE 42: Proceedings of the 42nd annual Southeast regional conferenceComponent middleware, such as J2EE, .Net and CORBA Component Model (CCM) have been increasingly used to develop and deploy large-scale distributed systems in different domains, including defense, enterprise, avionics and industrial process control. The ...
Comments