Instructions for MyPHRMachines App Developers

Software developers/vendors/researcher who wish to add new functionality to MyPHRMachines can experimentally do so on our demonstration infrastructure.  Production use of the infrastructure is neither intended nor allowed.

In MyPHRMachines, external software is always running in the context of a virtual machine.  In order to add new software to the platform, first a clone of an existing virtual machine needs to be created.  Any registered user can do so via the following menu item:

The menu item links to the following form:

The first form item enables developers to specify which existing virtual machine they want to clone.  In many cases, a standard Windows or Linux installation is sufficient and developers then typically install additional middleware (like web and database servers) from scratch in such a very basic virtual machine.  After installing the middleware, developers also install their specific software, until the "app" behaves as intended in the remote virtual machine.  Developers do not get access to any patient data at this point.  Instead, they have to test their app with their own dummy data.  Such data can be uploaded using the upload functionality that is provided to regular (non-developer) users too in the context of uploading personal medical data.

The second form item enables developers to give a name to their new virtual machine.  This name will be used for app identification purposes.  Additional, descriptive meta-data can be provided later.  

Finally, the third form item enables developers to restrict the maximum virtual machine execution time.  This is useful in the context of a pay per use business model, where end users can be billed per VM execution session.  If VMs could run indefinitely then users would leave their VM running forever to bypass usage charges.