Abstract
Future middleware platforms will need to be more configurable in order to meet the demands of a wide variety of application domains. Furthermore, we believe that such platforms will also need to be reconfigurable, for example to enable systems to adapt to changes in the underlying systems infrastructure. A number of technologies are emerging to support this level of configurability and re-configurability, most notably middleware platforms based on the concepts of open implementation and reflection. One problem with this general approach is that widespread changes can often be made to the middleware platform, potentially jeopardizing the integrity of the overall system. This paper discusses the role of software architecture in maintaining the overall integrity of the system in such an environment. More specifically, the paper discusses extensions to the Aster framework to support the re-configuration of a reflective (component-based) middleware platform in a constrained manner. The approach is based on i) the formal specification of a range of possible component configurations, ii) the systematic selection of configurations based on a given set of non-functional properties, and iii) the orderly re-configuration between configurations, again based on formally specified rules.
Keywords
- Software Architecture
- Idle State
- Dynamic Reconfiguration
- Architecture Description Language
- Software Architecture Community
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.
Download to read the full chapter text
Chapter PDF
References
Barbacci, M., C. Weinstock, D. Doubleday, M. Gardner, R. Lichota, “DURRA: A Structure Description Language for Developing Distributed Applications”, Software Engineering Journal, pp 83–94, March 1993.
Bidan, C., V. Issarny, “Dealing with Multi-Policy Security in Large Open Distributed Systems”, Proceedings of the 5th European Symposium on Research in Computer Security, pp 51–66, September 1998.
Bjorner N., A. Browne, M. Colon, B. Finkbeiner, Z. Manna, M. Pichora, H.B. Sipma, T.E. Uribe, “STeP: The Stanford Temporal Prover Educational Release”, Stanford University, 1.4-a edition, July 1998.
Blair, G.S., J.B. Stefani, “Open Distributed Processing and Multimedia”, Addison-Wesley, 1997.
Blair, G.S., G. Coulson, P. Robin, M. Papathomas, “An Architecture for Next Generation Middleware”, Proc. IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing (Middleware’98), Springer, 1998.
Blair, G.S., F. Costa, G. Coulson, H. Duran, N. Parlavantzas, F. Delpiano, B. Dumant, F. Horn, J.B. Stefani, “The Design of a Resource-Aware Reflective Middleware Architecture”, Proc. of the 2nd Int. Conference on Meta-Level Architectures and Reflection (Reflection’99), St-Malo, France, Springer-Verlag, LNCS, Vol. 1616, pp 115–134, 1999.
Blair, G.S., A. Amdersen, L. Blair, G. Coulson, “The Role of Reflection in Supporting Dynamic QoS Management Functions”, Proceedings of the IEEE/IFIP International Workshop on Quality of Service (IWQoS’99), London, June 1999.
Costa, F., G.S. Blair, G. Coulson, “Experiments with Reflective Middleware”, Proceedings of the ECOOP’98 Workshop on Reflective Object-Oriented Programming and Systems, ECOOP’98 Workshop Reader, Springer-Verlag, 1998.
Donaldson, D., M. Faupel, R. Hayton, A. Herbert, N. Howarth, A. Kramer, I. MacMillan, S. Waterhouse, “DIMMA-A Multi-media ORB”, Proc. Middleware ‘98, The Low Wood Hotel, Ambleside, England, September 1998.
Dumant, B., F. Horn, F. Dang Tran, J.B. Stefani, “Jonathan: An Open Distributed Processing Environment in Java”, Proc. IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing (Middleware’98), Springer, September 1998.
Edler, M., J. Wei, “Programming Generic Dynamic Reconfiguration for Distributed Applications”, Proceedings of the International Workshop on Configurable Distributed Systems, pp 68–79, March 1992.
Fitzpatrick, T., G.S. Blair, G. Coulson, N. Davies, P. Robin, “Supporting Adaptive Multimedia Applications through Open Bindings”, Proceedings of the 4th International Conference on Configurable Distributed Systems, IEEE, 1998.
Fitzpatrick, T., “Open Multimedia Component Middleware for Adaptive Distributed Applications”, PhD Thesis, Computing Department, Lancaster University, Bailrigg, Lancaster, LA1 4YR, UK, September 1999.
Hayton, R., “FlexiNet Open ORB Framework”, APM Technical Report 2047.01.00, APM Ltd, Poseidon House, Castle Park, Cambridge, UK, 1997.
Hofmeister, C., J. Purtilo, “Dynamic Reconfiguration for Distributed Systems, Adapting Software Modules for Replacement”, Proceedings of the 13th IEEE International Conference on Distributed Computing Systems (ICDCS’93), May 1993.
Issarny, V., C. Bidan, “Aster: A Framework for Sound Customization of Distributed Runtime Systems”, Proceedings of the 16th IEEE International Conference on Distributed Computing Systems (ICDCS’96), May 1996.
Kiczales, G., J. des Rivières, D.G. Bobrow, “The Art of the Metaobject Protocol”, MIT Press, 1991.
Kiczales, G., J. Lamping, A. Mendhekar, C. Maeda, C. V. Lopes, J-M. Loingtier, J. Irwin, “Aspect-Oriented Programming”, Proceedings of the European Conference on Object-Oriented Programming (ECOOP), Finland, Lecture Notes in Computer Science, Vol. 1241, Springer-Verlag, June 1997.
Killijian, M.O., J.C. Ruiz-Garcia, J.C. Fabre, “Using Compile-Time Reflection for Objects’ State Capture”, Proceedings of the 2nd International Conference on Meta-Level Architectures and Reflection (Reflection’99), St-Malo, France, Springer-Verlag, LNCS, Vol. 1616, pp 150–152, 1999.
Kramer, J., J. Magee, “The Evolving Philosophers Problem”, IEEE Transactions on Software Engineering, Vol. 15, No. 1, pp 1293–1306, November 1990.
Ledoux, T., “Implementing Proxy Objects in a Reflective ORB”, Proc. ECOOP’97 Workshop on CORBA: Implementation, Use and Evaluation, Jyväskylä, Finland, 1997.
Li, B. and K. Nahrstedt, “Dynamic Reconfiguration for Complex Multimedia Applications, Proceedings of the IEEE International Conference on Multimedia Computing and Systems (IEEE Multimedia Systems’ 99), Florence, Italy, June 7–11, 1999.
Magee, J., N. Dulay, J. Kramer, “Structuring Parallel and Distributed Systems”, Proc. of the International Workshop on Configurable Distributed Systems, March 1992.
McAffer, J., “Meta-Level Architecture Support for Distributed Objects”, In Proceedings of Reflection 96, G. Kiczales (end), pp 39–62, San Francisco; Also available from Department of Information Science, The University of Tokyo, 1996.
“ADLs and Dynamic Architecture Changes”, Proceedings of the 2nd ACM SIGSOFT International Software Architecture Workshop (ISAW-2), pp 24–27, October 1996.
N. Medvidovic, R. Taylor, “A framework for classifying and comparing architecture description languages”, Proc. of the Joint European Software Engineering-ACM SIGSOFT Symposium on Foundations of Software Engineering, pp 60–76, September 1997.
Okamura, H., Y. Ishikawa, M. Tokoro, “AL-1/d: A Distributed Programming System with Multi-Model Reflection Framework”, Proceedings of the Workshop on New Models for Software Architecture, November 1992.
The Common Object Request Broker: Architecture and Specification versions 3.0., available at http://www.omg.org/.
D. E. Perry, A. L. Wolf, “Foundations for the Study of Software Architecture”, ACM SIGSOFT Software Engineering Notes, 17(4), pp 40–52, October 1992.
Román, M., F. Kon, R. Campbell, “Design and Implementation of Runtime Reflection in Communication Middleware: the dynamicTAO Case”, Proceedings of the ICDCS’99 Workshop on Middleware, Austin, Texas, May–June 1999.
Saridakis, T., V. Issarny, “Developing Dependable Systems Using Software Architecture”, Proceedings of the 1st Working IFIP Conference on Software Architecture, pp 80–104, February 1999.
Schmidt, D.C., R. Bector, D. Levine, S. Mungee, G. Parulkar, “An ORB End System Architecture for Statically Scheduled Real-Time Applications”, Proceedings of the Workshop on Middleware for Real-Time Systems and Services”, IEEE, San Francisco, 1997.
Smith, B.C., “Procedural Reflection in Programming Languages”, PhD Thesis, MIT, Available as MIT Computer Science Technical Report 272, Cambridge, Mass., 1982.
Szyperski, C., “Component Software: Beyond Object-Oriented Programming”, Addison-Wesley, 1998.
Vanegas, R., J. Zinky, J. Loyall, D. Karr, R. Schantz, D. Bakken, “QuO’s Runtime Support for Quality of Service in Distributed Objects”, Proc. IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing (Middleware’98), Springer, September 1998.
Watanabe, T., A. Yonezawa, “Reflection in an Object-Oriented Concurrent Language”, In Proceedings of OOPSLA’88, Vol. 23 of ACM SIGPLAN Notices, pp 306–315, ACM Press, 1988; Also available as Chapter 3 of “Object-Oriented Concurrent Programming”, A. Yonezawa, M. Tokoro (eds.), pp 45–70, MIT Press, 1987.
Zarras, A., V. Issarny, “A Framework for Systematic Synthesis of Transactional Middleware”, Proc. IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing (Middleware’98), pp 257–272, Springer, September 1998.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Blair, G.S., Blair, L., Issarny, V., Tuma, P., Zarras, A. (2000). The Role of Software Architecture in Constraining Adaptation in Component-Based Middleware Platforms. In: Sventek, J., Coulson, G. (eds) Middleware 2000. Middleware 2000. Lecture Notes in Computer Science, vol 1795. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45559-0_9
Download citation
DOI: https://doi.org/10.1007/3-540-45559-0_9
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67352-1
Online ISBN: 978-3-540-45559-2
eBook Packages: Springer Book Archive