Business applications have traditionally been offered as desktop applications. Desktop applications, which are typically installed on individual client machines, generally provide a rich, responsive, and available interface that includes a wide range of user interface (“UI”) controls and other design elements. Also, because business applications have traditionally been offered as desktop applications, the development of desktop applications is generally known. However, some drawbacks of desktop applications include operating system (“OS”) dependence, security vulnerability, and maintenance difficulty.
Regarding OS dependence, a desktop application designed for one operating system may not execute on another operation. Sometimes a desktop application designed for one version of an operating system may not even run on another version of the same operating system. Regarding security vulnerability, multiple desktop applications running on the same computer and operating system may suffer from various application conflicts, such as namespace conflicts or dependency conflicts between software components. Regarding maintenance difficulty, deploying and updating each instance of the same desktop application on multiple client machines can be tedious and time-consuming, especially for large enterprises with a substantial collection of client machines.
In contrast to desktop applications, World Wide Web (“web”) applications are OS-independent. Most web applications operate on any standard web browser connected to the Internet, irrespective of the underlying operating system. Further, because web applications run in the web browser, application conflicts like namespace conflicts and dependency conflicts can be avoided. Additionally, a web application which runs in the cloud can be deployed and updated in a single instance where the web application is hosted.
The process of converting existing desktop applications into web applications usually involves a complete rewrite of the desktop application. This can be incredibly cost prohibitive and error prone. Further, some conventional web interfaces (e.g., HTML4 or earlier) do not provide adequate functionality for providing the same rich interface that the desktop application can. As a result, existing web versions of desktop applications typically provide reduced functionality in a simpler interface when compared to the installed desktop applications.
It is with respect to these and other considerations that the disclosure made herein is presented.