Patent classifications
G06F8/34
METHOD AND SYSTEM FOR IMPOSING CONSTRAINTS IN A SKILL-BASED AUTONOMOUS SYSTEM
According to an aspect of the present disclosure, a computer-implemented includes creating a plurality of basic skill functions for a controllable physical device of an autonomous system. Each basic skill function includes a functional description for using the controllable physical device to interact with a physical environment to perform a defined objective. The method further includes selecting one or more basic skill functions to configure the controllable physical device to perform a defined task. The method also includes determining a decorator skill function specifying at least one constraint. The decorator skill function is configured to impose, at run-time, the at least one constraint, on the one or more basic skill functions. The method further includes generating executable code by applying the decorator skill function to the one or more basic skill functions, and actuating the controllable physical device using the executable code.
Creating Dynamic Data-Bound Container Hosted Views and Editable Forms
A method for using a user-fillable form in a host container includes receiving, at a host container, a user-fillable form bound to dynamic data from an underlying data source where the user-fillable form has a data structure generated by prepopulated coding. The method further includes translating the user-fillable form into a hostable format for the host container. The method also includes rendering, using the hostable format for the host container, the user-fillable form in a user interface. The method further includes receiving, at the user interface of the host container, from a user of the host container, a data entry for input to the user-fillable form and updating, by the host container, the dynamic data from the underlying data source by persisting data from the data entry in a data store associated with the underlying data source.
CUSTOM COMPONENTS IN A DATA-AGNOSTIC DASHBOARD RUNTIME
A method implements a dashboard runtime that comprises a custom visualization component to render a visual representation of a data items of one or more queried datasets in a GUI; at least one query associated with at least the custom component; and an API to provide communication between the custom component and the at least one query. The API detects a user interaction with of a portion of the custom component via a first message that informs the dashboard runtime of the detected user interaction; passes a second message to the at least one query instructing the at least one query to rerun to receive an updated query dataset; and passes the updated dataset via a third message to the custom component and to any other components associated with the at least one query, such that the custom component and the other components automatically render updated visual representations of the updated dataset.
CUSTOM COMPONENTS IN A DATA-AGNOSTIC DASHBOARD RUNTIME
A method implements a dashboard runtime that comprises a custom visualization component to render a visual representation of a data items of one or more queried datasets in a GUI; at least one query associated with at least the custom component; and an API to provide communication between the custom component and the at least one query. The API detects a user interaction with of a portion of the custom component via a first message that informs the dashboard runtime of the detected user interaction; passes a second message to the at least one query instructing the at least one query to rerun to receive an updated query dataset; and passes the updated dataset via a third message to the custom component and to any other components associated with the at least one query, such that the custom component and the other components automatically render updated visual representations of the updated dataset.
Smart test case generator
Embodiments provide systems, methods, and computer-readable storage media for automated and objective testing of applications or processes. Graphical representations of the application may be analyzed to derive attribute data and identify flows (e.g., possible processing paths that may be accessed during utilization of the application by a user). Test cases may be automatically generated based on the attribute data and the identified flows. Additionally, testing scripts for testing the portions of the application corresponding to each identified flow may be generated using machine learning logic. Once generated, the testing scripts may be executed against the application to test different portions of the application functionality (or processes). Execution of the testing scripts may be monitored to generate feedback used to train the machine learning logic. Reports may be generated based on the monitoring and provided to users to enable the users to resolve any errors encountered during the testing.
Smart test case generator
Embodiments provide systems, methods, and computer-readable storage media for automated and objective testing of applications or processes. Graphical representations of the application may be analyzed to derive attribute data and identify flows (e.g., possible processing paths that may be accessed during utilization of the application by a user). Test cases may be automatically generated based on the attribute data and the identified flows. Additionally, testing scripts for testing the portions of the application corresponding to each identified flow may be generated using machine learning logic. Once generated, the testing scripts may be executed against the application to test different portions of the application functionality (or processes). Execution of the testing scripts may be monitored to generate feedback used to train the machine learning logic. Reports may be generated based on the monitoring and provided to users to enable the users to resolve any errors encountered during the testing.
GROUP CONTROL AND MANAGEMENT AMONG ELECTRONIC DEVICES
In a method of group control and management among electronic devices, wherein the electronic devices is in communication with a control device, a projectable space instance is provided for the control device to create a workspace, wherein a control and management tool and a plurality of unified tools for driving respective electronic devices are selectively added to the projectable space instance. The projectable space instance is then parsed with a projector by the control device to automatically generate a projected workspace corresponding to the workspace to be created via the projectable space instance. The control and management tool realizes at least one status information of at least a first one of the electronic devices by way of the unified tools, and controls at least a second one of the electronic devices to execute at least one task corresponding to the at least one status information.
GROUP CONTROL AND MANAGEMENT AMONG ELECTRONIC DEVICES
In a method of group control and management among electronic devices, wherein the electronic devices is in communication with a control device, a projectable space instance is provided for the control device to create a workspace, wherein a control and management tool and a plurality of unified tools for driving respective electronic devices are selectively added to the projectable space instance. The projectable space instance is then parsed with a projector by the control device to automatically generate a projected workspace corresponding to the workspace to be created via the projectable space instance. The control and management tool realizes at least one status information of at least a first one of the electronic devices by way of the unified tools, and controls at least a second one of the electronic devices to execute at least one task corresponding to the at least one status information.
Mixed mode programming
A mixed mode programming method permitting users to program with graphical coding blocks and textual code within the same programming tool. The mixed mode preserves the advantages of graphical block programming while introducing textual coding as needed for instructional reasons and/or for functional reasons. Converting a graphical code block or group of blocks to a textual block lets the user see a portion of the textual code in the context of a larger program. Within one programming tool the mixed mode method allows users to learn programming and build purely graphical blocks; then transition into mixed graphical and textual code and ultimately lead to their ability to program in purely textual code. The mixed mode further allows users to program using any combination of drag-and-drop graphical blocks and typed textual code in various forms.
Mixed mode programming
A mixed mode programming method permitting users to program with graphical coding blocks and textual code within the same programming tool. The mixed mode preserves the advantages of graphical block programming while introducing textual coding as needed for instructional reasons and/or for functional reasons. Converting a graphical code block or group of blocks to a textual block lets the user see a portion of the textual code in the context of a larger program. Within one programming tool the mixed mode method allows users to learn programming and build purely graphical blocks; then transition into mixed graphical and textual code and ultimately lead to their ability to program in purely textual code. The mixed mode further allows users to program using any combination of drag-and-drop graphical blocks and typed textual code in various forms.