skip to main content
10.1145/1321631.1321710acmconferencesArticle/Chapter ViewAbstractPublication PagesaseConference Proceedingsconference-collections
poster

Mining modal scenario-based specifications from execution traces of reactive systems

Published: 05 November 2007 Publication History

Abstract

Specification mining is a dynamic analysis process aimed at automatically inferring suggested specifications of a program from its execution traces. We describe a novel method, framework, and tool, for mining inter-object scenario-based specifications in the form of a UML2-compliant variant of Damm and Harels Live Sequence Charts (LSC). LSC extends the classical partial order semantics of sequence diagrams with temporal liveness and symbolic class level lifelines, in order to generate compact and expressive specifications. The output of our algorithm is a sound and complete set of statistically significant LSCs (i.e., satisfying given thresholds of support and confidence), mined from an input execution trace. We locate statistically significant LSCs by exploring the search space of possible LSCs and checking for their statistical significance. In addition, we use an effective search space pruning strategy, specifically adapted to LSCs, which enables efficient mining of scenarios of arbitrary size. We demonstrate and evaluate the utility of our work in mining informative specifications using a case study on Jeti, a popular, full featured messaging application

References

[1]
Eclipse Test and Performance Tools Platform. http://www.eclipse.org/tptp/.
[2]
Eclipse UML2. http://wiki.eclipse.org/index.php/MDT-UML2.
[3]
IBM Rational Software Architect. http://www-306.ibm.com/software/rational/.
[4]
Jeti. Version 0.7.6 (Oct. 2006). http://jeti.sourceforge.net/.
[5]
LSC Mining: supporting material. http://www.comp.nus.edu.sg/~dlo/lscminer/.
[6]
G. Ammons, R. Bodik, and J. R. Larus. Mining specification. In POPL, 2002.
[7]
L. C. Briand, Y. Labiche, and J. Leduc. Toward the reverse engineering of UML sequence diagrams for distributed java software. TSE, 32(9):642--663, 2006.
[8]
J. E. Cook and A. L. Wolf. Discovering models of software processes from event-based data. TOSEM, 7(3):215--249, 1998.
[9]
W. Damm and D. Harel. LSCs: Breathing Life into Message Sequence Charts. J. on Formal Methods in System Design, 19(1):45--80, 2001.
[10]
D. Lo and S-C. Khoo. QUARK: Empirical assessment of automaton-based specification miners. In WCRE, 2006.
[11]
J. Han and M. Kamber. Data Mining Concepts and Techniques, 2nd Ed. Morgan Kaufmann, 2006.
[12]
D. Harel. From play-in scenarios to code: An achievable dream. IEEE Computer, 34(1):53--60, 2001.
[13]
D. Harel, A. Kleinbort, and S. Maoz. S2A: A compiler for multi-modal UML sequence diagrams. In FASE, 2007.
[14]
D. Harel and S. Maoz. Assert and negate revisited: Modal semantics for UML sequence diagrams. Software and Systems Modeling, 2007.
[15]
M. Huth and M. Ryan. Logic in Computer Science. Cambridge, 2004.
[16]
J. Klose, T. Toben, B. Westphal, and H. Wittke. Check it out: On the efficient formal verification of Live Sequence Charts. In CAV, 2006.
[17]
H. Kugler, D. Harel, A. Pnueli, Y. Lu, and Y. Bontemps. Temporal Logic for Scenario-Based Specifications. In TACAS, 2005.
[18]
M. Lettrari and J. Klose. Scenario-Based Monitoring and Testing of Real-Time UML Models. In UML, 2001.
[19]
D. Lo and S.-C. Khoo. SMArTIC: Towards building an accurate, robust and scalable specification miner. In SIGSOFT FSE, 2006.
[20]
D. Lo, S.-C. Khoo, and C. Liu. Efficient mining of iterative patterns for software specification discovery. SIGKDD, 2007.
[21]
D. Lo, S. Maoz, and S.-C. Khoo. Mining modal scenarios from program execution traces. Technical Report TRC8/07, Dept. of Computer Science, National University of Singapore, 2007.
[22]
S. Maoz and D. Harel. From multi-modal scenarios to code: compiling LSCs into AspectJ. In SIGSOFT FSE, 2006.
[23]
R. Marelly, D. Harel, and H. Kugler. Multiple Instances and Symbolic Variables in Executable Sequence Charts. In OOPSLA, 2002.
[24]
J. Yang, D. Evans, D. Bhardwaj, T. Bhat, and M. Das. Perracotta: Mining temporal API rules from imperfect traces. In ICSE, 2006.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
ASE '07: Proceedings of the 22nd IEEE/ACM International Conference on Automated Software Engineering
November 2007
590 pages
ISBN:9781595938824
DOI:10.1145/1321631
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 05 November 2007

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. UML sequence diagrams
  2. dynamic analysis
  3. live sequence charts
  4. specification mining

Qualifiers

  • Poster

Conference

ASE07

Acceptance Rates

Overall Acceptance Rate 82 of 337 submissions, 24%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 05 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2024)Causal Program Dependence AnalysisScience of Computer Programming10.1016/j.scico.2024.103208(103208)Online publication date: Sep-2024
  • (2021)A Survey on Automated Log Analysis for Reliability EngineeringACM Computing Surveys10.1145/346034554:6(1-37)Online publication date: 13-Jul-2021
  • (2021)Automating Audit with Policy Inference2021 IEEE 34th Computer Security Foundations Symposium (CSF)10.1109/CSF51468.2021.00001(1-16)Online publication date: Jun-2021
  • (2021)General past-time linear temporal logic specification miningCCF Transactions on High Performance Computing10.1007/s42514-021-00079-43:4(393-406)Online publication date: 19-Oct-2021
  • (2020)Hybrid deep neural networks to infer state models of black-box systemsProceedings of the 35th IEEE/ACM International Conference on Automated Software Engineering10.1145/3324884.3416559(299-311)Online publication date: 21-Dec-2020
  • (2020)Enhanced Visualization of Method Invocations by Extending Reverse-engineered Sequence Diagrams2020 Working Conference on Software Visualization (VISSOFT)10.1109/VISSOFT51673.2020.00010(49-60)Online publication date: Sep-2020
  • (2020)Autonomics: In search of a foundation for next-generation autonomous systemsProceedings of the National Academy of Sciences10.1073/pnas.2003162117117:30(17491-17498)Online publication date: 21-Jul-2020
  • (2019)An empirical study on practicality of specification mining algorithms on a real-world applicationProceedings of the 27th International Conference on Program Comprehension10.1109/ICPC.2019.00020(65-69)Online publication date: 25-May-2019
  • (2018)Using finite-state models for log differencingProceedings of the 2018 26th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3236024.3236069(49-59)Online publication date: 26-Oct-2018
  • (2018)Program comprehension through reverse‐engineered sequence diagramsJournal of Software: Evolution and Process10.1002/smr.196530:11Online publication date: 14-Nov-2018
  • Show More Cited By

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media