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

UML interaction model-driven runtime verification of Java programs

UML interaction model-driven runtime verification of Java programs

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.

The authors use unified modelling language (UML) 2.0 interaction overview diagrams (IODs) and sequence diagrams to construct simple and expressive scenario-based specifications, and present an approach to runtime verification of Java programs for exceptional consistency and mandatory consistency. The exceptional consistency requires that any forbidden scenario described by a given IOD never happens during the execution of a program, and the mandatory consistency requires that if a reference scenario described by a given sequence diagram occurs during the execution of a program, it must immediately adhere to a scenario described by a given IOD. In the approach, the authors first instrument a program under verification so as to gather the program execution traces related to a given scenario-based specification; then they drive the instrumented program to execute for generating the program execution traces; finally they check if the collected program execution traces satisfy the given specification. The approach leads to a supporting tool for testing in which UML interaction models are used as automatic test oracles to detect the wrong temporal ordering of message interaction in programs.

References

    1. 1)
      • Leavens, G.T., Leind, K.R.M., Poll, E., Ruby, C., Jacobs, B.: `JML: notations and tools supporting detailed design in Java', Addendum to the 2000 Proc. Conf. on Object-oriented Programming, Systems, Languages, and Applications, ACM Press, 2000, p. 105–106.
    2. 2)
      • Abdurazik, A., Offutt, J.: `Using UML collaboration diagrams for static checking and test generation', Proc. Third Int. Conf. on Unified Modeling Language, (UML2000), 2000, p. 383–395, (LNCS, 1939).
    3. 3)
      • Firley, T., Huhn, M., Diethers, K., Gehrke, T., Goltz, U.: `Timed sequence diagrams and tool-based analysis – a case study', Proc. Second Int. Conf. on UML, (UML99), 1999, p. 645–660, (LNCS, 1732).
    4. 4)
      • Trentelman, K., Huisman, M.: `Extending JML specifications with temporal logic', Proc. Ninth Int. Conf. on Algebraic Methodology and Software Technology (AMAST2002), 2002, p. 334–348, (LNCS 2422).
    5. 5)
      • The homepage of BCEL. http://jakarta.apache.org/bcel/index.html.
    6. 6)
    7. 7)
      • Topcased. http://www.topcased.org/.
    8. 8)
      • R.C. Bjork . The simulation of an automated teller machine.
    9. 9)
      • Wikipedia encyclopedia. ‘Runtime Verification’. http://en.wikipedia.org/wiki/Runtime_verification.
    10. 10)
      • Havelund, K., Rosu, G.: Proc. First Workshop on Runtime Verification, Electronic Notes in Theoretical Computer Science, 2001, 55, Issue 2.
    11. 11)
      • Lund, M.S., Stolen, K.: `A fully general operational semantics for UML 2.0 sequence diagrams with potential and mandatory choice', Proc. 14th Int. Symp. on Formal Methods (FM2006), 2006, p. 380–395, (LNCS, 4085).
    12. 12)
      • Heitmeyer, C.L., Jeffords, R.D., Labaw, B.G.: `Comparing different approaches for specifying and verifying real-time systems', Proc. 10th IEEE Workshop on Real-Time Operating Systems and Software, 1993, New York, p. 122–129.
    13. 13)
    14. 14)
      • Holzmann, G.J., Smith, M.H.: `Software model checking: extracting verification models from source code', Proc. 12th Int. Conf. on Formal Description Techniques FORTE/PSTV'99, October 1999, Beijing, China.
    15. 15)
      • ITU-T: ‘Recommendation Z.120. ITU – telecommunication standardization sector’. Geneva, Switzerland, May 1996.
    16. 16)
      • Seemann, J., Gudenberg, J.W.: `Extension of UML sequence diagrams for real-time systems', Proc. Int. UML Workshop, 1998, p. 240–252, (LNCS, 1618).
    17. 17)
    18. 18)
    19. 19)
    20. 20)
      • R. Alur , G.J. Holzmann , D. Peled . An analyzer for message sequence charts. Softw. – Concepts Tools , 70 - 77
    21. 21)
    22. 22)
      • Dwyer, M.B., Kinneer, A., Elbaum, S.: `Adaptive online program analysis', Proc. Int. Conf. on Software Engineering, (ICSE2007), 2007, p. 220–229.
    23. 23)
      • Ben-Abdallah, H., Leue, S.: `Timing constraints in message sequence chart specifications', Proc. FORTE/PSTV'97, 1997.
    24. 24)
      • Cengarle, M.V., Knapp, A.: `Operational semantics of UML 2.0 interactions', Technical report TUM-I0505, 2005.
    25. 25)
      • Yang, L., Tang, J., Zhao, J., Li, X.: `A case study for monitoring-oriented programming in multi-core architecture', Proc. Int. Workshop on Multicore Software Engineering, (IWMSE2008), 2008, Germany, p. 47–52.
    26. 26)
      • D.A. Peled . (2001) Software reliability methods.
    27. 27)
      • T. Lindholm , F. Yellin . (1999) Java virtual machine specification.
    28. 28)
      • Li, X., Wang, L., Qiu, X., Lei, B.: `Runtime verification of Java programs for scenario-based specifications', Proc. 11th Int. Conf. on Reliable Software Technologies, (Ada-Europe'2006), 2006, p. 94–106, (LNCS, 4006).
    29. 29)
      • Park, D.Y.W., Stern, U., Skakebak, J.U., Dill, D.L.: `Java model checking', Proc. First Int. Workshop on Automated Program Analysis, Testing, and Verification, 2000.
    30. 30)
    31. 31)
      • Runtime Verification: http://www.runtime-verification.org/.
    32. 32)
      • Li, X., Qiu, X., Wang, L., Lei, B., Wong, W.E.: `UML state machine diagram driven runtime verification of Java programs for message interaction consistency', Proc. 23rd Annual ACM Symp. on Applied Computing, (ACM SAC2008), 2008, p. 384–389.
    33. 33)
      • d'Amorim, M., Havelund, K.: `Event-based runtime verification of Java programs', Proc. Int. Workshop on Dymaic Analysis, (WOAD2005), 2005, p. 1–7.
    34. 34)
    35. 35)
      • Offutt, J., Abdurazik, A.: `Generating tests from UML specifications', Proc. Second Int. Conf. on Unified Modeling Language, (UML1999), 1999, p. 416–429, (LNCS, 1723).
    36. 36)
      • E.M. Clarke , O. Grumberg . (1999) Model checking.
    37. 37)
      • Nortel Networks Corporation. ‘FIPA-OS distribution notes’. http://fipa-os.sourceforge.net, 2002.
    38. 38)
    39. 39)
    40. 40)
      • Eclipse – an open development platform. http://www.eclipse.org/.
    41. 41)
    42. 42)
      • Lettrai, M., Klose, J.: `Scenario-based monitoring and testing of real-time UML models', Proc. Fourth Int. Conf. on Unified Modeling Language, (UML2001), 2001, p. 317–328, (LNCS, 2185).
    43. 43)
      • Foundation for Intelligent Physical Agents: ‘FIPA Iterated Contract Net Iteration Protocol specifications’. http://www.fipa.org/specs/fipa00030/, 2002.
    44. 44)
      • O. Kluge , H. Ehrig . (2003) Modelling a railway crossing with message sequence chatrs and Petri Nets, Petri technology for communication-based systems – advance in Petri Nets.
    45. 45)
    46. 46)
      • Ali, S., Jaffar-ur Rehman, M., Briand, L.C., Ashar, H., Zafar, Z., Nadeem, A.: `A state-based approach to integration testing for object-oriented programs', Technical report SCE-05–08, 2005.
    47. 47)
      • OMG. ‘UML2.0 superstructure specification’. http://www.uml.org, October 2005.
    48. 48)
      • Alur, R., Yannakakis, M.: `Model checking of message sequence charts', Proc. 10th Int. Conf. on Concurrency Theory, 1999, p. 114–129, (LNCS, 1664).
    49. 49)
      • J. Rumbaugh , I. Jacobson , G. Booch . (1998) The unified modeling language reference manual.
    50. 50)
      • Li, X., Lilius, J.: `Timing analysis of UML sequence diagrams', UML'99 – The Unified Modeling Language, 1999, p. 661–674, (LNCS, 1723).
    51. 51)
      • Chevalley, P., Thevenod-Fosse, P.: `Automated generation of statistical test cases from UML state diagrams', Proc. Int. Computer Software and Applications Conf., 2001, p. 205–214.
http://iet.metastore.ingenta.com/content/journals/10.1049/iet-sen.2009.0009
Loading

Related content

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