Network


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

Hotspot


Dive into the research topics where Kelly Androutsopoulos is active.

Publication


Featured researches published by Kelly Androutsopoulos.


integrated formal methods | 2004

UML to B: Formal Verification of Object-Oriented Models

Kevin Lano; David Clark; Kelly Androutsopoulos

The integration of UML and formal methods such as B and SMV provides a bridge between graphical specification techniques usable by mainstream software engineers, and precise analysis and verification techniques, essential for the development of high integrity and critical systems. In this paper we define a translation from UML class diagrams into B, which is used to verify the consistency of UML models and to verify that expected properties of these models hold.


fundamental approaches to software engineering | 2009

Control Dependence for Extended Finite State Machines

Kelly Androutsopoulos; David Clark; Mark Harman; Zheng Li; Laurence Tratt

Though there has been nearly three decades of work on program slicing, there has been comparatively little work on slicing for state machines. One of the primary challenges that currently presents a barrier to wider application of state machine slicing is the problem of determining control dependence. We survey existing related definitions, introducing a new definition that subsumes one and extends another. We illustrate that by using this new definition our slices respect Weiser slicings termination behaviour. We prove results that clarify the relationships between our definition and older ones, following this up with examples to motivate the need for these differences.


international conference on software maintenance | 2009

A theoretical and empirical study of EFSM dependence

Kelly Androutsopoulos; Nicolas Gold; Mark Harman; Zheng Li; Laurence Tratt

Dependence analysis underpins many activities in software maintenance such as comprehension and impact analysis. As a result, dependence has been studied widely for programming languages, notably through work on program slicing. However, there is comparatively little work on dependence analysis at the model level and hitherto, no empirical studies. We introduce a slicing tool for Extended Finite State Machines (EFSMs) and use the tool to gather empirical results on several forms of dependence found in ten EFSMs, including well-known benchmarks in addition to real-world EFSM models. We investigate the statistical properties of dependence using statistical tests for correlation and formalize and prove four of the empirical findings arising from our empirical study. The paper thus provides the maintainer with both empirical data and foundational theoretical results concerning dependence in EFSM models.


ACM Computing Surveys | 2013

State-based model slicing: A survey

Kelly Androutsopoulos; David Clark; Mark Harman; Jens Krinke; Laurence Tratt

Slicing is a technique, traditionally applied to programs, for extracting the parts of a program that affect the values computed at a statement of interest. In recent years authors have begun to consider slicing at model level. We present a detailed review of existing work on slicing at the level of finite-state-machine-based models. We focus on state-based modeling notations because these have received sufficient attention from the slicing community that there is now a coherent body of hitherto unsurveyed work. We also identify the challenges that state-based slicing presents and how the existing literature has addressed these. We conclude by identifying problems that remain open either because of the challenges involved in addressing them or because the community simply has yet to turn its attention to solving them.


international conference on software engineering | 2011

Model projection: simplifying models in response to restricting the environment

Kelly Androutsopoulos; David W. Binkley; David Clark; Nicolas Gold; Mark Harman; Kevin Lano; Zheng Li

This paper introduces Model Projection. Finite state models such as Extended Finite State Machines are being used in an ever increasing number of software engineering activities. Model projection facilitates model development by specializing models for a specific operating environment. A projection is useful in many design-level applications including specification reuse and property verification. The applicability of model projection rests upon three critical concerns: correctness, effectiveness, and efficiency, all of which are addressed in this paper. We introduce four related algorithms for model projection and prove each correct. We also present an empirical study of effectiveness and efficiency using ten models, including widely studied benchmarks as well as industrial models. Results show that a typical projection includes about half of the states and a third of the transitions from the original model.


international conference on software engineering | 2014

An analysis of the relationship between conditional entropy and failed error propagation in software testing

Kelly Androutsopoulos; David Clark; Haitao Dan; Robert M. Hierons; Mark Harman

Failed error propagation (FEP) is known to hamper software testing, yet it remains poorly understood. We introduce an information theoretic formulation of FEP that is based on measures of conditional entropy. This formulation considers the situation in which we are interested in the potential for an incorrect program state at statement s to fail to propagate to incorrect output. We define five metrics that differ in two ways: whether we only consider parts of the program that can be reached after executing s and whether we restrict attention to a single program path of interest .We give the results of experiments in which it was found that on average one in 10 tests suffered from FEP, earlier studies having shown that this figure can vary significantly between programs. The experiments also showed that our metrics are well-correlated with FEP. Our empirical study involved 30 programs, for which we executed a total of 7,140,000 test cases. The results reveal that the metrics differ in their performance but the Spearman rank correlation with failed error propagation is close to 0.95 for two of the metrics. These strong correlations in an experimental setting, in which all information about both FEP and conditional entropy is known, open up the possibility in the longer term of devising inexpensive information theory based metrics that allow us to minimise the effect of FEP.


IEEE Transactions on Software Engineering | 2013

Amorphous Slicing of Extended Finite State Machines

Kelly Androutsopoulos; David Clark; Mark Harman; Robert M. Hierons; Zheng Li; Laurence Tratt

Slicing is useful for many software engineering applications and has been widely studied for three decades, but there has been comparatively little work on slicing extended finite state machines (EFSMs). This paper introduces a set of dependence-based EFSM slicing algorithms and an accompanying tool. We demonstrate that our algorithms are suitable for dependence-based slicing. We use our tool to conduct experiments on 10 EFSMs, including benchmarks and industrial EFSMs. Ours is the first empirical study of dependence-based program slicing for EFSMs. Compared to the only previously published dependence-based algorithm, our average slice is smaller 40 percent of the time and larger only 10 percent of the time, with an average slice size of 35 percent for termination insensitive slicing.


international conference on formal engineering methods | 2000

Structuring reactive systems in B AMN

Kevin Lano; Kelly Androutsopoulos; Pauline Kan

B has been widely used for high-integrity systems development, for example in the railway industry. However, there are few published guidelines on how to structure B specifications for particular types of system, such as reactive control systems. In this paper, we describe a method to support the graphical design of systems using the B abstract machine notation (AMN), and we develop guidelines for expressing the structuring requirements of reactive systems in B.


Information Processing Letters | 2010

An alternative characterization of weak order dependence

Torben Amtoft; Kelly Androutsopoulos; David Clark; Mark Harman; Zheng Li

Control dependence forms the basis for many program analyses, such as program slicing. Recent work on control dependence analysis has led to new definitions of dependence that can allow for reactive programs with their necessarily non-terminating computations. One important such definition is the definition of Weak Order Dependence, which was introduced to generalize classical control dependence for a Control Flow Graph (CFG) without end nodes. In this paper we show that for a CFG where all nodes are reachable from each other, weak order dependence can be expressed in terms of traditional control dependence where one node has been converted into an end node.


Genetic Programming and Evolvable Machines | 2018

Evelyne Lutton, Nathalie Perrot, Alberto Tonda: Evolutionary algorithms for food science and technology

Kelly Androutsopoulos

A review of the book: Evolutionary algorithms for food science and technology, by Evelyne Lutton, Nathalie Perrot, Alberto Tonda

Collaboration


Dive into the Kelly Androutsopoulos's collaboration.

Top Co-Authors

Avatar

David Clark

University College London

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Mark Harman

University College London

View shared research outputs
Top Co-Authors

Avatar

Zheng Li

Beijing University of Chemical Technology

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

P. Kan

King's College London

View shared research outputs
Top Co-Authors

Avatar

Nicolas Gold

University College London

View shared research outputs
Top Co-Authors

Avatar

Pauline Kan

Imperial College London

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge