Monotone Precision and Recall Measures for Comparing Executions and Specifications of Dynamic Systems

The behavioural comparison of systems is an important concern of software engineering research. For example, the areas of specification discovery and specification mining are concerned with measuring the consistency between a collection of execution traces and a program specification. This problem is also tackled in process mining with the help of measures that describe the quality of a process specification automatically discovered from execution logs. Though various measures have been proposed, it was recently demonstrated that they neither fulfil essential properties, such as monotonicity, nor can they handle infinite behaviour. In this article, we address this research problem by introducing a new framework for the definition of behavioural quotients. We prove that corresponding quotients guarantee desired properties that existing measures have failed to support. We demonstrate the application of the quotients for capturing precision and recall measures between a collection of recorded executions and a system specification. We use a prototypical implementation of these measures to contrast their monotonic assessment with measures that have been defined in prior research.

[1]  Rainer Koschke,et al.  Dynamic Protocol Recovery , 2007, 14th Working Conference on Reverse Engineering (WCRE 2007).

[2]  Akhil Kumar,et al.  Research Commentary: Workflow Management Issues in e-Business , 2002, Inf. Syst. Res..

[3]  John Derrick,et al.  Iterative Refinement of Reverse-Engineered Models by Model-Based Testing , 2009, FM.

[4]  Wil M. P. van der Aalst,et al.  Declarative workflows: Balancing between flexibility and support , 2009, Computer Science - Research and Development.

[5]  Ivan Beschastnikh,et al.  Inferring and Asserting Distributed System Invariants , 2018, 2018 IEEE/ACM 40th International Conference on Software Engineering (ICSE).

[6]  Dirk Fahland,et al.  The Imprecisions of Precision Measures in Process Mining , 2017, Inf. Process. Lett..

[7]  Jeffrey D. Ullman,et al.  Introduction to automata theory, languages, and computation, 2nd edition , 2001, SIGA.

[8]  Roberto Gorrieri,et al.  Introduction to Concurrency Theory: Transition Systems and CCS , 2015 .

[9]  Jan Mendling,et al.  Model Checking of Mixed-Paradigm Process Models in a Discovery Context - Finding the Fit Between Declarative and Procedural , 2016, Business Process Management Workshops.

[10]  Robin Milner,et al.  A Calculus of Communicating Systems , 1980, Lecture Notes in Computer Science.

[11]  Elaine J. Weyuker,et al.  Assessing Test Data Adequacy through Program Inference , 2019, TOPL.

[12]  Michael Sipser,et al.  Introduction to the Theory of Computation , 1996, SIGA.

[13]  Jordi Cabot,et al.  Model-Driven Software Engineering in Practice , 2017, Synthesis Lectures on Software Engineering.

[14]  Jessica Keyes Software Configuration Management , 2004 .

[15]  W. Parry Intrinsic Markov chains , 1964 .

[16]  Siau-Cheng Khoo,et al.  QUARK: Empirical Assessment of Automaton-based Specification Miners , 2006, 2006 13th Working Conference on Reverse Engineering.

[17]  David Harel,et al.  Statecharts: A Visual Formalism for Complex Systems , 1987, Sci. Comput. Program..

[18]  Mark Rouncefield,et al.  Model-driven engineering practices in industry: Social, organizational and managerial factors that lead to success or failure , 2014, Sci. Comput. Program..

[19]  Harald C. Gall,et al.  Analysing Software Repositories to Understand Software Evolution , 2008, Software Evolution.

[20]  Boudewijn F. van Dongen,et al.  Conformance Checking Using Cost-Based Fitness Analysis , 2011, 2011 IEEE 15th International Enterprise Distributed Object Computing Conference.

[21]  Stefan Berner,et al.  Enhancing Software Testing by Judicious Use of Code Coverage Information , 2007, 29th International Conference on Software Engineering (ICSE'07).

[22]  Leonardo Mariani,et al.  Behavior capture and test: automated analysis of component integration , 2005, 10th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS'05).

[23]  Mathias Weske,et al.  Efficient Consistency Measurement Based on Behavioral Profiles of Process Models , 2011, IEEE Transactions on Software Engineering.

[24]  Alexis Leon Software Configuration Management Handbook , 2015 .

[25]  Sander J. J. Leemans,et al.  Scalable process discovery and conformance checking , 2016, Software & Systems Modeling.

[26]  Hajo A. Reijers,et al.  The Automated Discovery of Hybrid Processes , 2014, BPM.

[27]  Leonardo Mariani,et al.  Automatic generation of software behavioral models , 2008, 2008 ACM/IEEE 30th International Conference on Software Engineering.

[28]  James Miller,et al.  Inferring Extended Probabilistic Finite-State Automaton Models from Software Executions , 2018, ACM Trans. Softw. Eng. Methodol..

[29]  E. Seneta Non-negative Matrices and Markov Chains , 2008 .

[30]  Evelina Lamma,et al.  Exploiting Inductive Logic Programming Techniques for Declarative Process Mining , 2009, Trans. Petri Nets Other Model. Concurr..

[31]  Jerome A. Feldman,et al.  On the Synthesis of Finite-State Machines from Samples of Their Behavior , 1972, IEEE Transactions on Computers.

[32]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[33]  Wil M. P. van der Aalst,et al.  Conformance checking of processes based on monitoring real behavior , 2008, Inf. Syst..

[34]  Roberto Gorrieri,et al.  Introduction to Concurrency Theory , 2015, Texts in Theoretical Computer Science. An EATCS Series.

[35]  Tsun S. Chow,et al.  Testing Software Design Modeled by Finite-State Machines , 1978, IEEE Transactions on Software Engineering.

[36]  Bart Baesens,et al.  Determining Process Model Precision and Generalization with Weighted Artificial Negative Events , 2014, IEEE Transactions on Knowledge and Data Engineering.

[37]  Elena Deza,et al.  Dictionary of distances , 2006 .

[38]  Josep Carmona,et al.  Anti-alignments in Conformance Checking - The Dark Side of Process Models , 2016, Petri Nets.

[39]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[40]  Glenford J. Myers,et al.  Art of Software Testing , 1979 .

[41]  Mathias Weske,et al.  Process compliance analysis based on behavioural profiles , 2011, Inf. Syst..

[42]  Eran Yahav,et al.  Static Specification Mining Using Automata-Based Abstractions , 2007, IEEE Transactions on Software Engineering.

[43]  Peter Fankhauser,et al.  Process-annotated service discovery facilitated by an n-gram-based index , 2005, 2005 IEEE International Conference on e-Technology, e-Commerce and e-Service.

[44]  Boudewijn F. van Dongen,et al.  Measuring precision of modeled behavior , 2015, Inf. Syst. E Bus. Manag..

[45]  C. Papadimitriou,et al.  Introduction to the Theory of Computation , 2018 .

[46]  Roel Wieringa,et al.  Status Quo in Requirements Engineering , 2018, ACM Trans. Softw. Eng. Methodol..

[47]  Stephen C. Hirtle,et al.  The Nature of Landmarks for Real and Electronic Spaces , 1999, COSIT.

[48]  Bernhard Rumpe,et al.  Achievements, Failures, and the Future of Model-Based Software Engineering , 2018, The Essence of Software Engineering.

[49]  Mathias Weske,et al.  Business Process Management: Concepts, Languages, Architectures , 2007 .

[50]  Giuseppe De Giacomo,et al.  Agent planning programs , 2016, Artif. Intell..

[51]  Florentin Ipate,et al.  Testing methods for X-machines: a review , 2006, Formal Aspects of Computing.

[52]  Bart Baesens,et al.  A comprehensive benchmarking framework (CoBeFra) for conformance analysis between procedural process models and event logs in ProM , 2013, 2013 IEEE Symposium on Computational Intelligence and Data Mining (CIDM).

[53]  Artem Polyvyanyy,et al.  Monotone Conformance Checking for Partially Matching Designed and Observed Processes , 2019, 2019 International Conference on Process Mining (ICPM).

[54]  Terrence Tao,et al.  An Introduction To Measure Theory , 2011 .

[55]  T. Cook,et al.  Quasi-experimentation: Design & analysis issues for field settings , 1979 .

[56]  Thomas R. Gross,et al.  A framework for the evaluation of specification miners based on finite state machines , 2010, 2010 IEEE International Conference on Software Maintenance.

[57]  Jörg Becker,et al.  Comprehensible Predictive Models for Business Processes , 2016, MIS Q..

[58]  Jorge Munoz-Gama,et al.  Enhancing precision in Process Conformance: Stability, confidence and severity , 2011, 2011 IEEE Symposium on Computational Intelligence and Data Mining (CIDM).

[59]  Boudewijn F. van Dongen,et al.  Quality Dimensions in Process Discovery: The Importance of Fitness, Precision, Generalization and Simplicity , 2014, Int. J. Cooperative Inf. Syst..

[60]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2012, Springer Berlin Heidelberg.

[61]  Barak A. Pearlmutter,et al.  Results of the Abbadingo One DFA Learning Competition and a New Evidence-Driven State Merging Algorithm , 1998, ICGI.

[62]  Sebastian Fischmeister,et al.  Mining Timed Regular Specifications from System Traces , 2018, ACM Trans. Embed. Comput. Syst..

[63]  Kwang-Ting Cheng,et al.  Automatic Functional Test Generation Using The Extended Finite State Machine Model , 1993, 30th ACM/IEEE Design Automation Conference.

[64]  Jan Mendling,et al.  From Declarative Processes to Imperative Models , 2014, SIMPDA.

[65]  Josep Carmona,et al.  Incorporating negative information to process discovery of complex systems , 2018, Inf. Sci..

[66]  Richard B. Lehoucq,et al.  Implicitly Restarted Arnoldi Methods and Subspace Iteration , 2001, SIAM J. Matrix Anal. Appl..

[67]  Matthias Weidlich,et al.  Towards a Compendium of Process Technologies - The jBPT Library for Process Model Analysis , 2013, CAiSE Forum.

[68]  Massimo Mecella,et al.  On the Discovery of Declarative Control Flows for Artful Processes , 2015, ACM Trans. Manag. Inf. Syst..

[69]  FRANK R. MOORE,et al.  On the Bounds for State-Set Size in the Proofs of Equivalence Between Deterministic, Nondeterministic, and Two-Way Finite Automata , 1971, IEEE Transactions on Computers.

[70]  Javier Tuya,et al.  Coverage-Aware Test Database Reduction , 2016, IEEE Transactions on Software Engineering.

[71]  Ravindra Boojhawon,et al.  A new method for accelerating Arnoldi algorithms for large scale Eigenproblems , 2009, Math. Comput. Simul..

[72]  Jiawei Han,et al.  Mining Software Specifications: Methodologies and Applications , 2011 .

[73]  Benoît Depaire,et al.  A comparative study of existing quality measures for process discovery , 2017, Inf. Syst..

[74]  Niek Tax,et al.  Evaluating Conformance Measures in Process Mining using Conformance Propositions (Extended version) , 2019, Trans. Petri Nets Other Model. Concurr..

[75]  Bart Baesens,et al.  A robust F-measure for evaluating discovered process models , 2011, 2011 IEEE Symposium on Computational Intelligence and Data Mining (CIDM).

[76]  Tullio Ceccherini-Silberstein,et al.  On the entropy of regular languages , 2003, Theor. Comput. Sci..

[77]  Irina A. Lomazova,et al.  Transition Systems Reduction: Balancing between Precision and Simplicity , 2016, ATAED@Petri Nets/ACSD.

[78]  Valentin Goranko,et al.  Temporal Logics in Computer Science: Finite-State Systems , 2016, Cambridge Tracts in Theoretical Computer Science.

[79]  Marco Montali,et al.  Resolving inconsistencies and redundancies in declarative process models , 2017, Inf. Syst..

[80]  Matthias Kunze Searching Process Models By Example (Extended Abstract) , 2013 .

[81]  Paul Grünbacher,et al.  A Constraint Mining Approach to Support Monitoring Cyber-Physical Systems , 2019, CAiSE.

[82]  Chao Yang,et al.  ARPACK users' guide - solution of large-scale eigenvalue problems with implicitly restarted Arnoldi methods , 1998, Software, environments, tools.

[83]  Bengt Jonsson,et al.  Regular Inference for State Machines with Parameters , 2006, FASE.

[84]  Neil Walkinshaw,et al.  Automated Comparison of State-Based Software Models in Terms of Their Language and Structure , 2013, TSEM.

[85]  Egon Börger Abstract state machines and high-level system design and analysis , 2005, Theor. Comput. Sci..

[86]  Vladimir I. Levenshtein,et al.  Binary codes capable of correcting deletions, insertions, and reversals , 1965 .

[87]  Brian T. Pentland,et al.  Conceptualizing and Measuring Variety in the Execution of Organizational Work Processes , 2003, Manag. Sci..

[88]  Yann-Gaël Guéhéneuc,et al.  Trustrace: Mining Software Repositories to Improve the Accuracy of Requirement Traceability Links , 2013, IEEE Transactions on Software Engineering.

[89]  Josep Carmona,et al.  A Unified Approach for Measuring Precision and Generalization Based on Anti-alignments , 2016, BPM.

[90]  Bart Baesens,et al.  Robust Process Discovery with Artificial Negative Events , 2009, J. Mach. Learn. Res..

[91]  Boudewijn F. van Dongen,et al.  Replaying history on process models for conformance checking and performance analysis , 2012, WIREs Data Mining Knowl. Discov..

[92]  Aditya Kanade,et al.  Mining Unit Tests for Discovery and Migration of Math APIs , 2014, TSEM.

[93]  Mathias Weske,et al.  Querying process models by behavior inclusion , 2015, Software & Systems Modeling.

[94]  Wil M. P. van der Aalst,et al.  Process querying: Enabling business intelligence through query-based process analytics , 2017, Decis. Support Syst..

[95]  Marlon Dumas,et al.  On the expressive power of behavioral profiles , 2016, Formal Aspects of Computing.

[96]  Siau-Cheng Khoo,et al.  SMArTIC: towards building an accurate, robust and scalable specification miner , 2006, SIGSOFT '06/FSE-14.

[97]  Neil Walkinshaw,et al.  Evaluation and Comparison of Inferred Regular Grammars , 2008, ICGI.

[98]  Steven P. Reiss,et al.  Encoding program executions , 2001, Proceedings of the 23rd International Conference on Software Engineering. ICSE 2001.

[99]  Johannes De Smedt,et al.  Fusion Miner: Process discovery for mixed-paradigm models , 2015, Decis. Support Syst..

[100]  Wil M. P. van der Aalst,et al.  Genetic process mining: an experimental evaluation , 2007, Data Mining and Knowledge Discovery.

[101]  Matthias Kunze Searching business process models by example , 2013 .

[102]  Zhendong Su,et al.  Javert: fully automatic mining of general temporal properties from dynamic traces , 2008, SIGSOFT '08/FSE-16.

[103]  Ursula Goltz,et al.  Refinement of actions and equivalence notions for concurrent systems , 2001, Acta Informatica.

[104]  Rob J. van Glabbeek,et al.  The Linear Time - Branching Time Spectrum II , 1993, CONCUR.

[105]  James R. Larus,et al.  Mining specifications , 2002, POPL '02.

[106]  A. Abbott,et al.  Measuring Resemblance in Sequence Data: An Optimal Matching Analysis of Musicians' Careers , 1990, American Journal of Sociology.

[107]  John E. Hopcroft,et al.  An n log n algorithm for minimizing states in a finite automaton , 1971 .

[108]  Paul Caspi,et al.  Timed regular expressions , 2002, JACM.

[109]  Aa Twan Basten,et al.  In terms of nets : system design with Petri nets and process algebra , 1998 .

[110]  M. Weske,et al.  Behavioural Models: From Modelling Finite Automata to Analysing Business Processes , 2016 .

[111]  Birgit Vogel-Heuser,et al.  Evolution of software in automated production systems: Challenges and research directions , 2015, J. Syst. Softw..

[112]  Abdelwahab Hamou-Lhadj,et al.  Summarizing the Content of Large Traces to Facilitate the Understanding of the Behaviour of a Software System , 2006, 14th IEEE International Conference on Program Comprehension (ICPC'06).

[113]  Dana S. Scott,et al.  Finite Automata and Their Decision Problems , 1959, IBM J. Res. Dev..

[114]  Mathias Weske,et al.  Business Process Models , 2016 .

[115]  Eran Yahav,et al.  Static Specification Mining Using Automata-Based Abstractions , 2008, IEEE Trans. Software Eng..

[116]  Nicholas Berente,et al.  Research Commentary - Data-Driven Computationally Intensive Theory Development , 2019, Inf. Syst. Res..

[117]  Tetsuya Sakurai,et al.  Block SS-CAA: A complex moment-based parallel nonlinear eigensolver using the block communication-avoiding Arnoldi procedure , 2017, Parallel Comput..

[118]  Alexander L. Wolf,et al.  Discovering models of software processes from event-based data , 1998, TSEM.

[119]  John Derrick,et al.  Inferring extended finite state machine models from software executions , 2013, 2013 20th Working Conference on Reverse Engineering (WCRE).

[120]  Wil M. P. van der Aalst,et al.  Relating Process Models and Event Logs - 21 Conformance Propositions , 2018, ATAED@Petri Nets/ACSD.

[121]  Benjamin Cornwell,et al.  Social Sequence Analysis: Methods and Applications , 2015 .

[122]  Chao Liu,et al.  Efficient mining of iterative patterns for software specification discovery , 2007, KDD '07.