Modeling of Component Environment in Presence of Callbacks and Autonomous Activities

  • Pavel Parizek
  • Frantisek Plasil
Part of the Lecture Notes in Business Information Processing book series (LNBIP, volume 11)

Abstract

A popular approach to compositional verification of component-based applications is based on the assume-guarantee paradigm, where an assumption models behavior of an environment for each component. Real-life component applications often involve complex interaction patterns like callbacks and autonomous activities, which have to be considered by the model of environment’s behavior. In general, such patterns can be properly modeled only by a formalism that (i) supports independent atomic events for method invocation and return from a method and (ii) allows to specify explicit interleaving of events on component’s provided and required interfaces - the formalism of behavior protocols satisfies these requirements. This paper attempts to answer the question whether the model involving only events on provided interfaces (calling protocol) could be valid under certain constraints on component behavior. The key contribution are the constraints on interleaving of events related to callbacks and autonomous activities, which are expressed via syntactical patterns, and evaluation of the proposed constraints on real-life component applications.

Keywords

Assume-guarantee reasoning behavior protocols modeling of environment behavior callbacks autonomous activities 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Adamek, J., Bures, T., Jezek, P., Kofron, J., Mencl, V., Parizek, P., Plasil, F.: Component Reliability Extensions for Fractal Component Model (2006), http://kraken.cs.cas.cz/ft/public/public_index.phtml
  2. 2.
    Ball, T., Bounimova, E., Cook, B., Levin, V., Lichtenberg, J., McGarvey, C., Ondrusek, B., Rajamani, S.K., Ustuner, A.: Thorough Static Analysis of Device Drivers. In: Proceedings of EuroSys 2006. ACM Press (2006)Google Scholar
  3. 3.
    Bruneton, E., Coupaye, T., Leclercq, M., Quema, V., Stefani, J.B.: The FRACTAL component model and its support in Java. Softw. Pract. Exper. 36(11-12) (2006)Google Scholar
  4. 4.
    Bures, T., Hnetynka, P., Plasil, F.: SOFA 2.0: Balancing Advanced Features in a Hierarchical Component Model. In: Proceedings of SERA 2006. IEEE CS (2006)Google Scholar
  5. 5.
    Brim, L., Cerna, I., Varekova, P., Zimmerova, B.: Component-interaction Automata as a Verification-oriented Component-based System Specification. In: Proceedings of SAVCBS 2005. ACM Press (2005)Google Scholar
  6. 6.
    Clarke, E.M., Long, D.E., McMillan, K.L.: Compositional Model Checking. In: Proceedings of LICS 1989. IEEE CS (1989)Google Scholar
  7. 7.
    Cobleigh, J.M., Giannakopoulou, D., Pasareanu, C.S.: Learning Assumptions for Compositional Verification. In: Garavel, H., Hatcliff, J. (eds.) ETAPS 2003 and TACAS 2003. LNCS. vol. 2619. Springer, Heidelberg (2003)Google Scholar
  8. 8.
  9. 9.
    de Alfaro, L., Henzinger, T.A.: Interface Automata. In: Proceedings of 8th European Software Engineering Conference. ACM Press (2001)Google Scholar
  10. 10.
    Giannakopoulou, D., Pasareanu, C.S., Cobleigh, J.M.: Assume-guarantee Verification of Source Code with Design-Level Assumptions. In: Proceedings of 26th International Conference on Software Engineering (ICSE) (2004)Google Scholar
  11. 11.
    Mach, M., Plasil, F., Kofron, J.: Behavior Protocol Verification: Fighting State Explosion. International Journal of Computer and Information Science 6 (2005)Google Scholar
  12. 12.
    Ostroff, J.: Composition and Refinement of Discrete Real-Time Systems. ACM Transactions on Software Engineering and Methodology 8(1) (1999)Google Scholar
  13. 13.
    Parizek, P.: Environment Generator for Java PathFinder, http://dsrg.mff.cuni.cz/projects/envgen
  14. 14.
    Parizek, P., Plasil, F.: Specification and Generation of Environment for Model Checking of Software Components. In: Proceedings of FESCA 2006. ENTCS, vol. 176(2) (2006)Google Scholar
  15. 15.
    Parizek, P., Plasil, F.: Modeling Environment for Component Model Checking from Hierarchical Architecture. In: Proceedings of FACS 2006, ENTCS, vol. 182 (2006)Google Scholar
  16. 16.
    Parizek, P., Plasil, F.: Partial Verification of Software Components: Heuristics for Environment Construction. In: Proc. of 33rd EUROMICRO SEAA. IEEE CS (2007)Google Scholar
  17. 17.
    Parizek, P., Plasil, F., Kofron, J.: Model Checking of Software Components: Combining Java PathFinder and Behavior Protocol Model Checker. In: Proceedings of SEW 2006. IEEE CS (2006)Google Scholar
  18. 18.
    Pasareanu, C.S., Dwyer, M., Huth, M.: Assume-guarantee model checking of software: A comparative case study. In: Dams, D.R., Gerth, R., Leue, S., Massink, M. (eds.) SPIN 1999. LNCS. vol. 1680. Springer, Heidelberg (1999)Google Scholar
  19. 19.
    Plasil, F., Visnovsky, S.: Behavior Protocols for Software Components. IEEE Transactions on Software Engineering 28(11) (2002)Google Scholar
  20. 20.
    Tkachuk, O., Dwyer, M.B., Pasareanu, C.S.: Automated Environment Generation for Software Model Checking. In: Proceedings of ASE 2003, IEEE CS (2003)Google Scholar
  21. 21.
    Visser, W., Havelund, K., Brat, G., Park, S., Lerda, F.: Model Checking Programs. Automated Software Engineering Journal 10(2) (2003)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Pavel Parizek
    • 1
  • Frantisek Plasil
    • 1
    • 2
  1. 1.Faculty of Mathematics and Physics, Department of Software Engineering, Distributed Systems Research Group 
  2. 2.Academy of Sciences of the Czech Republic, Institute of Computer Science 

Personalised recommendations