Electronic Communications of the EASST (European Association of Software Science and Technology)
Not a member yet
887 research outputs found
Sort by
A Comparison of Incremental Triple Graph Grammar Tools
Triple Graph Grammars (TGGs) are a graph-based and visual technique for specifying bidirectional model transformation. TGGs can be used to transform models from scratch (in the batch mode), but the real potential of TGGs lies in propagating updates incrementally. Existing TGG tools differ considerably in their incremental mode concerning underlying algorithms, user-oriented aspects, incremental update capabilities, and formal properties. Indeed, the different foci, strengths, and weaknesses of current TGG tools in the incremental mode are difficult to discern, especially for non-developers. In this paper, we close this gap by (i) identifying a set of criteria for a qualitative comparison of TGG tools in the incremental mode, (ii) comparing three prominent incremental TGG tools with regard to these criteria, and (iii) conducting a quantitative comparison by means of runtime measurements
An Initial Quality Analysis of the Ohloh Software Evolution Data
Large public data sets on software evolution promise great value to both researchers and practitioners, in particular for software (development) analytics. To realise this value, the data quality of such data sets needs to be studied and improved. Despite these data sets being of a secondary nature, i.e., they were not collected by the people using them, data quality is often taken for granted, casting doubt on conclusions drawn from those data. This paper reports on an intial investigation of the quality of the software evolution data available on Ohloh, and further describes steps taken to cleanse the data set. Our goal is that other researchers, practitioners, and parties responsible for data sets such as Ohloh, use the outcomes of the validation and cleansing steps to improve quality of data sets in the public domain
How Accurate Is Coarse-grained Clone Detection?: Comparision with Fine-grained Detectors
Research on clone detection has been quite successful over the past two decades, which produced a number of state-of-the-art clone detectors.However, it has been still challenging to detect clones, even with such successful detectors, across multiple projects or on thousands of revisions of code in limited time.A simple and coarse-grained detector will be an alternative of detectors using fine-grained analysis.It will drastically reduce time required for detection although it may miss some of clones that fine-grained detectors can detect.Hence, it should be adequate for a tentative analysis of clones if it has an acceptable accuracy.However, it is not clear how accurate such a coarse-grained approach is.This paper evaluates the accuracy of a coarse-grained clone detector compared with some fine-grained clone detectors.Our experiment provides an empirical evidence about acceptable accuracy of such a coarse-grained approach.Thus, we conclude that coarse-grained detection is adequate to make a summary of clone analysis and to be a starter of detailed analysis including manual inspections and bug detection
Generating Preconditions from Graph Constraints by Higher Order Graph Transformation
Techniques for the verification of structural invariants in graph transformation systems typically rely on the derivation of negative application conditions that are attached to graph transformation rules in order to avoid the runtime occurrence of forbidden structural patterns in the system model. In this paper, we propose a practical approach for this derivation process, which produces the required negative application conditions by applying higher order graph transformation on the rule specifications themselves. Additionally, we integrate filtering criteria into these higher order constructs to avoid already at an early stage the unnecessary construction of invalid and redundant rules with negative application conditions
Investigating Intentional Clone Refactoring
Software clone refactoring has been studied from many perspectives,including empirical research on clone refactoring history, IDE supportfor tracking clone change, and recommendation systems for clonemanagement. Most of the work relies on having access to and being ableto analyze the history of clone refactoring. However, refactoring clonedcode is not equivalent to clone management, as code refactoring can bemotivated by goals unrelated to cloning. In this position paper, weintroduce a dataset of intentional clone refactoring, which is producedby keywords matching in commit messages within the version control systemof Linux kernel. By investigating two important clone evolution scenarios--- clone removal and inconsistent changes --- in subsystems of Linuxkernel, we find that intentional clone refactoring accounts for only asmall proportion of all detected clone evolution
Non-Deterministic Matching Algorithm for Net Transformations
Modeling and simulating dynamic systems require to represent their processes and the system changes within one model. To that effect, reconfigurable Petri nets consist of a place/transition net and a set of rules that can modify the Petri net. The application of a rule is based on finding a suitable match of the rule in the given net. This match is an isomorphic subnet that has to be located meeting requirements of the rule application as well as the simulation. In this paper a non-deterministic algorithm is presented for the matching in reconfigurable Petri nets. It is an extension of the VF2 algorithm for graph (sub-)isomorphisms. We show that this extension is correct and complete. Non-determinism ensures that during simulation different matches can be found for each transformation step and is hence crucial for the simulation. But non-determinism has not been present in the VF2 algorithm. For the matching algorithm non-determinism is proven
Stochastic Modelling and Analysis of Driver Behaviour
Driver behaviour is considered a key factor in the majority of car accidents. As a consequence driver behaviour has been receiving vast attention in different domain areas, such as psychology, transport engineering and computer science. Computer scientists are primarily interested in what and how computing means can be applied to understand the relation between driver behaviour and transport systems. In this paper, we adopt a stochastic approach to conduct a quantitative investigation of driver behaviour. We use the Markovian process algebra PEPA (Performance Evaluation Process Algebra) to describe the overall system model. The system component describing the topology and dynamic of the traffic is composed in parallel with the system component describing the driver state and its evolution due to experience. We illustrate our approach using a three-way junction as an example and present the numerical results of the system analysis
Statistical Model Checking of Dynamic Networks of Stochastic Hybrid Automata
In this paper we present a modelling formalism for dynamic networksof stochastic hybrid automata. In particular, our formalism is based on primitivesfor the dynamic creation and termination of hybrid automata components duringthe execution of a system. In this way we allow for natural modelling of conceptssuch as multiple threads found in various programming paradigms, as well as thedynamic evolution of biological systems.We provide a natural stochastic semantics of the modelling formalism based on re-peated output races between the dynamic evolving components of a system. Asspecification language we present a quantified extension of the logic Metric Tempo-ral Logic (MTL). As a main contribution of this paper, the statistical model checkingengine of U PPAAL has been extended to the setting of dynamic networks of hybridsystems and quantified MTL. We demonstrate the usefulness of the extended for-malisms in an analysis of a dynamic version of the well-known Train Gate example,as well as in natural monitoring of a MTL formula, where observations may lead todynamic creation of monitors for sub-formulas
Implementing a model-driven and iterative quality assessment life-cycle: a case study
Assessing software quality through quantitative and reliable information is a major concern of software engineering. However, software is a complex product involving interrelated models with different abstraction levels targeting different stakeholders and requiring specific quality assurance methods.As a result, although Software Quality has gained maturity from a theoretical point of view, the practical quality assessment of software still does not fulfil enough involved actors' expectations.In order to improve quality assurance in practice, a more integrated approach to assessment is required. This paper describes a case study in which a quality assessment framework (MoCQA) relying on a model-driven and iterative methodology has been used to this end. For a year and a half, the framework has been used by the quality assurance team of a small IT department to maintain and monitor a portfolio of projects in both production and development.The study shows the feasibility and the relevance of a model-driven and iterative quality assessment methodology in a professional environment. Besides, although its results still require more generalisation, the study provides interesting insights on how such an approach may help ensure a continuous and explicit communication between stakeholders, leading to a more efficient quality assessment
Performance Analysis of Distributed and Asynchronous Systems using Probabilistic Timed Actors
Many real-time distributed applications exhibit probabilistic and non-deterministic behaviors. In this paper, we introduce Probabilistic Timed Rebeca (PTRebeca) as an actor-based language for modeling probabilistic distributed real-time systems with asynchronous message passing. We propose the semantics of PTRebeca model in Timed Markov Decision Process (TMDP), the integral semantics of probabilistic timed automaton (PTA) with one digital clock. To analyze PTRebeca models, we develop a tool set to automatically generate a TMDP model from a PTRebeca model in the form of the input language of PRISM model checker. We use PRISM for performance analysis of PTRebeca models against expected reachability and probabilistic reachability properties. We show the applicability of our approach using a few case studies and experimental results