Smart Flow - Extendable Event-Based Middleware

Lead Research Organisation: Imperial College London
Department Name: Computing

Abstract

Healthcare providers world-wide are developing electronic solutions to improve patient care and reduce costs. This is a complex and challenging endeavour: such systems need to integrate many distributed and heterogeneous applications and coordinate widely distributed operations as events occur, without compromising patient safety and privacy. Middleware software is the plumbing that interconnects these various applications, however commercial off-the-shelf middleware is unable to adapt to the special requirements of the medical domain: e.g. a healthcare system must audit all access to a patient's records as they flow through the network and yet the audit data must not itself compromise confidentiality. This kind of confidential audit is not currently supported, yet would be best performed within middleware.Similarly, a haematology department would need to detect patterns of events: abnormal blood results sent to the electronic patient notes but with no timely confirmation of receipt would signal a network failure or other delay, and haematology would warn the ward. Middleware support for this does not exist, yet would be vital for an efficient solution. A major challenge in supporting such novel middleware functionality is that there is no single set of services that covers all application requirements. Instead, middleware functionality must evolve as new applications are added.The focus of this proposal is to address this challenge with research into an extendable, event-based middleware architecture, Smart Flow, which can integrate heterogeneous systems and provide a framework for dynamically managing middleware extensions. It will cover common requirements from medical domains, such as privacy, auditing and event pattern detection, without sacrificing efficiency.Applications coordinate all activity by sending and receiving messages using an event-driven approach. Messages are handled by Smart Flow nodes, as dictated by a set of extensions. Extensions may be responsible for intelligently routing messages between hospital departments, auditing message flow, applying access control checks to patient data and encrypting patient data to preserve confidentiality. By pushing this functionality into an intelligent middleware layer, all applications in a medical system can use these services, thus simplifying application design and deployment and improving performance. As new departments with new applications (and requirements) join the system, extensions can be added dynamically to Smart Flow nodes in a safe and consistent manner.Medical systems are loosely coupled, with a mixture of direct, synchronous interactions (e.g. looking up a patient's blood results), and indirect, asynchronous connections (e.g. a monthly batch of pathology reports, sent electronically to a cancer registry). To describe a middleware and its configurations, we will devise a formalism that can capture high-level middleware features, their decomposition into lower-level Smart Flow extensions, and the dependencies and exclusion relationships between extensions. This will let each application specify which extensions it needs. Dynamic reconfiguration will allow Smart Flow to support requirements that change over time.We will also extend the event-driven approach to the inner workings of the middleware itself. Each Smart Flow node will use an event-based kernel to drive the flow of information between extensions, in the form of explicit messages. The advantage of this approach is that existing middleware systems can be integrated with Smart Flow by treating them as particularly rich extensions. This means that Smart Flow can enhance existing middleware with extra features in a way that is straightforward, consistent and easily configured. Making information flow explicit will also enhance security, by identifying and regulating the use of internal messages.
 
Description The research work in this project led to advances in the area of information flow control techniques, showing how these theoretical idea can be applied in practice to engineer more secure distributed systems. We demonstrated the benefit of these techniques in the healthcare domain for IT systems that handle confidential patient healthcare data but must comply with data protection legislation.
Exploitation Route The project work was done in association with NHS ECRIC, the National Cancer Registration Service, which took some of the developed results forward as part of their own software systems.
Sectors Digital/Communication/Information Technologies (including Software),Healthcare

URL http://lsds.doc.ic.ac.uk/projects/SmartFlow
 
Description The SmartFlow project developed a range of technologies and new approaches to protect the confidentiality of healthcare data. In particular, it resulted in (a) the DEFCON model for creating secure event-based application in the Java programming language; (b) the PHP Aspis tool for preventing injection attacks in PHP web applications; and (c) the SafeWeb middleware for guaranteeing end-to-end security of web-based applications.
First Year Of Impact 2012
Sector Digital/Communication/Information Technologies (including Software),Financial Services, and Management Consultancy,Healthcare
Impact Types Societal,Economic,Policy & public services

 
Description CloudFilter
Amount £135,209 (GBP)
Funding ID EP/J020370/1 
Organisation Engineering and Physical Sciences Research Council (EPSRC) 
Sector Public
Country United Kingdom
Start 05/2012 
End 05/2013
 
Description CloudSafetyNet: Data-Centric Security for Clouds
Amount £522,000 (GBP)
Funding ID EP/K008129/1 
Organisation Engineering and Physical Sciences Research Council (EPSRC) 
Sector Public
Country United Kingdom
Start 06/2013 
End 06/2016
 
Description Custom and Multicore Technologies for Regular Matching Over Streams
Amount £94,621 (GBP)
Funding ID CASE award 
Organisation BAE Systems 
Sector Academic/University
Country United Kingdom
Start 04/2011 
End 10/2014
 
Description Demonstrating End-to-End Security of NHS Patient Data
Amount £51,907 (GBP)
Funding ID "Pathways to Impact" award 
Organisation Engineering and Physical Sciences Research Council (EPSRC) 
Sector Public
Country United Kingdom
Start 01/2010 
End 01/2011
 
Description SEEP: Scalable and Elastic Stream Processing
Amount £94,621 (GBP)
Funding ID CASE award 
Organisation BAE Systems 
Sector Academic/University
Country United Kingdom
Start 10/2011 
End 09/2014
 
Description SeReCa: Secure Enclaves for Reactive Cloud Applications
Amount € 630,000 (EUR)
Funding ID 645011 
Organisation European Commission 
Sector Public
Country European Union (EU)
Start 01/2015 
End 12/2017
 
Description SecureCloud: Secure Big Data Processing in Untrusted Clouds
Amount € 499,000 (EUR)
Funding ID 690111 
Organisation European Commission 
Sector Public
Country European Union (EU)
Start 01/2016 
End 12/2018
 
Title DEFCON Java Virtual Machine with isolation support 
Description The DEFCON Java Virtual Machine permits event-based applications to be strongly isolated from each other while still sharing the same physical infrastructure. 
Type Of Technology Software 
Year Produced 2010 
Open Source License? Yes  
Impact The DEFCON prototype implementation was used to experiment with the trade-offs between different isolation mechanisms in the Java programming language. 
URL http://lsds.doc.ic.ac.uk/projects/SmartFlow