1. A method of migrating the running state of an application graphical user interface from one heterogeneous device platform to another heterogeneous device platform, the method comprising: a) updating the running state of a first platform independent presentation model with a current running state of a platform specific presentation operable on a first heterogeneous device platform; b) generating a second platform specific presentation capable of operation on a second heterogeneous device platform from the platform independent presentation model as function of graphical user interface capabilities of the second heterogeneous device platform; and c) implementing the current running state from the first heterogeneous device platform in the second platform specific presentation.