Monitoring method call sequences using annotations

Behrooz Nobakht, Frank S. de Boer, Marcello M. Bonsangue, Stijn de Gouw, Mohammad Mahdi Jaghoori

Research output: Contribution to journalArticleAcademicpeer-review

Abstract

In this paper we introduce JMSeq, a Java-based tool for monitoring sequences of method calls. JMSeq provides a simple but expressive language to specify the observables of a Java program in terms of sequences of possibly nested method calls. Similar to many monitoring-oriented environments, verification in JMSeq is done at runtime; unlike all other approaches based on aspect-oriented programming, JMSeq uses code annotation rather than instrumentation, and therefore is suitable for component-based software verification.
Original languageEnglish
Pages (from-to)362-378
Number of pages17
JournalScience of computer programming
Volume94
Issue numberpt.3
DOIs
Publication statusPublished - 2014
Externally publishedYes

Fingerprint

Aspect oriented programming
Monitoring

Cite this

Nobakht, B., Boer, F. S. D., Bonsangue, M. M., Gouw, S. D., & Jaghoori, M. M. (2014). Monitoring method call sequences using annotations. Science of computer programming, 94(pt.3), 362-378. https://doi.org/10.1016/j.scico.2013.11.030
Nobakht, Behrooz ; Boer, Frank S. de ; Bonsangue, Marcello M. ; Gouw, Stijn de ; Jaghoori, Mohammad Mahdi. / Monitoring method call sequences using annotations. In: Science of computer programming. 2014 ; Vol. 94, No. pt.3. pp. 362-378.
@article{2a70c85df4cb4d1d89b6a628cff99358,
title = "Monitoring method call sequences using annotations",
abstract = "In this paper we introduce JMSeq, a Java-based tool for monitoring sequences of method calls. JMSeq provides a simple but expressive language to specify the observables of a Java program in terms of sequences of possibly nested method calls. Similar to many monitoring-oriented environments, verification in JMSeq is done at runtime; unlike all other approaches based on aspect-oriented programming, JMSeq uses code annotation rather than instrumentation, and therefore is suitable for component-based software verification.",
author = "Behrooz Nobakht and Boer, {Frank S. de} and Bonsangue, {Marcello M.} and Gouw, {Stijn de} and Jaghoori, {Mohammad Mahdi}",
year = "2014",
doi = "10.1016/j.scico.2013.11.030",
language = "English",
volume = "94",
pages = "362--378",
journal = "Science of computer programming",
issn = "0167-6423",
publisher = "ELSEVIER SCIENCE BV",
number = "pt.3",

}

Nobakht, B, Boer, FSD, Bonsangue, MM, Gouw, SD & Jaghoori, MM 2014, 'Monitoring method call sequences using annotations', Science of computer programming, vol. 94, no. pt.3, pp. 362-378. https://doi.org/10.1016/j.scico.2013.11.030

Monitoring method call sequences using annotations. / Nobakht, Behrooz; Boer, Frank S. de; Bonsangue, Marcello M.; Gouw, Stijn de; Jaghoori, Mohammad Mahdi.

In: Science of computer programming, Vol. 94, No. pt.3, 2014, p. 362-378.

Research output: Contribution to journalArticleAcademicpeer-review

TY - JOUR

T1 - Monitoring method call sequences using annotations

AU - Nobakht, Behrooz

AU - Boer, Frank S. de

AU - Bonsangue, Marcello M.

AU - Gouw, Stijn de

AU - Jaghoori, Mohammad Mahdi

PY - 2014

Y1 - 2014

N2 - In this paper we introduce JMSeq, a Java-based tool for monitoring sequences of method calls. JMSeq provides a simple but expressive language to specify the observables of a Java program in terms of sequences of possibly nested method calls. Similar to many monitoring-oriented environments, verification in JMSeq is done at runtime; unlike all other approaches based on aspect-oriented programming, JMSeq uses code annotation rather than instrumentation, and therefore is suitable for component-based software verification.

AB - In this paper we introduce JMSeq, a Java-based tool for monitoring sequences of method calls. JMSeq provides a simple but expressive language to specify the observables of a Java program in terms of sequences of possibly nested method calls. Similar to many monitoring-oriented environments, verification in JMSeq is done at runtime; unlike all other approaches based on aspect-oriented programming, JMSeq uses code annotation rather than instrumentation, and therefore is suitable for component-based software verification.

U2 - 10.1016/j.scico.2013.11.030

DO - 10.1016/j.scico.2013.11.030

M3 - Article

VL - 94

SP - 362

EP - 378

JO - Science of computer programming

JF - Science of computer programming

SN - 0167-6423

IS - pt.3

ER -