User behavior-based help recommendation for controlling execution of an industrial software program
A method implemented by a computer system is provided. The method includes providing a platform that provides a graphical user interface (GUI) for controlling execution of one or more industrial software programs, detecting user input device (UID) usage data that indicates usage of how a user uses a UID when controlling execution of a software program of the one or more software programs via the GU, detecting user frustration based on the UID usage data, and providing a prompt to the user using the UID when controlling execution of the software program, wherein the prompt offers help to the user in response to the detection of user frustration.
1 . A method implemented by a computer system, the method comprising:
providing a platform that provides a graphical user interface (GUI) for controlling execution of one or more industrial software programs;
detecting user input device (UID) usage data that indicates usage of how a user uses a UID when controlling execution of a software program of the one or more software programs via the GUI based on timestamped interrupt signals received from the UID;
detecting user frustration based on the UID usage data by detecting patterns of the timestamped interrupt signals; and
providing a prompt to the user using the UID when controlling execution of the software program, wherein the prompt offers help to the user in response to the detection of the user frustration.
2 . The method of claim 1 , wherein the platform is provided to a community of users that includes the user, the UID usage data is detected for respective users of the community of users when controlling execution of the one or more software programs, and detecting the patterns applies machine learning trained to detect patterns indicative of user frustration per user of the community of users and/or per context associated with the community of users or one or more software programs executed.
3 . The method of claim 2 , further comprising:
wherein the community of users further includes one or more authors that developed the respective one or more software program, and the method further comprises:
identifying an author of the one or more authors that developed the software program; and
notifying the author, in response to the detection of user frustration.
4 . The method of claim 2 , wherein detecting the user frustration includes correlating the user frustration to execution of a specific portion of the software program.
5 . The method of claim 2 , further comprising training a machine learning system to detect the patterns.
6 . The method of claim 4 , further comprising applying machine language trained to suggest solutions used by other users of the community of users for controlling execution of the specific portion of the software program after detection of the user frustration or other indications of problems.
7 . The method of claim 6 , further comprising training the machine learning system to suggest solutions used by the other users of the community of users for controlling execution of the specific portion of the software program after a detection of the user frustration or the other indications of problems.
8 . A computer system comprising:
a memory configured to store a plurality of programmable instructions; and
at least one processing device in communication with the memory, wherein the at least one processing device, upon execution of the plurality of programmable instructions is configured to:
provide a platform that provides a graphical user interface (GUI) for controlling execution of one or more industrial software programs, wherein the execution of the software program of the one or more software programs includes:
arranging two more programming blocks of a process flow responsive to an input from an author, the two or more programming blocks configured to be executed consecutively to cooperatively specify an input dataset from which to receive input data, process the input data to generate output data, specify a target dataset, and output the output data to the target data set, each programming block including source code and capable of being compiled and executed individually and in combination with other programming blocks of the two or more programming blocks;
editing the source code of a programming block of the two or more programming blocks responsive to input from the author; and
compiling the programming block after the source code of the programming block is edited and executing the programming block;
detect user input device (UID) usage data that indicates usage of how a user uses a UID when controlling execution of a software program of the one or more software programs via the GUI;
detect user frustration based on the UID usage data; and
provide a prompt to the user using the UID when controlling execution of the software program, wherein the prompt offers help to the user in response to the detection of user frustration.
9 . The computer system of claim 8 , wherein detecting the UID usage data includes receiving timestamped interrupt signals from the UID.
10 . The computer system of claim 9 , wherein detecting the user frustration includes detecting patterns of the timestamped interrupt signals.
11 . The computer system of claim 10 , wherein the platform is provided to a community of users that includes the user, the UID usage data is detected for respective users of the community of users when controlling execution of the one or more software programs, and detecting the patterns applies machine learning trained to detect patterns indicative of user frustration per user of the community of users and/or per context associated with the community of users or one or more software programs executed.
12 . The computer system of claim 11 , further comprising:
wherein the community of users further includes one or more authors that developed the respective one or more software program, and the method further comprises:
identifying an author of the one or more authors that developed the software program; and
notifying the author, in response to the detection of user frustration.
13 . The computer system of claim 11 , wherein detecting the user frustration includes correlating the user frustration to execution of a specific portion of the software program.
14 . The computer system of claim 11 , further comprising training a machine learning system to detect the patterns.
15 . The computer system of claim 13 , further comprising applying machine language trained to suggest solutions used by other users of the community of users for controlling execution of the specific portion of the software program after detection of the user frustration or other indications of problems.
16 . The computer system of claim 15 , further comprising training the machine learning system to suggest solutions used by the other users of the community of users for controlling execution of the specific portion of the software program after a detection of the user frustration or the other indications of problems.
17 . A non-transitory computer-readable medium storing computer-readable instructions for causing a computing system to progressively enable or disable network-based services provided to a plurality of subsystems, the computer-readable instructions comprising instructions that cause the computing system to:
provide a platform that provides a graphical user interface (GUI) for controlling execution of one or more industrial software programs, the GUI including a development tool and an execution tool while the platform is being accessed;
detect user input device (UID) usage data that indicates usage of how a user uses a UID when controlling execution of a software program of the one or more software programs via the GUI, wherein the UID usage data includes timestamped interrupt signals from the UID, wherein the execution of the software program of the one or more software programs includes:
arranging two more programming blocks of a process flow responsive to an input from an author, the two or more programming blocks configured to be executed consecutively to cooperatively specify an input dataset from which to receive input data, process the input data to generate output data, specify a target dataset, and output the output data to the target data set, each programming block including source code and capable of being compiled and executed individually and in combination with other programming blocks of the two or more programming blocks;
editing the source code of a programming block of the two or more programming blocks responsive to input from the author; and
compiling the programming block after the source code of the programming block is edited and executing the programming block;
detect user frustration based on patterns of the timestamped interrupt signals from the UID; and
provide a prompt to the user using the UID when controlling execution of the software program, wherein the prompt offers help to the user in response to the detection of user frustration.
18 . The non-transitory computer-readable medium of claim 17 , wherein the platform is provided to a community of users that includes the user, the UID usage data is detected for respective users of the community of users when controlling execution of the one or more software programs, and detecting the patterns applies machine learning trained to detect patterns indicative of user frustration per user of the community of users and/or per context associated with the community of users or one or more software programs executed.