University of Sheffield

Anthony J H Simons, MA PhD

Senior Lecturer in Computer Science
University Computer Science Testing Group Space Tech Europe Industry

PhD Research Students

Sponsor Project Description Student

Saudi Arabia Cultural Bureau

PhD 2021

Investigation of Techniques to Enhance Task Scheduling and Runtime Performance in FLAME GPU

FLAME (Flexible Large-scale Agent-based Modelling Environment) is the massively parallel multi-agent simulator for HPC, created at Sheffield. FLAME GPU is the more recent port of FLAME onto GPU processors. This project seeks to apply insights from scheduling algorithms in other highly parallel multi-processing environments to FLAME GPU. The expectation is that a smarter layering of the agents' turn-taking process will significantly increase the speed and efficiency of simulations; but minimising data movement between CPU and GPU may yield even higher benefits.

Mrs Eidah Alzahrani

Government of Ghana

PhD 2019

Monitoring and Adaptation of Pooled Cloud Computing Resources

This project seeks to understand the different ways in which cloud-based software services may suffer from a loss of performance, or outright failure. It will construct a cloud simulator that realistically models the behaviour of load-balancers and scaling under different kinds of loading. Monitors will report performance across different layers of the cloud stack, and proactive measures based on adaptive filtering (Least Mean Square and Kalman H2 filters) will be devised predict loss of performance or service failure.

Dr Thomas Gyeera

Saudi Arabia Cultural Bureau

PhD 2018

Automatic Framework to Aid Therapists to Diagnose Children who Stutter

This Phd project is part of the wider CloudCAST (Cloud-based Clinical Applications of Speech Technology) project funded by the Leverhulme Trust. This project focuses on the diagnosis and therapy support for stuttering (or stammering). The goal is to find a way of automatically classifying the severity of stuttering in young children from recordings of their speech, and to offer suitable advice on therapy. A key aspect is maximising the exploitation of small amounts of training data, using different kinds of classifier with data augmentation, and a hybrid numerical and symbolic approach for detecting stuttering events.

Dr Sadeen Alharbi



Towards an Integration and Coordination Framework for Architecting Multi-layered Monitoring and Adaptation for Service-based Applications

Multi-layered monitoring and adaptation is a desirable goal for service-based systems with autonomous recovery. The layers refer to the different levels of abstraction at which measurements may be taken (hardware, network, platform, tenant, application). This project seeks to develop a framework for integrating and coordinating diverse monitoring and adaptation mechanisms, since little is currently known about the cross-layer effects of specific adaptations.

Mr Kostas Bratanis

SEERC fee-waiver

PhD 2017

Policy-Driven Governance in Cloud Service Ecosystems

Cloud platform providers and brokers need to manage the software lifecycle and quality assurance of the software services offered on their platforms. This is difficult when many custom service providers offer heterogeneous services. Governance is the process of controlling the service lifecycle and the associated service dependencies. This project investigates the use of semantic technologies for improving the definition and enforcement of governance policies.

Dr Dimitrios Kourtesis

SEERC fee-waiver

PhD 2016

A Framework Enabling the Cross-Platform Development of Service-based Cloud Applications

Cloud application platforms offer platform-specific APIs so that developers may integrate new applications with collections of platform-basic micro-services. Unfortunately, different platform vendors provide slightly different APIs, working to slightly different business process models. This project has developed a generalised Java framework that encapsulates the variations between different micro-service business models and APIs, so that developers may integrate new applications across multiple, heterogeneous platforms.

Dr Fotios Gonidis

Saudi Arabia Cultural Bureau

PhD 2015

A Business User Model-Driven Engineering Method for Developing Information Systems

This project is concerned with raising the level of abstraction at which information systems are created, using simple business end-user knowledge and Model-Driven Engineering. The methodology, known as BUILD (Business-User Information-Led Development), uses a forwards-engineering model transformation approach, with models from the Micro-Modelling language (μML) and transformation rules from ReMoDeL (Reusable Model Design Languages). Executable data-intensive applications are synthesised, as a proof of concept.

Dr Ahmad Subahi

University of Malta/ Self-funded

PhD 2013

An Object-Oriented Data and Query Model

This project revisits the formal foundations of Object-Oriented Databases (OODBs), developing a declarative object algebra using Flora-2, an object-oriented programming system based on F-logic. The algebra is closed; it is typed; its ranges and outputs are homogeneous sets of objects; operators work on either values or logical identifiers; a result set is asserted; and a query expression's meta details are asserted too. The algebra has ten operators. The correctness of ERMs and translations to ODMG's Object Query Language (OQL) are also explored.

Dr Joseph Vella

SEERC fee-waiver

PhD 2011

Automated Runtime Testing of Web Services

This project investigates the feasibility of testing Web services for functional correctness. The aim is to introduce rigour and automation into the testing process, so that service requestors can verify Web services with correctness guarantees and with the aid of tools. The well-studied Stream X-Machine (SXM) formalism has been selected as suitable for modelling both the dynamic behavior and static data of Web services, while the proven SXM testing method associated is used to derive test sets that can verify the correctness of the implementations.

Dr Ervin Ramollari

PROMEP, Mexico

PhD 2010

The Abstract Semantics of Tasks and Activity in the Discovery Method

This project develops an abstract syntax and denotational semantics for the hierarchical decomposition of tasks and workflows, as used in Simons' Discovery Method for developing object-oriented systems. Task Structure and Task Flow diagrams are mapped onto a quotient algebra, which is given a denotational trace semantics, which correctly capture the behaviour of empty, abort and return events. A model-checker for the task algebra is implemented in Haskell, within which temporal logic properties (LTL and CTL) of models may be checked.

Dr Carlos Fernández

Sheffield fee-waiver


Synthesis of State Machines from UML Use Cases for Automated Testing

This project seeks to adapt the X-Machine testing method, developed at Sheffield, for UML system-level testing. Annotated UML use cases are transformed into state machines for each use case. Machines are combined and merged on the basis of common asserted state properties. Complete functional test sets are generated from the merged system-level machine.

Miss Kalliopi Tigka

Indonesia/ Self-funded

PhD 2005

Pattern-driven Approach in Partitioning Distributed Object Applications

This project developed a novel integration of design techniques taken from the Software Architecture field and the Object-Oriented Design field. While the former makes top-down decisions on the basis of prioritising architectural concerns, the latter organises systems bottom-up on the basis of module cohesion and coupling. The resulting pattern-driven approach is presented as an extension to Simons' Discovery Method for developing object-oriented systems.

Dr Dita Sardjono

Toshiba Co., Japan

PhD 2003

A Method for Generating Test Cases with the Unified Modeling Language for Use with Hyper-Sequential Programming

Hyper-sequential programs are a class of concurrent programs for which the fully interleaved serial expansions are tractable. This project adapted the Stream X-Machine testing method, developed at Sheffield, for use with hyper-sequential programs. Formalised UML activity graphs were used as the basis for generating composable specifications. Hyper-sequential programs were implemented in Java and tested for conformance to the specifications. Interception in the virtual machine was used as an oracle.

Dr Chris Rudram

CAD Consultants, London

PhD 1999

A Dynamic Business Object Architecture for Supporting Strategic Management Planning

This project developed a methodology and a tool for tracking business process improvements. The tool related high-level business strategy to ISO 9000 business process descriptions, UML 1.3 software designs and modular software systems developed using a 4GL and database. The approach was used successfully by CAD Consultants to improve their business strategy, prompting the development and release of a new product line in credit reinsurance.

Dr Kitty Hung


MRes 1999

Automatic Object-Oriented Design

This project developed an intelligent tool for optimising the system-level design of large object-oriented systems. A rule-based system in Prolog was developed to model and transform system-level designs expressed according to Wirfs-Brock's Responsibility-Driven Design. Transformation rules used class coupling, communication channels ("contracts") and fine scale method call-graph information. The transformed designs exhibited many families of Design Patterns, as evidence that the technique generated high-quality designs.

Mr Tom Baldwin


PhD 1996

A Language with Class: The Theory of Classification Exemplified in an Object-Oriented Programming Language

Finding that object-oriented programming languages had developed in advance of any formal theory of classification, this project developed a mathematical theory of classification. A second-order function-bounded λ-calculus was shown to encompass all forms of classical and object-oriented type polymorphism, expressed variously as type constructors, generic parameters, classes, inheritance and run-time polymorphism. An experimental programming language Brunel was developed to exemplify aspects of the theory.

Dr Anthony Simons

University of Lisbon/ Self-funded

PhD 1996

Acoustic-Phonetic Analysis of Portuguese for Automatic Speech Recognition

This project developed the first ever automatic speech recognition system for the Portuguese language. The approach used a rule-based expert system for analysing segments in the acoustic spectrum. The system identified phonemes from the trajectories of formants, the major resonances in the vocal tract. The thesis was awarded Magna cum Laude by the examiners.

Dr Fernando Martins


PhD 1995

A Large-Scale Analysis of the Acoustic-Phonetic Markers of Speaker Sex

This project achieved the first large-scale analysis of speaker sex differences, using the MIT Timit corpus. Previously assumed anecdotal evidence for particular differences between male and female speech was challenged by this survey, whose wider coverage and more systematic analysis proved that many traits did not hold universally. Instead, tendencies were found to implicate pitch, spectral slope and breathiness as the main discriminators.

Dr Gavin Dempster