Authors:
Joel Greenyer
1
;
Daniel Gritzner
1
;
David Harel
2
and
Assaf Marron
2
Affiliations:
1
Leibniz Universität Hannover, Germany
;
2
Weizmann Institute of Science, Israel
Keyword(s):
Software Engineering, System Engineering, Scenario-based Programming, Behavioral Programming, Abstraction, Debugging, Program Repair, Execution Trace, Event Log.
Related
Ontology
Subjects/Areas/Topics:
Applications and Software Development
;
Frameworks for Model-Driven Development
;
General-Purpose Modeling Languages and Standards
;
Languages, Tools and Architectures
;
Methodologies, Processes and Platforms
;
Model Execution and Simulation
;
Model-Based Testing and Validation
;
Model-Driven Software Development
;
Models
;
Paradigm Trends
;
Reasoning about Models
;
Software Engineering
;
Systems Engineering
Abstract:
Scenario-based specification approaches offer system engineering advantages with their intuitiveness, executability,
and amenability to formal verification and synthesis. However, many engineering tasks such as
debugging or maintenance are still far from trivial even when using such specifications. Specifically, it is hard
to find out why a complex system behaves as it does, or how it would behave under certain conditions. Here,
we present work in progress towards the (semi-)automatic analysis of event traces emanating from simulation
runs and actual executions. These traces may be large, yet developers are often interested only in specific
properties thereof, like is any specification property violated? are particular properties demonstrated? is there
a smaller sub-sequence of events that violates or demonstrates the same properties? which trace properties
are common to multiple traces and which are unique? etc. Our approach includes automatic techniques for
discovering and
distilling relevant properties of traces, analyzing properties of sets of traces, using (sets of) execution
traces for understanding specified and actual system behavior and problems therein, planning system
enhancement and repair, and more. Our work leverages and extends existing work on trace summarization,
formal methods for model analysis, specification mining from execution traces, and others, in the context of
scenario-based specifications. A key guiding perspective for this research is that interesting properties of a
trace often can be associated with one or very few concise scenarios, depicting desired or forbidden behavior,
which are already in the specification, or should be added to it.
(More)