Skip to main content

A Model-Based Framework for Statically and Dynamically Checking Component Interactions

  • Conference paper

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

Abstract

Building applications by assembling software components requires analyses of Architecture Description (AD) models for checking that component interactions respect the application and runtime context requirements. Most existing interaction model analyses are static: they do not take into account runtime information, e.g., parameter values.

This paper presents a model-based framework that enables architects to both specify component interaction and perform dynamic validation. Our framework analyses AD models to identify partially compatible interactions, which require runtime checking. Then, it instruments the application to reify runtime information for error detection. By using this framework in iterative software design processes, architects can get design feedback, i.e., detected errors, and update the AD models accordingly. Moreover, our solution is generic regarding underlying platforms. This genericity is achieved through the mappings from the generic AD models to platform-specific API calls for constructing the running system.

This work was partially funded by the French ANR TL FAROS project.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   149.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Medvidovic, N., Taylor, R.N.: A classification and comparison framework for software architecture description languages. IEEE Trans. on Software Engineering 26(1) (January 2000)

    Google Scholar 

  2. Hoare, C.: Communicating Sequential Processes. Prentice Hall, Englewood Cliffs (2004)

    Google Scholar 

  3. Magee, J.: Behavioral analysis of software architecture using ltsa. In: Proceedings of the 21st international conference on Software engineering, pp. 634–637. IEEE Computer Society, Los Alamitos (1999)

    Google Scholar 

  4. Collet, P., Rousseau, R.: Efficient Implementation Techniques for Advanced Assertion Languages. RSTI - Série L’Objet (RSTI-Objet) 5(3-4), 417–442 (1999)

    Google Scholar 

  5. Nunziati, S.: Personal health record, www.d-m-p.org/docs/EnglishVersionDMP.pdf

  6. Sriplakich, P., Waignier, G., Le Meur, A.F.: Enabling dynamic co-evolution of models and runtime applications. In: Proceedings of the 1st IEEE International Workshop on Model-Driven Development of Autonomic Systems (MDDAS 2008), Turku, Finland, July 2008. IEEE Computer Society, Los Alamitos (to appear, 2008)

    Google Scholar 

  7. Garlan, D., Monroe, R.T., Wile, D.: Acme: Architectural description of component-based systems. In: Foundations of Component-Based Systems. Cambridge University Press, Cambridge (2000)

    Google Scholar 

  8. Monroe, R.T.: Capturing Software Architecture Design Expertise with Armani (2001)

    Google Scholar 

  9. Dashofy, E.M., der Hoek, A.V., Taylor, R.N.: A highly-extensible, XML-based architecture description language. In: Proceedings of the Working IEEE/IFIP Conference on Software Architecture (WICSA 2001). IEEE Computer Society, Los Alamitos (2001)

    Google Scholar 

  10. OMG: Object Constraint Language (OCL). 2.0 edn. (May 2006)

    Google Scholar 

  11. Allen, F.E.: Control flow analysis. SIGPLAN Not. 5(7), 1–19 (1970)

    Article  Google Scholar 

  12. Russell, N., ter Hofstede, A.H., van der Aalst, W.M., Mulyar, N.: Workflow control-flow patterns: A revised view. BPM Center Report BPM-06-22

    Google Scholar 

  13. OMG: Unified Modeling Language (UML): Superstructure, v2.1.1 (August 2007)

    Google Scholar 

  14. Maxima: a computer algebra system, http://maxima.sourceforge.net

  15. Bruneton, E., Coupaye, T., Leclercq, M., Quéma, V., Stefani, J.B.: An open component model and its support in Java. In: Crnković, I., Stafford, J.A., Schmidt, H.W., Wallnau, K. (eds.) CBSE 2004. LNCS, vol. 3054. Springer, Heidelberg (2004)

    Google Scholar 

  16. OMG: CORBA Component Model, v4.0, formal/06-04-01(April 2006)

    Google Scholar 

  17. Barais, O., Lawall, J., Le Meur, A.F., Duchien, L.: Safe integration of new concerns in a software architecture. In: Proceedings of the 13th Annual IEEE International Conference on Engineering of Computer Based Systems (ECBS 2006). IEEE Computer Society, Los Alamitos (2006)

    Google Scholar 

  18. Kildall, G.: A unified approach to global program optimization. In: 1st Annual ACM SIGACT-SIGPLAN Symposium on Principles of Programming Languages (1973)

    Google Scholar 

  19. Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.M., Irwin, J.: Aspect-oriented programming. In: Akşit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241. Springer, Heidelberg (1997)

    Chapter  Google Scholar 

  20. Pawlak, R.: Spoon: Compile-time annotation processing for middleware. IEEE Distributed Systems Online 7(11) (November 2006)

    Google Scholar 

  21. Batista, T., Joolia, A., Coulson, G.: Managing dynamic reconfiguration in component-based systems. In: Morrison, R., Oquendo, F. (eds.) EWSA 2005. LNCS, vol. 3527, pp. 1–17. Springer, Heidelberg (2005)

    Google Scholar 

  22. Coulson, G., Blair, G., Grace, P., Joolia, A., Lee, K., Ueyama, J.: Opencom v2: A component model for building systems software. In: IASTED Software Engineering and Applications (2004)

    Google Scholar 

  23. Hein, C., Ritter, T., Wagner, M.: System monitoring using constraint checking as part of model based system management. In: International Workshop Models@run.time (2007)

    Google Scholar 

  24. Jung, H., Rubio-Medrano, C.E., Wong, W.E., Cheon, Y.: Architectural Assertions: Checking Architecrural Constraints at Run-Time

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Krzysztof Czarnecki Ileana Ober Jean-Michel Bruel Axel Uhl Markus Völter

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Waignier, G., Sriplakich, P., Le Meur, AF., Duchien, L. (2008). A Model-Based Framework for Statically and Dynamically Checking Component Interactions . In: Czarnecki, K., Ober, I., Bruel, JM., Uhl, A., Völter, M. (eds) Model Driven Engineering Languages and Systems. MODELS 2008. Lecture Notes in Computer Science, vol 5301. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87875-9_27

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-87875-9_27

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-87874-2

  • Online ISBN: 978-3-540-87875-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics