PROCESS AND SYSTEM FOR THE GENERATION OF AN OPERATING PROGRAM IN THE FORM OF A MOBILE APPLICATION THAT IS CAPABLE OF OPERATING ON A MOBILE DEVICE

20170262263 · 2017-09-14

Assignee

Inventors

Cpc classification

International classification

Abstract

The invention relates to a process and a system for generating an operating program in the form of a mobile application (MAPP) that is capable of operating on a mobile device (MD) for interactions such as operation, monitoring, configuration and/or diagnosis with an application program (DA) of an automation device (D) for the control and/or monitoring of a machine (M) or installation. In order to permit a cost and time-effective generation of a mobile application for the operation, control and diagnosis of an automation device, with there being a requirement for special knowledge of the automation device as well as of the development of the mobile applications, it is foreseen that the mobile application (MAPP) is generated out of an application description (DAD) of the application program (DA) of the automation device.

Claims

1. Process for the generation of an operating program in the form of a mobile application (MAPP) that is executable on a mobile device (MD) for interactions such as operation, monitoring, configuration and/or diagnosis with an application program (DA) of an automation device (D) for the operation and/or monitoring of a machine (M) or installation, characterized by the fact, that the mobile application (MAPP) is generated from an application description (DAD) of the application program (DA) of the automation device.

2. Process according to claim 1, characterized by the fact, that the application description (DAD) of the application program (DA) is loaded in an application generator system (APPGS), that the application description (DAD) is analyzed as regards its structure and its contents and is broken down in segments and that necessary component descriptions (UICD, DCD, FCD, STCD) are created out of the segments of the application description (DAD) for the generation of the mobile application (MAPP),

3. Process according to claim 2, characterized by the fact, that the component descriptions (UICD, DCD, FCD, STCD) are analyzed as regards the necessary application-specific software artifacts (ADSI) such as existing objects (EOBJ), existing modules (EMOD), existing components (ECOM) or existing services (ESERV) and/or necessary mobile-device-specific software artifacts (MDSA) such as deployment rules (MDR) or dependency (MDEP).

4. Process according to claim 3, characterized by the fact, that the necessary application-specific software artifacts (ADSI, EOBJ, EMOD, ECOM, ESERV) and/or mobile-device-specific software artifacts (MDSA, MDR, MDEP) are selected and are downloaded from a data storage (DS1, DS2), that application components (MUIC, MDC, MFC, MSTC) are created from the necessary application-specific software artifacts (ADSA, EOBJ, EMOD, ECOM, ESERV) and/or the mobile-device-specific software artifacts (MDSA, MDR, MDEP), and that an executable source code for the mobile application (MAPP) is generated out of the application components (MUIC, MDC, MFC, MSTC).

5. Process according to claim 2, characterized by the fact, that during the analysis of the application description (DAD), an application structure of the mobile application (MAPP), an application type, an application environment and/or linker details are derived, whereby an initially empty application skeleton (APPSK) is created out of the application structure and that configuration files for the application components (MUIC, MDC, MFC, MSTC) are created in dependence of the application skeleton (APPSK) and of the component descriptions (UICD, DCD, FCD, STCD).

6. Process according to claim 4, characterized by the fact, that the executable code of the mobile application (MAPP) is created through the linking of the application components (MUIC, MDC, MFC, MSTC) with the application skeleton.

7. Process according to claim 1, characterized by the fact, that during the generation of the mobile (MAPP) user-specific information (CSI) such as corporate identity, manufacturer name or username arid/or mobile-device-specific information (MDI) such as information relating to the hardware (MHWI) or relating to the mobile operating system (MOSI) are requested by an input prompt or are read from the application description (DAD) or from the mobile device (MD) in the case of linking with the application generator system (APPGS).

8. Process according to claim 2, characterized by the fact, that following the process stage of the analysis of the application description (DAD), those component descriptions (UICD, DCD, FCD, STCD) are selected by a user, are described by the user interfaces, functions, data and/or structures that are required for the interaction of the mobile application (MAPP) with the application program (DA) that is running on the automation device (D).

9. Process according to claim 8, characterized by the fact, that the component descriptions (UICD, DCD, FCD, STCD) include at least one user interface component description (UICD), one data component description (DCD), one function component description as well as a structure component description (STCD).

10. Process according to claim 1, characterized by the fact, that an XML description is used as application description (DAD) of the application program (DA).

11. Application generator system for generation of an operating program in the form of a mobile application (MAPP) that is executable on a mobile device (MD) for interaction such as, for example, operation, monitoring, configuration and/or diagnosis with an application program (DA) of an automation device (D) for the control and/or monitoring of a machine (M) or installation characterized by the fact, that the application generator system features a code generator system (CGS) with at least one transformation tool (DADT, CDT) for the transformation of an application description (DAD) of the application program (DA) of the automation device (D) into application components (MUIC, MDC, MFC, MSTC) and an application generator (APPG) for the generation of the mobile application (MAPP) on the basis of the application components (MUIC, MDC, MFC, MSTC).

12. Application generator system according to claim 11, characterized by the fact, that the code generator system (CGS) includes a first transformation tool (DADT) for the transformation of the application description (DAD) of the application program (DA) into one a multitude of component descriptions (UICD, DCD, FCD, STCD) as well as a second transformation tool (CDT) for the transformation of the component descriptions (UICD, DCD, FCD, STCD) into the application components (MUIC, MDC, MFC, MSTC) while taking into consideration application-specific software artifacts (ADSA, EOBJ, EMOD, ECOM, ESERV) and/or mobile-device-specific software artifacts (MDSA, MDR, MDEP).

13. Application generator system according to claim 12, characterized by the fact, that the first transformation tool (DADT) includes: an analysis module (DADA) for the analysis of a structure and the contents of the application description (DAD) and for the breaking down of the application description (DAD) into segments as well as a component description creator (CDC) for the creation of the component descriptions (UICD, DCD, FCD, STCD) from the segments, whereby the component descriptions (UICD, DCD, FCD, STCD) include at least one user interface component description (UICD), one data component description (DCD), one function component description as well as one structure component description (STCD).

14. Application generator system according to claim 12, characterized by the fact, that the first transformation tool (DADT) features a selection/download module (SDLM) for the selection and/or for the downloading of external user-specific information (CSI) and/or mobile-device-specific information (MDI) as well as for the selection and for the downloading of user-specific software artifacts (ADSA, EOBJ, EMOD, ECOM, ESERV) as well as mobile-device-specific software artifacts (MDSA, MDR, MDEP).

15. Application generator system according to claim 12, characterized by the fact, that the second transformation tool (CDT) includes: an analysis module (RCA) for the analysis of the required component descriptions (UICD, DCD, FCD, STCD) as regards existing user-specific software artifacts (ADSA, EOBJ, EMOD, ECOM, ESERV) as well as mobile-device-specific software artifacts (MDSA, MDR, VIDEO), a selection/download module (SDLM) for the selection for downloading of the required user-specific software artifacts (ADSA, EOBJ, EMOD, ECOM, ESERV) as well as mobile-device-specific software artifacts (MDSA, MDR, MDEP) from the at least one data storage (DS1, DS2, DS3).

16. Application generator system according to claim 11, characterized by the fact, that the application generator (APPG) includes an application skeleton generator (APPSKG), a configuration file generator (CFG) as well as linker module (LM), whereby the application skeleton generator creates an initially empty application skeleton from the application structure that is derived from one of the application descriptions, the configuration file generator creates configuration files for the application components from the component descriptions in connection with the application skeleton, and whereby the linker module links the configured application components with the application skeleton for creation of the executable codes of the mobile application (MAPP).

17. Application generator system according to claim 11, characterized by the fact, that the mobile device (MD) is a smart device such as, for example, a smartphone or a tablet computer.

Description

[0031] The figures show:

[0032] FIG. 1: a schematic representation of a system for the generation of a mobile application,

[0033] FIG. 2: a schematic representation of a code generator system,

[0034] FIG. 3: a schematic methodology for the generation of a mobile application, and

[0035] FIG. 4: a schematic representation of a component linker system.

[0036] FIG. 1 shows a system for the generation of an operating program in the form of an executable mobile application MAPP on a mobile device MD for the writing and reading of data in or from an application program DA running in an automation device D for the control of a machine M. It is foreseen according to the invention that the mobile application MAPP is generated by means of the automatic transformation of one application description DAD of the application program DA by means of an application generator system APPGS taking into account user-specific and/or mobile-device-specific input information CSI, MDI and existing software artifacts ADSA, MDSA.

[0037] The application description DAD, preferably a XML document, is stored in a data storage DS1 and includes an obligatory portion in the form of a document of the application description DAD as well as an optional portion in the form of a user-specific description. The user-specific description further details the application description DAD, for example, through specific parameters, to be able to better adapt the mobile application to the requirements of the user or the original equipment manufacturer.

[0038] For the generation of the mobile application MAPP, one requires the input information CSI, MDI, as well as the existing software artifacts ADSA, MDSA, which are downloadable in the data storages DS2, DS3, on top of the application description DAD.

[0039] Typical user-specific information CSI relates, for example, to the corporate identity as well as names of and information about specific users, so as to lay out a mobile application in a user-specific manner. The user-specific information is requested of the user during the automatic generation of the mobile application or automatically downloaded from a data storage.

[0040] The mobile-device-specific information MDI relates to the mobile platform MP, upon which the mobile application MAPP will be executed. This information comprises information relating to the hardware MHWI of the mobile platform such as, for example, hardware version number, hardware type and hardware properties. Additionally, information relating to the operating system MOSI of the mobile platform is necessary. The mobile-device-specific information MDI is prescribed by the user or read from the mobile device MD, when the same is coupled with the application generator system for the carrying out of a generation order.

[0041] The software artifacts comprise application-specific software artifacts ADSA in the form of existing objects EOBJ, modules EMOD, components ECOM as well as services ESERV. The application-specific software artifacts ADSA are loaded from one of the data storage D1, D2 over the course of the process. Furthermore, the software artifacts include the mobile-device-specific software artifacts MDSA in the form of deployment rules MDR and dependencies MDEP between the mobile application that is to be created and operating systems as well as the hardware of the mobile device.

[0042] The application generator system APPGS includes a code generator system CGS, a deployment system DS, as well as management control system MCS.

[0043] The deployment system DS delivers information and code artifacts, namely security information, such as, for example, certificates, operating system deployment information such as, for example, deployment process artifacts for Apple® devices as well as hardware deployment information such as, for example, device information for Samsung® devices.

[0044] FIG. 2 shows a block diagram of the code generator system CGS. The code generator system CGS includes a transformation tool DADT for the transformation of the application description DAD into one or a multitude of component descriptions UICD1 . . . UICDn, DCD1 . . . UICDn, FCD1 . . . FCDn, STCD1 . . . STCDn.

[0045] The transformation tool DADT has an analyzer module DADA for the analysis of a structure as well as of contents of the application description. The analyzer module DADA breaks down the application description DAD into segments such as, for example, input prompts and display information, so as to receive user interface information. Furthermore, an application structure, an application type, an application environment as well as linker details are determined by means of the analyzer module.

[0046] The transformation tool DADT includes a component description creator CDC for the creation of the component descriptions UICD, DCD, FCD, STCD from the information made available by the analyzer module, which creates the component descriptions that are necessary for the process of the application generation from the segments, including at least one component UICD with user interface information, at least one component description DCD with data information, at least one component description FCD with function information and at least one component description STCD with structure information of the application description DAD. The creation of the component description occurs taking into account the user-specific information, mobile-device-specific information as well as the application-specific and mobile-device-specific software artifacts.

[0047] The transformation tool DADT has access to the data storage DS2, DS3 by way of the selection/download module SDLM, and automatically downloads the information and software artifacts that are necessary for the creation of the document descriptions. The desired functions can be selected by the user through the selection of the corresponding segment or component description.

[0048] The component descriptions UICD, DCD, FCD, STCD that are created by the transformation tool DADT from the application description DAD are transformed by means of a second transformation tools CDT into application components MUID, MDC, MFC, MSTC for the mobile application MAPP.

[0049] The component descriptions UICD, DCD, FCD, STCD are analyzed by means of an analysis module RCA as regards necessary application-specific software artifacts and necessary mobile-device-specific software artifacts. Software artifacts that are needed are selected by a selection/download module SDLM and downloaded from the data storage DS2, DS3.

[0050] Merely as an example, the application components include a user interface component MUIC, a data component MDC, a function component MFC as well as a structure component MSTC. The application components MUIC, MDC, MFC as well as MSTC, which were created from the analysis of the structure and the contents of the application description while taking into account the application-specific software artifacts as well as the mobile-device-specific software artifacts, form the basis for the creation of the mobile application MAPP by means of the application generator APPG. The application components include software artifacts that are, for example, downloaded from external data storage and adapted or expressed through configuration data of the concrete requirements of the mobile application.

[0051] FIG. 3 shows a flow chart of the process according to the invention. The application description DAD is transformed in the first transformations tool DADT into the necessary component description UICD, DCD, FCD as well as STCD. Following up on this, there is then an analysis of the structure and of the contents of the application description DAD by means of the analyzer module DADA. The application description DAD is broken down into segments as has been previously described. Beyond this, an application structure, an application type, and an application environment for the mobile application are created as well as linker details.

[0052] While taking into account the uploadable existing application-specific software artifacts EOBJ, EMOD, ECOM, ESERV, the mobile-device-specific software artifacts, as well as eventually a selection of segments by the user, in the next stage the necessary component descriptions UICD, DCD, FCD as well as STCD are created from the selected segments. In so doing, we are dealing with high-level-descriptions of or for application components, that are necessary for the generation. An application component can, for example, be a “TCP communication component”.

[0053] The necessary component descriptions are transformed into application components MUIC, MDC, MFC, MSTC by means of the second transformation tool CDT. Subsequently, the necessary components are analyzed as regards application-specific and mobile-device-specific software artifacts, whereby a list of existing software artifacts is created, which fulfills the general requirements of the application description. A general requirement could, for example, be the description “MODBUS-TCP PORT 2003” in the application description, from which it can be derived that a component is required that speaks “MODBUS-TCP” and is capable of producing a connection to the “Port 2003”. Inasmuch as a mobile device generally has radio communication interface, it is necessary that a mobile-device-specific software artifact be downloaded or created, which fulfills the functions “MODBUS-TCP PORT 2003” and “radio communication”. This can for example be a “Modbus-TCP.JAR” component, that is downloadable from a data storage.

[0054] In a further stage, a selection of the necessary software artifacts is undertaken and a download of the selected software artifacts is carried out, on the basis of the list of existing mobile-device-specific software artifacts and the existing application-specific software artifacts, which fulfill the requirements of the application description as well as of the mobile device. The application components are formed from the component description and/or the software artifacts while taking into account configuration files and/or software adaptations, which are automatically generated in the transformation tool.

[0055] In a further process stage, an initially empty application skeleton is preferably created in the application generator APPG from the application structure. The configuration files for the necessary application components are created from the application skeleton and from the segments of the application description inn a component configurator CC.

[0056] The application components that are configured with the configuration files are linked with the empty application skeleton with the help of a linker module LM.

[0057] The expanded application skeleton EAPPSK that has been created, which corresponds to a complete source code of a mobile application is then compiled taking into consideration the previously created application type and the application environment by means of a compiler APPC, so as to obtain a compiled mobile application CAPP.

[0058] While taking into consideration the application type as well as the application environment, the compiled mobile application CAPP is prepared for downloading by means of a deployment tool APPDH. The mobile application MAPP is thereby compatibly laid out for a mobile-device-specific operating system and a corresponding application store.

[0059] FIG. 4 shows a detailed representation of the application generator APPG. The transformation tool CDT is laid out to create an application code from the component description that results from the analysis. On top of a business logic, the application also includes functions and so-called connection points CP. The connection points CP are necessary so as to link the application skeleton APPSK that is created in the application generator APPG, with various software artifacts or alternatively components such as, for example, security components, deployment components, hardware dependency components, device functions as well as user interfaces. The security components, deployment components, hardware dependency components, device function, and/or user interfaces are add-ons, which supplement the application descriptions MUIC, MDC, MFC, in such a way that the generated software is functional and executable as a mobile application.

[0060] The connection points CP include user interface connection points UI-CP, security connection points S-CP, hardware dependency connection points HWD-CP, device function connection points DF-CP, as well as deployment connection points D-CP.

[0061] The links themselves are produced by the linker module LM with the help of various linkers. The user interface linker UI-L links the application skeleton APPSK by way of user interface-connection points UI-CPs with the user interface components UIC, which were created by a user interface-generation system UIGS. Then, the mobile application MAPP has a user interface. The user interface-generation system UIGS is an element of the code generation system CGS. User interface components are created by means of the user interface generation system UIGS, in particular, the user interface structure of the mobile application as well as the user interface for functions of the mobile application including each of the corresponding user interface codes.

[0062] The device function linker DF-L links present function components, such as special protocols such as, for example, CodeSys through the device function connection point DF-CP with the application skeleton or alternatively the expanded application skeleton. The security connection points S-CP are linked with security components such as certificates through the security linker S-L. The hardware dependency connection points HWD-CP are linked to particular hardware parts of mobile devices through the hardware dependency linker HWD-L. Through this, the mobile application, in particular, enables the use of mobile hardware such as, for example, cameras and radio networks.

[0063] It can, however, be necessary to fill out the expanded application skeleton EAPPSK, or the compiled application CAPP, with special deployment information and deployment functionalities. This is achieved through the deployment linker D-L, which links the EAPPSK or CAPP through the deployment connection points D-CP with the deployment components that are necessary for the deployment of the mobile application, such as specific deployment functions for Android or iOS based mobile applications.

[0064] All artifacts or alternatively components, which are not created through the code generator, which however are linked through a connection point, can be downloaded from the internal or external data storages DS1, DS2.