Skip to main content

Interfaces and Metainterfaces for Models and Metamodels

  • Conference paper
Model Driven Engineering Languages and Systems (MODELS 2008)

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

Abstract

Evolution and customization of component-based systems require an explicit understanding of component inter-dependencies. Implicit assumptions, poor documentation and hidden dependencies turn even simple changes into challenges. The problem is exacerbated in XML-intensive projects due to the use of soft references and the lack of information hiding. We address this with dependency tracking interface types for models and metamodels. We provide automatic compatibility checks and a heuristic inference procedure for our interfaces, which allows easy and incremental adoption of our technique even in mature projects. We have implemented a prototype and applied it to two large cases: an enterprise resource planning system and a healthcare information system.

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bosch, J.: Design & Use of Software Architectures - Adopting and evolving a product-line approach. Addison-Wesley, Reading (2000)

    Google Scholar 

  2. Hessellund, A., Czarnecki, K., Wasowski, A.: Guided development with multiple domain-specific languages. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 46–60. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  3. Nentwich, C., Emmerich, W., Finkelstein, A.: Static consistency checking for distributed specifications. In: ASE, p. 115. IEEE Computer Society, Los Alamitos (2001)

    Google Scholar 

  4. The Apache Software Foundation: The Open For Business Project (OFBiz) (2008) (May 7th, 2008), http://ofbiz.apache.org/

  5. Health Information Systems Programme (HISP): District Health Information Software (DHIS) (2008) (May 7th, 2008), http://www.hisp.info/

  6. Junker, U.: Configuration. In: Rossi, F., van Beek, P., Walsh, T. (eds.) Handbook of Constraint Programming. Elsevier Science Inc., New York (2006)

    Google Scholar 

  7. Chen, S.: Opening Up Enterprise Software: Why Enterprises are Adopting Open Source Applications (2006), http://www.opensourcestrategies.com/slides/

  8. Valiente, G.: Algorithms on Trees and Graphs. Springer, Heidelberg (2002)

    MATH  Google Scholar 

  9. Alfaro, L., Henzinger, T.A.: Interface theories for component-based design. In: Henzinger, T.A., Kirsch, C.M. (eds.) EMSOFT 2001. LNCS, vol. 2211. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  10. Alfaro, L., Henzinger, T.A., Stoelinga, M.: Timed interfaces. In: Sangiovanni-Vincentelli, A.L., Sifakis, J. (eds.) EMSOFT 2002. LNCS, vol. 2491. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  11. Alfaro, L., Henzinger, T.A.: Interface automata. In: 9th Annual Symposium on Foundations of Software Engineering (FSE), pp. 109–120. ACM Press, New York (2001)

    Google Scholar 

  12. Larsen, K.G., Nyman, U., Wąsowski, A.: Modal I/O automata for interface and product line theories. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  13. Larsen, K.G., Nyman, U., Wąsowski, A.: Interface input/output automata. In: Misra, J., Nipkow, T., Sekerinski, E. (eds.) FM 2006. LNCS, vol. 4085. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  14. Chakrabarti, A., de Alfaro, L., Henzinger, T.A., Stoelinga, M.: Resource interfaces. In: Alur, R., Lee, I. (eds.) EMSOFT 2003. LNCS, vol. 2855. Springer, Heidelberg (2003)

    Google Scholar 

  15. Easwaran, A., Lee, I., Sokolsky, O.: Interface algebra for analysis of hierarchical real-time systems. In: Foundations of Interface Technologies (FIT) (2008)

    Google Scholar 

  16. Boudali, H., Crouzen, P., Haverkort, B.R., Kuntz, M., Stoelinga, M.: Rich interfaces for dependability: Compositional methods for dynamic fault trees and Arcade models. In: Foundations of Interface Technologies (FIT) (2008)

    Google Scholar 

  17. Wright, A.K., Cartwright, R.: A practical soft type system for scheme. In: LISP and Functional Programming, pp. 250–262 (1994)

    Google Scholar 

  18. Thiemann, P.: Towards a type system for analyzing javascript programs. In: Sagiv, M. (ed.) ESOP 2005. LNCS, vol. 3444, pp. 408–422. Springer, Heidelberg (2005)

    Google Scholar 

  19. Hessellund, A., Sestoft, P.: Flow analysis of code customizations. In: Vitek, J. (ed.) ECOOP. LNCS, vol. 5142, pp. 285–308. Springer, Heidelberg (2008)

    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

Hessellund, A., Wąsowski, A. (2008). Interfaces and Metainterfaces for Models and Metamodels. 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_29

Download citation

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

  • 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