Perdita Stevens

dblp:s/PerditaStevens · DBLP profile ↗
← Back
36ranked-venue papers
23as first author
2since 2021 · last 2022
0000-0002-3975-7612ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 28 · 20 first-author · 2 since 2021Theory of computation · 6 · 2 first-authorArtificial intelligence and machine learning · 1Databases, data management, data science and information retrieval · 1 · 1 first-author
YearPublicationVenuePosition
2022 Models as Documents, Documents as Models
Perdita Stevens
ISoLA (2)1
2021 The Future of Programming andModelling: A Vision
Perdita Stevens
ISoLA1
2020 Maintaining consistency in networks of models: bidirectional transformations in the large
abstract
The model-driven development of systems involves multiple models, metamodels and transformations, and relationships between them. A bidirectional transformation (bx) is usually defined as a means of maintaining consistency between “two (or more)” models. This includes cases where one model may be generated from one or more others, as well as more complex (“symmetric”) cases where models record partially overlapping information. In recent years, binary bx, those relating two models, have been extensively studied. Multiary bx, those relating more than two models, have received less attention. In this paper, we consider how a multiary consistency relation may be defined in terms of binary consistency relations and how consistency restoration may be carried out on a network of models and relationships between them. In particular, we consider the circumstances under which we can prove non-interference between several bidirectional transformations that impact on the same model and how the use of a more refined notion of consistency can help in cases where this is not possible. In the process, we develop an abstract theory of parts of a model that are read or modified by a bidirectional transformation. We relate the work to megamodelling and discuss further research that is needed.
Perdita Stevens
Softw. Syst. Model.1
2020 Connecting software build with maintaining consistency between models: towards sound, optimal, and flexible building from megamodels
abstract
Abstract Software build systems tackle the problem of building software from sources in a way which is sound (when a build completes successfully, the relations between the generated and source files are as specified) and optimal (only genuinely required rebuilding steps are done). In this paper, we explain and exploit the connection between software build and the megamodel consistency problem. The model-driven development of systems involves multiple models, metamodels and transformations. Transformations—which may be bidirectional—specify, and provide means to enforce, desired “consistency” relationships between models. We can describe the whole configuration using a megamodel. As development proceeds, and various models are modified, we need to be able to restore consistency in the megamodel, so that the consequences of decisions first recorded in one model are appropriately reflected in the others. At the same time, we need to minimise the amount of recomputation needed; in particular, we would like to avoid reapplying a transformation when no relevant changes have occurred in the models it relates. The megamodel consistency problem requires flexibility beyond what is found in conventional software build, because different results are obtained depending on which models are allowed to be modified and on the order and direction of transformation application. In this paper, we propose using an orientation model to make important choices explicit. We show how to extend the formalised build system pluto to provide a means of restoring consistency in a megamodel, that is, in appropriate senses, flexible, sound and optimal.
Perdita Stevens
Softw. Syst. Model.1
2018 Is Bidirectionality Important?
Perdita Stevens
ECMFA1
2018 Towards sound, optimal, and flexible building from megamodels
abstract
The model-driven development of systems involves multiple models, metamodels and transformations. Transformations -- which may be bidirectional -- specify, and provide means to enforce, desired "consistency" relationships between models. We can describe the whole configuration using a megamodel. As development proceeds, and various models are modified, we need to be able to restore consistency in the megamodel, so that the consequences of decisions first recorded in one model are appropriately reflected in the others. At the same time, we need to minimise the amount of recomputation needed; in particular, we would like to avoid reapplying a transformation when no relevant changes have occurred in the models it relates. In general, however, different results are obtained depending on which models are allowed to be modified and on the order and direction of transformation application. In this paper we propose using an orientation model to make important choices explicit. We explain the relationship between software build systems and the megamodel consistency problem. We show how to extend the formalised build system pluto to provide a means of restoring consistency in a megamodel that is, in appropriate senses, flexible, sound and optimal.
Perdita Stevens
MoDELS1
2018 Editorial
abstract
No abstract available.
Ewen Denney, Perdita Stevens, Andrzej Wasowski
Formal Aspects Comput.2
2018 Foreword
Martin Hofmann 0001, David Aspinall 0001, Brian Campbell 0001, Ian Stark, Perdita Stevens
Theor. Comput. Sci.5
2017 Bidirectional Transformations in the Large
abstract
The model-driven development of systems involves multiple models, metamodels and transformations, and relationships between them. A bidirectional transformation (bx) is usually defined as a means of maintaining consistency between "two (or more)" models. This includes cases where one model may be generated from one or more others, as well as more complex ("symmetric") cases where models record partially overlapping information. In recent years binary bx, those relating two models, have been extensively studied. Multiary1bx, those relating more than two models, have received less attention. In this paper we consider how a multiary consistency relation may be defined in terms of binary consistency relations, and how consistency restoration may be carried out on a network of models and relationships between them. We relate this to megamodelling and discuss further research that is needed.
Perdita Stevens
MoDELS1
2015 Notions of Bidirectional Computation and Entangled State Monads
Faris Abou-Saleh, James Cheney, Jeremy Gibbons, James McKinna, Perdita Stevens
MPC5
2015 Guest editorial to the special section on MODELS 2012
Jürgen Kazmeier, Perdita Stevens
Softw. Syst. Model.2
2014 Bidirectionally Tolerating Inconsistency: Partial Transformations
Perdita Stevens
FASE1
2013 Enforcing QVT-R with mu-Calculus and Games
Julian C. Bradfield, Perdita Stevens
FASE2
2013 A simple game-theoretic approach to checkonly QVT Relations
Perdita Stevens
Softw. Syst. Model.1
2012 Recursive Checkonly QVT-R Transformations with General when and where Clauses via the Modal Mu Calculus
Julian C. Bradfield, Perdita Stevens
FASE2
2010 Bidirectional model transformations in QVT: semantic issues and open questions
Perdita Stevens
Softw. Syst. Model.1
2008 Towards an Algebraic Theory of Bidirectional Transformations
Perdita Stevens
ICGT1
2007 Bidirectional Model Transformations in QVT: Semantic Issues and Open Questions
Perdita Stevens
MoDELS1
2007 GUIDE: Games with UML for interactive design exploration
Jennifer Tenzer, Perdita Stevens
Knowl. Based Syst.2
2006 On modelling recursive calls and callbacks with two variants of Unified Modelling Language state diagrams
abstract
Abstract An important use of the Unified Modelling Language (UML) is modelling synchronous object-oriented software systems. State diagrams are used to model interesting object behaviour, including method invocation. However, almost all previous work formalising state diagrams has assumed asynchronous communication. We show that UML’s “run to completion” semantics leads to anomalous behaviour in the synchronous case, and in particular that it is not possible to model recursive calls, in which an object receives a second synchronous message whilst still in the process of reacting to the first. We propose a solution using state diagrams in two complementary ways.
Jennifer Tenzer, Perdita Stevens
Formal Aspects Comput.2
2005 Guest editorial to the special issue on UML2003
Perdita Stevens, Jon Whittle 0001
Softw. Syst. Model.1
2005 Functional programming languages for verification tools: a comparison of Standard ML and Haskell
Martin Leucker, Thomas Noll 0001, Perdita Stevens, Michael Weber 0002
Int. J. Softw. Tools Technol. Transf.3
2004 Guest editors' introduction: Advancements and extensions of verification techniques
Joost-Pieter Katoen, Perdita Stevens
Int. J. Softw. Tools Technol. Transf.2
2003 Modelling Recursive Calls with UML State Diagrams
Jennifer Tenzer, Perdita Stevens
FASE2
2003 Small-Scale XMI Programming: A Revolution in UML Tool Use?
Perdita Stevens
Autom. Softw. Eng.1
2002 Playing Games with Software Design
Perdita Stevens
COORDINATION1
2002 Enriching OCL Using Observational Mu-Calculus
Julian C. Bradfield, Juliana Küster Filipe Bowles, Perdita Stevens
FASE3
2002 Panel Introducion
abstract
The IEEE/ACM CCSE initiative to propose guidelines for an undergraduate program in software engineering provides an opportunity to rethink the role of software maintenance and evolution in software engineering curricula. The purpose of this panel is to share experiences and discuss novel ways in which evolution and maintenance can be incorporated in an undergraduate software engineering curriculum.
Arie van Deursen, Timothy Lethbridge, Perdita Stevens
ICSM3
2002 On the interpretation of binary associations in the Unified Modelling Language
Perdita Stevens
Softw. Syst. Model.1
2002 Refinement in Z and object-Z: foundations and advanced applications
Perdita Stevens
Softw. Test. Verification Reliab.1
2001 On Use Cases and Their Relationships in the Unified Modelling Language
Perdita Stevens
FASE1
1999 Some Issues in the Software Engineering of Verification Tools
Perdita Stevens
TACAS1
1998 Abstract Games for Infinite State Processes
Perdita Stevens
CONCUR1
1998 Systems Reengineering Patterns
abstract
The reengineering of legacy systems --- by which we mean those that have value and yet "significantly resist modification and evolution to meet new and constantly changing business requirements" --- is widely recognised as one of the most significant challenges facing software engineers. The problem is widespread, affecting all kinds of organisations; serious, as failure to reengineer can hamper an organisation's attempts to remain competitive; and persistent, as there seems no reason to be confident that today's new systems are not also tomorrow's legacy systems.This paper argues1. that the main problem is not that the necessary expertise does not exist, but rather, that it is hard for software engineers to become expert;2. that the diversity of the problem domain poses problems for conventional methodological approaches;3. that an approach via systems reengineering patterns can help.We support our contention by means of some candidate patterns drawn from our own experience and published work on reengineering. We discuss the scope of the approach, how work in this area can proceed, and in particular how patterns may be identified and confirmed.
Perdita Stevens, Rob Pooley
SIGSOFT FSE1
1998 Practical Model-Checking Using Games
Perdita Stevens, Colin Stirling
TACAS1
1998 A Verification Tool Seveloper's Vade Mecum
Perdita Stevens
Int. J. Softw. Tools Technol. Transf.1