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.
People |
ORCID iD |
Peter Pietzuch (Principal Investigator) |
Publications
Bacon J
(2010)
Middleware 2010
Bacon J
(2008)
Access control in publish/subscribe systems
Bacon, J
(2010)
Enforcing End-to-end Application Security in the Cloud
Bacon, J;
(2008)
Access Control in Publish/Subscribe Systems
Castro Fernandez R
(2013)
Integrating scale out and fault tolerance in stream processing using operator state management
David M. Eyers (Author)
(2009)
Event-Processing Middleware with Information Flow Control (Poster)
Eyers, D.M
(2009)
Event-Processing Middleware with Information Flow Control (Poster)
in 10th International ACM/IFIP/USENIX Middleware Conference (Middleware'09)
Fernandez, R.C;
(2014)
Grand Challenge: Scalable Stateful Stream Processing for Smart Grids
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 |