Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Andrew Stevenson is active.

Publication


Featured researches published by Andrew Stevenson.


international conference on software maintenance | 2012

Models are code too: Near-miss clone detection for Simulink models

Manar H. Alalfi; James R. Cordy; Thomas R. Dean; Matthew Stephan; Andrew Stevenson

While graph-based techniques show good results in finding exactly similar subgraphs in graphical models, they have great difficulty in finding near-miss matches. Text-based clone detectors, on the other hand, do very well with near-miss matching in source code. In this paper we introduce SIMONE, an adaptation of the mature text-based code clone detector NICAD to the efficient identification of structurally meaningful near-miss subsystem clones in graphical models. By transforming graph-based models to normalized text form, SIMONE extends NICAD to identify near-miss subsystem clones in Simulink models, uncovering important model similarities that are difficult to find in any other way.


software language engineering | 2012

Grammatical Inference in Software Engineering: An Overview of the State of the Art

Andrew Stevenson; James R. Cordy

Grammatical inference – used successfully in a variety of fields such as pattern recognition, computational biology and natural language processing – is the process of automatically inferring a grammar by examining the sentences of an unknown language. Software engineering can also benefit from grammatical inference. Unlike the aforementioned fields, which use grammars as a convenient tool to model naturally occuring patterns, software engineering treats grammars as first-class objects typically created and maintained for a specific purpose by human designers. We introduce the theory of grammatical inference and review the state of the art as it relates to software engineering.


international workshop on software clones | 2012

Towards qualitative comparison of simulink model clone detection approaches

Matthew Stephan; Manar H. Alafi; Andrew Stevenson; James R. Cordy

In this position paper we briefly review the Simulink model clone detection approaches in literature, including a new one currently being developed, and outline our plan for an experimental comparison. We are using public and private Simulink models to compare approaches based on clone relevance, performance, types of clones detected, user interaction, adaptability, and the ability to identify recurring patterns using a combination of manual inspection and model visualization.


Science of Computer Programming | 2014

A survey of grammatical inference in software engineering

Andrew Stevenson; James R. Cordy

Grammatical inference - used successfully in a variety of fields such as pattern recognition, computational biology and natural language processing - is the process of automatically inferring a grammar by examining the sentences of an unknown language. Software engineering can also benefit from grammatical inference. Unlike these other fields, which use grammars as a convenient tool to model naturally occurring patterns, software engineering treats grammars as first-class objects typically created and maintained for a specific purpose by human designers. We introduce the theory of grammatical inference and review the state of the art as it relates to software engineering. We survey grammatical inference as it relates to software engineering.A background on the theory of grammatical inference is provided.We explore a variety of applications in software engineering.These include programming languages, DSLs, visual languages, and execution traces.


international conference on software engineering | 2013

Using mutation analysis for a model-clone detector comparison framework

Matthew Stephan; Manar H. Alalfi; Andrew Stevenson; James R. Cordy

Model-clone detection is a relatively new area and there are a number of different approaches in the literature. As the area continues to mature, it becomes necessary to evaluate and compare these approaches and validate new ones that are introduced. We present a mutation-analysis based model-clone detection framework that attempts to automate and standardize the process of comparing multiple Simulink model-clone detection tools or variations of the same tool. By having such a framework, new research directions in the area of model-clone detection can be facilitated as the framework can be used to validate new techniques as they arise. We begin by presenting challenges unique to model-clone tool comparison including recall calculation, the nature of the clones, and the clone report representation. We propose our framework, which we believe addresses these challenges. This is followed by a presentation of the mutation operators that we plan to inject into our Simulink models that will introduce variations of all the different model clone types that can then be searched for by each respective model-clone detector.


international workshop on software clones | 2012

Near-miss model clone detection for simulink models

Manar H. Alalfi; James R. Cordy; Thomas R. Dean; Matthew Stephan; Andrew Stevenson

This paper describes our plan to adapt mature code-based clone detection techniques to the efficient identification of near-miss clones in models. Our goal is to leverage successful source text-based clone detection techniques by transforming graph-based models to normalized text form in order to capture semantically meaningful near-miss results that can help in further model analysis tasks. In this position paper we present a first example, adapting the NiCad code clone detector to identifying near-miss Simulink model clones at the “system” granularity. In current work we are extending this technique to the Simulink (entire) “model” and (more refined) “block” granularities as well.


international conference on software maintenance | 2014

Semi-automatic Identification and Representation of Subsystem Variability in Simulink Models

Manar H. Alalfi; Eric J. Rapos; Andrew Stevenson; Matthew Stephan; Thomas R. Dean; James R. Cordy

This paper presents a semi-automated framework for identifying and representing different kinds of variability in Simulink models. Based on the observed variants found in similar subsystem patterns inferred using Simone, a text-based model clone detection tool, we propose a set of variability operators for Simulink models. By applying these operators to six example systems, we are able to represent the variability in their similar subsystem patterns as a single subsystem template directly in the Simulink environment. The product of our framework is a single consolidated subsystem model capable of expressing the observed variability across all instances of each inferred pattern. The process of pattern inference and variability analysis is largely automated and can be easily applied to other collections of Simulink models. The framework is aimed at providing assistance to engineers to identify, understand, and visualize patterns of subsystems in a large model set. This understanding may help in reducing maintenance effort and bug identification at an early stage of the software development.


source code analysis and manipulation | 2015

SimNav: Simulink navigation of model clone classes

Eric J. Rapos; Andrew Stevenson; Manar H. Alalfi; James R. Cordy

SimNav is a graphical user interface designed for displaying and navigating clone classes of Simulink models detected by the model clone detector Simone. As an embedded Simulink interface tool, SimNav allows model developers to explore detected clones directly in their own model development environment rather than a separate research tool interface. SimNav allows users to open selected models for side-by-side comparison, in order to visually explore clone classes and view the differences in the clone instances, as well as to explore the context in which the clones exist. This tool paper describes the motivation, implementation, and use cases for SimNav.


ME@MoDELS | 2013

Evolution of Model Clones in Simulink.

Matthew Stephan; Manar H. Alalfi; James R. Cordy; Andrew Stevenson


Science of Computer Programming | 2015

Parse views with Boolean grammars

Andrew Stevenson; James R. Cordy

Collaboration


Dive into the Andrew Stevenson's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge