Your browser does not support JavaScript!
http://iet.metastore.ingenta.com
1887

Assume-guarantee verification of software components in SOFA 2 framework

Assume-guarantee verification of software components in SOFA 2 framework

For access to this article, please select a purchase option:

Buy article PDF
£12.50
(plus tax if applicable)
Buy Knowledge Pack
10 articles for £75.00
(plus taxes if applicable)

IET members benefit from discounts to all IET publications and free access to E&T Magazine. If you are an IET member, log in to your account and the discounts will automatically be applied.

Learn more about IET membership 

Recommend Title Publication to library

You must fill out fields marked with: *

Librarian details
Name:*
Email:*
Your details
Name:*
Email:*
Department:*
Why are you recommending this title?
Select reason:
 
 
 
 
 
IET Software — Recommend this title to your library

Thank you

Your recommendation has been sent to your librarian.

A key problem in compositional model checking of software systems is that typical model checkers accept only closed systems (runnable programs) and therefore a component cannot be model-checked directly. A typical solution is to create an artificial environment for the component such that its composition forms a runnable program that can be model-checked. Although it is possible to create a universal environment that performs all possible sequences and interleavings of calls of the component's methods, for practical purposes it is sufficient to capture in this way just the use of the component in a particular software system – this idea is expressed by the paradigm of assume-guarantee reasoning. The authors present an approach to assume-guarantee-based verification of software systems in the context of the SOFA 2 component framework. They provide an overview of the approach to the construction of an artificial environment for the verification of SOFA 2 components implemented in Java with the Java PathFinder model checker. They also show the benefits of their approach on results of experiments with a non-trivial software system and discuss its advantages over other approaches with similar goals.

References

    1. 1)
      • E.M. Clarke , O. Grumberg . (1999) Model checking.
    2. 2)
      • COMBAT toolset: http://dsrg.mff.cuni.cz/projects/combat, accessed February 2009.
    3. 3)
      • F. Plasil , S. Visnovsky . Behavior protocols for software components. IEEE Trans. Softw. Eng. , 11 , 1056 - 1076
    4. 4)
      • K.M. Olender , L.J. Osterweil . Cecil: a sequencing constraint language for automatic static analysis generation. IEEE Trans. Softw. Eng. , 3 , 268 - 280
    5. 5)
      • A. Pnueli , K.R. Apt . (1984) In transition from global to modular temporal reasoning about programs, Logics and models of concurrent systems.
    6. 6)
      • Hughes, G., Bultan, T.: `Interface grammars for modular software model checking', Proc. Int. Symp. on Software Testing and Analysis (ISSTA 2007), 2007.
    7. 7)
      • J. Magee , J. Kramer . (1999) Concurrency – state models and Java programs.
    8. 8)
      • Artho, C., Leungwattanakit, W., Hagiya, M., Tanabe, Y.: `Efficient model checking of networked applications', Proc. 46th Int. Conf. on Objects, Components, Models and Patterns, (TOOLS EUROPE 2008), 2008, (LNBIP, 11).
    9. 9)
      • Parizek, P., Plasil, F.: `Modeling of component environment in presence of callbacks and autonomous activities', Proc. 46th Int. Conf. on Object, Components, Models and Patterns (TOOLS EUROPE 2008), 2008, p. 2–21, (LNBIP, 11).
    10. 10)
      • Clarke, E., Long, D., McMillan, K.: `Compositional model checking', Proc. Fourth Annual Symp. on Logic in Computer Science, 1989, p. 353–362.
    11. 11)
      • L. de Alfaro , T.A. Henzinger . Interface automata. ACM SIGSOFT Softw. Eng. Notes , 5 , 109 - 120
    12. 12)
      • Parizek, P., Plasil, F., Kofron, J.: `Model checking of software components: combining java pathfinder and behavior protocol model checker', Proc. 30th IEEE/NASA Software Engineering Workshop (SEW-30), IEEE CS, 2006, p. 133–141.
    13. 13)
      • CoCoME in SOFA: http://dsrg.mff.cuni.cz/projects/cocome/sofa/sofa.tgz, accessed August 2009.
    14. 14)
      • Corbett, J., Dwyer, M.B., Hatcliff, J.: `Bandera: extracting finite-state models from Java source code', Proc. 22nd Int. Conf. on Software Engineering (ICSE 2000), 2000, p. 439–448.
    15. 15)
      • J. Adamek , F. Plasil . Component composition errors and update atomicity: static analysis. J. Softw. Maint. Evol.: Res. Pract. , 5 , 363 - 377
    16. 16)
      • Barlas, E., Bultan, T.: `NetStub: a framework for verification of distributed Java applications', Proc. 22nd Int. Conf. on Automated Software Engineering (ASE 2007), 2007.
    17. 17)
      • Tkachuk, O., Rajan, S.P.: `Application of automated environment generation to commercial software', Proc. Int. Symp. on Software Testing and Analysis (ISSTA 2006), 2006, p. 203–214.
    18. 18)
      • CoCoME: Common Component Modeling Example, http://www.cocome.org, accessed February 2009.
    19. 19)
      • P. Chalin , J.R. Kiniry , G.T. Leavens , E. Poll , F.S. De Boer . (2006) Beyond assertions: advanced specification and verification with JML and ESC/Java2, Formal methods for components and objects (FMCO).
    20. 20)
      • M. Mach , F. Plasil , J. Kofron . Behavior protocol verification: fighting state explosion. Int. J. Comput. Inf. Sci. , 1 , 22 - 30
    21. 21)
      • C. Szyperski . (2003) Component software: beyond object-oriented programming.
    22. 22)
      • T. Bures , P. Hnetynka , F. Plasil . Runtime concepts of hierarchical software components. Int. J. Comput. Inf. Sci. , 454 - 463
    23. 23)
      • T. Bures , M. Decky , P. Hnetynka , A. Rausch . (2008) CoCoME in SOFA, The common component modeling example: comparing software component models.
    24. 24)
      • Anand, S., Pasareanu, C.S., Visser, W.: `JPF-SE: a symbolic execution extension to Java PathFinder', Proc. 13th Int. Conf. on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2007), 2007, (LNCS, 4424).
    25. 25)
      • W. Visser , K. Havelund , G. Brat , S. Park , F. Lerda . Model checking programs. Autom. Softw. Eng. , 2 , 203 - 232
    26. 26)
      • W. Nam , P. Madhusudan , R. Alur . Automatic symbolic compositional verification by learning assumptions. Form. Methods Syst. Des. , 3 , 207 - 234
    27. 27)
      • Parizek, P., Plasil, F.: `Specification and generation of environment for model checking of software components', Proc. Workshop on Formal Foundations of Embedded Software and Component-based Software Architectures (FESCA 2006), ENTCS, 2007, p. 143–154, vol. 176, no. 2.
    28. 28)
      • D.M. Yellin , R.E. Strom . Protocol specifications and component adaptors. ACM Trans. Program. Lang. Syst. (TOPLAS) , 2 , 292 - 333
    29. 29)
      • Giannakopoulou, D., Pasareanu, C.S., Cobleigh, J.M.: `Assume-guarantee verification of source code with design-level assumptions', Proc. 26th Int. Conf. on Software Engineering (ICSE), IEEE CS, 2004, p. 211–220.
    30. 30)
      • SOFA 2 component framework, http://sofa.ow2.org, accessed February 2009.
    31. 31)
      • OSGi Alliance: OSGi Service Platform Release 4, http://www.osgi.org/, accessed August 2009.
    32. 32)
      • Tkachuk, O., Dwyer, M.B., Pasareanu, C.S.: `Automated environment generation for software model checking', Proc. 18th IEEE Int. Conf. on Automated Software Engineering (ASE 2003), IEEE CS, 2003, p. 116–129.
    33. 33)
      • Giannakopoulou, D., Pasareanu, C.S., Barringer, H.: `Assumption generation for software component verification', Proc. 17th IEEE Int. Conf. on Automated Software Engineering (ASE 2002), IEEE CS, 2002, p. 3–12.
    34. 34)
      • Cobleigh, J.M., Giannakopoulou, D., Pasareanu, C.S.: `Learning assumptions for compositional verification', Proc. Ninth Int. Conf. on Tools and Algorithms for the Construction and Analysis of Systems (TACAS 2003), 2003, p. 331–346, (LNCS, 2619).
    35. 35)
      • E. Bruneton , T. Coupaye , M. Leclercq , V. Quema , J.B. Stefani . The FRACTAL component model and its support in Java. Softw. – Pract. Exp. , 1257 - 1284
    36. 36)
      • Bures, T., Hnetynka, P., Plasil, F.: `SOFA 2.0: balancing advanced features in a hierarchical component model', Proc. Fourth Int. Conf. on Software Engineering Research, Management and Applications (SERA 2006), IEEE CS, 2006, p. 40–48.
http://iet.metastore.ingenta.com/content/journals/10.1049/iet-sen.2009.0016
Loading

Related content

content/journals/10.1049/iet-sen.2009.0016
pub_keyword,iet_inspecKeyword,pub_concept
6
6
Loading
This is a required field
Please enter a valid email address