Dr. Martin Chapman

Research Associate at King's College London.

Involved in developing models and tooling for computable phenotype definitions, funded by HDR UK and the GSTT BRC.

Selected publications

Desiderata for the Development of Next-Generation Phenotype Libraries 2021
M Chapman, S Mumtaz, L V Rasmussen, A Karwath, G V Gkoutos, C Gao, D Thayer, J A Pacheco, H Parkinson, R L Richesson, E Jefferson, S Denaxas and V Curcin

Using Computable Phenotypes in Point-of-Care Clinical Trial Recruitment 2021
M Chapman, J Domínguez, E Fairweather, B C Delaney and V Curcin

Covid-19 Analytics in Jupyter: Intuitive Provenance Integration Using Provit 2021
M Chapman, E Fairweather, A Khan and V Curcin

Phenoflow: a Microservice Architecture for Portable Workflow-Based Phenotype Definitions 2020
M Chapman, L V Rasmussen, J A Pacheco and V Curcin

Computational Argumentation-Based Clinical Decision Support 2019
M Chapman, P Balatsoukas, N Kökciyan, K Essers, I Sassoon, M Ashworth, V Curcin, S Modgil, S Parsons and E I Sklar

A Microservice Architecture for the Design of Computer-Interpretable Guideline Processing Tools 2019
M Chapman and V Curcin

Cyber hide-and-seek 2016
M D Chapman

Learning the Language of Error 2015
M Chapman, H Chockler, P Kesseli, D Kroening, O Strichman and M Tautschnig

Playing Hide-and-Seek an Abstract Game for Cyber Security 2014
M Chapman, G Tyson, P McBurney, M Luck and S Parsons

Social Networking and Information Diffusion in Automated Markets 2012
M Chapman, G Tyson, K Atkinson, M Luck and P McBurney


nr Store data using different non-repudiation mechanisms.
phenoflow Portable, workflow-based phenotype definitions.
withings Middleware for interacting with Withings Nokia Health devices.
jupyter JupyterHub Docker configuration 🐋
tmrweb Store clinical guidelines and determine their interactions.
ehr-fhir-converter Convert arbitrary EHR extracts to FHIR.
ohdsi OHDSI stack Docker configuration 🐋
learning-errors Abstractly represent software error traces as finite automata.
hands A plugin for the JGraphT library facilitating the running of Search Game Hide-and-Seek simulations.
drg Infrastructure for running a distributed HANDS research game.
social-traders A plugin for the multi-market simulator JCAT, enabling social interaction between autonomous traders.

Previous positions

2017 Research Associate at King's College London

Involved in the development of a proof of concept collaborative mobile decision-support system to help patients suffering from chronic diseases to self-manage their treatment, under the project 'collaborative mobile decision support for managing multiple morbidities (CONSULT)', funded by the EPSRC. Focus included consumer sensor integration, electronic health record standardisation, formal clinical guideline representation and reasoning, and the application of distributed ledger technologies to provenance.

2015 Teaching Fellow at King's College London

Assigned as a lecturer to King's two-semester, first-year programming course, working with over 350 students per cohort. Focussed on innovative teaching practices, including automated assessment, practical higher education teaching and student-lead teaching and learning, particularly in relation to the teaching of programming. Additional roles included deputy exam board chair, deputy senior tutor, disability support tutor and head of technology-enhanced learning. Qualified as a Fellow of the Higher Education Academy and awarded King's College London's prestigious Teaching Excellence Award.

2014 Research Assistant at King's College London

Involved in the development of a tool that abstractly represents software error traces as finite automata, under the project `Facilitating Code Merging with User-Defined Abstractions’, funded by Google. Focussed on the development of a module to estimate model-checking bounds, and the merge feature described in the project title.

2011 Graduate Teaching Assistant at King's College London

Delivered seminars and practical sessions in programming practice, applications and data structures, computer systems and artificial intelligence. Responsible for coordinating the other teaching assistants assigned to these topics. Atypically for this position, delivered lectures in programming practice. Twice awarded the department's Outstanding Teaching assistant award.


2016 Doctor of Philosophy (Ph.D.) in Computer Science at King's College London. 

2011 Bachelor of Science (BSc) in Computing at University of Liverpool. 


2017 Teaching Excellence Award King's College London

In 2017 I was awarded King's College London's prestigious Teaching Excellence Award for my work teaching programming to undergraduate students. I was previously nominated for the award in 2012, 2013 and 2016. In 2017, nearly 2,500 students voted in the awards, and winners were chosen from across King's 6,800 staff. The award highlighted my contributions to high-quality student feedback, and came with a number of positive comments from students.


2020 - 2021 Reviewer: AMIA Annual Symposium 
2020 Reviewer: AMIA Informatics Summit 
2017 Reviewer: Digital Health 
2017 - 2021 Reviewer: Learning Health Systems 
2017 - 2021 Programme Comittee: Workshop on Trusted Smart Contracts (WTSC) 
2016 - 2018 Programme Comittee: Autonomous Agents and Multi-Agent Systems (AAMAS) 
2015 Reviewer: Computer-Aided Verification (CAV) 
2012 Reviewer: European Conference on Multi-Agent Systems (EUMAS) 
2012 - 2018 Reviewer: The Knowledge Engineering Review (KER) 


SocialTraders: A practical examples of agents. Internal Research Seminar, King's College London.
Martin Chapman: Research Overview, 2019 King's College London
Social Network and Diffusion in Markets as demonstrated by the CAT platform. AAMAS, AMEC-TADA, Valencia, Spain.
Phenoflow: A Microservice Architecture for Portable Workflow-based Phenotype Definitions AMIA Informatics Summit, 2021
MICRE: Microservices In MediCal Research Environments King's College London
Building a Blockchain POC for a major financial institution: the capabilities and limitations of existing technologies Bitcoin and Blockchain Technologies Workshop, The University of Stirling
Playing Hide-and-Seek: An Abstract Game for Cyber Security AAMAS, ACYSE, Paris, France.
COVID-19 Analytics in Jupyter: Intuitive Provenance Integration using ProvIt Provenance Week, 2021
Computational Search Games Centre for Computational Finance and Economic Agents, The University of Essex, 2014.
A Microservice Architecture for the Design of Computer-Interpretable Guideline Processing Tools EUROCON, COHEAT, Novi Sad, Serbia
Cyber Hide-And-Seek: Ph.D. Viva Presentation King's College London
Using computable phenotypes in point of care clinical trial recruitment Medical Informatics Europe (MIE), 2021
Martin Chapman: Research Overview, 2017 King's College London
Abstractions for Network Security Internal Research Seminar, King's College London, 2012.


Jae An: Smart Home Inventory Management using a Private Blockchain and a Purchase Order Contract
Namu-Ujin Natsagnyam: BlocVote: An E-voting system providing an anonymous, secure, transparent, and non-revocable sequence of votes
Mustafa Al-Bassam: trustery
Rachel Tee: Hopped: A prototype food delivery platform using smart routing
Martin Hartt: easyapi
Jahangir Alom: HueDecide: A lecture voting system augmented by IoT

Teaching articles

Tracking Aliens
Tracking Sharks

Teaching software

coursework-generator Framework to generate unique coursework assignments.
ppa-client A small client-side API designed to enable the acquisition of assignment data.
document-marker A simple program to facilitate the visual marking of assignments.
ppa-server Serve data to students for use in student projects.

Teaching talks

Programming at King's King's College London.
Using screencasts to teach undergraduate programming King's Learning Institute, King's College London


Programming in Java: Arrays and Array Lists
Programming in Java: Recursion
Programming in Java: Object and Classes
Programming in Java: Why Object-Orientation?
Programming in Java: Introduction
Programming in Java: Storing Data
Programming in Java: Getting Started
Programming in Java: Organising Your Code
Programming in Java: Combining Objects
Programming in Java: Control Flow
Programming in Java: Library Classes
Programming in Java: Arrays
An Introduction to Programming in Java: Arrays

Online Tutorials

PPA 2016, Assignment 13: Hints and Tips
PPA 2016, Assignment 8: Feedback
PPA 2016, Assignment 2: Hints and Tips
PPA 2016, The Class Interface and Encapsulation (Slide 119, Topic 4): Supplementary Example
PPA 2016, Assignment 10: Feedback
PPA 2016, Assignment 3: Feedback
PPA 2016, Assignment 4: Feedback
PPA 2016, Assignment 12 and Assignment 13 (Preliminaries): Feedback
Tube - 4CCS1PRP - King's College London
PPA 2016, Assignment 4: More Hints and Tips
Superheroes - 4CCS1PRP - King's College London
PPA 2016, Assignment 6: Feedback
PPA 2016, Assignment 7: Feedback
PPA 2016, Assignment 13: Feedback (View and Controller)
PPA 2016, Assignment 7: Hints And Tips
PPA 2016, CWX Requirement 0: Brief (Version Control Part 2)
PPA 2016, Assignment 9: Feedback
PPA 2016, Week 14, Lecture Prerequisites, Version Control Part 1
PPA 2016, Assignment 5: Hints and Tips
PPA 2016, Assignment 2: Feedback
Group selection using Team Feedback
Noughts and Crosses - 4CCS1PRP - King's College London
PPA 2016, Assignment 4: Hints and Tips
PPA 2016, Assignment 14: Feedback (Component MVC)
PPA 2016, Assignment 11: Feedback
Roomba - 4CCS1PRP - King's College London
Modelling a Bank Account (8): Testing Transfer (Slide 85, Topic 4)
PPA 2016, Assignment 14: Feedback (Regex and Date Formatting)
PPA 2016, Assignment 13: Feedback (Model)
PPA 2016, Assignment 5: Feedback
Introduction to Object-Orientation
PPA 2016, Assignment 3: Hints and Tips
PPA 2016, Assignment 9: Hints and Tips
Battlefield - 4CCS1PRP - King's College London
PPA 2016, Static Methods and Fields (Slides 98 - 127, Topic 6): Supplementary Example


pra-minor-coursework-2016: Programming exercises, 2016.
pra-code-dojos-2016: Group programming tasks, 2016.
prp-exercises: Programming exercises, 2011 onwards. Many in draft form.
pra-major-coursework-2016: Programming project, 2016.
ppa-minor-coursework-2016: Programming exercises, 2016.
prp-minor-coursework-2015: Programming exercises, 2015.
ppa-major-coursework-2017: Programming project, 2017.


coincoinIllustrative cryptocurrency client and middleware.
not-so-naivecoinAdding Bitcoin-like features to Naivecoin.
world-cup-sweepOffice world cup sweep stake calculator.
google-scholar-extendednodejs module for listing profile information



© Martin Chapman