Brief Overview

The evolution of communication networks over the years along with the simplicity of mobile application development have given way to highly effective remote monitoring systems. These systems have today become significant in numbers and applications especially in production, fleet logistics, surveillance, access control, automation projects etc. Almost all of these systems have a common factor of providing a mechanism of getting real time feeds of activities happening on a remote location and providing a way to take practical decisions as an when required.
Industry divergence of technologies has revolved around the concept of exposing a certain process / workflow data to the internet and accessing the same from a remote location by a single or multiple individuals. This seemingly innocuous technology has but
provided array of options including:
Remote Decision Making
Collaboration of ideas between individuals sharing the process expertise
Quicker System Response Time

Apart from the above, the increase in mobility and location based services provide the next level of dimensions to process workflow monitoring by providing a context sensitive relevance to the process and adapting the decision making as per the context.

Concept of Real Time Tele Health Monitoring System and Application Scenarios

“The delivery of health care services, where distance is a critical factor, by all health care professionals using information and communication technologies for the exchange of valid information for diagnosis, treatment and prevention of disease and injuries, research and evaluation, and for the continuing education of health care providers, all in the interests of advancing the health of individuals and their communities” – WHO Global Observatory for eHealth series.
“In comparison to care managed by primary physicians and consulting specialists, intensivist managed care has been associated with decreased mortality, decreased length of stay (LOS) in both the ICU and on general care floors that ICU patients are eventually discharged from, and increased number of ICU admissions due to decreased LOS. However, a nationwide shortage of Intensivists has prevented a large proportion of hospitals and their patients from reaping the benefits of care by Intensivists.” Jeffrey Heyman – ECRI Institute
According to Kalorama Information one of the biggest medical market research firms in the American and European Markets, the age old problem of very low doctor to patient ratio has gone up by the day.

One of the causes of the problem lies in the fact that the combined world population of Intensivists (A physician who specializes in the care of critically ill patients, usually in an intensive care unit (ICU)) is less than the total population of individuals with coronary diseases in countries like India.
By applying the principles of Remote Monitoring and Telemedicine the above problems can be overcome.
Application in ICU - Typically the ICU environment continuously assails clinicians with distractions, alarms, and interruptions that produce alarm fatigue and the potential for increased error rates. While addressing the needs of 1 patient, a busy nurse or physician may be unaware of a second patient’s change in status that requires immediate attention. The Real Time Tele Health Monitoring System is that “second set of eyes” that provides additional clinical surveillance and support. By collaborating with the bedside team, the system can support care without distraction and deliver timely interventions when minutes may make the difference. The purpose of the system is not to replace bedside clinicians or bedside care, but to provide improved safety through redundancy and enhance outcomes through standardization.
Application in Critical Patient Consultation - Outside the ICU environment the first set of caregiver can actually service a patient in the hospital premises or the patients and based on the patient’s condition may elect to collaborate with the specialist. This enhances the chances of better treatment of the patient at the first level of the medical topology.
Application in ambulatory conditions – In urban conditions where the evolution of the communication networks and mobile patient care is best seen, the effect of real time transmission of patient vitals and waveforms will enable specialists at the hospitals to evaluate patient conditions real time with respect to conditions such as drug administration, application of Defibrillator etc on the patient. Along with the store and forward mechanism, this technology can further help the doctors at the hospitals to be better prepared for in coming patients.
Application in Critical Home Monitoring – As with the case with critical patient care monitoring, the right level of medical parameters as and when needed can be escalated by the primary caretaker or the patient as and when needed to the specialist for remote monitoring.
Application in eICU and HMS systems – With bigger multispecialty and multibedded hospitals coming up, the prevalence of Hospital Management Systems and integration with eICU systems for maintaining complete audit trails of patient right from the time of entry to the discharge is increasing. These systems typically handle the daily vital reports of the patients, inter ward transfer process of patients, IVS and other drug information being administered to the patient etc. The marriage of real time remote health monitoring systems with these systems can provide better patient management by increasing the human interaction with the patient electronically.
Proposed Platform Architecture 
Broadly the system design follows a traditional cloud based collaborative system. Our platform will essentially extend the rhythms24x7 platform. The basic aim of the design will be to provide an online platform for enabling medical devices to share their real time data with multiple viewers.   

Typical Workflow Pattern

Object Oriented Design Patterns

Object Oriented Design Patterns
Creational Design PatternsStructural Design PatternsBehavioral Design Patterns
This design patterns is all about class instantiation. This pattern can be further divided into class-creation patterns and object-creational patterns. While class-creation patterns use inheritance effectively in the instantiation process, object-creation patterns use delegation effectively to get the job done.This design patterns is all about Class and Object composition. Structural class-creation patterns use inheritance to compose interfaces. Structural object-patterns define ways to compose objects to obtain new functionality.This design patterns is all about Class's objects communication. Behavioral patterns are those patterns that are most specifically concerned with communication between objects.
Abstract Factory
Creates an instance of several families of classes

Separates object construction from its representation

Factory Method
Creates an instance of several derived classes

Object Pool
Avoid expensive acquisition and release of resources by recycling objects that are no longer in use

A fully initialized instance to be copied or cloned

A class of which only a single instance can exist

Match interfaces of different classes with different philosophies

Separates an object’s interface from its implementation

A tree structure of simple and composite objects

Add responsibilities to objects dynamically

A single class that represents an entire subsystem

A fine-grained instance used for efficient sharing

Private Class Data
Restricts accessor/mutator access

An object representing another object

Chain of responsibility
A way of passing a request between a chain of objects

Encapsulate a command request as an object

A way to include language elements in a program

Sequentially access the elements of a collection

Defines simplified communication between classes

Capture and restore an object's internal state

Null Object
Designed to act as a default value of an object

A way of notifying change to a number of classes

Alter an object's behavior when its state changes

Encapsulates an algorithm inside a class

Template method
Defer the exact steps of an algorithm to a subclass

Defines a new operation to a class without change

Abstract Factory and Factory:
Problem : Developing a common widgets Library for an application which will run on two platforms linux and windows.
Base Library.
class Widget
virtual public draw() = 0;

class WindowsButton : public Widget
void draw() { cout << "Windows Button"; }

class WindowsMenu : public Widget
void draw() { cout << "Windows Menu"; }

class LinuxButton : public Widget
void draw() { cout << "Linux Button"; }

class LinuxButton : public Widget
void draw() { cout << "Linux Menu"; }

Implementation in client side.
class AbstractWidgetFactory
virtual Widget *GetMenu() = 0;
virtual Widget *GetButton() = 0;

OS Based Factory
class WindowsWidgetFactory
Widget *GetMenu() { return new WindowsMenu; }
Widget *GetButton() { return new WindowsButton; }

class LinuxWidgetFactory
Widget *GetMenu() { return new LinuxMenu; }
Widget *GetButton() { return new LinuxButton; }

int main()
AbstractWidgetFactory WidgetFactory;

#ifdef Linux
WidgetFactory = new LinuxWidgetFactory;
WidgetFactory = new WindowsWidgetFactory;


Builder Pattern:
Problem : Breaking down of complicated structures into simpler components.
Entities Involved :

  1. Director : Responsible for calling appropriate  interfaces and creating the end product
  2. Builder : An abstract class representing the builders for the final product
  3. Concrete builders : Classes which give functionality to the abstract builder object.
  4. Product : The final product which use the concrete builders to produce the final product.

class AbstractBuilder
virtual void BuildPartA() = 0;
virtual void BuildPartB() = 0;

class BuilderA : public AbstractBuilder
Product product;
void AddPartA() { ; }
void AddPartB() { ; }

product *GetProduct() { return &product; }

class BuilderB : public AbstractBuilder
Product product;
void AddPartA() { ; }
void AddPartB() { ; }
void show();

product *GetProduct() { return &product; }

class Product
List Parts;

class Director
private AbstractBuilder *_builder;

public void Construct( AbstractBuilder *builder )
_builder = builder;


public ShowProduct()

Adaptor Pattern:
Need: When the default parameters of an existing object needs to be wrapped as per the new parameter requirement. This helps especially in reusing code and algorithms.
class Shape
int _x, _y, _x1, _x2;
virtual void Draw(int x, int y, int x1, int y1) = 0;

class Rectangle : public Shape
void Draw(int x, int y, int x1, int y1)
     _x = x; _y = y; _x1 = x1; _y1 = y1; }

class RectangleAdaptor : public Rectangle
void Draw( int x, int y, int width, int height )
Rectangle::Draw(x, y, x + width, y + height);

The above are the ones I have used @ various parts of my career, there are a few others like the facade which i will write in the future

Maestros eUno R10 - A Comprehensive Telecardiology Solution

It is an established fact that coronary heart disease is one of the leading causes of death across the globe. Every second in some part of the world a person suffers from chest pain or has a heart attack. It is commonly observed that these victims waste substantial time before seeking medical help. This could be due to sheer ignorance, lack of knowledge or the absence of an efficient medical support system.

In these situations, as the saying goes ‘time is muscle’. As time progresses the deficiency of oxygen causes irreversible damage to heart muscles. This can cause abnormal contractions of ventricles and eventually result in cardiac arrest. Hence it is extremely necessary to recognize these cardiac abnormalities early and seek timely medical assistance.

eUno R-10 coupled with the Maestros Rhythms24x7 web Based Platform and any supported Smart phones is a system which has been designed keeping the above points in mind, and provides an ideal  telecardiology platform for remote ECG analysis and real time reporting from the doctor for the attending paramedic or the general practitioner.

This innovative product  eUno R10  enables the transmission of real time 10 seconds – 12 channel ECG from a highly portable ECG device known as R10(designed, developed and manufactured indigenously by Maestros Mediline Systems Ltd ), directly to the doctors mobile phone from almost anywhere. This device is also capable of pulling in the reports and interpretation that the doctor does from a remote location and also printing them locally at the location where the patient is being attended.

Other than the real time connectivity features that the device supports, it also has the flexibility to store up to 20 patients records and is also capable of interfacing with the PC for further storage and archiving.
In brief, this device has all the features packed into a very small package which are present in bigger and bulky ECG machines along with the ability to communicate with the specialist in real time and the ability to be carried very easily.

 In ambulatory cases, the device also has the ability to send along with the ECG data, also the location data, which the doctor can view remotely on their mobile phone. The device in itself is CE-1293 certified which means that the precision of the ECG which is captured can be compared with the best in the world. 

Apart from viewing and reporting ECG’s sent by this device from their phones, the doctors also avail of a web based portal website, where they can keep a track of the patients they had attended along with their complete details, and if needed can also dig  down into the past history of the same.

The basic aim of the device is to ensure a reliable way in which specialists can immediately connect to their cardiac patients as and when needed even if they are away from their respective hospitals.

Today, this mobile telecardiology solution is implemented in well known establishments like Nanavati Hospital(Mumbai), Riddhi Vinayak Critical Care(Mumbai), Jaslok Hospital(Mumbai),Pramila Hospital(Mumbai),Orange city Hospital(Nagpur) to name a few. Other than this, there are also various ECG and door to door ecg collection camps that are being conducted by independent organizations like ExpressECG in ahmedabad using this platform.

For more information, you can also visit

Recently the product has also been awarded the Frost & Sullivan award for excellence in innovation.