Skip to main content

Compatible Component Upgrades Through Smart Component Swapping

  • Conference paper
Book cover Architecting Systems with Trustworthy Components

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3938))

Abstract

Emerging component-based software development architectures promise better re-use of software components, greater flexibility, scalability and higher quality of services. But like any other piece of software too, software components are hardly perfect, when being created. Problems and bugs have to be fixed and new features need to be added.

This paper will give an introduction to the problem of component evolution and the syntactical incompatibilities which result during necessary multi component upgrades. The authors present an approach for the detection of such incompatibilities between multiple generations of component revisions basing on a formal interface model. The main concern of the paper will be the automated reconfiguration of component based software systems by intelligent swapping of component revisions to find conflict free system states.

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. Zwintzscher, O.: Komponentenbasierte & generative Softwareentwicklung - Generierung komponentenbasierter Software aus erweiterten UML - Modellen, Ph.D. dissertation, Ruhr-Universität-Bochum (2003) (in German).

    Google Scholar 

  2. Sun Microsystems, JavaBeans API specification, Tech. Rep. (August 1997) (Last visited: 04/2004), Online available: http://java.sun.com/products/javabeans/

  3. Shannon, B.: Java 2 platform enterprise edition specification, Sun Microsystems, Tech. Rep. v1.4 (November 2003) (Last visited: 04/2004), Online available: http://java.sun.com/j2ee/index.jsp

  4. Object Management Group, Inc., Common object request broker architecture: Core specification, Tech. Rep. Version 3.0.2 - Editorial update (December 2002) (last visited: 03/2004), Online available: http://www.omg.org/technology/documents/formal/corba_iiop.htm

  5. ECMA, Standard ecma-335 - common language infrastructure (cli), Tech. Rep. (December 2002) (last visited: 10/2004), Online available: http://www.ecma-international.org/publications/standards/Ecma-335.htm

  6. Hamilton, G., Radia, S.: Using interface inheritance to address problems in system software evolution. ACM SIGPLAN Notices 29(8), 119–128 (1994)

    Article  Google Scholar 

  7. Rakic, M., Medvidovic, N.: Increasing the confidence in off-the-shelf components: a software connector-based approach. In: Proceedings of the 2001 symposium on Software reusability, Toronto, Ontario, Canada, pp. 11–18 (2001)

    Google Scholar 

  8. Zeller, A., Krinke, J.: Open-Source-Programmierwerkzeuge, Versionskontrolle - Konstruktion - Testen - Fehlersuche, 2nd edn. dpunkt.verlag (2003) (in German)

    Google Scholar 

  9. Beugnard, A., Jézéquel, J.-M., Plouzeau, N., Watkins, D.: Making components contract aware. IEEE software, 38–45 (1999)

    Google Scholar 

  10. Conradi, R., Westfechtel, B.: Version models for software configuration management. ACM Computing Surveys 30(2), 232–282 (1998)

    Article  Google Scholar 

  11. Szyperski, C.: Component Software: Beyond Object-Oriented Programming, 2nd edn. Addison-Wesley, Reading (2002)

    MATH  Google Scholar 

  12. Siedersleben, J.: Moderne Software Architektur. Dpunkt Verlag (2004) (in German)

    Google Scholar 

  13. Abrial, J.-R.: The B-book: assigning programs to meanings. Cambridge University Press, New York (1996)

    Book  MATH  Google Scholar 

  14. Möhrke, C.: PHP PEAR - Anwendung und Entwicklung - PEAR und PECL zur PHP-Programmierung nutzen. Galileo Press (2005) (in German)

    Google Scholar 

  15. Englander, R.: Developing Java beans. O’Reilly & Associates, Inc., Sebastopol, CA, USA (1997)

    MATH  Google Scholar 

  16. Stuckenholz, A.: Softwarekomponenten und ihre Update-Zyklen: Eine Marktanalyse. Praxis der Information und Kommunikation (to appear, 2006)

    Google Scholar 

  17. McCamant, S., Ernst, M.D.: Early identification of incompatibilities in multi-component upgrades. In: Proceedings of the 10th European Software Engineering Conference and the 11th ACM SIGSOFT Symposium on the Foundations of Software Engineering, Helsinki, Finland, June 14–18, pp. 287–296 (2003)

    Google Scholar 

  18. Große-Rhode, M., Kutsche, R.-D., Bübl, F.: Concepts for the evolution of component based software systems. Fraunhofer ISST, Tech. Rep. (2000)

    Google Scholar 

  19. Cook, J.E., Dage, J.A.: Highly reliable upgrading of components. In: International Conference on Software Engineering, Los Angeles, California, United States, pp. 203–212 (1999)

    Google Scholar 

  20. Eisenbach, S., Jurisic, V., Sadler, C.: Managing the evolution of .NET programs. In: 6th IFIP International Conference on Formal Methods for Open Object-based Distributed Systems, FMOODS 2003 (November 2003)

    Google Scholar 

  21. Jeckle, M., Rupp, C., Hahn, J., Zengler, B., Queins, S.: UML2 glasklar. Carl Hanser, München (2004) (in German)

    Google Scholar 

  22. Knuth, D.E.: The Art of Computer Programming. Addison-Wesley Professional, Reading (1998)

    MATH  Google Scholar 

  23. Brada, P.: Specification-based component substitutability and revision identification. Ph.D. dissertation, Charles University in Prague (August 2003)

    Google Scholar 

  24. Visnovsky, S.: Checking semantic compatibility of sofa/dcup components, Master’s thesis, Charles University in Prague, Prague (1999)

    Google Scholar 

  25. Jackson, I., Schwarz, C.:Debian policy manual (1998) (last visited: 12/2005), Online available: http://www.debian.org/doc/debian-policy/

  26. Bailey, E.C.: Maximum RPM. Sams (1997)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2006 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Stuckenholz, A., Zwintzscher, O. (2006). Compatible Component Upgrades Through Smart Component Swapping. In: Reussner, R.H., Stafford, J.A., Szyperski, C.A. (eds) Architecting Systems with Trustworthy Components. Lecture Notes in Computer Science, vol 3938. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11786160_12

Download citation

  • DOI: https://doi.org/10.1007/11786160_12

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-35800-8

  • Online ISBN: 978-3-540-35833-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics