Advertisement

A Generalised Theory of Interface Automata, Component Compatibility and Error

  • Sascha Fendrich
  • Gerald Lüttgen
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9681)

Abstract

Interface theories allow systems designers to reason about the composability and compatibility of concurrent system components. Such theories often extend both de Alfaro and Henzinger’s Interface Automata and Larsen’s Modal Transition Systems, which leads, however, to several issues that are undesirable in practice: an unintuitive treatment of specified unwanted behaviour, a binary compatibility concept that does not scale to multi-component assemblies, and compatibility guarantees that are insufficient for software product lines.

In this paper we show that communication mismatches are central to all these problems and, thus, the ability to represent such errors semantically is an important feature of an interface theory. Accordingly, we present the error-aware interface theory EMIA, where the above shortcomings are remedied by introducing explicit fatal error states. In addition, we prove via a Galois insertion that EMIA is a conservative generalisation of the established MIA (Modal Interface Automata) theory.

Keywords

Product Family Software Product Line Parallel Composition Galois Connection Assembly Theory 
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.

Notes

Acknowledgements

We are grateful to Ferenc Bujtor, Walter Vogler and the anonymous reviewers for their helpful suggestions.

References

  1. 1.
    de Alfaro, L., Henzinger, T.A.: Interface automata. In: Foundations of Software Engineering (FSE), pp. 109–120. ACM (2001)Google Scholar
  2. 2.
    de Alfaro, L., Henzinger, T.A.: Interface-based design. In: Broy, M., Grünbauer, J., Harel, D., Hoare, T. (eds.) NATO Advanced Study. NATOS, vol. 195, pp. 83–104. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  3. 3.
    Bauer, S.S., David, A., Hennicker, R., Larsen, K.G., Legay, A., Nyman, U., Wąsowski, A.: Moving from specifications to contracts in component-based design. In: de Lara, J., Zisman, A. (eds.) FASE 2012 and ETAPS 2012. LNCS, vol. 7212, pp. 43–58. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  4. 4.
    Bauer, S.S., Mayer, P., Schroeder, A., Hennicker, R.: On weak modal compatibility, refinement, and the MIO workbench. In: Esparza, J., Majumdar, R. (eds.) TACAS 2010. LNCS, vol. 6015, pp. 175–189. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  5. 5.
    Beyer, D., Chakrabarti, A., Henzinger, T.A., Seshia, S.A.: An application of web-service interfaces. In: International Conference on Web Services (ICWS), pp. 831–838. IEEE (2007)Google Scholar
  6. 6.
    Bujtor, F., Fendrich, S., Lüttgen, G., Vogler, W.: Nondeterministic modal interfaces. In: Italiano, G.F., Margaria-Steffen, T., Pokorný, J., Quisquater, J.-J., Wattenhofer, R. (eds.) SOFSEM 2015. LNCS, vol. 8939, pp. 152–163. Springer, Heidelberg (2015)Google Scholar
  7. 7.
    Bujtor, F., Vogler, W.: Error-pruning in interface automata. In: Geffert, V., Preneel, B., Rovan, B., Štuller, J., Tjoa, A.M. (eds.) SOFSEM 2014. LNCS, vol. 8327, pp. 162–173. Springer, Heidelberg (2014)CrossRefGoogle Scholar
  8. 8.
    Caillaud, B.: Mica: a modal interface compositional analysis library (2011). http://www.irisa.fr/s4/tools/mica/. Accessed 2 Dec 2015
  9. 9.
    Chen, T., Chilton, C., Jonsson, B., Kwiatkowska, M.: A compositional specification theory for component behaviours. In: Seidl, H. (ed.) ESOP 2012 and ETAPS 2012. LNCS, vol. 7211, pp. 148–168. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  10. 10.
    Cousot, P., Cousot, R.: Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. In: Principles of Programming Languages (POPL), pp. 238–252. ACM (1977)Google Scholar
  11. 11.
    Emmi, M., Giannakopoulou, D., Păsăreanu, C.S.: Assume-guarantee verification for interface automata. In: Cuellar, J., Sere, K. (eds.) FM 2008. LNCS, vol. 5014, pp. 116–131. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  12. 12.
    Fendrich, S., Lüttgen, G.: A generalised theory of interface automata, component compatibility and error. Technical report, Bamberger Beiträge zur Wirtschaftsinformatik und angewandten Informatik 98, Bamberg University (2016)Google Scholar
  13. 13.
    Gareis, J.: Prototypical integration of the modal interface automata theory in Google Go. Master’s thesis, Bamberg University, Germany (2015)Google Scholar
  14. 14.
    Hennicker, R., Knapp, A.: Moving from interface theories to assembly theories. Acta Informatica 52(2–3), 235–268 (2015)MathSciNetCrossRefzbMATHGoogle Scholar
  15. 15.
    Křetínský, J., Sickert, S.: MoTraS: a tool for modal transition systems and their extensions. In: Van Hung, D., Ogawa, M. (eds.) ATVA 2013. LNCS, vol. 8172, pp. 487–491. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  16. 16.
    Larsen, K.G.: Modal specifications. In: Sifakis, J. (ed.) AVMFSS 1989. LNCS, vol. 407, pp. 232–246. Springer, Heidelberg (1989)CrossRefGoogle Scholar
  17. 17.
    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 and ETAPS 2007. LNCS, vol. 4421, pp. 64–79. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  18. 18.
    Larsen, K.G., Xinxin, L.: Equation solving using modal transition systems. In: Logic in Computer Science (LICS), pp. 108–117. IEEE (1990)Google Scholar
  19. 19.
    Lohstroh, M., Lee, E.A.: An interface theory for the internet of things. In: Calinescu, R., Rumpe, B. (eds.) SEFM 2015. LNCS, vol. 9276, pp. 20–34. Springer, Heidelberg (2015)CrossRefGoogle Scholar
  20. 20.
    Lüttgen, G., Vogler, W., Fendrich, S.: Richer interface automata with optimistic and pessimistic compatibility. Acta Informatica 52(4–5), 305–336 (2015)MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Raclet, J.B., Badouel, E., Benveniste, A., Caillaud, B., Legay, A., Passerone, R.: A modal interface theory for component-based design. Fund. Inform. 108(1–2), 119–149 (2011)MathSciNetzbMATHGoogle Scholar
  22. 22.
    Tripakis, S., Stergiou, C., Broy, M., Lee, E.A.: Error-completion in interface theories. In: Bartocci, E., Ramakrishnan, C.R. (eds.) SPIN 2013. LNCS, vol. 7976, pp. 358–375. Springer, Heidelberg (2013)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  1. 1.Software Technologies Research GroupUniversity of BambergBambergGermany

Personalised recommendations