Distributed Architectures for Medical Systems Andrew A. Kitchen Computer Integrated Surgery 8 March 2001.

Slides:



Advertisements
Similar presentations
--- IT Acumens. COMIT Acumens. COM SNMP Project. AIM The aim of our project is to monitor and manage the performance of a network. The aim of our project.
Advertisements

The Challenges of CORBA Security It is important to understand that [CORBAsecurity] is only a (powerful) security toolbox and not the solution to all security.
Polaris Server Code: Java Implementation for TINI Andrew A. Kitchen Kevin Wiehe Computer Integrated Surgery 11 May 2001.
High Performance Computing Course Notes Grid Computing.
APPLICATION OF COMPUTER IN MEDICINE BY MASHAEL SAUD ALHARBI.
TINI/CORBA ORB Checkpoint Presentation Walter Leung Michael Wortley.
Embedded Web Hyung-min Koo. 2 Table of Contents Introduction of Embedded Web Introduction of Embedded Web Advantages of Embedded Web Advantages of Embedded.
EEE 435 Principles of Operating Systems Principles and Structure of I/O Software (Modern Operating Systems 5.2 & 5.3) 5/22/20151Dr Alain Beaulieu.
OPC evolution toward Unix Mark Beharrell IT/CO, CERN, Geneva, Switzerland ICALEPCS ― October 12th, 2005 ►Communication standards within a DCS ►OPC Data.
Network Management Overview IACT 918 July 2004 Gene Awyzio SITACS University of Wollongong.
Technical Architectures
Web-based Distributed Flexible Manufacturing System (FMS) Monitoring and Control Student: Wei Liu Instructor: Dr. Chang Apr. 23, 2003.
A brief look at CORBA. What is CORBA Common Object Request Broker Architecture developed by OMG Combine benefits of OO and distributed computing Distributed.
1. Introducing Java Computing  What is Java Computing?  Why Java Computing?  Enterprise Java Computing  Java and Internet Web Server.
Introduction to Systems Architecture Kieran Mathieson.
Nehal Mehta CS447-Fall20041 Programming Assignment - Health Care Data Access System Presented by TA : Nehal Mehta CS 447 –Fall2004.
Managing Agent Platforms with the Simple Network Management Protocol Brian Remick Thesis Defense June 26, 2015.
Ch 12 Distributed Systems Architectures
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
.NET Mobile Application Development Introduction to Mobile and Distributed Applications.
Introduction to client/server architecture
Picture Archiving And Communication System (PACS)
5205 – IT Service Delivery and Support
Building an Application Server for Home Network based on Android Platform Yi-hsien Liao Supervised by : Dr. Chao-huang Wei Department of Electrical Engineering.
Network File System (NFS) in AIX System COSC513 Operation Systems Instructor: Prof. Anvari Yuan Ma SID:
Introduction To Digital Radiography And PACS
AS Level ICT Mrs. Ghazaal. In the past, when a customer wanted to talk to someone in a company they would usually be able to telephone and be put through.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
What is Enterprise Architecture?
The Old World Meets the New: Utilizing Java Technology to Revitalize and Enhance NASA Scientific Legacy Code Michael D. Elder Furman University Hayden.
Computing on the Cloud Jason Detchevery March 4 th 2009.
NATIONAL INSTITUTE OF SCIENCE & TECHNOLOGY Presented by: Santosh kumar Swain Technical Seminar Presentation by SANTOSH KUMAR SWAIN Roll # CS
Software Aspects of PQ in a DG Context By Dr. Siri Varadan.
◦ What is an Operating System? What is an Operating System? ◦ Operating System Objectives Operating System Objectives ◦ Services Provided by the Operating.
CS 390- Unix Programming Environment CS 390 Unix Programming Environment Topics to be covered: Distributed Computing Fundamentals.
Discrete Event Modeling and Simulation of Distributed Architectures using the DSSV Methodology E. de Gentili, F. Bernardi, J.F. Santucci University Pascal.
Developments in networked embedded system technologies and programmable logic are making it possible to develop new, highly flexible data acquisition system.
Electronic Health Records: Healthcare System’s Common Trends Based on Cloud Computing Group 2: OU Jin FANG Ting
1 Introduction to Middleware. 2 Outline What is middleware? Purpose and origin Why use it? What Middleware does? Technical details Middleware services.
Personal Computer - Stand- Alone Database  Database (or files) reside on a PC - on the hard disk.  Applications run on the same PC and directly access.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
Distributed Objects and Middleware. Sockets and Ports Source: G. Coulouris et al., Distributed Systems: Concepts and Design.
CENTRALISED AND CLIENT / SERVER DBMS. Topics To Be Discussed………………………. (A) Centralized DBMS (i) IntroductionIntroduction (ii) AdvantagesAdvantages (ii)
ICALEPCS’ GenevaACS in ALMA1 Allen Farris National Radio Astronomy Observatory Lead, ALMA Control System.
DEVS Based Modeling and Simulation of the CORBA POA F. Bernardi, E. de Gentili, Pr. J.F. Santucci {bernardi, gentili, University.
Chapter 12 Review Chad Hagstrom CS 310 Spring 2008.
INTRODUCTION TO DBS Database: a collection of data describing the activities of one or more related organizations DBMS: software designed to assist in.
 Common Object Request Broker Architecture  An industry standard developed by OMG to help in distributed programming.
Mobile Agents For Mobile Computing Department Of Computer Science – Dartmouth College Robert Gray David Kotz Saurab Nog Daniela Rus George Cybenko.
Medical Imaging Lection 3.
1 My Dream of Jini Fabio Kon Jalal Al-Muhtadi Roy Campbell M. Dennis Mickunas Department of Computer Science University of Illinois at.
Polaris Server Code: Java Implementation for TINI Andrew A. Kitchen Kevin Wiehe Computer Integrated Surgery 8 March 2001.
Web Services Using Visual.NET By Kevin Tse. Agenda What are Web Services and Why are they Useful ? SOAP vs CORBA Goals of the Web Service Project Proposed.
第 1 讲 分布式系统概述 §1.1 分布式系统的定义 §1.2 分布式系统分类 §1.3 分布式系统体系结构.
Medical Imaging Lection 3. Basic Questions Imaging in Medical Sciences Transmission Imaging PACS and DICOM.
Third International Workshop on Networked Appliance 2001 SONA: Applying Mobile Agent to Networked Appliance Control S.Aoki, S.Makino, T.Okoshi J.Nakazawa.
IT 5433 LM1. Learning Objectives Understand key terms in database Explain file processing systems List parts of a database environment Explain types of.
Dr D. Greer, Queens University Belfast ) Software Engineering Chapter 7 Software Architectural Design Learning Outcomes Understand.
Towards a High Performance Extensible Grid Architecture Klaus Krauter Muthucumaru Maheswaran {krauter,
Common object request broker
CORBA Alegria Baquero.
CORBA Within the OS & Its Implementation
Introduction to client/server architecture
#01 Client/Server Computing
Component-Based Software Engineering: Technologies, Development Frameworks, and Quality Assurance Schemes X. Cai, M. R. Lyu, K.F. Wong, R. Ko.
CORBA Alegria Baquero.
Quality Assurance for Component-Based Software Development
Sensor Networks – Motes, Smart Spaces, and Beyond
#01 Client/Server Computing
Presentation transcript:

Distributed Architectures for Medical Systems Andrew A. Kitchen Computer Integrated Surgery 8 March 2001

Plan of Attack Brief outline of Polaris Tracking Device CORBA IDL project Why efficient usage of distributed architectures in a medical situation is beneficial How such an architecture can be implemented Conclusion

Introducing a Polaris Tracker to the World Creation of a CORBA IDL & Client/Server software to enable efficient networking of a Polaris Tracking Device

The Polaris Device Efficient Optical Tracker Communicates via an RS232 port Already has C++ code written for it It is available in the ERC and is vital for other ERC endeavors

The TINI Device Communicates via an RS232 port & an Ethernet port Dedicated board with sufficient RAM & speed Runs JAVA Cheap & Small

The IDL Negotiates Everything It will allow the Polaris to talk to client through the TINI It runs on a TINI in a JAVA environment It is independent of client platform Client/Server code handle all data acquisition

Plan of Attack Brief outline of Polaris Tracking Device CORBA IDL project Why efficient usage of distributed architectures in a medical situation is beneficial How such an architecture can be implemented Conclusion

The Big Picture Multiple monitoring devices per patient Multiple devices per procedure Few doctors with limited capacity to integrate information

Where’s the Problem? How to manage many devices, and do it within a limited space? How to integrate multiple sets of data into a coherent representation of what is happening? How to manipulate data in a fast & efficient manner? How many devices can be handled at once? Will each device be able to integrate with the other devices? Is there a standard? How much will it cost?

A Sufficient Implementation of a Distributed Medical System Should…. Manage multiple devices and do it without incorporating too much of a footprint Provide quick & efficient data collection from all devices Allow for centralization of control & data management Scalability Adhere to / set recognized standards Be economical!

Plan of Attack Brief outline of Polaris Tracking Device CORBA IDL project Why efficient usage of distributed architectures in a medical situation is beneficial How such an architecture can be implemented Conclusion

A Sample Implementation Katehakis, D.G., et al. “A Distributed, Agent- Based Architecture for Acquisition, Management, Archiving and Display of Real-Time Monitoring Data in the Intensive Care Unit”, FORTH-ICS/TR- 261, October 1999.

Design of an ICU Distributed Architecture

Overall Structure of Architecture The Acquisition Agents run on servers on the network Acquisition Agents are continuously querying the device for current data The Monitoring Agents run on clients on the network Monitoring Agents occasionally query the Acquisition Agents for current data

CORBA Handles the Interaction of the Clients and the Servers

What does this gain us? Frees client resources Allows for significant expansion of network to include numerous servers & devices Provides a common communication protocol (CORBA) Makes possible integration of data from multiple devices on a single client Functions well in real-time due to dedicated server querying

What about the holes in the armor? Every device must have an associated acquisition agent, which must run on a computer (although it need not be dedicated to one device if it has enough I/O ports) CORBA isn’t used by 100% of the developers, but it is used by a vast majority Extra computers take up space Extra computers cost a lot of money

Plan of Attack Brief outline of Polaris Tracking Device CORBA IDL project Why efficient usage of distributed architectures in a medical situation is beneficial How such an architecture can be implemented Conclusion

Smaller, Cheaper & More Universal TINIs are very, very cheap ($57 - $67) TINIs are, well, tiny TINIs have Ethernet & RS232 ports TINIs run JAVA, which is available for free JacORB is a free CORBA ORB coded in JAVA The development tools for the JAVA code is free

Polaris, TINI & CORBA TINI is a dedicated server that runs JAVA The JacORB runs on the TINI board Creation of an IDL and client/server functions for the Polaris Tracker for use with the JacORB allows the TINI to communicate with the Polaris Tracker and with the clients on the network TINI operates as a dedicated server running a single Acquisition Agent and controlling a single device

What’s the Big Deal? Creating an IDL and the associated client/server code for the Polaris Tracker would prove the viability of replacing dedicated workstations with smaller and cheaper TINI boards. Using a JAVA implementation of the CORBA ORB and client/server functions would provide a strong impetus for future development using the TINI, possibly leading to the acceptance of JAVA as an industry standard for networking medical devices in a distributed architecture