The STATEMATE semantics of statecharts
ACM Transactions on Software Engineering and Methodology (TOSEM)
On a relation between graph edit distance and maximum common subgraph
Pattern Recognition Letters
Discovering models of software processes from event-based data
ACM Transactions on Software Engineering and Methodology (TOSEM)
Software process validation: quantitatively measuring the correspondence of a process to a model
ACM Transactions on Software Engineering and Methodology (TOSEM)
Model checking
ICGI '98 Proceedings of the 4th International Colloquium on Grammatical Inference
Stochastic Grammatical Inference with Multinomial Tests
ICGI '02 Proceedings of the 6th International Colloquium on Grammatical Inference: Algorithms and Applications
The Nature of Landmarks for Real and Electronic Spaces
COSIT '99 Proceedings of the International Conference on Spatial Information Theory: Cognitive and Computational Foundations of Geographic Information Science
Similarity Flooding: A Versatile Graph Matching Algorithm and Its Application to Schema Matching
ICDE '02 Proceedings of the 18th International Conference on Data Engineering
Algorithm 832: UMFPACK V4.3---an unsymmetric-pattern multifrontal method
ACM Transactions on Mathematical Software (TOMS)
Minimizing development and maintenance costs in supporting persistently optimized BLAS
Software—Practice & Experience - Research Articles
Editorial: abstract state machines and high-level system design and analysis
Theoretical Computer Science - Abstract state machines and high-level system design and analysis
Testing methods for X-machines: a review
Formal Aspects of Computing
QUARK: Empirical Assessment of Automaton-based Specification Miners
WCRE '06 Proceedings of the 13th Working Conference on Reverse Engineering
Graph evolution: Densification and shrinking diameters
ACM Transactions on Knowledge Discovery from Data (TKDD)
Matching and Merging of Statecharts Specifications
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Reverse Engineering State Machines by Interactive Grammar Inference
WCRE '07 Proceedings of the 14th Working Conference on Reverse Engineering
WCRE '07 Proceedings of the 14th Working Conference on Reverse Engineering
Proceedings of the 2008 international workshop on Comparison and versioning of software models
Improving dynamic software analysis by applying grammar inference principles
Journal of Software Maintenance and Evolution: Research and Practice - Special Issue on Program Comprehension through Dynamic Analysis (PCODA)
Evaluation and Comparison of Inferred Regular Grammars
ICGI '08 Proceedings of the 9th international colloquium on Grammatical Inference: Algorithms and Applications
Introduction to Automata Theory, Languages, and Computation
Introduction to Automata Theory, Languages, and Computation
A systematic analysis of performance measures for classification tasks
Information Processing and Management: an International Journal
Computing the Structural Difference between State-Based Models
WCRE '09 Proceedings of the 2009 16th Working Conference on Reverse Engineering
Iterative Refinement of Reverse-Engineered Models by Model-Based Testing
FM '09 Proceedings of the 2nd World Congress on Formal Methods
A framework for the competitive evaluation of model inference techniques
Proceedings of the First International Workshop on Model Inference In Testing
A framework for the evaluation of specification miners based on finite state machines
ICSM '10 Proceedings of the 2010 IEEE International Conference on Software Maintenance
Simulation-Based graph similarity
TACAS'06 Proceedings of the 12th international conference on Tools and Algorithms for the Construction and Analysis of Systems
Hi-index | 0.00 |
State machines capture the sequential behavior of software systems. Their intuitive visual notation, along with a range of powerful verification and testing techniques render them an important part of the model-driven software engineering process. There are several situations that require the ability to identify and quantify the differences between two state machines (e.g. to evaluate the accuracy of state machine inference techniques is measured by the similarity of a reverse-engineered model to its reference model). State machines can be compared from two complementary perspectives: (1) In terms of their language -- the externally observable sequences of events that are permitted or not, and (2) in terms of their structure -- the actual states and transitions that govern the behavior. This article describes two techniques to compare models in terms of these two perspectives. It shows how the difference can be quantified and measured by adapting existing binary classification performance measures for the purpose. The approaches have been implemented by the authors, and the implementation is openly available. Feasibility is demonstrated via a case study to compare two real state machine inference approaches. Scalability and accuracy are assessed experimentally with respect to a large collection of randomly synthesized models.