Converting desktop applications to web applications
AssigneeMicrosoft Technology Licensing, LLC
InventorsAseem Kohli, Kristofer Hellick Reierson, Angela Mele Anderson
Life of this patent
Estimating the term…
Abstract
Technologies are described herein for converting a desktop application to a web application. An interface file is generated based on a user interface of the desktop application. A logic file is generated based on application executables of the desktop application. A data model is generated based on application data and states of the desktop application. The web application is generated based on the interface file, the logic file, and the data model.
Claims30
A computer-implemented method for converting a desktop application to a web application, the method comprising computer-implemented operations for:
- receiving, by a computer having a processor and a memory, the desktop application as input;
- deconstructing, by the computer, a user interface of the desktop application to determine interface components that make up the user interface of the desktop application;
- generating, by the computer, a web interface from the determined interface components that make up the user interface of the desktop application;
- extracting, by the computer, business logic from application executables of the desktop application;
- generating, by the computer, a logic file from the extracted business logic, the logic file comprising specification of the extracted business logic;
- generating, by the computer, a data model from application data and states of the desktop application;
- determining, by the computer, whether one or more variables specified in the data model corresponds to business logic in the logic file;
- in response to determining that at least one variable specified in the data model does not correspond to the business logic in the logic file, outputting, by the computer, an error message;
- generating, by the computer, the web application from the logic file and the data model, the web application including the web interface and not including the desktop application;
- and
- outputting the web application.
A computer-implemented method for converting a desktop application to a web application, the method comprising computer-implemented operations for:
- generating, by a computer having a processor and a memory, an interface file based on a user interface of the desktop application;
- generating, by the computer, a logic file based on application executables of the desktop application;
- generating, by the computer, a data model based on application data and states of the desktop application;
- determining, by the computer, whether each variable specified in the data model corresponds to particular business logic in the logic file;
- and
- in response to determining that at least one variable specified in the data model does not correspond to the particular business logic in the logic file, outputting, by the computer, an error message.
A computer system, comprising:
- a processor;
- a memory communicatively coupled to the processor;
- and
- a program module which executes in the processor from the memory and which, when executed by the processor, causes the computer system to covert a desktop application to a web application by
- generating an interface file from a user interface of the desktop application,
- extracting business logic from application executables of the desktop application,
- generating a logic file from the extracted business logic, the logic file comprising specification of the extracted business logic,
- generating a data model from application data and states of the desktop application,
- determining whether one or more variables specified in the data model corresponds to business logic in the logic file,
- in response to determining that at least one variable specified in the data model does not correspond to the business logic in the logic file, outputting, an error message, and
- generating the web application from the interface file, the logic file, and the data model, the web application comprising a web interface, a page router, n-tier web business logic, and web data stores.
A computer-readable storage medium comprising at least one of an optical disk, a magnetic storage device, or a solid state storage device having computer-executable instructions stored thereon which, when executed by a computer, cause the computer to:
- generate, by the computer, an interface file from a user interface of a desktop application, the interface file specifying interface components in the desktop application;
- extract, by the computer, business logic from application executables of the desktop application;
- generate, by the computer, a logic file from the extracted business logic, the logic file specifying the extracted business logic and mappings between the extracted business logic and various states of the user interface;
- generate, by the computer, a data model from application data and states of the desktop application, the data model specifying variable types for data that is stored and retrieved by the desktop application and user states that persist across multiple sessions of the desktop application;
- determine, by the computer, whether one or more variables specified in the data model corresponds to business logic in the logic file;
- in response to determining that at least one variable specified in the data model does not correspond to the business logic in the logic file, output, by the computer, an error message;
- generate, by the computer, a web interface of a web application from the interface file;
- generate, by the computer, a page router and n-tier web business logic of the web application from the logic file;
- and
- allocate, through the computer, web data stores of the web application from the data model.
A computer system, comprising:
- a processor;
- a memory communicatively coupled to the processor;
- and
- a program module which executes in the processor from the memory and which, when executed by the processor, causes the computer system to covert a desktop application to a web application by
- generating an interface file based on a user interface of the desktop application,
- generating a logic file based on application executables of the desktop application,
- generating a data model based on application data and states of the desktop application,
- determining whether each variable specified in the data model corresponds to particular business logic in the logic file,
- in response to determining that at least one variable specified in the data model does not correspond to the particular business logic in the logic file, outputting an error message, and
- generating the web application based on the interface file, the logic file, and the data model, the web application comprising a web interface, a page router, n-tier web business logic, and web data stores.
A computer-readable storage medium comprising at least one of an optical disk, a magnetic storage device, or a solid state storage device having computer-executable instructions stored thereon which, when executed by a computer, cause the computer to:
- generate, by the computer, an interface file based on a user interface of a desktop application, the interface file specifying interface components in the desktop application;
- generate, by the computer, a logic file based on application executables of the desktop application, the logic file specifying business logic in the desktop application and mappings between the business logic and various states of the user interface;
- generate, by the computer, a data model based on application data and states of the desktop application, the data model specifying variable types for data that is stored and retrieved by the desktop application and user states that persist across multiple sessions of the desktop application;
- determine, by the computer, whether each variable specified in the data model corresponds to particular business logic in the logic file,
- in response to determination that at least one variable specified in the data model does not correspond to the particular business logic in the logic file, output, by the computer, an error message
- generate, by the computer, a web interface of a web application based on the interface file;
- generate, by the computer, a page router and n-tier web business logic of the web application based on the logic file;
- and
- allocate, by the computer, web data stores of the web application based on the data model.
Dependencies are inferred from the claim text.