My research interests broadly span the areas of functional programming, operating systems, distributed systems and service computing with a focus on building practical solutions for data-centric applications. Currently, I am particularly interested in engineering Unikernel operating systems, and exploring programming models for assembling distributed systems that exhibit reactive properties which may not be adequately captured by existing object-oriented models designed for static, monolithic systems. Previously, I worked on a range of research topics related to the management of scientific workflow applications, engineering decentralised orchestration systems, designing data coordination programming languages, partitioning computations to support parallelism in distributed systems, and heuristic techniques for deploying code closer to data.
I am a co-investigator of a research project that aims to build an operating system known as Stardust , which supports the deployment of applications or services in the Cloud, with Prof Alan Dearle and Dr Jonathan Lewis at the University of St Andrews.
Stardust is a library operating system that permits an application to run in a virtual, light-weight and secure execution environment. It has a minimal kernel that manages virtual hardware resources presented by an underlying hypervisor. It also features a pre-emptive thread scheduler, supports multiple processors, and provides support for applications written in C and object-oriented programming languages including C++ and Java. Recently, we have started evaluating Stardust in terms of performance and scalability compared to monolithic operating systems and modern software containers.
During my doctoral studies, I worked on the construction of decentralised service-oriented orchestration systems for scientific workflows. Modern science relies on workflows to capture, process, and analyse data obtained from scientific instruments. Scientific workflows are precise specifications of experiments in which multiple computational tasks can be coordinated based on the data flows between them. Such workflows may rely on services that perform computation over geolocated resources and involve the management of data flows between them. Typically, a centralised orchestration approach is used to execute them such that all data pass through a single engine that coordinates the interactions between the services, which causes unnecessary network traffic that leads to a performance bottleneck.
I engineered a decentralised service orchestration system that relies on a high-level, functional, data coordination programming language called Orchestra for composing service interactions. The system architecture relies on distributed engines, each of which is responsible for executing part of the overall workflow. By analysing the workflow specification, a specialised compiler generates an executable graph-based data structure of the workflow which may then be partitioned locally into smaller fragments that can be transmitted to the most appropriate remote engines to execute them based on computation placement analysis. This approach supports the deployment of the workflow logic closer to data, which reduces the overall data transfer between services and improves execution time.
Microsoft Windows Azure Research Award ($20,000), Principal Investigator (PI), 2015 - 2016.
The Case for Unikernels. In the Fourth Annual UK System Research Challenges Workshop, United Kingdom, 2019. Lightning talk.
Towards Unikernel Support for Distributed Microservices. Adobe Tech Summit, San Francisco, United States of America, 2019. Industry session talk.
Unikernel support for the deployment of light-weight, self-contained, and latency avoiding services. In the Third Annual UK System Research Challenges Workshop, United Kingdom, 2018. Workshop session talk.
On Engineering Unikernels, Systems Seminars Series, University of St Andrews, United Kingdom, 2018. Seminar talk.
Decentralised Orchestration of Service-oriented Workflows, Systems Seminar Series, University of St Andrews. Seminar talk.
A Dataflow Language for Decentralised Orchestration of Web Service Workflows, Scottish Programming Languages Seminar (SPLS), 2013. Invited talk.
Ward Jaradat, Alan Dearle, and Jonathan Lewis. Unikernel Support for the Deployment of Light-weight, Self-contained, and Latency Avoiding Services. 3rd Annual UK System Research Challenges Workshop, 2018. Abstract only .
Ward Jaradat, Alan Dearle, and Adam Barker. Towards an Autonomous Decentralised Orchestration System. Concurrency and Computation: Practice and Experience, 2016. Invited journal paper to the Special Issue of Big Data and Smart Computing: Methodology and Practice .
Ward Jaradat. On the Construction of Decentralised Service-oriented Orchestration Systems. Doctoral Dissertation, University of St Andrews, 2015.
Ward Jaradat, Alan Dearle, and Adam Barker. Workflow Partitioning and Deployment on the Cloud using Orchestra. In Proceedings of the 7th IEEE/ACM International Conference on Utility and Cloud Computing, pages 251-260, IEEE Computer Society, 2014. Acceptance Rate (38/198): 19% .
Ward Jaradat, Alan Dearle, and Adam Barker. A Dataflow Language for Decentralised Orchestration of Web Service Workflows. In Proceedings of the 9th IEEE World Congress on Services, pages 13-20, IEEE Computer Society, 2013.
Ward Jaradat, Alan Dearle, and Adam Barker. An Architecture for Decentralised Orchestration of Web Service Workflows. In Proceedings of the 20th IEEE International Conference on Web Services, pages 603-604, IEEE Computer Society, 2013.