I am an Associate Professor (Reader in UK terms) at the School of Informatics, University of Edinburgh .

Prior to arriving at Edinburgh, I was a post-doc at Oxford University, Computer Science Department and at Laboratoire d'Informatique de Grenoble (LIG) at Grenoble, France. I graduated with a PhD in Computer Science from the University of Minnesota in Aug 2009. My PhD supervisor was Prof. Mats Heimdahl.


My Research

My research is in the field of software engineering and strives to address challenges in software validation and verification. I am especially interested in

  • Automated testing for blockchain applications - test generation and coverage measurement for Ethereum smart contracts.
  • Automated testing and quality measurement for GPU programs - this work focuses on OpenCL kernels but can be migrated to CUDA, OpenGL, Vulkan.
  • Machine learning applied to the test oracle problem - Automatically classifying test executions as pass/fail.
  • Testing Deep Neural Networks - Robustness evaluation and test generation for deep neural networks.
  • Machine learning for cancer immunotherapy - predicting overall survival, recurrence, motif discovery from immunopeptidomic data for different cancer types.
  • Optimising energy consumed by software. We investigated the energy consumed by software design patterns and proposed compiler optimisations for a couple fo the patterns in recent work.
  • Economic models for incremental software and software on the cloud.

I am looking for PhD students with background in software testing and compilers (or program analysis). Students should have very strong programming skills, preferably in C++. Research topics should be in the field of software enginnering. Fully funded PhD positions are available for UK/EU students. Exceptional overseas students will also be considered.

Research Group

Current Students

Vanya Yaneva
PhD student (4th year)
Accelerating Test Executions on GPUs.

Chao Peng
PhD student (3rd year)
Test generation and coverage for GPU programs.

Tongjie Wang
PhD student (2nd year)
Cancer Immunotherapy.

Sefa Akca
PhD student (2nd year)
Automated Testing of Smart Contracts on Blockchains.

Foivos Tsimpourlas
PhD student (1st Year)
Machine Learning for Compiler Optimisations.

Xiaoliang Wu
PhD student (Starting Jan 2021)
Classifying Test Executions using Neural Networks.

Nick Louloudakis
PhD student (starting Jan 2021)
Firmware Testing.

Past Students

Panos Stratis
Completed PhD in May 2020


  • Software Testing (ST) - 3rd year UG course introducing software testing concepts and providing practical experience with JUnit. I have been teaching this course since 2015.
  • Computer Programming - Skills and Concepts (CP) - 1st year UG course introducing C programming. I co-taught this course in 2017/18 and 2018/19.
  • Embedded Systems (ES) - 4th year UG course (2017/18).
  • Introduction to Software Engineering (Inf2C-SE) - 2nd year UG course (2014/15).

Recent News


  • Dec: Commenced project with Bytedance on Android App Testing.
  • Dec: Our paper, "Supervised Learning over Test Executions as a Test Oracle" was accepted at ACM SAC Software Engineering track 2020.
  • Nov: Awarded H2020 – DT-TDS-04-2020 AI for Genomics and Personalised Medicine in which I am Edinburgh Lead PI: 2021- 2025. Knowledge at the Tip of Your fingers: Clinical Knowledge for Humanity (KATY).
  • Nov: EPSRC Trustworth Autonomous Systems Node in Governance and Regulation led by Prof. Ram Ramamoorthy was awarded. I am excited to be a Co-I working with several others on this project.
  • Nov: Vanya successfully completed her PhD viva with minor corrections. Congratulations Vanya! Prof. Alastair Donaldson and Prof. Bjoern Franke were her examiners.
  • July: ASE 2020 paper accepted - "M3: Semantic API Migrations".
  • June: Poster chair for ISSTA 2021.
  • Jan: GPGPU'20 paper accepted - "Automated test generation for OpenCL kernels using fuzzing and constraint solving."


  • Oct: Awarded Facebook Testing and Verification Research Award for project title "Test Oracle Inference – Supervised Learning over Execution Traces".
  • Sep: External examiner at University of Aberdeen, School of Physics for their MSc Data Science.
  • Sep: Two APSEC'19 research papers accepted - "A Framework for Solidity Contract Instrumentation and Analysis", "SolAnalyser: A Framework for Analysing and Testing Smart Contracts".
  • Aug: PC Member ICST 2020, Testing tools track
  • July: PC Member at ISSTA 2020.
  • May: Nominated for EUSA teaching Awards.
  • Jan: FASE'19 research paper accepted. Title: "CLTestCheck: Measuring Test Effectiveness for GPU Kernels".

I edited a book along with Thomas Wahl for the European funded project, CESAR. The book was published by Springer in March 2013. A glimpse of the book is available here.