WO2024095410A1 - Stress data analysis system, stress data analysis method, and stress data analysis program - Google Patents

Stress data analysis system, stress data analysis method, and stress data analysis program Download PDF

Info

Publication number
WO2024095410A1
WO2024095410A1 PCT/JP2022/041049 JP2022041049W WO2024095410A1 WO 2024095410 A1 WO2024095410 A1 WO 2024095410A1 JP 2022041049 W JP2022041049 W JP 2022041049W WO 2024095410 A1 WO2024095410 A1 WO 2024095410A1
Authority
WO
WIPO (PCT)
Prior art keywords
countermeasure
stress data
stress
unit
engineering tool
Prior art date
Application number
PCT/JP2022/041049
Other languages
French (fr)
Japanese (ja)
Inventor
英松 林
一樹 新山
剛人 池田
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to PCT/JP2022/041049 priority Critical patent/WO2024095410A1/en
Priority to JP2023519772A priority patent/JP7333885B1/en
Publication of WO2024095410A1 publication Critical patent/WO2024095410A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer

Definitions

  • the present disclosure relates to a stress data analysis system, a stress data analysis method, and a stress data analysis program that analyze the stress experienced by users of engineering tools.
  • engineering software In recent years, as engineering software and other programming software have become more sophisticated, there is a demand for more efficient work through intuitive operation. Hereinafter, engineering software will be referred to as engineering tools. To enable intuitive operation of engineering tools, it is desirable to be able to reduce the stress caused by operation or to be able to avoid stress caused by operation. To be able to reduce or avoid stress, it is important to collect information when stress occurs and to utilize the collected information.
  • Patent Document 1 discloses an information transmission program that acquires a user's operation history for the functions of a computer system, and if the operation history satisfies a dissatisfaction condition indicating that the user is dissatisfied with the computer system, transmits the operation history that satisfies the dissatisfaction condition to the address of the system developer.
  • the computer system is a business-related computer system, such as an electronic medical record system.
  • the present disclosure has been made in consideration of the above, and aims to provide a stress data analysis system that makes it possible to improve satisfaction in the use of engineering tools.
  • the stress data analysis system disclosed herein comprises a stress data acquisition unit that acquires stress data regarding the stress conditions experienced by a user who uses an engineering tool, a cause analysis unit that identifies the part of the engineering tool that is the cause of stress when using the engineering tool by analyzing the stress data, a countermeasure creation unit that creates countermeasures that can be taken against the cause, and an update unit that updates the engineering tool by reflecting the countermeasure that has been decided upon in the engineering tool.
  • the stress data analysis system disclosed herein has the effect of improving satisfaction in using engineering tools.
  • FIG. 1 is a diagram showing a configuration example of a stress data analysis system according to a first embodiment
  • FIG. 1 is a diagram showing an example of the configuration of an engineering device, a server device, and a terminal device of a stress data analysis system according to a first embodiment.
  • FIG. 1 is a diagram showing an example of the configuration of a data analysis unit included in a server device of a stress data analysis system according to a first embodiment
  • 1 is a flowchart showing a procedure of an operation performed by the stress data analysis system according to the first embodiment.
  • 1 is a flowchart showing a procedure of an operation performed by a server device when a countermeasure registered as a temporary countermeasure is executed in the first embodiment.
  • 1 is a flowchart showing a first example of an operation procedure for acquiring data for analysis by the stress data analysis system according to the first embodiment
  • 11 is a flowchart showing a first example of an operation procedure of creating a countermeasure and registering the created countermeasure by the server device of the stress data analysis system according to the first embodiment
  • 11 is a flowchart showing a second example of an operation procedure for acquiring data for analysis by the stress data analysis system according to the first embodiment.
  • 11 is a flowchart showing a second example of a procedure of an operation of creating a countermeasure and registering the created countermeasure by the server device of the stress data analysis system according to the first embodiment.
  • FIG. 11 is a flowchart showing a third example of an operation procedure for acquiring data for analysis by the stress data analysis system according to the first embodiment.
  • 11 is a flowchart showing a third example of an operation procedure of creating a countermeasure and registering the created countermeasure by the server device of the stress data analysis system according to the first embodiment.
  • 11 is a flowchart showing a fourth example of an operation procedure for acquiring data for analysis by the stress data analysis system according to the first embodiment.
  • 11 is a flowchart showing a fourth example of an operation procedure for creating a countermeasure and registering the created countermeasure by the server device of the stress data analysis system according to the first embodiment.
  • FIG. 1 is a diagram illustrating an example of a hardware configuration of a server device constituting the stress data analysis system according to the first embodiment.
  • FIG. 1 is a diagram showing an example of a hardware configuration of an engineering device constituting the stress data analysis system according to the first embodiment;
  • Embodiment 1. 1 is a diagram showing an example of the configuration of a stress data analysis system 1 according to the embodiment 1.
  • the stress data analysis system 1 collects information about stress caused to a user who uses an engineering tool, and provides countermeasures for reducing or avoiding stress.
  • the stress data analysis system 1 comprises an engineering device 2 used by a user, a server device 3 that collects and analyzes data, and a terminal device 4 that presents countermeasures against stress.
  • the engineering device 2 and the server device 3 communicate with each other via a network.
  • the server device 3 and the terminal device 4 communicate with each other via a network.
  • the network is, for example, a WAN (Wide Area Network) such as the Internet.
  • the network may also be a LAN (Local Area Network).
  • the server device 3 is a server built in a cloud environment.
  • the cloud environment includes computer resources provided in a cloud service platform. Because the server device 3 is built in a cloud environment, it is sometimes called a cloud server.
  • the engineering tool is a program creation support program that supports the creation of a program used by a control device that controls a controlled device such as a robot to control the controlled device.
  • the control device is, for example, a programmable logic controller.
  • the engineering tool is provided via a network by SaaS (Software as a Service).
  • SaaS Software as a Service
  • the engineering device 2 uses the engineering tool executed by the server device 3 via the network. Note that the use of the engineering tool is not limited to SaaS, and the engineering tool may be installed in the engineering device 2 and executed by the engineering device 2.
  • the user creates a program using an engineering tool by operating the engineering device 2.
  • the program created using the engineering tool is, for example, a ladder program.
  • the engineering device 2 transmits stress data about the stress situation of the user who uses the engineering tool to the server device 3.
  • the engineering device 2 also transmits operation history data, which is a history of operations by the user, to the server device 3.
  • the server device 3 searches for the cause of stress from the stress data and the operation history data, and creates possible countermeasures for the cause.
  • the server device 3 transmits information indicating the countermeasures to the terminal device 4.
  • the stress data analysis system 1 notifies the user of the countermeasures by transmitting information indicating the countermeasures from the server device 3 to the engineering device 2.
  • the terminal device 4 presents the countermeasures created by the server device 3. A judge who determines which countermeasure to adopt decides whether or not to adopt the countermeasure presented by the terminal device 4. The terminal device 4 transmits information indicating whether or not the countermeasure can be adopted to the server device 3. The server device 3 updates the engineering tool by reflecting the countermeasure that has been decided to be adopted in the engineering tool. The engineering device 2 uses the updated engineering tool.
  • the stress data analysis system 1 may be equipped with a device that acquires the user's physical condition information.
  • the physical condition information is information acquired by observing the user's physical condition.
  • the camera 2a shown in FIG. 1 is an example of a device that acquires the user's physical condition information.
  • the camera 2a photographs the user using the engineering device 2, and outputs the physical condition information, which is image data of the user.
  • the physical condition information is input to the engineering device 2.
  • FIG. 2 is a diagram showing an example configuration of the engineering device 2, server device 3, and terminal device 4 of the stress data analysis system 1 according to the first embodiment.
  • the engineering device 2 includes a user interface unit 21, a stress data acquisition unit 22, and an operation history acquisition unit 23.
  • the user interface unit 21 accepts operations by the user.
  • the user interface unit 21 also displays information.
  • the user interface unit 21 transmits information input to the user interface unit 21 by operation to the server device 3.
  • the user uses the engineering tool by operating the user interface unit 21.
  • the stress data acquisition unit 22 acquires stress data of a user who uses the engineering tool.
  • the stress data acquisition unit 22 judges whether or not the user is experiencing stress, and acquires stress data when it is judged that the user is experiencing stress.
  • the stress data acquisition unit 22 transmits the acquired stress data to the server device 3.
  • the operation history acquisition unit 23 acquires operation history data regarding operations of the user interface unit 21.
  • the operation history acquisition unit 23 transmits the acquired operation history data to the server device 3.
  • the stress data acquisition unit 22 acquires data of an image captured by the camera 2a.
  • the server device 3 includes an engineering tool unit 31, a stress data collection unit 32, an operation history collection unit 33, a data analysis unit 34, and an update unit 36.
  • the server device 3 holds a countermeasure DB (DataBase) 35.
  • the engineering tool unit 31 executes an engineering tool according to information from the engineering device 2.
  • the stress data collection unit 32 receives stress data from the stress data acquisition unit 22 and collects the stress data.
  • the stress data collected by the stress data collection unit 32 is input to the data analysis unit 34.
  • the operation history collection unit 33 receives operation history data from the operation history acquisition unit 23 and collects the operation history data.
  • the operation history data collected by the operation history collection unit 33 is input to the data analysis unit 34.
  • the data analysis unit 34 analyzes the stress data collected by the stress data collection unit 32 and the operation history data collected by the operation history collection unit 33 to identify the cause of stress.
  • the data analysis unit 34 creates a countermeasure according to the cause of stress.
  • the data analysis unit 34 transmits information about the countermeasure to the terminal device 4.
  • the data analysis unit 34 outputs the information about the countermeasure to the countermeasure DB 35.
  • the server device 3 stores the created countermeasure in the countermeasure DB 35.
  • the update unit 36 reads out information about the countermeasures from the countermeasure DB 35.
  • the update unit 36 updates the engineering tool by reflecting the countermeasure that has been decided to be adopted in the engineering tool.
  • the update unit 36 also transmits information indicating the countermeasures to the engineering device 2.
  • the user interface unit 21 of the engineering device 2 receives the information indicating the countermeasures and displays the information indicating the countermeasures. This notifies the user of the countermeasures. By notifying the user of the countermeasures, the user can be made aware of the countermeasures for reducing or avoiding stress.
  • the terminal device 4 includes a user interface unit 41.
  • the user interface unit 41 receives information about countermeasures and displays the information about the countermeasures.
  • the user interface unit 41 also accepts operations by the decision maker.
  • the user interface unit 41 presents countermeasures created by a countermeasure creation unit in the data analysis unit 34, and functions as a presentation unit that accepts information indicating whether or not the presented countermeasures can be adopted.
  • the countermeasure creation unit will be described later.
  • the user interface unit 41 transmits information indicating whether or not the countermeasures can be adopted to the server device 3.
  • the data analysis unit 34 receives information indicating whether or not a countermeasure is to be adopted, and outputs information about the countermeasure that has been decided to be adopted to the countermeasure DB 35.
  • the data analysis unit 34 notifies the update unit 36 that the countermeasure information has been stored.
  • the update unit 36 reads out the information about the countermeasure that has been decided to be adopted from the countermeasure DB 35. As a result, the update unit 36 reflects the countermeasure that has been decided to be adopted in the user interface unit 41 in the engineering tool.
  • the update unit 36 also acquires stress data from the stress data collection unit 32.
  • the update unit 36 checks whether or not there is a countermeasure that corresponds to the acquired stress data by referring to the countermeasure information stored in the countermeasure DB 35. If there is a countermeasure that corresponds to the acquired stress data, the update unit 36 reads the information on the countermeasure that corresponds to the acquired stress data from the countermeasure DB 35 and reflects the countermeasure in the engineering tool. The update unit 36 outputs the information on the countermeasure that has been reflected in the engineering tool to the data analysis unit 34.
  • the stress data acquisition unit 22 can acquire stress data by the first to fourth acquisition methods described below.
  • the stress data acquisition unit 22 may acquire stress data by one of the first to fourth acquisition methods, or may acquire stress data by two or more of the first to fourth acquisition methods.
  • the stress data acquisition unit 22 works in conjunction with an AI (Artificial Intelligence) chatbot, which is a communication tool that accepts inquiries about engineering tools.
  • AI Artificial Intelligence
  • the AI chatbot When a question is input by a user, the AI chatbot outputs an answer to the question.
  • the stress data acquisition unit 22 acquires the information input to the AI chatbot as stress data. That is, in the first acquisition method, the stress data includes information input by the user to the AI chatbot.
  • the stress data acquisition unit 22 determines that an event that caused stress to the user has occurred when the user inputs a question to the AI chatbot.
  • the stress data acquisition unit 22 also treats the information input to the AI chatbot as stress data related to stress.
  • the stress data acquisition unit 22 acquires the input information when a question about how to use the engineering tool or a question about how to deal with errors in the engineering tool is input to the AI chatbot.
  • the stress data acquisition unit 22 may also acquire the input information when a request for improvements to the engineering tool is input to the AI chatbot.
  • the stress data acquisition unit 22 works in conjunction with a device that acquires information about the user's physical condition.
  • the camera 2a takes a video of the user operating the engineering device 2, and transmits the image data to the stress data acquisition unit 22.
  • the stress data acquisition unit 22 observes the user's condition based on the image data from the camera 2a.
  • the stress data acquisition unit 22 detects changes in the user's physical condition or changes in the user's behavior from the image data.
  • a change in the physical condition is, for example, a change in facial color.
  • a change in behavior is, for example, repeated tapping of the keyboard with the fingers.
  • the stress data acquisition unit 22 determines that the user is stressed when a change in physical condition or behavior is detected. When the stress data acquisition unit 22 determines that the user is stressed, it acquires image data as stress data.
  • the image data is physical condition information acquired by observing the user's physical condition.
  • the stress data includes physical condition information.
  • the stress data acquisition unit 22 may learn physical condition information when stress is occurring by a method such as machine learning, and determine the presence or absence of stress based on the learning result.
  • the physical condition information may be any information capable of detecting a change in the user's physical condition or a change in the user's behavior, and is not limited to image data acquired by shooting a video.
  • the device that acquires the physical condition information may include a microphone that captures audio.
  • the stress data acquisition unit 22 may determine that the user is stressed when the user speaks or when the user's tone of voice changes.
  • the stress data acquisition unit 22 constantly monitors the user's physical condition based on the physical condition information while the user is using the engineering tool. If the stress data acquisition unit 22 determines that the user is stressed, it acquires physical condition information from a point in time that is a preset time prior to the point in time of the determination as stress data. The stress data acquisition unit 22 transmits the stress data to the server device 3. If the stress data acquisition unit 22 determines that the user's stress has been relieved, it stops transmitting the stress data to the server device 3.
  • whether or not the user is in a stressed state is determined by the stress data acquisition unit 22 of the engineering device 2, but this is not limited to the above.
  • the function of determining whether or not the user is in a stressed state may be provided in the server device 3.
  • the stress data acquisition unit 22 determines that the user is stressed when an error occurs while using the engineering tool.
  • the stress data acquisition unit 22 determines that the user is stressed, it acquires an error log, which is information about the error, as stress data.
  • the error log includes information indicating the content of the operation when the error occurred. That is, in the third acquisition method, the stress data includes information indicating the content of the operation when an error occurs while using the engineering tool.
  • the stress data acquisition unit 22 determines that the user has become stressed when no error has occurred but the user is having trouble creating a program.
  • the stress data includes information indicating the content of an operation when a specific event occurs in the user's operation when using the engineering tool.
  • the specific event is, for example, when the user is continuing to create a program in the step being created or in a step related to the step being created, and the time during which the user's operation is stalled exceeds a preset time.
  • the stress data acquisition unit 22 determines that the user is having trouble creating a program and has become stressed.
  • the specific event may be any event that can be determined to be an event that requires time and effort in creating a program by the user, and is not limited to an operation interval exceeding a preset time.
  • the specific event may be, for example, an operation and cancellation of the operation being repeated consecutively.
  • the operation history acquisition unit 23 constantly acquires operation history data such as the use of function buttons corresponding to various functions of the engineering tool, the movement of the pointer by operating the pointing device included in the user interface unit 21, or the use of function blocks.
  • the operation history acquisition unit 23 uses the determination that stress is occurring as a trigger to transmit operation history data to the server device 3.
  • the operation history acquisition unit 23 transmits operation history data from a point in time that is a preset time prior to the point in time at which it was determined that stress was occurring to the server device 3.
  • the operation history acquisition unit 23 stops transmitting the operation history data to the server device 3.
  • the stress data analysis system 1 can search for causes that contributed to the occurrence of stress by analyzing the operation history data from a point in time prior to the point in time at which it was determined that stress was occurring.
  • FIG. 3 is a diagram showing an example of the configuration of the data analysis unit 34 of the server device 3 of the stress data analysis system 1 according to the first embodiment.
  • FIG. 3 shows the data analysis unit 34, a countermeasure DB 35, and a user interface unit 41 of the terminal device 4.
  • the data analysis unit 34 includes a cause analysis unit 341, a countermeasure creation unit 342, and a countermeasure classification unit 343. Stress data and operation history data are input to the cause analysis unit 341.
  • the cause analysis unit 341 identifies the part of the engineering tool that is the cause of stress when using the engineering tool by analyzing the stress data.
  • the countermeasure creation unit 342 creates countermeasures that can be taken for the causes identified by the cause analysis unit 341.
  • the countermeasure creation unit 342 may, for example, learn countermeasures that enable stress reduction or stress avoidance using a method such as machine learning, and create countermeasures based on the learning results. If the stress data analysis system 1 uses an AI chatbot, the AI engine of the AI chatbot may be used as the countermeasure creation unit 342.
  • the countermeasure creation unit 342 may determine the difference between the program created by the user and the program based on the learning results, and create a countermeasure based on the difference.
  • the countermeasure creation unit 342 may create, as a countermeasure, a tool or function that can guide the program created by the user to a program based on the learning results.
  • a program based on the learning results is a program that does not cause stress when created, or can reduce stress when created. This allows the countermeasure creation unit 342 to create a countermeasure that makes it possible to reduce or avoid stress.
  • the countermeasures may be, for example, a bug fix program for the engineering tool, a function in the engineering tool that recommends recommended programs, or a function that recommends recommended programs based on the user's unique characteristics.
  • the countermeasures may be, for example, changing the layout of function buttons, improving function blocks, or a function that automatically creates programs from the user's required specifications.
  • the automatic program creation function is a function that creates a program from text.
  • Temporary countermeasures are countermeasures other than essential countermeasures among the countermeasures created by the countermeasure creation unit 342, and are countermeasures that can be taken as a temporary response to stress.
  • Temporary countermeasures include common countermeasures and customized countermeasures.
  • Common countermeasures are countermeasures that can be commonly applied regardless of individuals or conditions.
  • Customized countermeasures are countermeasures that can be applied after being customized to suit individuals or conditions.
  • Common countermeasures are also candidates for essential countermeasures.
  • An example of a common countermeasure is an automatic program creation function based on the user's required specifications. This automatic program creation function is changed to an essential countermeasure as the accuracy of the automatic creation improves.
  • An example of a customized countermeasure is a recommendation function for recommended programs based on the user's unique characteristics.
  • the countermeasure classification unit 343 transmits information on the countermeasure created by the countermeasure creation unit 342 together with category information on the countermeasure to the terminal device 4.
  • the category information indicates whether the countermeasure has been classified into an essential countermeasure or a temporary countermeasure category.
  • the user interface unit 41 of the terminal device 4 presents the countermeasures for each category.
  • the judge inputs information indicating whether the presented countermeasure can be adopted to the user interface unit 41.
  • the user interface unit 41 transmits information indicating whether the countermeasure can be adopted to the server device 3.
  • the countermeasure classification unit 343 receives the information indicating whether the countermeasure can be adopted, and outputs information on the countermeasure that has been decided to be adopted and category information to the countermeasure DB 35.
  • the countermeasure DB 35 stores information on the countermeasures for each category.
  • the countermeasure classification unit 343 manages the countermeasures created by the countermeasure creation unit 342 by classifying them into essential countermeasures and temporary countermeasures.
  • the decision maker wishes to adopt a countermeasure classified as an essential countermeasure as a temporary countermeasure, he or she can instruct the presented countermeasure to change the category by operating the user interface unit 41.
  • the user interface unit 41 transmits an instruction to change the category to the server device 3 together with information indicating whether the presented countermeasure can be adopted.
  • the countermeasure classification unit 343 changes the category of the countermeasure that has been decided to be adopted from an essential countermeasure to a temporary countermeasure.
  • the countermeasure classification unit 343 notifies the update unit 36 shown in FIG. 2 via the countermeasure DB 35 that the countermeasure information has been stored.
  • the update unit 36 reflects the countermeasures classified as essential countermeasures and stored in the countermeasure DB 35, i.e., the countermeasures registered as essential countermeasures, in the engineering tool.
  • the update unit 36 acquires stress data from the stress data collection unit 32, it checks whether or not there is a countermeasure corresponding to the acquired stress data among the countermeasures classified as temporary countermeasures and stored in the countermeasure DB 35, i.e., the countermeasures registered as temporary countermeasures. If there is a countermeasure corresponding to the acquired stress data, the update unit 36 reads information about the countermeasure corresponding to the acquired stress data from the countermeasure DB 35 and reflects the countermeasure in the engineering tool.
  • the stress data analysis system 1 can reduce stress by applying temporary countermeasures, thereby preventing the accumulation of stress.
  • FIG. 4 is a flowchart showing the procedure of the operation of the stress data analysis system 1 according to the first embodiment.
  • FIG. 4 shows an example of the procedure of the operation when a countermeasure registered as an essential countermeasure is executed.
  • step S1 the engineering device 2 acquires stress data and operation history data.
  • the engineering device 2 acquires stress data by the stress data acquisition unit 22.
  • the stress data acquisition unit 22 acquires stress data by determining that the user is experiencing stress.
  • the stress data acquisition unit 22 transmits the acquired stress data to the server device 3.
  • the stress data collection unit 32 receives the stress data and collects it.
  • the engineering device 2 acquires operation history data by the operation history acquisition unit 23.
  • the operation history acquisition unit 23 transmits the acquired operation history data to the server device 3.
  • the operation history collection unit 33 receives the operation history data and collects it.
  • step S2 the data analysis unit 34 of the server device 3 identifies the cause of stress based on the stress data and the operation history data by the cause analysis unit 341.
  • the cause analysis unit 341 analyzes the stress data collected by the stress data collection unit 32 and the operation history data collected by the operation history collection unit 33, and identifies the cause of stress.
  • step S3 the data analysis unit 34 creates possible countermeasures for the identified cause using the countermeasure creation unit 342.
  • step S4 the data analysis unit 34 classifies the countermeasures created in step S3 using the countermeasure classification unit 343.
  • the countermeasure classification unit 343 transmits information about the created countermeasures and category information about the countermeasures to the terminal device 4.
  • step S5 the user interface unit 41 of the terminal device 4 presents countermeasures.
  • the user interface unit 41 displays information about countermeasures for each category based on the received countermeasure information and the received category information.
  • the judge inputs information indicating whether or not the countermeasure can be adopted to the user interface unit 41, thereby deciding whether or not to adopt the presented countermeasure.
  • the user interface unit 41 transmits information indicating whether or not the countermeasure can be adopted to the server device 3.
  • the countermeasure classification unit 343 receives information indicating whether or not to adopt the countermeasure, and outputs information about the countermeasure that has been decided to be adopted and category information to the countermeasure DB 35.
  • the server device 3 registers the countermeasure that has been decided to be adopted by storing the information about the countermeasure in the countermeasure DB 35.
  • the countermeasures are registered for each category based on the category information.
  • the countermeasure classification unit 343 notifies the update unit 36 that the information about the countermeasure has been stored.
  • step S7 the server device 3 updates the engineering tool by having the update unit 36 reflect the registered countermeasures in the engineering tool.
  • the update unit 36 receives a notification from the countermeasure classification unit 343 that countermeasure information has been stored, it reads out information on the countermeasures registered as essential countermeasures from the countermeasure DB 35. As a result, the update unit 36 reflects the countermeasures classified as essential countermeasures in the engineering tool.
  • the engineering device 2 uses the updated engineering tool.
  • Figure 5 is a flowchart showing the procedure of the operation of the server device 3 when executing a countermeasure registered as a temporary countermeasure in embodiment 1.
  • step S11 the server device 3 collects stress data using the stress data collection unit 32.
  • the stress data collection unit 32 collects stress data acquired by the stress data acquisition unit 22 upon determining that the user is experiencing stress.
  • the stress data collection unit 32 outputs the collected stress data to each of the data analysis unit 34 and the update unit 36.
  • the update unit 36 checks whether or not there is a countermeasure that corresponds to the stress data among the countermeasures classified as temporary countermeasures and stored in the countermeasure DB 35. Here, it is assumed that the countermeasures that correspond to the stress data are stored in the countermeasure DB 35.
  • the update unit 36 reads information on the countermeasures that correspond to the acquired stress data from the countermeasure DB 35.
  • the update unit 36 reflects the countermeasures that correspond to the acquired stress data in the engineering tool. In this way, in step S12, the server device 3 executes the countermeasures registered as temporary countermeasures.
  • the update unit 36 outputs the information on the countermeasures reflected in the engineering tool to the data analysis unit 34.
  • step S13 the server device 3 uses the stress data collection unit 32 to collect stress data after the countermeasure in step S12 has been implemented.
  • the stress data acquisition unit 22 outputs the collected stress data to the data analysis unit 34.
  • the stress data collected in step S11, information on the countermeasure reflected in the engineering tool, and the stress data collected in step S13 are input to the data analysis unit 34.
  • the data analysis unit 34 receives stress data before the countermeasure registered as a temporary countermeasure is implemented, information on the implemented countermeasure, and stress data after the implementation of the countermeasure.
  • step S14 the server device 3 uses the cause analysis unit 341 of the data analysis unit 34 to determine whether the implemented countermeasure was sufficient.
  • the cause analysis unit 341 determines whether the implemented countermeasure was sufficient based on the stress data before the countermeasure registered as a temporary countermeasure was implemented and the stress data after the countermeasure was implemented.
  • the cause analysis unit 341 judges whether the implemented countermeasure was sufficient based on the change in stress data before and after the implementation of the countermeasure. For example, if it is determined that the change in stress data is due to an improvement in stress, the cause analysis unit 341 judges that the implemented countermeasure was sufficient. On the other hand, if there is no change in the stress data or if it is determined that the change in stress data is due to a worsening of stress, the cause analysis unit 341 judges that the implemented countermeasure was not sufficient.
  • step S15 the countermeasure classification unit 343 of the data analysis unit 34 of the server device 3 changes the category of the countermeasure implemented in step S12 from a temporary countermeasure to an essential countermeasure.
  • Information on the implemented countermeasure is classified as an essential countermeasure and stored in the countermeasure DB 35.
  • the registration of the countermeasure is corrected to a registration as an essential countermeasure.
  • the countermeasure classification unit 343 changes the classification of the countermeasure from a temporary countermeasure to an essential countermeasure based on the results when the countermeasure classified as a temporary countermeasure was implemented.
  • step S16 the server device 3 modifies the countermeasure by the countermeasure creation unit 342 of the data analysis unit 34.
  • the countermeasure creation unit 342 acquires information on the implemented countermeasure, and modifies the countermeasure based on the stress data before the implementation of the countermeasure registered as a temporary countermeasure and the stress data after the implementation of the countermeasure.
  • the countermeasure creation unit 342 modifies the countermeasure to improve stress based on the change in the stress data before and after the implementation of the countermeasure. Information on the modified countermeasure is stored in the countermeasure DB 35.
  • the server device 3 ends the operation according to the procedure shown in FIG. 5.
  • the stress data analysis system 1 can reduce or avoid stress for a user who continues to use the engineering tool by operating according to the procedure shown in FIG. 4 or by operating according to the procedure shown in FIG. 5. By reducing or avoiding user stress, it is possible to improve satisfaction in using the engineering tool.
  • the stress data acquired for analysis is stress data acquired by the above-mentioned first acquisition method, stress data acquired by the above-mentioned second acquisition method, stress data acquired by the above-mentioned third acquisition method, and stress data acquired by the above-mentioned fourth acquisition method.
  • FIG. 6 is a flowchart showing a first example of an operational procedure for acquiring data for analysis by the stress data analysis system 1 according to the first embodiment.
  • FIG. 7 is a flowchart showing a first example of an operational procedure for creating countermeasures and registering the created countermeasures by the server device 3 of the stress data analysis system 1 according to the first embodiment.
  • the first examples shown in each of FIG. 6 and FIG. 7 are examples of the case where stress data is acquired by the first acquisition method.
  • step S21 shown in FIG. 6 the stress data analysis system 1 determines whether or not the AI chatbot has been used by the stress data acquisition unit 22.
  • Using the AI chatbot refers to inputting a question to the AI chatbot. For example, if a problem occurs when creating a program using an engineering tool, the user inputs a question to the AI chatbot to solve the problem. If the AI chatbot has not been used (step S21, No), the stress data analysis system 1 returns the procedure to step S21.
  • step S22 the stress data analysis system 1 acquires the information input to the AI chatbot by the stress data acquisition unit 22.
  • the stress data acquisition unit 22 transmits the stress data, which is the information input to the AI chatbot, to the stress data collection unit 32.
  • the stress data acquisition unit 22 also acquires information on the response output by the AI chatbot in response to the input as stress data, and transmits it to the stress data collection unit 32.
  • the stress data collection unit 32 outputs the collected stress data to the cause analysis unit 341.
  • the operation history acquisition unit 23 is triggered by the determination that stress is occurring, and transmits operation history data to the operation history collection unit 33. That is, the operation history acquisition unit 23 is triggered by the use of an AI chatbot, and transmits operation history data to the operation history collection unit 33.
  • the stress data analysis system 1 acquires the operation history data transmitted by the operation history acquisition unit 23 using the operation history collection unit 33.
  • the operation history collection unit 33 collects the operation history data, and outputs the collected operation history data to the cause analysis unit 341.
  • the stress data analysis system 1 obtains program creation status data by extracting the functions used in creating the program and the created program using the cause analysis unit 341.
  • the cause analysis unit 341 extracts the part of the created program that is the theme of the question based on the information input to the AI chatbot.
  • the cause analysis unit 341 identifies the cause by identifying the function or function block in the program created using an engineering tool.
  • the cause analysis unit 341 also extracts the function used in creating that part of the program, such as copy, paste, function block, or icon placement, from the operation history data.
  • the program creation status data includes the extracted program and data indicating the extracted function.
  • the cause analysis unit 341 stores the stress data, which is the information input to the AI chatbot and the information output from the AI chatbot, and the program creation status data in association with each other.
  • step S25 the stress data analysis system 1 determines whether or not additional information has been input to the AI chatbot using the stress data acquisition unit 22. If additional information has been input to the AI chatbot (step S25, Yes), the stress data analysis system 1 returns the procedure to step S22 and acquires the additional information using the stress data acquisition unit 22.
  • step S26 the stress data analysis system 1 determines, via the stress data acquisition unit 22, whether a certain period of time has passed since the information was input to the AI chatbot.
  • the certain period of time is a period set in advance. If the certain period of time has not passed (step S26, No), the stress data analysis system 1 returns the procedure to step S25.
  • step S26 Yes
  • the stress data acquisition unit 22 determines that the problem has been resolved by implementing the measures indicated in the response.
  • the stress data analysis system 1 ends the operation according to the procedure shown in FIG. 6.
  • the server device 3 starts analyzing the stress data and the program creation status data in the cause analysis unit 341.
  • the cause analysis unit 341 searches for the cause of stress based on the information input to the AI chatbot and the responses to the input.
  • step S32 the cause analysis unit 341 extracts parts of the program creation status data that are related to the keywords included in the input information, and searches for the cause of stress based on the extracted parts.
  • the cause analysis unit 341 extracts the parts related to the keywords, assuming that the part of the program that was being created was the part that caused the user's question.
  • the cause analysis unit 341 extracts the program up to a certain number of steps from the point when the information was input into the AI chatbot.
  • the cause analysis unit 341 searches for the cause of stress from the extracted program.
  • the cause analysis unit 341 determines whether or not the program created by the user has any wasteful parts when compared with an ideal program. Furthermore, if the program created by the user has any wasteful parts, the cause analysis unit 341 searches for the cause of the creation of the wasteful parts.
  • An ideal program is a basic algorithm. If a program to be adopted for the program being created is suggested in the response of the AI chatbot, the ideal program may be the program suggested in the response.
  • step S33 the countermeasure creation unit 342 creates countermeasures for the causes of stress discovered in steps S31 and S32.
  • countermeasures for example, the creation of function blocks, which are program components that can simplify program creation, a function to present function blocks to the user, or a function to guide the user to a function that presents function blocks can be adopted.
  • step S34 the countermeasure classification unit 343 judges whether the countermeasure created in step S33 is an essential countermeasure. If the created countermeasure is an essential countermeasure (step S34, Yes), the countermeasure classification unit 343 transmits category information indicating that the countermeasure is an essential countermeasure to the terminal device 4 along with information about the created countermeasure. When the decision is made by the judge to adopt the countermeasure, in step S35, the countermeasure classification unit 343 registers the countermeasure created in step S33 as an essential countermeasure.
  • the countermeasure classification unit 343 determines that the created countermeasure is a temporary countermeasure.
  • the countermeasure classification unit 343 transmits information about the created countermeasure and category information indicating that it is a temporary countermeasure to the terminal device 4.
  • the countermeasure classification unit 343 registers the countermeasure created in step S33 as a temporary countermeasure.
  • the countermeasure classification unit 343 registers the countermeasure created in step S33 as an essential countermeasure.
  • the server device 3 may also search for the cause of stress when executing a countermeasure registered as a temporary countermeasure, and revise the registration of the countermeasure to a registration as an essential countermeasure.
  • FIG. 8 is a flowchart showing a second example of the procedure of the operation of the stress data analysis system 1 according to the first embodiment to acquire data for analysis.
  • FIG. 9 is a flowchart showing a second example of the procedure of the operation of the server device 3 of the stress data analysis system 1 according to the first embodiment to create countermeasures and register the created countermeasures.
  • the second examples shown in each of FIG. 8 and FIG. 9 are examples of the case where stress data is acquired by the second acquisition method.
  • step S41 shown in FIG. 8 the stress data analysis system 1 determines whether or not the user is in a stressed state using the stress data acquisition unit 22.
  • the stress data acquisition unit 22 observes how the user operates the engineering device 2. If the stress data acquisition unit 22 detects a change in the user's physical condition or behavior, it determines that the user is in a stressed state. If it determines that the user is not in a stressed state (step S41, No), the stress data analysis system 1 returns the procedure to step S41.
  • step S42 the stress data analysis system 1 acquires physical condition information by the stress data acquisition unit 22.
  • the stress data acquisition unit 22 transmits the stress data, which is physical condition information, to the stress data collection unit 32.
  • the stress data collection unit 32 outputs the collected stress data to the cause analysis unit 341.
  • the operation history acquisition unit 23 sends operation history data to the operation history collection unit 33.
  • the stress data analysis system 1 acquires the operation history data sent by the operation history acquisition unit 23 using the operation history collection unit 33.
  • the operation history collection unit 33 collects the operation history data and outputs the collected operation history data to the cause analysis unit 341.
  • step S44 the stress data analysis system 1 obtains program creation status data by extracting the functions used in creating the program and the created program using the cause analysis unit 341.
  • the cause analysis unit 341 extracts the part of the program that was being created when it was determined that stress was occurring.
  • the cause analysis unit 341 also extracts the functions used in creating that part of the program from the operation history data.
  • the cause analysis unit 341 stores the stress data, which is physical condition information, and the program creation status data in association with each other.
  • step S45 the stress data analysis system 1 selects a temporary countermeasure using the update unit 36, and presents the selected temporary countermeasure using the user interface unit 41.
  • the update unit 36 acquires stress data from the stress data collection unit 32.
  • the update unit 36 acquires program creation status data from the cause analysis unit 341. Based on the stress data and the program creation status data, the update unit 36 selects a countermeasure corresponding to the stress data from among the countermeasures registered as temporary countermeasures.
  • the countermeasure classification unit 343 transmits category information indicating that the countermeasure is a temporary countermeasure to the user interface unit 41 of the terminal device 4, together with information on the countermeasure selected by the update unit 36.
  • the update unit 36 reflects the determined temporary countermeasure in the engineering tool.
  • step S47 the stress data analysis system 1 determines whether the stressful state has been resolved using the stress data acquisition unit 22. If it is determined that the stressful state has not been resolved (step S47, No), the stress data analysis system 1 returns to step S42, and acquires stress data and program creation status data in the cause analysis unit 341. The cause analysis unit 341 stores the stress data and the program creation status data in association with each other. On the other hand, if it is determined that the stressful state has been resolved (step S47, Yes), the stress data analysis system 1 ends the operation according to the procedure shown in FIG. 8.
  • the server device 3 starts analyzing the stress data and the program creation status data in the cause analysis unit 341.
  • the cause analysis unit 341 searches for the cause of stress based on the physical condition information.
  • step S52 the cause analysis unit 341 extracts a portion of the program creation status data that corresponds to the time when a change in physical condition occurred, and searches for the cause of stress based on the extracted portion.
  • the cause analysis unit 341 extracts the portion that corresponds to the time when the change in physical condition occurred, assuming that stress occurred from the time when the change in physical condition occurred.
  • the cause analysis unit 341 determines whether the program created by the user contains any wasteful parts when compared with an ideal program. If the program created by the user contains any wasteful parts, the cause analysis unit 341 searches for the cause of the wasteful parts being created.
  • step S53 the countermeasure creation unit 342 creates countermeasures for the causes of stress discovered in steps S51 and S52.
  • step S54 the countermeasure classification unit 343 determines whether the countermeasure created in step S53 is an essential countermeasure. If the created countermeasure is an essential countermeasure (step S54, Yes), the countermeasure classification unit 343 transmits category information indicating that the countermeasure is an essential countermeasure to the terminal device 4 along with information about the created countermeasure. When the decision is made by the judge to adopt the countermeasure, in step S55, the countermeasure classification unit 343 registers the countermeasure created in step S53 as an essential countermeasure.
  • the countermeasure classification unit 343 determines that the created countermeasure is a temporary countermeasure.
  • the countermeasure classification unit 343 transmits category information indicating that the countermeasure is a temporary countermeasure to the terminal device 4 along with information about the created countermeasure.
  • the countermeasure classification unit 343 registers the countermeasure created in step S53 as a temporary countermeasure.
  • the countermeasure classification unit 343 registers the countermeasure created in step S53 as an essential countermeasure.
  • the server device 3 may also search for the cause of stress when executing a countermeasure registered as a temporary countermeasure, and revise the registration of the countermeasure to a registration as an essential countermeasure.
  • FIG. 10 is a flowchart showing a third example of the procedure of the operation of the stress data analysis system 1 according to the first embodiment to acquire data for analysis.
  • FIG. 11 is a flowchart showing a third example of the procedure of the operation of the server device 3 of the stress data analysis system 1 according to the first embodiment to create countermeasures and register the created countermeasures.
  • the third examples shown in each of FIG. 10 and FIG. 11 are examples of the case where stress data is acquired by the third acquisition method.
  • step S61 shown in FIG. 10 the stress data analysis system 1 determines whether or not an error has occurred in the use of the engineering tool using the stress data acquisition unit 22.
  • the stress data acquisition unit 22 regards the occurrence of an error as a case in which the user has experienced stress. If no error has occurred (step S61, No), the stress data analysis system 1 returns the procedure to step S61.
  • step S62 the stress data analysis system 1 acquires an error log by the stress data acquisition unit 22.
  • the stress data acquisition unit 22 transmits the stress data, which is the error log, to the stress data collection unit 32.
  • the stress data collection unit 32 outputs the collected stress data to the cause analysis unit 341.
  • the operation history acquisition unit 23 sends operation history data to the operation history collection unit 33.
  • the stress data analysis system 1 acquires the operation history data sent by the operation history acquisition unit 23 using the operation history collection unit 33.
  • the operation history collection unit 33 collects the operation history data and outputs the collected operation history data to the cause analysis unit 341.
  • step S64 the stress data analysis system 1 obtains program creation status data by extracting the functions used in creating the program and the created program using the cause analysis unit 341.
  • the cause analysis unit 341 extracts the part of the program that was being created when the error occurred.
  • the cause analysis unit 341 also extracts the functions used in creating that part of the program from the operation history data.
  • the cause analysis unit 341 stores the stress data, which is the error log, and the program creation status data in association with each other.
  • step S65 the stress data analysis system 1 selects a temporary countermeasure using the update unit 36, and presents the selected temporary countermeasure using the user interface unit 41.
  • step S66 the update unit 36 reflects the determined temporary countermeasure in the engineering tool. Details of steps S65 and S66 are the same as those of steps S45 and S46 shown in FIG. 8.
  • step S67 the stress data analysis system 1 determines whether the error has been resolved using the stress data acquisition unit 22. If it is determined that the error has not been resolved (step S67, No), the stress data analysis system 1 returns to step S62, and acquires stress data and program creation status data in the cause analysis unit 341. The cause analysis unit 341 stores the stress data and the program creation status data in association with each other. On the other hand, if it is determined that the error has been resolved (step S67, Yes), the stress data analysis system 1 ends the operation according to the procedure shown in FIG. 10.
  • the server device 3 starts analyzing the stress data and the program creation status data in the cause analysis unit 341.
  • the cause analysis unit 341 searches for the cause of stress based on the error log.
  • step S72 the cause analysis unit 341 extracts the part of the program creation status data that is related to the error, and searches for the cause of stress based on the extracted part.
  • the cause analysis unit 341 extracts the part related to the error, assuming that stress occurred from the time the error occurred.
  • step S73 the countermeasure creation unit 342 creates countermeasures for the causes of stress discovered in steps S71 and S72.
  • step S74 the countermeasure classification unit 343 judges whether the countermeasure created in step S73 is an essential countermeasure. If the created countermeasure is an essential countermeasure (step S74, Yes), the countermeasure classification unit 343 transmits category information indicating that the countermeasure is an essential countermeasure to the terminal device 4 along with information about the created countermeasure. When the decision is made by the judge to adopt the countermeasure, in step S75, the countermeasure classification unit 343 registers the countermeasure created in step S73 as an essential countermeasure.
  • the countermeasure classification unit 343 determines that the created countermeasure is a temporary countermeasure.
  • the countermeasure classification unit 343 transmits category information indicating that the countermeasure is a temporary countermeasure to the terminal device 4 along with information about the created countermeasure.
  • the countermeasure classification unit 343 registers the countermeasure created in step S73 as a temporary countermeasure.
  • the countermeasure classification unit 343 registers the countermeasure created in step S73 as an essential countermeasure.
  • the server device 3 may also search for the cause of stress when executing a countermeasure registered as a temporary countermeasure, and revise the registration of the countermeasure to a registration as an essential countermeasure.
  • FIG. 12 is a flowchart showing a fourth example of the procedure of the operation of the stress data analysis system 1 according to the first embodiment to acquire data for analysis.
  • FIG. 13 is a flowchart showing a fourth example of the procedure of the operation of the server device 3 of the stress data analysis system 1 according to the first embodiment to create countermeasures and register the created countermeasures.
  • the fourth examples shown in each of FIG. 12 and FIG. 13 are examples of the case where stress data is acquired by a fourth acquisition method.
  • step S81 shown in FIG. 12 the stress data analysis system 1 determines whether an alarm has occurred during use of the engineering tool using the stress data acquisition unit 22.
  • the engineering tool generates an alarm when a specific event occurs during operation by the user during use of the engineering tool. For example, the engineering tool generates an alarm when the time since the user's operation stopped exceeds a preset time.
  • the stress data acquisition unit 22 considers the occurrence of an alarm during use of the engineering tool to be a case in which the user has become stressed. If an alarm has not occurred (step S81, No), the stress data analysis system 1 returns the procedure to step S81. On the other hand, if an alarm has occurred (step S81, Yes), in step S82, the stress data analysis system 1 acquires alarm information using the stress data acquisition unit 22.
  • the alarm information includes information about the event that caused the alarm, such as the time the operation started, the time the alarm occurred, the time the operation ended if it ended, the step where the operation was stalled, or the program number where the operation was stalled.
  • the stress data acquisition unit 22 transmits the stress data, which is the alarm information, to the stress data collection unit 32.
  • the stress data collection unit 32 outputs the collected stress data to the cause analysis unit 341.
  • the operation history acquisition unit 23 transmits operation history data to the operation history collection unit 33 when an alarm occurs during use of the engineering tool.
  • the stress data analysis system 1 acquires the operation history data transmitted by the operation history acquisition unit 23 using the operation history collection unit 33.
  • the operation history collection unit 33 collects the operation history data and outputs the collected operation history data to the cause analysis unit 341.
  • step S84 the stress data analysis system 1 obtains program creation status data by extracting the functions used in creating the program and the created program using the cause analysis unit 341.
  • the cause analysis unit 341 extracts the part of the program that was being created when the alarm occurred.
  • the cause analysis unit 341 also extracts the functions used in creating that part of the program from the operation history data.
  • the cause analysis unit 341 stores the stress data, which is alarm information, and the program creation status data in association with each other.
  • step S85 the stress data analysis system 1 selects a temporary countermeasure using the update unit 36, and presents the selected temporary countermeasure using the user interface unit 41.
  • step S86 the update unit 36 reflects the determined temporary countermeasure in the engineering tool. Details of steps S85 and S86 are the same as those of steps S45 and S46 shown in FIG. 8.
  • step S87 the stress data analysis system 1 determines whether the alarm has been released using the stress data acquisition unit 22. If it is determined that the alarm has not been released (step S87, No), the stress data analysis system 1 returns to step S82, and acquires stress data and program creation status data in the cause analysis unit 341. The cause analysis unit 341 stores the stress data and the program creation status data in association with each other. On the other hand, if it is determined that the alarm has been released (step S87, Yes), the stress data analysis system 1 ends the operation according to the procedure shown in FIG. 12.
  • the server device 3 starts analyzing the stress data and the program creation status data in the cause analysis unit 341.
  • the cause analysis unit 341 searches for the cause of stress based on the alarm information.
  • step S92 the cause analysis unit 341 extracts the portion of the program creation status data that is related to the alarm, and searches for the cause of stress based on the extracted portion.
  • the cause analysis unit 341 extracts the portion related to the alarm, assuming that stress arose from the point in time when the event that caused the alarm occurred.
  • the point in time when the event that caused the alarm occurred is, for example, the point in time when the operation was stopped.
  • step S93 the countermeasure creation unit 342 creates countermeasures for the causes of stress discovered in steps S91 and S92.
  • step S94 the countermeasure classification unit 343 determines whether the countermeasure created in step S93 is an essential countermeasure. If the created countermeasure is an essential countermeasure (step S94, Yes), the countermeasure classification unit 343 transmits category information indicating that the countermeasure is an essential countermeasure to the terminal device 4 along with information about the created countermeasure. When the decision is made by the judge to adopt the countermeasure, in step S95, the countermeasure classification unit 343 registers the countermeasure created in step S93 as an essential countermeasure.
  • the countermeasure classification unit 343 determines that the created countermeasure is a temporary countermeasure.
  • the countermeasure classification unit 343 transmits category information indicating that the countermeasure is a temporary countermeasure to the terminal device 4 along with information about the created countermeasure.
  • the countermeasure classification unit 343 registers the countermeasure created in step S93 as a temporary countermeasure.
  • the countermeasure classification unit 343 registers the countermeasure created in step S93 as an essential countermeasure.
  • the server device 3 may also search for the cause of stress when executing a countermeasure registered as a temporary countermeasure, and revise the registration of the countermeasure to a registration as an essential countermeasure.
  • the stress data analysis system 1 identifies the cause of stress in the use of an engineering tool based on stress data and program creation status data.
  • the stress data analysis system 1 can identify the part of the engineering tool that is the cause of stress.
  • the part of the engineering tool that is the cause of stress is, for example, one of the functions of the engineering tool that is causing stress to the user.
  • the stress data analysis system 1 creates possible countermeasures for the identified causes, and reflects the countermeasures that have been decided upon for adoption in the engineering tool.
  • the stress data analysis system 1 also classifies and manages the created countermeasures into essential countermeasures and temporary countermeasures. By applying countermeasures classified as essential countermeasures, the stress data analysis system 1 can fundamentally avoid stress. By applying temporary countermeasures, the stress data analysis system 1 can reduce stress and prevent stress from accumulating.
  • the stress data analysis system 1 can improve satisfaction in using the engineering tool by continually improving the engineering tool through the application of countermeasures.
  • the stress data analysis system 1 can create countermeasures that correspond to the unique characteristics of the user by providing a category of temporary countermeasures. For countermeasures that are sufficient for the user, the stress data analysis system 1 can change the category from temporary countermeasures to essential countermeasures, thereby enabling the fundamental avoidance of stress in accordance with the user's characteristics.
  • the stress data analysis system 1 may award points to the user, etc., according to the stress data, based on a preset rule.
  • the rule may be, for example, awarding a number of points according to the number of times stress data is acquired, or awarding a number of points according to the importance of a problem caused by stress.
  • the stress data analysis system 1 analyzes stress and creates countermeasures using engineering tools, but the target may be programming software other than engineering tools.
  • Programs created using programming software are not limited to ladder programs written using ladder language, and may be programs written in programming languages other than ladder language.
  • FIG. 14 is a diagram showing an example of the hardware configuration of the server device 3 constituting the stress data analysis system 1 according to the first embodiment.
  • the server device 3 is realized by a computer system including a processing circuit 51 and a communication device 52.
  • the processing circuit 51 includes a processor 53 and a memory 54.
  • the processing circuit 51 is a circuit on which the processor 53 executes software.
  • Each of the engineering tool unit 31, stress data collection unit 32, operation history collection unit 33, data analysis unit 34, and update unit 36 of the server device 3 is realized by software, firmware, or a combination of software and firmware.
  • the software or firmware is written as a program and stored in memory 54.
  • the processor 53 reads and executes the program stored in memory 54, thereby realizing the functions of each of the parts of the server device 3.
  • the processing circuit 51 has a memory 54 for storing a program that will result in the processing of the server device 3 being executed.
  • the program stored in memory 54 is a stress data analysis program that causes a computer to execute the procedures and methods of the stress data analysis system 1.
  • the processor 53 is a CPU (Central Processing Unit), a processing unit, an arithmetic unit, a microprocessor, a microcomputer, a processor, or a DSP (Digital Signal Processor).
  • the memory 54 is, for example, a non-volatile or volatile semiconductor memory such as a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory), or an EEPROM (registered trademark) (Electrically Erasable Programmable Read Only Memory).
  • the countermeasure DB 35 is stored in the memory 54.
  • the communication device 52 communicates with devices external to the server device 3.
  • the communication between the server device 3 and the engineering device 2, and the communication between the server device 3 and the terminal device 4 are realized by using the communication device 52.
  • the programs stored in memory 54 may be provided in a form written on a storage medium such as a CD (Compact Disc)-ROM or a DVD (Digital Versatile Disc)-ROM, or may be provided via a communication line.
  • a storage medium such as a CD (Compact Disc)-ROM or a DVD (Digital Versatile Disc)-ROM, or may be provided via a communication line.
  • the components provided in the server device 3 in the first embodiment may be realized by two or more devices arranged in different locations.
  • Each of the two or more devices is realized, for example, by the hardware configuration shown in FIG. 14.
  • the two or more devices are connected so as to be able to communicate with each other.
  • Each of the two or more devices may be a server device.
  • the two or more server devices may include a processing server and a data server.
  • FIG. 15 is a diagram showing an example of the hardware configuration of the engineering device 2 constituting the stress data analysis system 1 according to the first embodiment.
  • the engineering device 2 is realized by a computer system including a processing circuit 61, a communication device 62, an input device 65, and a display device 66.
  • the processing circuit 61 includes a processor 63 and a memory 64.
  • the processing circuit 61 is a circuit in which the processor 63 executes software.
  • the processor 63 and the memory 64 are assumed to be similar to the processor 53 and the memory 54 shown in FIG. 14.
  • the functions of the stress data acquisition unit 22 and the operation history acquisition unit 23 of the engineering device 2 are realized by the processor 63 reading and executing a program stored in the memory 64.
  • the input device 65 is a device for inputting information to the engineering apparatus 2.
  • a user operates the input device 65.
  • the input device 65 is composed of a character input means and a pointing device.
  • the input device 65 includes a keyboard, a mouse, a keypad, or a touch panel.
  • the display device 66 displays various information.
  • the display device 66 is, for example, an LCD (Liquid Crystal Display) or an organic EL (Electro-Luminescence) display.
  • the user interface unit 21 is realized by the input device 65 and the display device 66.
  • the communication device 62 communicates with devices external to the engineering apparatus 2. Communication between the engineering apparatus 2 and the server apparatus 3 is realized by using the communication device 62.
  • the terminal device 4 is realized by a hardware configuration similar to that shown in FIG. 15.
  • the user interface unit 41 is realized by an input device 65 and a display device 66.
  • the terminal device 4 communicates with devices external to the terminal device 4 by means of a communication device 62. Communication between the terminal device 4 and the server device 3 is realized by using the communication device 62.
  • the stress data analysis system 1 acquires stress data and analyzes the stress data to identify the cause of stress.
  • the stress data analysis system 1 creates possible countermeasures for the cause, and updates the engineering tool by reflecting the countermeasures that have been decided upon for adoption.
  • the stress data analysis system 1 is capable of collecting not only information about the operation of functions prepared in advance in the engineering tool, but also information in the flow of using the prepared functions, thereby making it possible to reduce or avoid stress in a user who continues to use the engineering tool. Reducing or avoiding user stress makes it possible to improve satisfaction in using the engineering tool. As a result, the stress data analysis system 1 has the effect of improving satisfaction in using the engineering tool.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Testing And Monitoring For Control Systems (AREA)

Abstract

A stress data analysis system (1) comprises a stress data acquisition unit (22) that acquires stress data regarding a situation of stress that occurs to a user who uses an engineering tool, a cause analysis unit that analyzes the stress data to identify a part of the engineering tool that causes the stress resulting from the use of the engineering tool, a countermeasure creation unit that creates a countermeasure that can be taken against the cause, and an update unit (36) that updates the engineering tool by reflecting, to the engineering tool, the countermeasure determined to be employed.

Description

ストレスデータ分析システム、ストレスデータ分析方法およびストレスデータ分析プログラムSTRESS DATA ANALYSIS SYSTEM, STRESS DATA ANALYSIS METHOD, AND STRESS DATA ANALYSIS PROGRAM
 本開示は、エンジニアリングツールを使用するユーザに生じるストレスについての分析を行うストレスデータ分析システム、ストレスデータ分析方法およびストレスデータ分析プログラムに関する。 The present disclosure relates to a stress data analysis system, a stress data analysis method, and a stress data analysis program that analyze the stress experienced by users of engineering tools.
 近年、エンジニアリングソフトウェアを始めとするプログラミングソフトウェアは、ソフトウェアの高機能化に伴い、直感的な操作による作業の効率化が求められている。以下、エンジニアリングソフトウェアを、エンジニアリングツールと称する。エンジニアリングツールの直感的な操作を可能とするには、操作により生じるストレスの低減が可能であること、または、操作により生じるストレスの回避が可能であることが望まれる。ストレスの低減またはストレスの回避を可能とするために、ストレスを生じた際における情報の収集と、収集された情報の活用とが重要となる。 In recent years, as engineering software and other programming software have become more sophisticated, there is a demand for more efficient work through intuitive operation. Hereinafter, engineering software will be referred to as engineering tools. To enable intuitive operation of engineering tools, it is desirable to be able to reduce the stress caused by operation or to be able to avoid stress caused by operation. To be able to reduce or avoid stress, it is important to collect information when stress occurs and to utilize the collected information.
 特許文献1には、コンピュータシステムの機能についてのユーザによる操作履歴を取得し、コンピュータシステムに対しユーザが不満を感じていることを示す不満条件を操作履歴が満たす場合に、不満条件を満たす操作履歴をシステム開発者の宛先へ送信する情報送信プログラムが開示されている。特許文献1において、コンピュータシステムは、業務上のコンピュータシステムであって、電子カルテシステム等である。 Patent Document 1 discloses an information transmission program that acquires a user's operation history for the functions of a computer system, and if the operation history satisfies a dissatisfaction condition indicating that the user is dissatisfied with the computer system, transmits the operation history that satisfies the dissatisfaction condition to the address of the system developer. In Patent Document 1, the computer system is a business-related computer system, such as an electronic medical record system.
特開2019-144660号公報JP 2019-144660 A
 特許文献1に記載の技術では、電子カルテシステムのように、ユーザの操作によって期待される機能があらかじめ決められているシステムを対象として情報が収集される。ユーザの操作によって期待される機能とは、例えば、電子カルテを取得する機能などである。一方、エンジニアリングツールのように、システムに期待される機能をユーザによるプログラミングによって構築する場合、期待される機能を実現する経路、例えば、プログラミングの方法またはエンジニアリングツールの使い方などは、ユーザによって異なる。このため、ストレスの低減または回避によってエンジニアリングツールの満足度を高めるためには、あらかじめ準備された機能の操作についての情報のみならず、準備された機能を使用する流れの中での情報の収集が必要となる。特許文献1に記載の技術では、準備された機能を使用する流れの中での情報の収集が行われないため、エンジニアリングツールの使用における満足度を向上させることが困難であるという問題があった。 In the technology described in Patent Document 1, information is collected for a system in which functions expected from user operations are predetermined, such as an electronic medical record system. Functions expected from user operations include, for example, a function to obtain electronic medical records. On the other hand, when functions expected of a system are constructed by user programming, such as an engineering tool, the path to realize the expected functions, such as the programming method or the use of the engineering tool, differs from user to user. For this reason, in order to increase satisfaction with an engineering tool by reducing or avoiding stress, it is necessary to collect not only information about the operation of functions prepared in advance, but also information on the flow of using the prepared functions. In the technology described in Patent Document 1, information is not collected during the flow of using the prepared functions, so there is a problem in that it is difficult to increase satisfaction in using the engineering tool.
 本開示は、上記に鑑みてなされたものであって、エンジニアリングツールの使用における満足度を向上させることを可能とするストレスデータ分析システムを得ることを目的とする。 The present disclosure has been made in consideration of the above, and aims to provide a stress data analysis system that makes it possible to improve satisfaction in the use of engineering tools.
 上述した課題を解決し、目的を達成するために、本開示にかかるストレスデータ分析システムは、エンジニアリングツールを使用するユーザに生じるストレスの状況についてのストレスデータを取得するストレスデータ取得部と、エンジニアリングツールのうちエンジニアリングツールの使用におけるストレスの原因である部分を、ストレスデータを分析することによって特定する原因分析部と、原因に対し取り得る対応策を作成する対応策作成部と、採用が決定された対応策をエンジニアリングツールに反映させることによりエンジニアリングツールを更新する更新部と、を備える。 In order to solve the above-mentioned problems and achieve the objectives, the stress data analysis system disclosed herein comprises a stress data acquisition unit that acquires stress data regarding the stress conditions experienced by a user who uses an engineering tool, a cause analysis unit that identifies the part of the engineering tool that is the cause of stress when using the engineering tool by analyzing the stress data, a countermeasure creation unit that creates countermeasures that can be taken against the cause, and an update unit that updates the engineering tool by reflecting the countermeasure that has been decided upon in the engineering tool.
 本開示にかかるストレスデータ分析システムは、エンジニアリングツールの使用における満足度を向上させることができるという効果を奏する。 The stress data analysis system disclosed herein has the effect of improving satisfaction in using engineering tools.
実施の形態1にかかるストレスデータ分析システムの構成例を示す図FIG. 1 is a diagram showing a configuration example of a stress data analysis system according to a first embodiment; 実施の形態1にかかるストレスデータ分析システムのエンジニアリング装置、サーバ装置および端末装置の構成例を示す図FIG. 1 is a diagram showing an example of the configuration of an engineering device, a server device, and a terminal device of a stress data analysis system according to a first embodiment. 実施の形態1にかかるストレスデータ分析システムのサーバ装置が有するデータ分析部の構成例を示す図FIG. 1 is a diagram showing an example of the configuration of a data analysis unit included in a server device of a stress data analysis system according to a first embodiment; 実施の形態1にかかるストレスデータ分析システムによる動作の手順を示すフローチャート1 is a flowchart showing a procedure of an operation performed by the stress data analysis system according to the first embodiment. 実施の形態1において、一時的対応策として登録された対応策を実行する場合におけるサーバ装置による動作の手順を示すフローチャート1 is a flowchart showing a procedure of an operation performed by a server device when a countermeasure registered as a temporary countermeasure is executed in the first embodiment. 実施の形態1にかかるストレスデータ分析システムによる、分析のためのデータを取得する動作の手順の第1の例を示すフローチャート1 is a flowchart showing a first example of an operation procedure for acquiring data for analysis by the stress data analysis system according to the first embodiment; 実施の形態1にかかるストレスデータ分析システムのサーバ装置による、対応策を作成して作成された対応策を登録する動作の手順の第1の例を示すフローチャート11 is a flowchart showing a first example of an operation procedure of creating a countermeasure and registering the created countermeasure by the server device of the stress data analysis system according to the first embodiment; 実施の形態1にかかるストレスデータ分析システムによる、分析のためのデータを取得する動作の手順の第2の例を示すフローチャート11 is a flowchart showing a second example of an operation procedure for acquiring data for analysis by the stress data analysis system according to the first embodiment. 実施の形態1にかかるストレスデータ分析システムのサーバ装置による、対応策を作成して作成された対応策を登録する動作の手順の第2の例を示すフローチャート11 is a flowchart showing a second example of a procedure of an operation of creating a countermeasure and registering the created countermeasure by the server device of the stress data analysis system according to the first embodiment. 実施の形態1にかかるストレスデータ分析システムによる、分析のためのデータを取得する動作の手順の第3の例を示すフローチャート11 is a flowchart showing a third example of an operation procedure for acquiring data for analysis by the stress data analysis system according to the first embodiment. 実施の形態1にかかるストレスデータ分析システムのサーバ装置による、対応策を作成して作成された対応策を登録する動作の手順の第3の例を示すフローチャート11 is a flowchart showing a third example of an operation procedure of creating a countermeasure and registering the created countermeasure by the server device of the stress data analysis system according to the first embodiment. 実施の形態1にかかるストレスデータ分析システムによる、分析のためのデータを取得する動作の手順の第4の例を示すフローチャート11 is a flowchart showing a fourth example of an operation procedure for acquiring data for analysis by the stress data analysis system according to the first embodiment. 実施の形態1にかかるストレスデータ分析システムのサーバ装置による、対応策を作成して作成された対応策を登録する動作の手順の第4の例を示すフローチャート11 is a flowchart showing a fourth example of an operation procedure for creating a countermeasure and registering the created countermeasure by the server device of the stress data analysis system according to the first embodiment. 実施の形態1にかかるストレスデータ分析システムを構成するサーバ装置のハードウェア構成例を示す図FIG. 1 is a diagram illustrating an example of a hardware configuration of a server device constituting the stress data analysis system according to the first embodiment. 実施の形態1にかかるストレスデータ分析システムを構成するエンジニアリング装置のハードウェア構成例を示す図FIG. 1 is a diagram showing an example of a hardware configuration of an engineering device constituting the stress data analysis system according to the first embodiment;
 以下に、実施の形態にかかるストレスデータ分析システム、ストレスデータ分析方法およびストレスデータ分析プログラムを図面に基づいて詳細に説明する。 Below, the stress data analysis system, stress data analysis method, and stress data analysis program according to the embodiments will be described in detail with reference to the drawings.
実施の形態1.
 図1は、実施の形態1にかかるストレスデータ分析システム1の構成例を示す図である。ストレスデータ分析システム1は、エンジニアリングツールを使用するユーザに生じるストレスについての情報を収集し、ストレスの低減またはストレスの回避のための対応策を提供する。
Embodiment 1.
1 is a diagram showing an example of the configuration of a stress data analysis system 1 according to the embodiment 1. The stress data analysis system 1 collects information about stress caused to a user who uses an engineering tool, and provides countermeasures for reducing or avoiding stress.
 ストレスデータ分析システム1は、ユーザにより使用されるエンジニアリング装置2と、データを収集し、収集したデータを分析するサーバ装置3と、ストレスに対する対応策を提示する端末装置4とを備える。エンジニアリング装置2とサーバ装置3とは、ネットワークを介して互いに通信する。サーバ装置3と端末装置4とは、ネットワークを介して互いに通信する。ネットワークは、例えば、インターネットなどのWAN(Wide Area Network)である。ネットワークは、LAN(Local Area Network)でも良い。 The stress data analysis system 1 comprises an engineering device 2 used by a user, a server device 3 that collects and analyzes data, and a terminal device 4 that presents countermeasures against stress. The engineering device 2 and the server device 3 communicate with each other via a network. The server device 3 and the terminal device 4 communicate with each other via a network. The network is, for example, a WAN (Wide Area Network) such as the Internet. The network may also be a LAN (Local Area Network).
 サーバ装置3は、クラウド環境に構築されるサーバである。クラウド環境は、クラウドサービスプラットフォームにおいて提供されるコンピュータ資源を含む。サーバ装置3は、クラウド環境に構築されるため、クラウドサーバとも呼ばれることがある。 The server device 3 is a server built in a cloud environment. The cloud environment includes computer resources provided in a cloud service platform. Because the server device 3 is built in a cloud environment, it is sometimes called a cloud server.
 エンジニアリングツールは、ロボットなどの制御対象機器を制御する制御装置が、制御対象機器を制御する際に用いるプログラムの作成を支援するプログラム作成支援プログラムである。制御装置は、例えば、プログラマブルロジックコントローラである。実施の形態1において、エンジニアリングツールは、SaaS(Software as a Service)によりネットワークを介して提供される。エンジニアリング装置2は、サーバ装置3にて実行されるエンジニアリングツールを、ネットワークを介して利用する。なお、エンジニアリングツールの利用形態はSaaSに限られず、エンジニアリング装置2にエンジニアリングツールがインストールされ、エンジニアリング装置2がエンジニアリングツールを実行する形態でも良い。 The engineering tool is a program creation support program that supports the creation of a program used by a control device that controls a controlled device such as a robot to control the controlled device. The control device is, for example, a programmable logic controller. In the first embodiment, the engineering tool is provided via a network by SaaS (Software as a Service). The engineering device 2 uses the engineering tool executed by the server device 3 via the network. Note that the use of the engineering tool is not limited to SaaS, and the engineering tool may be installed in the engineering device 2 and executed by the engineering device 2.
 ユーザは、エンジニアリング装置2を操作することによって、エンジニアリングツールを使用してプログラムを作成する。エンジニアリングツールを使用して作成されるプログラムは、例えば、ラダープログラムである。エンジニアリング装置2は、エンジニアリングツールを使用するユーザに生じるストレスの状況についてのストレスデータをサーバ装置3へ送信する。また、エンジニアリング装置2は、ユーザによる操作の履歴である操作履歴データをサーバ装置3へ送信する。サーバ装置3は、ストレスデータと操作履歴データとからストレスの原因を探索し、原因に対し取り得る対応策を作成する。サーバ装置3は、対応策を示す情報を端末装置4へ送信する。ストレスデータ分析システム1は、対応策を示す情報をサーバ装置3からエンジニアリング装置2へ送信することによって、ユーザに対応策を通知する。 The user creates a program using an engineering tool by operating the engineering device 2. The program created using the engineering tool is, for example, a ladder program. The engineering device 2 transmits stress data about the stress situation of the user who uses the engineering tool to the server device 3. The engineering device 2 also transmits operation history data, which is a history of operations by the user, to the server device 3. The server device 3 searches for the cause of stress from the stress data and the operation history data, and creates possible countermeasures for the cause. The server device 3 transmits information indicating the countermeasures to the terminal device 4. The stress data analysis system 1 notifies the user of the countermeasures by transmitting information indicating the countermeasures from the server device 3 to the engineering device 2.
 端末装置4は、サーバ装置3によって作成された対応策を提示する。採用する対応策を判断する判断者は、端末装置4によって提示された対応策を採用するか否かを決定する。端末装置4は、対応策の採用の可否を示す情報をサーバ装置3へ送信する。サーバ装置3は、採用が決定された対応策をエンジニアリングツールに反映させることによりエンジニアリングツールを更新する。エンジニアリング装置2は、更新されたエンジニアリングツールを利用する。 The terminal device 4 presents the countermeasures created by the server device 3. A judge who determines which countermeasure to adopt decides whether or not to adopt the countermeasure presented by the terminal device 4. The terminal device 4 transmits information indicating whether or not the countermeasure can be adopted to the server device 3. The server device 3 updates the engineering tool by reflecting the countermeasure that has been decided to be adopted in the engineering tool. The engineering device 2 uses the updated engineering tool.
 ストレスデータ分析システム1には、ユーザの身体状態情報を取得する機器が備えられても良い。身体状態情報は、ユーザの身体状態を観察することによって取得される情報である。図1に示すカメラ2aは、ユーザの身体状態情報を取得する機器の一例である。カメラ2aは、エンジニアリング装置2を使用しているユーザを撮影し、ユーザを写した画像データである身体状態情報を出力する。身体状態情報は、エンジニアリング装置2へ入力される。 The stress data analysis system 1 may be equipped with a device that acquires the user's physical condition information. The physical condition information is information acquired by observing the user's physical condition. The camera 2a shown in FIG. 1 is an example of a device that acquires the user's physical condition information. The camera 2a photographs the user using the engineering device 2, and outputs the physical condition information, which is image data of the user. The physical condition information is input to the engineering device 2.
 図2は、実施の形態1にかかるストレスデータ分析システム1のエンジニアリング装置2、サーバ装置3および端末装置4の構成例を示す図である。 FIG. 2 is a diagram showing an example configuration of the engineering device 2, server device 3, and terminal device 4 of the stress data analysis system 1 according to the first embodiment.
 エンジニアリング装置2は、ユーザインタフェース部21と、ストレスデータ取得部22と、操作履歴取得部23とを備える。ユーザインタフェース部21は、ユーザによる操作を受け付ける。また、ユーザインタフェース部21は、情報を表示する。ユーザインタフェース部21は、操作によってユーザインタフェース部21へ入力された情報をサーバ装置3へ送信する。ユーザは、ユーザインタフェース部21を操作することによってエンジニアリングツールを使用する。 The engineering device 2 includes a user interface unit 21, a stress data acquisition unit 22, and an operation history acquisition unit 23. The user interface unit 21 accepts operations by the user. The user interface unit 21 also displays information. The user interface unit 21 transmits information input to the user interface unit 21 by operation to the server device 3. The user uses the engineering tool by operating the user interface unit 21.
 ストレスデータ取得部22は、エンジニアリングツールを使用するユーザのストレスデータを取得する。ストレスデータ取得部22は、ユーザにストレスが生じているか否かを判断し、ストレスが生じていると判断された場合においてストレスデータを取得する。ストレスデータ取得部22は、取得されたストレスデータをサーバ装置3へ送信する。操作履歴取得部23は、ユーザインタフェース部21の操作についての操作履歴データを取得する。操作履歴取得部23は、取得された操作履歴データをサーバ装置3へ送信する。なお、図2に示す例では、ストレスデータ取得部22は、カメラ2aによって撮影された画像のデータを取得する。 The stress data acquisition unit 22 acquires stress data of a user who uses the engineering tool. The stress data acquisition unit 22 judges whether or not the user is experiencing stress, and acquires stress data when it is judged that the user is experiencing stress. The stress data acquisition unit 22 transmits the acquired stress data to the server device 3. The operation history acquisition unit 23 acquires operation history data regarding operations of the user interface unit 21. The operation history acquisition unit 23 transmits the acquired operation history data to the server device 3. In the example shown in FIG. 2, the stress data acquisition unit 22 acquires data of an image captured by the camera 2a.
 サーバ装置3は、エンジニアリングツール部31と、ストレスデータ収集部32と、操作履歴収集部33と、データ分析部34と、更新部36とを備える。サーバ装置3は、対応策DB(DataBase、データベース)35を保持する。エンジニアリングツール部31は、エンジニアリング装置2からの情報に従ってエンジニアリングツールを実行する。 The server device 3 includes an engineering tool unit 31, a stress data collection unit 32, an operation history collection unit 33, a data analysis unit 34, and an update unit 36. The server device 3 holds a countermeasure DB (DataBase) 35. The engineering tool unit 31 executes an engineering tool according to information from the engineering device 2.
 ストレスデータ収集部32は、ストレスデータ取得部22からのストレスデータを受信し、ストレスデータを収集する。ストレスデータ収集部32で収集されたストレスデータは、データ分析部34へ入力される。操作履歴収集部33は、操作履歴取得部23からの操作履歴データを受信し、操作履歴データを収集する。操作履歴収集部33で収集された操作履歴データは、データ分析部34へ入力される。 The stress data collection unit 32 receives stress data from the stress data acquisition unit 22 and collects the stress data. The stress data collected by the stress data collection unit 32 is input to the data analysis unit 34. The operation history collection unit 33 receives operation history data from the operation history acquisition unit 23 and collects the operation history data. The operation history data collected by the operation history collection unit 33 is input to the data analysis unit 34.
 データ分析部34は、ストレスデータ収集部32によって収集されたストレスデータと操作履歴収集部33によって収集された操作履歴データとを分析し、ストレスの原因を特定する。データ分析部34は、ストレスの原因に応じた対応策を作成する。データ分析部34は、対応策の情報を端末装置4へ送信する。データ分析部34は、対応策の情報を対応策DB35へ出力する。サーバ装置3は、作成された対応策を対応策DB35に格納する。 The data analysis unit 34 analyzes the stress data collected by the stress data collection unit 32 and the operation history data collected by the operation history collection unit 33 to identify the cause of stress. The data analysis unit 34 creates a countermeasure according to the cause of stress. The data analysis unit 34 transmits information about the countermeasure to the terminal device 4. The data analysis unit 34 outputs the information about the countermeasure to the countermeasure DB 35. The server device 3 stores the created countermeasure in the countermeasure DB 35.
 更新部36は、対応策DB35から対応策の情報を読み出す。更新部36は、採用が決定された対応策をエンジニアリングツールに反映させることによりエンジニアリングツールを更新する。また、更新部36は、対応策を示す情報をエンジニアリング装置2へ送信する。エンジニアリング装置2のユーザインタフェース部21は、対応策を示す情報を受信し、対応策を示す情報を表示する。これにより、ユーザに対応策が通知される。ユーザに対応策が通知されることによって、ストレスの低減またはストレスの回避のための対応策をユーザに認識させることができる。 The update unit 36 reads out information about the countermeasures from the countermeasure DB 35. The update unit 36 updates the engineering tool by reflecting the countermeasure that has been decided to be adopted in the engineering tool. The update unit 36 also transmits information indicating the countermeasures to the engineering device 2. The user interface unit 21 of the engineering device 2 receives the information indicating the countermeasures and displays the information indicating the countermeasures. This notifies the user of the countermeasures. By notifying the user of the countermeasures, the user can be made aware of the countermeasures for reducing or avoiding stress.
 端末装置4は、ユーザインタフェース部41を備える。ユーザインタフェース部41は、対応策の情報を受信し、対応策の情報を表示する。また、ユーザインタフェース部41は、判断者による操作を受け付ける。ユーザインタフェース部41は、データ分析部34内の対応策作成部によって作成された対応策を提示し、提示された対応策を採用することの可否を示す情報を受け付ける提示部として機能する。対応策作成部については後述する。ユーザインタフェース部41は、対応策の採用の可否を示す情報をサーバ装置3へ送信する。 The terminal device 4 includes a user interface unit 41. The user interface unit 41 receives information about countermeasures and displays the information about the countermeasures. The user interface unit 41 also accepts operations by the decision maker. The user interface unit 41 presents countermeasures created by a countermeasure creation unit in the data analysis unit 34, and functions as a presentation unit that accepts information indicating whether or not the presented countermeasures can be adopted. The countermeasure creation unit will be described later. The user interface unit 41 transmits information indicating whether or not the countermeasures can be adopted to the server device 3.
 データ分析部34は、対応策の採用の可否を示す情報を受信し、採用が決定された対応策の情報を対応策DB35へ出力する。データ分析部34は、採用が決定された対応策の情報が対応策DB35へ格納されると、対応策の情報が格納されたことを更新部36へ通知する。更新部36は、通知を受けると、採用が決定された対応策の情報を対応策DB35から読み出す。これにより、更新部36は、ユーザインタフェース部41において採用が決定された対応策をエンジニアリングツールに反映させる。 The data analysis unit 34 receives information indicating whether or not a countermeasure is to be adopted, and outputs information about the countermeasure that has been decided to be adopted to the countermeasure DB 35. When the information about the countermeasure that has been decided to be adopted is stored in the countermeasure DB 35, the data analysis unit 34 notifies the update unit 36 that the countermeasure information has been stored. Upon receiving the notification, the update unit 36 reads out the information about the countermeasure that has been decided to be adopted from the countermeasure DB 35. As a result, the update unit 36 reflects the countermeasure that has been decided to be adopted in the user interface unit 41 in the engineering tool.
 また、更新部36は、ストレスデータ収集部32からストレスデータを取得する。更新部36は、対応策DB35に格納されている対応策の情報を参照することにより、取得されたストレスデータに対応する対応策の有無を確認する。更新部36は、取得されたストレスデータに対応する対応策がある場合、取得されたストレスデータに対応する対応策の情報を対応策DB35から読み出し、エンジニアリングツールに対応策を反映させる。更新部36は、エンジニアリングツールに反映させた対応策の情報をデータ分析部34へ出力する。 The update unit 36 also acquires stress data from the stress data collection unit 32. The update unit 36 checks whether or not there is a countermeasure that corresponds to the acquired stress data by referring to the countermeasure information stored in the countermeasure DB 35. If there is a countermeasure that corresponds to the acquired stress data, the update unit 36 reads the information on the countermeasure that corresponds to the acquired stress data from the countermeasure DB 35 and reflects the countermeasure in the engineering tool. The update unit 36 outputs the information on the countermeasure that has been reflected in the engineering tool to the data analysis unit 34.
 ここで、ストレスデータについて説明する。ストレスデータ取得部22は、以下に説明する第1から第4の取得方法によってストレスデータを取得し得る。ストレスデータ取得部22は、第1から第4の取得方法の中の1つによりストレスデータを取得しても良く、第1から第4の取得方法のうちの2つ以上によりストレスデータを取得しても良い。 Here, we will explain the stress data. The stress data acquisition unit 22 can acquire stress data by the first to fourth acquisition methods described below. The stress data acquisition unit 22 may acquire stress data by one of the first to fourth acquisition methods, or may acquire stress data by two or more of the first to fourth acquisition methods.
 ストレスデータの第1の取得方法において、ストレスデータ取得部22は、エンジニアリングツールについての問い合わせを受け付けるコミュニケーションツールであるAI(Artificial Intelligence)チャットボットと連携する。AIチャットボットは、ユーザによって質問が入力されると、質問への回答を出力する。ユーザがAIチャットボットへ質問を入力すると、ストレスデータ取得部22は、AIチャットボットへ入力された情報をストレスデータとして取得する。すなわち、第1の取得方法において、ストレスデータは、AIチャットボットへユーザによって入力された情報を含む。 In the first acquisition method of stress data, the stress data acquisition unit 22 works in conjunction with an AI (Artificial Intelligence) chatbot, which is a communication tool that accepts inquiries about engineering tools. When a question is input by a user, the AI chatbot outputs an answer to the question. When a user inputs a question to the AI chatbot, the stress data acquisition unit 22 acquires the information input to the AI chatbot as stress data. That is, in the first acquisition method, the stress data includes information input by the user to the AI chatbot.
 第1の取得方法では、ストレスデータ取得部22は、ユーザによりAIチャットボットへ質問が入力された場合に、ユーザにストレスを生じさせる事象があったと判断する。また、ストレスデータ取得部22は、AIチャットボットへ入力された情報を、ストレスに関連するストレスデータとして扱う。ストレスデータ取得部22は、エンジニアリンツグールの使用方法についての質問、または、エンジニアリングツールのエラー対応についての質問などがAIチャットボットへ入力された場合に、入力された情報を取得する。ストレスデータ取得部22は、エンジニアリングツールの改善についての要望がAIチャットボットへ入力された場合に、入力された情報を取得しても良い。 In the first acquisition method, the stress data acquisition unit 22 determines that an event that caused stress to the user has occurred when the user inputs a question to the AI chatbot. The stress data acquisition unit 22 also treats the information input to the AI chatbot as stress data related to stress. The stress data acquisition unit 22 acquires the input information when a question about how to use the engineering tool or a question about how to deal with errors in the engineering tool is input to the AI chatbot. The stress data acquisition unit 22 may also acquire the input information when a request for improvements to the engineering tool is input to the AI chatbot.
 ストレスデータの第2の取得方法において、ストレスデータ取得部22は、ユーザの身体状態情報を取得する機器と連携する。例えば、カメラ2aは、ユーザがエンジニアリング装置2を操作する様子の動画を撮影し、ストレスデータ取得部22へ画像データを送信する。ストレスデータ取得部22は、カメラ2aからの画像データに基づいてユーザの状態を観察する。ストレスデータ取得部22は、ユーザの身体状態の変化またはユーザの挙動の変化を画像データから検知する。身体状態の変化とは、顔色の変化などである。挙動の変化とは、指でキーボードをつつく動作が繰り返されるようになることなどである。 In the second method of acquiring stress data, the stress data acquisition unit 22 works in conjunction with a device that acquires information about the user's physical condition. For example, the camera 2a takes a video of the user operating the engineering device 2, and transmits the image data to the stress data acquisition unit 22. The stress data acquisition unit 22 observes the user's condition based on the image data from the camera 2a. The stress data acquisition unit 22 detects changes in the user's physical condition or changes in the user's behavior from the image data. A change in the physical condition is, for example, a change in facial color. A change in behavior is, for example, repeated tapping of the keyboard with the fingers.
 ストレスデータ取得部22は、身体状態の変化または挙動の変化が検知された場合に、ユーザにストレスが生じていると判断する。ストレスデータ取得部22は、ユーザにストレスが生じていると判断した場合に、画像データをストレスデータとして取得する。画像データは、ユーザの身体状態を観察することによって取得される身体状態情報である。第2の取得方法において、ストレスデータは、身体状態情報を含む。ストレスデータ取得部22は、例えば、ストレスが生じているときにおける身体状態情報を機械学習などの方法により学習し、学習結果に基づいてストレスの有無を判断しても良い。 The stress data acquisition unit 22 determines that the user is stressed when a change in physical condition or behavior is detected. When the stress data acquisition unit 22 determines that the user is stressed, it acquires image data as stress data. The image data is physical condition information acquired by observing the user's physical condition. In the second acquisition method, the stress data includes physical condition information. For example, the stress data acquisition unit 22 may learn physical condition information when stress is occurring by a method such as machine learning, and determine the presence or absence of stress based on the learning result.
 なお、身体状態情報は、ユーザの身体状態の変化またはユーザの挙動の変化を検知可能な情報であれば良く、動画の撮影によって取得される画像データに限られない。身体状態情報を取得する機器には、音声を取り込むマイクが含まれても良い。ストレスデータ取得部22は、ユーザが声を発した場合、または、ユーザの声色が変化した場合に、ユーザにストレスが生じていると判断しても良い。 The physical condition information may be any information capable of detecting a change in the user's physical condition or a change in the user's behavior, and is not limited to image data acquired by shooting a video. The device that acquires the physical condition information may include a microphone that captures audio. The stress data acquisition unit 22 may determine that the user is stressed when the user speaks or when the user's tone of voice changes.
 ストレスデータ取得部22は、ユーザがエンジニアリングツールを使用する間は、身体状態情報に基づいてユーザの身体状態を常時観察する。ストレスデータ取得部22は、ユーザにストレスが生じていると判断した場合、判断の時点からあらかじめ設定された時間だけ遡った時点からの身体状態情報をストレスデータとして取得する。ストレスデータ取得部22は、ストレスデータをサーバ装置3へ送信する。ストレスデータ取得部22は、ユーザのストレスが解消されたと判断した場合、サーバ装置3へのストレスデータの送信を停止する。 The stress data acquisition unit 22 constantly monitors the user's physical condition based on the physical condition information while the user is using the engineering tool. If the stress data acquisition unit 22 determines that the user is stressed, it acquires physical condition information from a point in time that is a preset time prior to the point in time of the determination as stress data. The stress data acquisition unit 22 transmits the stress data to the server device 3. If the stress data acquisition unit 22 determines that the user's stress has been relieved, it stops transmitting the stress data to the server device 3.
 なお、上記では、ユーザはストレスを生じている状態であるか否かをエンジニアリング装置2のストレスデータ取得部22によって判断することとしたが、これに限られない。ユーザはストレスを生じている状態であるか否かを判断する機能は、サーバ装置3に備えられても良い。 In the above, it is stated that whether or not the user is in a stressed state is determined by the stress data acquisition unit 22 of the engineering device 2, but this is not limited to the above. The function of determining whether or not the user is in a stressed state may be provided in the server device 3.
 ストレスデータの第3の取得方法において、ストレスデータ取得部22は、エンジニアリングツールの使用においてエラーが発生した場合に、ユーザにストレスが生じたと判断する。ストレスデータ取得部22は、ユーザにストレスが生じていると判断した場合に、エラーについての情報であるエラーログをストレスデータとして取得する。エラーログは、エラーが発生したときにおける操作の内容を示す情報を含む。すなわち、第3の取得方法において、ストレスデータは、エンジニアリングツールの使用においてエラーが発生したときにおける操作の内容を示す情報を含む。 In the third method of acquiring stress data, the stress data acquisition unit 22 determines that the user is stressed when an error occurs while using the engineering tool. When the stress data acquisition unit 22 determines that the user is stressed, it acquires an error log, which is information about the error, as stress data. The error log includes information indicating the content of the operation when the error occurred. That is, in the third acquisition method, the stress data includes information indicating the content of the operation when an error occurs while using the engineering tool.
 ストレスデータの第4の取得方法において、ストレスデータ取得部22は、エラーは発生していないがユーザによるプログラムの作成に手間を要している場合に、ユーザにストレスが生じたと判断する。第4の取得方法において、ストレスデータは、エンジニアリングツールの使用におけるユーザによる操作に特定の事象が生じたときの操作の内容を示す情報を含む。特定の事象とは、例えば、作成が行われているステップ、または、作成が行われているステップに関連するステップでのプログラムの作成が続けられている場合において、ユーザによる操作が滞っている時間があらかじめ設定された時間を超えることである。エンジニアリングツールの複数の機能のうちいずれの機能を使用するか迷っている場合、または、使用するアルゴリズムを迷っている場合などにおいて、操作が再開されるまでの時間が長くなる。ストレスデータ取得部22は、操作が停止されたときからの時間が設定時間を超えた場合に、ユーザによるプログラムの作成に手間を要しておりユーザにストレスが生じたと判断する。 In a fourth method for acquiring stress data, the stress data acquisition unit 22 determines that the user has become stressed when no error has occurred but the user is having trouble creating a program. In the fourth acquisition method, the stress data includes information indicating the content of an operation when a specific event occurs in the user's operation when using the engineering tool. The specific event is, for example, when the user is continuing to create a program in the step being created or in a step related to the step being created, and the time during which the user's operation is stalled exceeds a preset time. When the user is unsure which of multiple functions of the engineering tool to use, or when the user is unsure which algorithm to use, the time until the operation is resumed becomes long. When the time from when the operation was stopped exceeds the preset time, the stress data acquisition unit 22 determines that the user is having trouble creating a program and has become stressed.
 なお、特定の事象は、ユーザによるプログラムの作成に手間を要していると判断可能な事象であれば良く、操作間隔があらかじめ設定された時間を超えることに限られない。特定の事象は、例えば、操作と操作の取り消しとが連続して繰り返されることなどであっても良い。 The specific event may be any event that can be determined to be an event that requires time and effort in creating a program by the user, and is not limited to an operation interval exceeding a preset time. The specific event may be, for example, an operation and cancellation of the operation being repeated consecutively.
 次に、操作履歴データについて説明する。操作履歴取得部23は、エンジニアリングツールの各種機能に対応する機能ボタンの使用、ユーザインタフェース部21に含まれるポインティングデバイスの操作によるポインタの移動、または、ファンクションブロックの使用などの履歴を操作履歴データとして常時取得する。 Next, the operation history data will be explained. The operation history acquisition unit 23 constantly acquires operation history data such as the use of function buttons corresponding to various functions of the engineering tool, the movement of the pointer by operating the pointing device included in the user interface unit 21, or the use of function blocks.
 操作履歴取得部23は、ユーザにストレスが生じているとストレスデータ取得部22が判断した場合に、操作履歴取得部23は、ストレスが生じていると判断されたことをトリガとして、操作履歴データをサーバ装置3へ送信する。操作履歴取得部23は、ストレスが生じていると判断された時点からあらかじめ設定された時間だけ遡った時点からの操作履歴データをサーバ装置3へ送信する。操作履歴取得部23は、ユーザのストレスが解消されたとストレスデータ取得部22が判断した場合、サーバ装置3への操作履歴データの送信を停止する。ストレスデータ分析システム1は、ストレスが生じていると判断された時点よりも前の時点からの操作履歴データを分析することによって、ストレスの発生に寄与した原因を探索することができる。 When the stress data acquisition unit 22 determines that the user is stressed, the operation history acquisition unit 23 uses the determination that stress is occurring as a trigger to transmit operation history data to the server device 3. The operation history acquisition unit 23 transmits operation history data from a point in time that is a preset time prior to the point in time at which it was determined that stress was occurring to the server device 3. When the stress data acquisition unit 22 determines that the user's stress has been relieved, the operation history acquisition unit 23 stops transmitting the operation history data to the server device 3. The stress data analysis system 1 can search for causes that contributed to the occurrence of stress by analyzing the operation history data from a point in time prior to the point in time at which it was determined that stress was occurring.
 次に、データ分析部34の構成について説明する。図3は、実施の形態1にかかるストレスデータ分析システム1のサーバ装置3が有するデータ分析部34の構成例を示す図である。図3には、データ分析部34と、対応策DB35と、端末装置4のユーザインタフェース部41とを示す。 Next, the configuration of the data analysis unit 34 will be described. FIG. 3 is a diagram showing an example of the configuration of the data analysis unit 34 of the server device 3 of the stress data analysis system 1 according to the first embodiment. FIG. 3 shows the data analysis unit 34, a countermeasure DB 35, and a user interface unit 41 of the terminal device 4.
 データ分析部34は、原因分析部341と、対応策作成部342と、対応策分類部343とを備える。原因分析部341には、ストレスデータと操作履歴データとが入力される。原因分析部341は、エンジニアリングツールのうちエンジニアリングツールの使用におけるストレスの原因である部分を、ストレスデータを分析することによって特定する。 The data analysis unit 34 includes a cause analysis unit 341, a countermeasure creation unit 342, and a countermeasure classification unit 343. Stress data and operation history data are input to the cause analysis unit 341. The cause analysis unit 341 identifies the part of the engineering tool that is the cause of stress when using the engineering tool by analyzing the stress data.
 対応策作成部342は、原因分析部341によって特定された原因に対し取り得る対応策を作成する。対応策作成部342は、例えば、ストレスの低減またはストレスの回避を可能とする対応策を機械学習などの方法により学習し、学習結果に基づいて対応策を作成しても良い。ストレスデータ分析システム1がAIチャットボットを用いるものである場合、AIチャットボットのAIエンジンを対応策作成部342として使用しても良い。 The countermeasure creation unit 342 creates countermeasures that can be taken for the causes identified by the cause analysis unit 341. The countermeasure creation unit 342 may, for example, learn countermeasures that enable stress reduction or stress avoidance using a method such as machine learning, and create countermeasures based on the learning results. If the stress data analysis system 1 uses an AI chatbot, the AI engine of the AI chatbot may be used as the countermeasure creation unit 342.
 対応策作成部342は、ユーザにより作成されたプログラムと学習結果に基づいたプログラムとの差分を求め、差分を基に対応策を作成しても良い。対応策作成部342は、ユーザにより作成されたプログラムを学習結果に基づいたプログラムへ誘導させ得るツールまたは機能を、対応策として作成しても良い。学習結果に基づいたプログラムは、作成の際にストレスを生じさせないか、作成の際におけるストレスをより低減できるプログラムである。これにより、対応策作成部342は、ストレスの低減またはストレスの回避を可能とする対応策を作成することができる。 The countermeasure creation unit 342 may determine the difference between the program created by the user and the program based on the learning results, and create a countermeasure based on the difference. The countermeasure creation unit 342 may create, as a countermeasure, a tool or function that can guide the program created by the user to a program based on the learning results. A program based on the learning results is a program that does not cause stress when created, or can reduce stress when created. This allows the countermeasure creation unit 342 to create a countermeasure that makes it possible to reduce or avoid stress.
 対応策は、例えば、エンジニアリングツールのバグ修正プログラム、エンジニアリングツールにおける推奨プログラムのリコメンド機能、または、ユーザ固有の特性に基づいた推奨プログラムのリコメンド機能などである。対応策は、例えば、機能ボタンのレイアウト変更、ファンクションブロックの整備、または、ユーザの要求仕様からのプログラム自動作成機能などでも良い。プログラム自動作成機能は、文字からプログラムを作成する機能である。 The countermeasures may be, for example, a bug fix program for the engineering tool, a function in the engineering tool that recommends recommended programs, or a function that recommends recommended programs based on the user's unique characteristics. The countermeasures may be, for example, changing the layout of function buttons, improving function blocks, or a function that automatically creates programs from the user's required specifications. The automatic program creation function is a function that creates a program from text.
 対応策分類部343は、対応策作成部342によって作成された対応策を、実行を要する本質的対応策と、本質的対応策以外の対応策である一時的対応策とに分類して管理する。本質的対応策は、ユーザの利用条件に影響されることなく実行すべき対応策、または、ストレスの頻度が高く実行すべき対応策である。本質的対応策の例は、エンジニアリングツールのバグ修正プログラム、エンジニアリングツールにおける推奨プログラムのリコメンド機能、または、機能ボタンのレイアウト変更である。 The countermeasure classification unit 343 classifies and manages the countermeasures created by the countermeasure creation unit 342 into essential countermeasures that must be executed and temporary countermeasures that are countermeasures other than essential countermeasures. Essential countermeasures are countermeasures that should be executed regardless of the user's terms of use, or countermeasures that should be executed because they cause high levels of stress. Examples of essential countermeasures are a bug fix program for an engineering tool, a recommendation function for recommended programs in an engineering tool, or a change in the layout of function buttons.
 一時的対応策は、対応策作成部342によって作成される対応策のうち本質的対応策以外の対応策であって、ストレスに対する一時的な対応として取り得る対応策である。一時的対応策には、共通対応策とカスタマイズ対応策とが含まれる。共通対応策は、個人または条件を問わず共通的に適用可能な対応策である。カスタマイズ対応策は、個人または条件に合わせたカスタマイズを施した上で適用が可能な対応策である。共通対応策は、本質的対応策の候補でもある。共通対応策の例は、ユーザの要求仕様からのプログラム自動作成機能である。当該プログラム自動作成機能は、自動作成の精度が向上することによって本質的対応策へ変更される。カスタマイズ対応策の例は、ユーザ固有の特性に基づいた推奨プログラムのリコメンド機能である。 Temporary countermeasures are countermeasures other than essential countermeasures among the countermeasures created by the countermeasure creation unit 342, and are countermeasures that can be taken as a temporary response to stress. Temporary countermeasures include common countermeasures and customized countermeasures. Common countermeasures are countermeasures that can be commonly applied regardless of individuals or conditions. Customized countermeasures are countermeasures that can be applied after being customized to suit individuals or conditions. Common countermeasures are also candidates for essential countermeasures. An example of a common countermeasure is an automatic program creation function based on the user's required specifications. This automatic program creation function is changed to an essential countermeasure as the accuracy of the automatic creation improves. An example of a customized countermeasure is a recommendation function for recommended programs based on the user's unique characteristics.
 対応策分類部343は、対応策作成部342によって作成された対応策の情報とともに当該対応策のカテゴリー情報を端末装置4へ送信する。カテゴリー情報は、対応策が本質的対応策と一時的対応策とのいずれのカテゴリーに分類されたかを示す情報である。端末装置4のユーザインタフェース部41は、カテゴリーごとに対応策を提示する。判断者は、提示された対応策についての採用の可否を示す情報をユーザインタフェース部41へ入力する。ユーザインタフェース部41は、採用の可否を示す情報をサーバ装置3へ送信する。対応策分類部343は、採用の可否を示す情報を受信し、採用が決定された対応策の情報とカテゴリー情報とを対応策DB35へ出力する。対応策DB35には、カテゴリーごとに、対応策の情報が格納される。これにより、対応策分類部343は、対応策作成部342によって作成された対応策を、本質的対応策と一時的対応策とに分類して管理する。 The countermeasure classification unit 343 transmits information on the countermeasure created by the countermeasure creation unit 342 together with category information on the countermeasure to the terminal device 4. The category information indicates whether the countermeasure has been classified into an essential countermeasure or a temporary countermeasure category. The user interface unit 41 of the terminal device 4 presents the countermeasures for each category. The judge inputs information indicating whether the presented countermeasure can be adopted to the user interface unit 41. The user interface unit 41 transmits information indicating whether the countermeasure can be adopted to the server device 3. The countermeasure classification unit 343 receives the information indicating whether the countermeasure can be adopted, and outputs information on the countermeasure that has been decided to be adopted and category information to the countermeasure DB 35. The countermeasure DB 35 stores information on the countermeasures for each category. As a result, the countermeasure classification unit 343 manages the countermeasures created by the countermeasure creation unit 342 by classifying them into essential countermeasures and temporary countermeasures.
 判断者は、本質的対応策に分類された対応策を一時的対応策として採用したい場合、提示された対応策について、ユーザインタフェース部41の操作によってカテゴリーの変更を指示することができる。この場合、ユーザインタフェース部41は、提示された対応策についての採用の可否を示す情報とともに、カテゴリー変更の指示をサーバ装置3へ送信する。対応策分類部343は、採用が決定された対応策のカテゴリーを本質的対応策から一時的対応策へ変更する。 If the decision maker wishes to adopt a countermeasure classified as an essential countermeasure as a temporary countermeasure, he or she can instruct the presented countermeasure to change the category by operating the user interface unit 41. In this case, the user interface unit 41 transmits an instruction to change the category to the server device 3 together with information indicating whether the presented countermeasure can be adopted. The countermeasure classification unit 343 changes the category of the countermeasure that has been decided to be adopted from an essential countermeasure to a temporary countermeasure.
 対応策の情報が対応策DB35へ格納されると、対応策の情報が格納されたことが対応策分類部343から対応策DB35を経て図2に示す更新部36へ通知される。更新部36は、通知を受けると、本質的対応策に分類されて対応策DB35へ格納された対応策、すなわち、本質的対応策として登録された対応策をエンジニアリングツールに反映させる。ストレスデータ分析システム1は、本質的対応策の適用により、ストレスの根本的な回避を図ることができる。 When the countermeasure information is stored in the countermeasure DB 35, the countermeasure classification unit 343 notifies the update unit 36 shown in FIG. 2 via the countermeasure DB 35 that the countermeasure information has been stored. Upon receiving the notification, the update unit 36 reflects the countermeasures classified as essential countermeasures and stored in the countermeasure DB 35, i.e., the countermeasures registered as essential countermeasures, in the engineering tool. By applying essential countermeasures, the stress data analysis system 1 can fundamentally avoid stress.
 また、更新部36は、ストレスデータ収集部32からストレスデータを取得すると、一時的対応策に分類されて対応策DB35へ格納された対応策、すなわち、一時的対応策として登録された対応策の中から、取得されたストレスデータに対応する対応策の有無を確認する。更新部36は、取得されたストレスデータに対応する対応策がある場合、取得されたストレスデータに対応する対応策の情報を対応策DB35から読み出し、エンジニアリングツールに対応策を反映させる。ストレスデータ分析システム1は、一時的対応策の適用によって、ストレスの低減を図ることができる。これにより、ストレスの蓄積を防ぐことができる。 In addition, when the update unit 36 acquires stress data from the stress data collection unit 32, it checks whether or not there is a countermeasure corresponding to the acquired stress data among the countermeasures classified as temporary countermeasures and stored in the countermeasure DB 35, i.e., the countermeasures registered as temporary countermeasures. If there is a countermeasure corresponding to the acquired stress data, the update unit 36 reads information about the countermeasure corresponding to the acquired stress data from the countermeasure DB 35 and reflects the countermeasure in the engineering tool. The stress data analysis system 1 can reduce stress by applying temporary countermeasures, thereby preventing the accumulation of stress.
 次に、ストレスデータ分析システム1の動作について説明する。図4は、実施の形態1にかかるストレスデータ分析システム1による動作の手順を示すフローチャートである。図4には、本質的対応策として登録された対応策を実行する場合における動作の手順の例を示す。 Next, the operation of the stress data analysis system 1 will be described. FIG. 4 is a flowchart showing the procedure of the operation of the stress data analysis system 1 according to the first embodiment. FIG. 4 shows an example of the procedure of the operation when a countermeasure registered as an essential countermeasure is executed.
 ステップS1において、エンジニアリング装置2は、ストレスデータと操作履歴データとを取得する。エンジニアリング装置2は、ストレスデータ取得部22によりストレスデータを取得する。ストレスデータ取得部22は、ユーザにストレスが生じていると判断することによって、ストレスデータを取得する。ストレスデータ取得部22は、取得されたストレスデータをサーバ装置3へ送信する。ストレスデータ収集部32は、ストレスデータを受信し、ストレスデータを収集する。また、エンジニアリング装置2は、操作履歴取得部23により操作履歴データを取得する。操作履歴取得部23は、取得された操作履歴データをサーバ装置3へ送信する。操作履歴収集部33は、操作履歴データを受信し、操作履歴データを収集する。 In step S1, the engineering device 2 acquires stress data and operation history data. The engineering device 2 acquires stress data by the stress data acquisition unit 22. The stress data acquisition unit 22 acquires stress data by determining that the user is experiencing stress. The stress data acquisition unit 22 transmits the acquired stress data to the server device 3. The stress data collection unit 32 receives the stress data and collects it. In addition, the engineering device 2 acquires operation history data by the operation history acquisition unit 23. The operation history acquisition unit 23 transmits the acquired operation history data to the server device 3. The operation history collection unit 33 receives the operation history data and collects it.
 ステップS2において、サーバ装置3のデータ分析部34は、原因分析部341によって、ストレスデータと操作履歴データとに基づいてストレスの原因を特定する。原因分析部341は、ストレスデータ収集部32によって収集されたストレスデータと操作履歴収集部33によって収集された操作履歴データとを分析し、ストレスの原因を特定する。 In step S2, the data analysis unit 34 of the server device 3 identifies the cause of stress based on the stress data and the operation history data by the cause analysis unit 341. The cause analysis unit 341 analyzes the stress data collected by the stress data collection unit 32 and the operation history data collected by the operation history collection unit 33, and identifies the cause of stress.
 ステップS3において、データ分析部34は、特定された原因に対し取り得る対応策を対応策作成部342によって作成する。ステップS4において、データ分析部34は、ステップS3において作成された対応策を対応策分類部343によって分類する。対応策分類部343は、作成された対応策の情報と当該対応策のカテゴリー情報とを端末装置4へ送信する。 In step S3, the data analysis unit 34 creates possible countermeasures for the identified cause using the countermeasure creation unit 342. In step S4, the data analysis unit 34 classifies the countermeasures created in step S3 using the countermeasure classification unit 343. The countermeasure classification unit 343 transmits information about the created countermeasures and category information about the countermeasures to the terminal device 4.
 ステップS5において、端末装置4のユーザインタフェース部41は、対応策を提示する。ユーザインタフェース部41は、受信された対応策の情報と受信されたカテゴリー情報とに基づいて、対応策の情報をカテゴリーごとに表示する。判断者は、対応策の採用の可否を示す情報をユーザインタフェース部41へ入力することによって、提示された対応策についての採用の可否を決定する。ユーザインタフェース部41は、対応策の採用の可否を示す情報をサーバ装置3へ送信する。 In step S5, the user interface unit 41 of the terminal device 4 presents countermeasures. The user interface unit 41 displays information about countermeasures for each category based on the received countermeasure information and the received category information. The judge inputs information indicating whether or not the countermeasure can be adopted to the user interface unit 41, thereby deciding whether or not to adopt the presented countermeasure. The user interface unit 41 transmits information indicating whether or not the countermeasure can be adopted to the server device 3.
 対応策分類部343は、採用の可否を示す情報を受信し、採用が決定された対応策の情報とカテゴリー情報とを対応策DB35へ出力する。ステップS6において、サーバ装置3は、対応策の情報を対応策DB35へ格納することによって、採用が決定された対応策を登録する。対応策は、カテゴリー情報に基づいて、カテゴリーごとに登録される。対応策分類部343は、対応策の情報が対応策DB35へ格納されると、対応策の情報が格納されたことを更新部36へ通知する。 The countermeasure classification unit 343 receives information indicating whether or not to adopt the countermeasure, and outputs information about the countermeasure that has been decided to be adopted and category information to the countermeasure DB 35. In step S6, the server device 3 registers the countermeasure that has been decided to be adopted by storing the information about the countermeasure in the countermeasure DB 35. The countermeasures are registered for each category based on the category information. When the information about the countermeasure is stored in the countermeasure DB 35, the countermeasure classification unit 343 notifies the update unit 36 that the information about the countermeasure has been stored.
 ステップS7において、サーバ装置3は、更新部36により、登録された対応策をエンジニアリングツールに反映させることによりエンジニアリングツールを更新する。更新部36は、対応策の情報が格納されたことの通知を対応策分類部343から受けると、本質的対応策として登録された対応策の情報を対応策DB35から読み出す。これにより、更新部36は、本質的対応策に分類された対応策をエンジニアリングツールに反映させる。エンジニアリング装置2は、更新されたエンジニアリングツールを利用する。以上により、ストレスデータ分析システム1は、図4に示す手順による動作を終了する。 In step S7, the server device 3 updates the engineering tool by having the update unit 36 reflect the registered countermeasures in the engineering tool. When the update unit 36 receives a notification from the countermeasure classification unit 343 that countermeasure information has been stored, it reads out information on the countermeasures registered as essential countermeasures from the countermeasure DB 35. As a result, the update unit 36 reflects the countermeasures classified as essential countermeasures in the engineering tool. The engineering device 2 uses the updated engineering tool. With the above, the stress data analysis system 1 ends the operation according to the procedure shown in FIG. 4.
 次に、一時的対応策として登録された対応策を実行する場合におけるサーバ装置3の動作について説明する。図5は、実施の形態1において、一時的対応策として登録された対応策を実行する場合におけるサーバ装置3による動作の手順を示すフローチャートである。 Next, the operation of the server device 3 when executing a countermeasure registered as a temporary countermeasure will be described. Figure 5 is a flowchart showing the procedure of the operation of the server device 3 when executing a countermeasure registered as a temporary countermeasure in embodiment 1.
 ステップS11において、サーバ装置3は、ストレスデータ収集部32によってストレスデータを収集する。ストレスデータ収集部32は、ユーザにストレスが生じているとの判断によりストレスデータ取得部22によって取得されたストレスデータを収集する。ストレスデータ収集部32は、収集されたストレスデータをデータ分析部34と更新部36との各々へ出力する。 In step S11, the server device 3 collects stress data using the stress data collection unit 32. The stress data collection unit 32 collects stress data acquired by the stress data acquisition unit 22 upon determining that the user is experiencing stress. The stress data collection unit 32 outputs the collected stress data to each of the data analysis unit 34 and the update unit 36.
 更新部36は、一時的対応策に分類されて対応策DB35に格納されている対応策のうち、ストレスデータに対応する対応策の有無を確認する。ここでは、ストレスデータに対応する対応策が対応策DB35に格納されているとする。更新部36は、取得されたストレスデータに対応する対応策の情報を対応策DB35から読み出す。更新部36は、取得されたストレスデータに対応する対応策をエンジニアリングツールに反映させる。このようにして、ステップS12において、サーバ装置3は、一時的対応策として登録されている対応策を実行する。更新部36は、エンジニアリングツールに反映された対応策の情報をデータ分析部34へ出力する。 The update unit 36 checks whether or not there is a countermeasure that corresponds to the stress data among the countermeasures classified as temporary countermeasures and stored in the countermeasure DB 35. Here, it is assumed that the countermeasures that correspond to the stress data are stored in the countermeasure DB 35. The update unit 36 reads information on the countermeasures that correspond to the acquired stress data from the countermeasure DB 35. The update unit 36 reflects the countermeasures that correspond to the acquired stress data in the engineering tool. In this way, in step S12, the server device 3 executes the countermeasures registered as temporary countermeasures. The update unit 36 outputs the information on the countermeasures reflected in the engineering tool to the data analysis unit 34.
 ステップS13において、サーバ装置3は、ステップS12における対応策を実行した後におけるストレスデータをストレスデータ収集部32によって収集する。ストレスデータ取得部22は、収集されたストレスデータをデータ分析部34へ出力する。以上の手順により、データ分析部34には、ステップS11において収集されたストレスデータと、エンジニアリングツールに反映された対応策の情報と、ステップS13において収集されたストレスデータとが入力される。すなわち、データ分析部34には、一時的対応策として登録された対応策を実行する前のストレスデータと、実行された当該対応策の情報と、当該対応策を実行した後のストレスデータとが入力される。 In step S13, the server device 3 uses the stress data collection unit 32 to collect stress data after the countermeasure in step S12 has been implemented. The stress data acquisition unit 22 outputs the collected stress data to the data analysis unit 34. Through the above procedure, the stress data collected in step S11, information on the countermeasure reflected in the engineering tool, and the stress data collected in step S13 are input to the data analysis unit 34. In other words, the data analysis unit 34 receives stress data before the countermeasure registered as a temporary countermeasure is implemented, information on the implemented countermeasure, and stress data after the implementation of the countermeasure.
 ステップS14において、サーバ装置3は、実行された対応策は十分な対応策であったか否かを、データ分析部34の原因分析部341によって判断する。原因分析部341は、一時的対応策として登録された対応策を実行する前のストレスデータと、当該対応策を実行した後のストレスデータとに基づいて、実行された当該対応策が十分な対応策であったか否かを判断する。 In step S14, the server device 3 uses the cause analysis unit 341 of the data analysis unit 34 to determine whether the implemented countermeasure was sufficient. The cause analysis unit 341 determines whether the implemented countermeasure was sufficient based on the stress data before the countermeasure registered as a temporary countermeasure was implemented and the stress data after the countermeasure was implemented.
 原因分析部341は、当該対応策を実行する前と当該対応策を実行した後とにおけるストレスデータの変化の態様に基づいて、実行された当該対応策が十分な対応策であったか否かを判断する。例えば、ストレスデータの変化が、ストレスの改善によるものと判断される場合、原因分析部341は、実行された当該対応策は十分な対応策であったと判断する。一方、ストレスデータに変化が無いか、または、ストレスデータの変化が、ストレスの悪化によるものと判断される場合、原因分析部341は、実行された当該対応策は十分な対応策ではないと判断する。 The cause analysis unit 341 judges whether the implemented countermeasure was sufficient based on the change in stress data before and after the implementation of the countermeasure. For example, if it is determined that the change in stress data is due to an improvement in stress, the cause analysis unit 341 judges that the implemented countermeasure was sufficient. On the other hand, if there is no change in the stress data or if it is determined that the change in stress data is due to a worsening of stress, the cause analysis unit 341 judges that the implemented countermeasure was not sufficient.
 実行された対応策が十分な対応策であると判断した場合(ステップS14,Yes)、ステップS15において、サーバ装置3は、データ分析部34の対応策分類部343によって、ステップS12にて実行された対応策のカテゴリーを一時的対応策から本質的対応策へ変更する。実行された当該対応策の情報は、本質的対応策に分類されて対応策DB35に格納される。すなわち、当該対応策の登録は、本質的対応策としての登録に修正される。このように、対応策分類部343は、一時的対応策に分類された対応策を実行した際の成果に基づいて、対応策の分類を一時的対応策から本質的対応策へ変更する。 If it is determined that the implemented countermeasure is sufficient (step S14, Yes), in step S15, the countermeasure classification unit 343 of the data analysis unit 34 of the server device 3 changes the category of the countermeasure implemented in step S12 from a temporary countermeasure to an essential countermeasure. Information on the implemented countermeasure is classified as an essential countermeasure and stored in the countermeasure DB 35. In other words, the registration of the countermeasure is corrected to a registration as an essential countermeasure. In this way, the countermeasure classification unit 343 changes the classification of the countermeasure from a temporary countermeasure to an essential countermeasure based on the results when the countermeasure classified as a temporary countermeasure was implemented.
 一方、実行された対応策が十分な対応策ではないと判断した場合(ステップS14,No)、ステップS16において、サーバ装置3は、データ分析部34の対応策作成部342によって対応策を修正する。対応策作成部342は、実行された当該対応策の情報を取得し、一時的対応策として登録された対応策を実行する前のストレスデータと、当該対応策を実行した後のストレスデータとに基づいて、当該対応策を修正する。対応策作成部342は、当該対応策を実行する前と当該対応策を実行した後とにおけるストレスデータの変化の態様に基づいて、ストレスを改善させ得る修正を当該対応策に施す。修正された対応策の情報は、対応策DB35に格納される。 On the other hand, if it is determined that the implemented countermeasure is not sufficient (step S14, No), in step S16, the server device 3 modifies the countermeasure by the countermeasure creation unit 342 of the data analysis unit 34. The countermeasure creation unit 342 acquires information on the implemented countermeasure, and modifies the countermeasure based on the stress data before the implementation of the countermeasure registered as a temporary countermeasure and the stress data after the implementation of the countermeasure. The countermeasure creation unit 342 modifies the countermeasure to improve stress based on the change in the stress data before and after the implementation of the countermeasure. Information on the modified countermeasure is stored in the countermeasure DB 35.
 ステップS15またはステップS16を終えることによって、サーバ装置3は、図5に示す手順による動作を終了する。ストレスデータ分析システム1は、図4に示す手順による動作によって、または、図5に示す手順による動作によって、エンジニアリングツールの使用を継続するユーザのストレスの低減または回避を図ることができる。ユーザのストレスを低減または回避させることによって、エンジニアリングツールの使用における満足度を向上させることが可能となる。 By completing step S15 or step S16, the server device 3 ends the operation according to the procedure shown in FIG. 5. The stress data analysis system 1 can reduce or avoid stress for a user who continues to use the engineering tool by operating according to the procedure shown in FIG. 4 or by operating according to the procedure shown in FIG. 5. By reducing or avoiding user stress, it is possible to improve satisfaction in using the engineering tool.
 次に、データ分析部34における分析のためのデータを取得する動作の詳細と、データ分析部34により対応策を作成して作成された対応策を登録する動作の詳細とについて説明する。ここでは、分析のために取得されるストレスデータが、上記の第1の取得方法によって取得されるストレスデータである場合と、上記の第2の取得方法によって取得されるストレスデータである場合と、上記の第3の取得方法によって取得されるストレスデータである場合と、上記の第4の取得方法によって取得されるストレスデータである場合と、の各々について説明する。 Next, we will explain the details of the operation of acquiring data for analysis in the data analysis unit 34, and the operation of creating countermeasures by the data analysis unit 34 and registering the created countermeasures. Here, we will explain the cases where the stress data acquired for analysis is stress data acquired by the above-mentioned first acquisition method, stress data acquired by the above-mentioned second acquisition method, stress data acquired by the above-mentioned third acquisition method, and stress data acquired by the above-mentioned fourth acquisition method.
 図6は、実施の形態1にかかるストレスデータ分析システム1による、分析のためのデータを取得する動作の手順の第1の例を示すフローチャートである。図7は、実施の形態1にかかるストレスデータ分析システム1のサーバ装置3による、対応策を作成して作成された対応策を登録する動作の手順の第1の例を示すフローチャートである。図6および図7の各々に示す第1の例は、第1の取得方法によってストレスデータを取得する場合の例とする。 FIG. 6 is a flowchart showing a first example of an operational procedure for acquiring data for analysis by the stress data analysis system 1 according to the first embodiment. FIG. 7 is a flowchart showing a first example of an operational procedure for creating countermeasures and registering the created countermeasures by the server device 3 of the stress data analysis system 1 according to the first embodiment. The first examples shown in each of FIG. 6 and FIG. 7 are examples of the case where stress data is acquired by the first acquisition method.
 図6に示すステップS21において、ストレスデータ分析システム1は、AIチャットボットが使用されたか否かをストレスデータ取得部22により判断する。AIチャットボットが使用されるとは、AIチャットボットへ質問が入力されることを指すものとする。ユーザは、例えば、エンジニアリングツールの使用によりプログラムを作成する際において問題が生じた場合に、問題を解決するためにAIチャットボットへ質問を入力する。AIチャットボットが使用されていない場合(ステップS21,No)、ストレスデータ分析システム1は、手順をステップS21に戻す。 In step S21 shown in FIG. 6, the stress data analysis system 1 determines whether or not the AI chatbot has been used by the stress data acquisition unit 22. Using the AI chatbot refers to inputting a question to the AI chatbot. For example, if a problem occurs when creating a program using an engineering tool, the user inputs a question to the AI chatbot to solve the problem. If the AI chatbot has not been used (step S21, No), the stress data analysis system 1 returns the procedure to step S21.
 一方、AIチャットボットが使用された場合(ステップS21,Yes)、ステップS22において、ストレスデータ分析システム1は、AIチャットボットへ入力された情報をストレスデータ取得部22により取得する。ストレスデータ取得部22は、AIチャットボットへ入力された情報であるストレスデータをストレスデータ収集部32へ送信する。ストレスデータ取得部22は、入力に対しAIチャットボットによって出力された回答の情報もストレスデータとして取得し、ストレスデータ収集部32へ送信する。ストレスデータ収集部32は、収集されたストレスデータを原因分析部341へ出力する。 On the other hand, if an AI chatbot is used (step S21, Yes), in step S22, the stress data analysis system 1 acquires the information input to the AI chatbot by the stress data acquisition unit 22. The stress data acquisition unit 22 transmits the stress data, which is the information input to the AI chatbot, to the stress data collection unit 32. The stress data acquisition unit 22 also acquires information on the response output by the AI chatbot in response to the input as stress data, and transmits it to the stress data collection unit 32. The stress data collection unit 32 outputs the collected stress data to the cause analysis unit 341.
 操作履歴取得部23は、ストレスが生じていると判断されたことをトリガとして、操作履歴収集部33へ操作履歴データを送信する。すなわち、操作履歴取得部23は、AIチャットボットが使用されたことをトリガとして、操作履歴収集部33へ操作履歴データを送信する。ステップS23において、ストレスデータ分析システム1は、操作履歴取得部23によって送信された操作履歴データを操作履歴収集部33により取得する。操作履歴収集部33は、操作履歴データを収集し、収集された操作履歴データを原因分析部341へ出力する。 The operation history acquisition unit 23 is triggered by the determination that stress is occurring, and transmits operation history data to the operation history collection unit 33. That is, the operation history acquisition unit 23 is triggered by the use of an AI chatbot, and transmits operation history data to the operation history collection unit 33. In step S23, the stress data analysis system 1 acquires the operation history data transmitted by the operation history acquisition unit 23 using the operation history collection unit 33. The operation history collection unit 33 collects the operation history data, and outputs the collected operation history data to the cause analysis unit 341.
 ステップS24において、ストレスデータ分析システム1は、プログラムの作成において使用された機能と作成されたプログラムとを原因分析部341により抽出することによって、プログラム作成状況データを取得する。原因分析部341は、AIチャットボットへ入力された情報を基に、作成されたプログラムのうち質問のテーマとされた部分を抽出する。原因分析部341は、エンジニアリングツールの使用により作成されるプログラムにおける関数またはファンクションブロックを特定することにより原因を特定する。また、原因分析部341は、プログラムのうち当該部分の作成に使用された機能、例えば、コピー、ペースト、ファンクションブロック、またはアイコン設置といった機能を、操作履歴データから抽出する。プログラム作成状況データは、抽出されたプログラムと抽出された機能を示すデータとを含む。原因分析部341は、AIチャットボットへ入力された情報およびAIチャットボットから出力された情報であるストレスデータと、プログラム作成状況データとを互いに関連付けて記憶する。 In step S24, the stress data analysis system 1 obtains program creation status data by extracting the functions used in creating the program and the created program using the cause analysis unit 341. The cause analysis unit 341 extracts the part of the created program that is the theme of the question based on the information input to the AI chatbot. The cause analysis unit 341 identifies the cause by identifying the function or function block in the program created using an engineering tool. The cause analysis unit 341 also extracts the function used in creating that part of the program, such as copy, paste, function block, or icon placement, from the operation history data. The program creation status data includes the extracted program and data indicating the extracted function. The cause analysis unit 341 stores the stress data, which is the information input to the AI chatbot and the information output from the AI chatbot, and the program creation status data in association with each other.
 ユーザは、質問に対する回答に示された措置を適宜実施する。例えば、回答に示された措置を実施しても問題が解決されない場合、ユーザは、AIチャットボットへ追加の問い合わせを行う。ステップS25において、ストレスデータ分析システム1は、AIチャットボットへ追加の情報が入力されたか否かをストレスデータ取得部22により判断する。AIチャットボットへ追加の情報が入力された場合(ステップS25,Yes)、ストレスデータ分析システム1は、手順をステップS22へ戻し、追加の情報をストレスデータ取得部22により取得する。 The user takes appropriate measures indicated in the response to the question. For example, if the problem is not resolved even after taking the measures indicated in the response, the user makes an additional inquiry to the AI chatbot. In step S25, the stress data analysis system 1 determines whether or not additional information has been input to the AI chatbot using the stress data acquisition unit 22. If additional information has been input to the AI chatbot (step S25, Yes), the stress data analysis system 1 returns the procedure to step S22 and acquires the additional information using the stress data acquisition unit 22.
 一方、AIチャットボットへ追加の情報が入力されない場合(ステップS25,No)、ステップS26において、ストレスデータ分析システム1は、AIチャットボットへ情報が入力されたときから一定期間が経過したか否かをストレスデータ取得部22により判断する。一定期間は、あらかじめ設定された期間とする。一定期間が経過していない場合(ステップS26,No)、ストレスデータ分析システム1は、手順をステップS25へ戻す。 On the other hand, if no additional information is input to the AI chatbot (step S25, No), in step S26, the stress data analysis system 1 determines, via the stress data acquisition unit 22, whether a certain period of time has passed since the information was input to the AI chatbot. The certain period of time is a period set in advance. If the certain period of time has not passed (step S26, No), the stress data analysis system 1 returns the procedure to step S25.
 一方、一定期間が経過した場合(ステップS26,Yes)、ストレスデータ取得部22は、回答に示された措置の実施により問題が解決されたものと判断する。以上により、ストレスデータ分析システム1は、図6に示す手順による動作を終了する。 On the other hand, if a certain period of time has passed (step S26, Yes), the stress data acquisition unit 22 determines that the problem has been resolved by implementing the measures indicated in the response. As a result, the stress data analysis system 1 ends the operation according to the procedure shown in FIG. 6.
 サーバ装置3は、原因分析部341におけるストレスデータとプログラム作成状況データとの分析を開始する。図7に示すステップS31において、原因分析部341は、AIチャットボットへ入力された情報と入力に対する回答とに基づいてストレスの原因を探索する。 The server device 3 starts analyzing the stress data and the program creation status data in the cause analysis unit 341. In step S31 shown in FIG. 7, the cause analysis unit 341 searches for the cause of stress based on the information input to the AI chatbot and the responses to the input.
 ステップS32において、原因分析部341は、プログラム作成状況データのうち入力された情報に含まれるキーワードに関連する部分を抽出し、抽出された部分に基づいてストレスの原因を探索する。原因分析部341は、プログラムのうち作成中であった部分を、ユーザによる質問の要因となった部分とみなすこととして、キーワードに関連する部分を抽出する。原因分析部341は、AIチャットボットへ情報が入力された時点からあるステップ数までのプログラムを抽出する。原因分析部341は、抽出されたプログラムからストレスの原因を探索する。 In step S32, the cause analysis unit 341 extracts parts of the program creation status data that are related to the keywords included in the input information, and searches for the cause of stress based on the extracted parts. The cause analysis unit 341 extracts the parts related to the keywords, assuming that the part of the program that was being created was the part that caused the user's question. The cause analysis unit 341 extracts the program up to a certain number of steps from the point when the information was input into the AI chatbot. The cause analysis unit 341 searches for the cause of stress from the extracted program.
 原因分析部341は、ユーザによって作成されたプログラムに、理想的なプログラムとの比較において無駄な部分があるか否かを判断する。また、原因分析部341は、ユーザによって作成されたプログラムに無駄な部分がある場合、当該無駄な部分が作成された要因を探索する。理想的なプログラムとは、基本とされるアルゴリズムである。作成中のプログラムに採用すべきプログラムが、AIチャットボットの回答において提案されている場合は、理想的なプログラムは、回答において提案されたプログラムであっても良い。 The cause analysis unit 341 determines whether or not the program created by the user has any wasteful parts when compared with an ideal program. Furthermore, if the program created by the user has any wasteful parts, the cause analysis unit 341 searches for the cause of the creation of the wasteful parts. An ideal program is a basic algorithm. If a program to be adopted for the program being created is suggested in the response of the AI chatbot, the ideal program may be the program suggested in the response.
 ステップS33において、対応策作成部342は、ステップS31およびステップS32において探索されたストレスの原因について、ストレスの原因に対する対応策を作成する。対応策としては、例えば、プログラムの作成を簡易化させ得るプログラム部品であるファンクションブロックの作成、ユーザへファンクションブロックを提示する機能、または、ファンクションブロックを提示する機能へユーザを誘導する機能などを採用し得る。 In step S33, the countermeasure creation unit 342 creates countermeasures for the causes of stress discovered in steps S31 and S32. As countermeasures, for example, the creation of function blocks, which are program components that can simplify program creation, a function to present function blocks to the user, or a function to guide the user to a function that presents function blocks can be adopted.
 ステップS34において、対応策分類部343は、ステップS33において作成された対応策は本質的対応策であるか否かを判断する。作成された対応策が本質的対応策である場合(ステップS34,Yes)、対応策分類部343は、作成された対応策の情報とともに本質的対応策であることを示すカテゴリー情報を端末装置4へ送信する。判断者によって対応策の採用が決定されると、ステップS35において、対応策分類部343は、ステップS33において作成された対応策を本質的対応策として登録する。 In step S34, the countermeasure classification unit 343 judges whether the countermeasure created in step S33 is an essential countermeasure. If the created countermeasure is an essential countermeasure (step S34, Yes), the countermeasure classification unit 343 transmits category information indicating that the countermeasure is an essential countermeasure to the terminal device 4 along with information about the created countermeasure. When the decision is made by the judge to adopt the countermeasure, in step S35, the countermeasure classification unit 343 registers the countermeasure created in step S33 as an essential countermeasure.
 一方、作成された対応策が本質的対応策ではない場合(ステップS34,No)、対応策分類部343は、作成された対応策が一時的対応策であるものと判断する。対応策分類部343は、作成された対応策の情報とともに一時的対応策であることを示すカテゴリー情報を端末装置4へ送信する。判断者によって対応策の採用が決定されると、ステップS36において、対応策分類部343は、ステップS33において作成された対応策を一時的対応策として登録する。以上により、サーバ装置3は、図7に示す手順による動作を終了する。 On the other hand, if the created countermeasure is not an essential countermeasure (step S34, No), the countermeasure classification unit 343 determines that the created countermeasure is a temporary countermeasure. The countermeasure classification unit 343 transmits information about the created countermeasure and category information indicating that it is a temporary countermeasure to the terminal device 4. When the decision is made by the judge to adopt the countermeasure, in step S36, the countermeasure classification unit 343 registers the countermeasure created in step S33 as a temporary countermeasure. With the above, the server device 3 ends the operation according to the procedure shown in FIG. 7.
 なお、対応策分類部343によって一時的対応策に分類された対応策について、判断者により本質的対応策として採用することが決定された場合、対応策分類部343は、ステップS33において作成された対応策を本質的対応策として登録する。また、サーバ装置3は、図5に示すように、一時的対応策として登録された対応策を実行する場合におけるストレスの原因を探索し、当該対応策の登録を本質的対応策としての登録に修正しても良い。 If the judge decides to adopt a countermeasure classified as a temporary countermeasure by the countermeasure classification unit 343 as an essential countermeasure, the countermeasure classification unit 343 registers the countermeasure created in step S33 as an essential countermeasure. As shown in FIG. 5, the server device 3 may also search for the cause of stress when executing a countermeasure registered as a temporary countermeasure, and revise the registration of the countermeasure to a registration as an essential countermeasure.
 図8は、実施の形態1にかかるストレスデータ分析システム1による、分析のためのデータを取得する動作の手順の第2の例を示すフローチャートである。図9は、実施の形態1にかかるストレスデータ分析システム1のサーバ装置3による、対応策を作成して作成された対応策を登録する動作の手順の第2の例を示すフローチャートである。図8および図9の各々に示す第2の例は、第2の取得方法によってストレスデータを取得する場合の例とする。 FIG. 8 is a flowchart showing a second example of the procedure of the operation of the stress data analysis system 1 according to the first embodiment to acquire data for analysis. FIG. 9 is a flowchart showing a second example of the procedure of the operation of the server device 3 of the stress data analysis system 1 according to the first embodiment to create countermeasures and register the created countermeasures. The second examples shown in each of FIG. 8 and FIG. 9 are examples of the case where stress data is acquired by the second acquisition method.
 図8に示すステップS41において、ストレスデータ分析システム1は、ユーザはストレスを生じている状態であるか否かをストレスデータ取得部22により判断する。ストレスデータ取得部22は、ユーザがエンジニアリング装置2を操作する様子を観察する。ストレスデータ取得部22は、ユーザの身体状態の変化またはユーザの挙動の変化が検知された場合に、ユーザにストレスが生じていると判断する。ユーザはストレスを生じている状態ではないと判断した場合(ステップS41,No)、ストレスデータ分析システム1は、手順をステップS41に戻す。 In step S41 shown in FIG. 8, the stress data analysis system 1 determines whether or not the user is in a stressed state using the stress data acquisition unit 22. The stress data acquisition unit 22 observes how the user operates the engineering device 2. If the stress data acquisition unit 22 detects a change in the user's physical condition or behavior, it determines that the user is in a stressed state. If it determines that the user is not in a stressed state (step S41, No), the stress data analysis system 1 returns the procedure to step S41.
 一方、ユーザはストレスを生じている状態であると判断した場合(ステップS41,Yes)、ステップS42において、ストレスデータ分析システム1は、身体状態情報をストレスデータ取得部22により取得する。ストレスデータ取得部22は、身体状態情報であるストレスデータをストレスデータ収集部32へ送信する。ストレスデータ収集部32は、収集されたストレスデータを原因分析部341へ出力する。 On the other hand, if it is determined that the user is in a stressed state (Yes in step S41), in step S42, the stress data analysis system 1 acquires physical condition information by the stress data acquisition unit 22. The stress data acquisition unit 22 transmits the stress data, which is physical condition information, to the stress data collection unit 32. The stress data collection unit 32 outputs the collected stress data to the cause analysis unit 341.
 操作履歴取得部23は、ユーザはストレスを生じている状態であると判断されたことをトリガとして、操作履歴収集部33へ操作履歴データを送信する。ステップS43において、ストレスデータ分析システム1は、操作履歴取得部23によって送信された操作履歴データを操作履歴収集部33により取得する。操作履歴収集部33は、操作履歴データを収集し、収集された操作履歴データを原因分析部341へ出力する。 When it is determined that the user is in a stressed state, the operation history acquisition unit 23 sends operation history data to the operation history collection unit 33. In step S43, the stress data analysis system 1 acquires the operation history data sent by the operation history acquisition unit 23 using the operation history collection unit 33. The operation history collection unit 33 collects the operation history data and outputs the collected operation history data to the cause analysis unit 341.
 ステップS44において、ストレスデータ分析システム1は、プログラムの作成において使用された機能と作成されたプログラムとを原因分析部341により抽出することによって、プログラム作成状況データを取得する。原因分析部341は、プログラムのうち、ストレスが生じていると判断された際に作成中であった部分を抽出する。また、原因分析部341は、プログラムのうち当該部分の作成に使用された機能を操作履歴データから抽出する。原因分析部341は、身体状態情報であるストレスデータと、プログラム作成状況データとを互いに関連付けて記憶する。 In step S44, the stress data analysis system 1 obtains program creation status data by extracting the functions used in creating the program and the created program using the cause analysis unit 341. The cause analysis unit 341 extracts the part of the program that was being created when it was determined that stress was occurring. The cause analysis unit 341 also extracts the functions used in creating that part of the program from the operation history data. The cause analysis unit 341 stores the stress data, which is physical condition information, and the program creation status data in association with each other.
 ステップS45において、ストレスデータ分析システム1は、更新部36により一時的対応策を選択し、選択した一時的対応策をユーザインタフェース部41により提示する。更新部36は、ストレスデータ収集部32からストレスデータを取得する。更新部36は、原因分析部341からプログラム作成状況データを取得する。更新部36は、ストレスデータとプログラム作成状況データとに基づいて、一時的対応策として登録されている対応策の中からストレスデータに対応する対応策を選択する。対応策分類部343は、更新部36によって選択された対応策の情報とともに、一時的対応策であることを示すカテゴリー情報を端末装置4のユーザインタフェース部41へ送信する。判断者によって対応策の採用が決定されると、ステップS46において、更新部36は、決定された一時的対応策をエンジニアリングツールに反映させる。 In step S45, the stress data analysis system 1 selects a temporary countermeasure using the update unit 36, and presents the selected temporary countermeasure using the user interface unit 41. The update unit 36 acquires stress data from the stress data collection unit 32. The update unit 36 acquires program creation status data from the cause analysis unit 341. Based on the stress data and the program creation status data, the update unit 36 selects a countermeasure corresponding to the stress data from among the countermeasures registered as temporary countermeasures. The countermeasure classification unit 343 transmits category information indicating that the countermeasure is a temporary countermeasure to the user interface unit 41 of the terminal device 4, together with information on the countermeasure selected by the update unit 36. When the decision to adopt the countermeasure is made by the judge, in step S46, the update unit 36 reflects the determined temporary countermeasure in the engineering tool.
 一時的対応策が反映されたエンジニアリングツールが使用される状況にて、ステップS47において、ストレスデータ分析システム1は、ストレスを生じている状態は解消されたか否かをストレスデータ取得部22により判断する。ストレスを生じている状態は解消されていないと判断した場合(ステップS47,No)、ストレスデータ分析システム1は、ステップS42へ手順を戻し、原因分析部341においてストレスデータとプログラム作成状況データとを取得する。原因分析部341は、ストレスデータとプログラム作成状況データとを互いに関連付けて記憶する。一方、ストレスを生じている状態は解消されたと判断した場合(ステップS47,Yes)、ストレスデータ分析システム1は、図8に示す手順による動作を終了する。 In a situation where an engineering tool reflecting temporary countermeasures is being used, in step S47, the stress data analysis system 1 determines whether the stressful state has been resolved using the stress data acquisition unit 22. If it is determined that the stressful state has not been resolved (step S47, No), the stress data analysis system 1 returns to step S42, and acquires stress data and program creation status data in the cause analysis unit 341. The cause analysis unit 341 stores the stress data and the program creation status data in association with each other. On the other hand, if it is determined that the stressful state has been resolved (step S47, Yes), the stress data analysis system 1 ends the operation according to the procedure shown in FIG. 8.
 サーバ装置3は、原因分析部341におけるストレスデータとプログラム作成状況データとの分析を開始する。図9に示すステップS51において、原因分析部341は、身体状態情報に基づいてストレスの原因を探索する。 The server device 3 starts analyzing the stress data and the program creation status data in the cause analysis unit 341. In step S51 shown in FIG. 9, the cause analysis unit 341 searches for the cause of stress based on the physical condition information.
 ステップS52において、原因分析部341は、プログラム作成状況データのうち身体状態に変化があった時点に対応する部分を抽出し、抽出された部分に基づいてストレスの原因を探索する。原因分析部341は、身体状態に変化があった時点からストレスが生じたものとみなすこととして、身体状態に変化があった時点に対応する部分を抽出する。 In step S52, the cause analysis unit 341 extracts a portion of the program creation status data that corresponds to the time when a change in physical condition occurred, and searches for the cause of stress based on the extracted portion. The cause analysis unit 341 extracts the portion that corresponds to the time when the change in physical condition occurred, assuming that stress occurred from the time when the change in physical condition occurred.
 原因分析部341は、ユーザによって作成されたプログラムに、理想的なプログラムとの比較において無駄な部分があるか否かを判断する。また、原因分析部341は、ユーザによって作成されたプログラムに無駄な部分がある場合、当該無駄な部分が作成された要因を探索する。 The cause analysis unit 341 determines whether the program created by the user contains any wasteful parts when compared with an ideal program. If the program created by the user contains any wasteful parts, the cause analysis unit 341 searches for the cause of the wasteful parts being created.
 ステップS53において、対応策作成部342は、ステップS51およびステップS52において探索されたストレスの原因について、ストレスの原因に対する対応策を作成する。 In step S53, the countermeasure creation unit 342 creates countermeasures for the causes of stress discovered in steps S51 and S52.
 ステップS54において、対応策分類部343は、ステップS53において作成された対応策は本質的対応策であるか否かを判断する。作成された対応策が本質的対応策である場合(ステップS54,Yes)、対応策分類部343は、作成された対応策の情報とともに本質的対応策であることを示すカテゴリー情報を端末装置4へ送信する。判断者によって対応策の採用が決定されると、ステップS55において、対応策分類部343は、ステップS53において作成された対応策を本質的対応策として登録する。 In step S54, the countermeasure classification unit 343 determines whether the countermeasure created in step S53 is an essential countermeasure. If the created countermeasure is an essential countermeasure (step S54, Yes), the countermeasure classification unit 343 transmits category information indicating that the countermeasure is an essential countermeasure to the terminal device 4 along with information about the created countermeasure. When the decision is made by the judge to adopt the countermeasure, in step S55, the countermeasure classification unit 343 registers the countermeasure created in step S53 as an essential countermeasure.
 一方、作成された対応策が本質的対応策ではない場合(ステップS54,No)、対応策分類部343は、作成された対応策が一時的対応策であるものと判断する。対応策分類部343は、作成された対応策の情報とともに一時的対応策であることを示すカテゴリー情報を端末装置4へ送信する。判断者によって対応策の採用が決定されると、ステップS56において、対応策分類部343は、ステップS53において作成された対応策を一時的対応策として登録する。以上により、サーバ装置3は、図9に示す手順による動作を終了する。 On the other hand, if the created countermeasure is not an essential countermeasure (step S54, No), the countermeasure classification unit 343 determines that the created countermeasure is a temporary countermeasure. The countermeasure classification unit 343 transmits category information indicating that the countermeasure is a temporary countermeasure to the terminal device 4 along with information about the created countermeasure. When the decision is made by the judge to adopt the countermeasure, in step S56, the countermeasure classification unit 343 registers the countermeasure created in step S53 as a temporary countermeasure. With the above, the server device 3 ends the operation according to the procedure shown in FIG. 9.
 なお、対応策分類部343によって一時的対応策に分類された対応策について、判断者により本質的対応策として採用することが決定された場合、対応策分類部343は、ステップS53において作成された対応策を本質的対応策として登録する。また、サーバ装置3は、図5に示すように、一時的対応策として登録された対応策を実行する場合におけるストレスの原因を探索し、当該対応策の登録を本質的対応策としての登録に修正しても良い。 If the judge decides to adopt a countermeasure classified as a temporary countermeasure by the countermeasure classification unit 343 as an essential countermeasure, the countermeasure classification unit 343 registers the countermeasure created in step S53 as an essential countermeasure. As shown in FIG. 5, the server device 3 may also search for the cause of stress when executing a countermeasure registered as a temporary countermeasure, and revise the registration of the countermeasure to a registration as an essential countermeasure.
 図10は、実施の形態1にかかるストレスデータ分析システム1による、分析のためのデータを取得する動作の手順の第3の例を示すフローチャートである。図11は、実施の形態1にかかるストレスデータ分析システム1のサーバ装置3による、対応策を作成して作成された対応策を登録する動作の手順の第3の例を示すフローチャートである。図10および図11の各々に示す第3の例は、第3の取得方法によってストレスデータを取得する場合の例とする。 FIG. 10 is a flowchart showing a third example of the procedure of the operation of the stress data analysis system 1 according to the first embodiment to acquire data for analysis. FIG. 11 is a flowchart showing a third example of the procedure of the operation of the server device 3 of the stress data analysis system 1 according to the first embodiment to create countermeasures and register the created countermeasures. The third examples shown in each of FIG. 10 and FIG. 11 are examples of the case where stress data is acquired by the third acquisition method.
 図10に示すステップS61において、ストレスデータ分析システム1は、エンジニアリングツールの使用においてエラーが発生したか否かをストレスデータ取得部22により判断する。ストレスデータ取得部22は、エンジニアリングツールの使用においてエラーが発生した場合を、ユーザにストレスが生じた場合とみなす。エラーが発生していない場合(ステップS61,No)、ストレスデータ分析システム1は、手順をステップS61に戻す。 In step S61 shown in FIG. 10, the stress data analysis system 1 determines whether or not an error has occurred in the use of the engineering tool using the stress data acquisition unit 22. When an error has occurred in the use of the engineering tool, the stress data acquisition unit 22 regards the occurrence of an error as a case in which the user has experienced stress. If no error has occurred (step S61, No), the stress data analysis system 1 returns the procedure to step S61.
 一方、エラーが発生した場合(ステップS61,Yes)、ステップS62において、ストレスデータ分析システム1は、ストレスデータ取得部22によりエラーログを取得する。ストレスデータ取得部22は、エラーログであるストレスデータをストレスデータ収集部32へ送信する。ストレスデータ収集部32は、収集されたストレスデータを原因分析部341へ出力する。 On the other hand, if an error occurs (step S61, Yes), in step S62, the stress data analysis system 1 acquires an error log by the stress data acquisition unit 22. The stress data acquisition unit 22 transmits the stress data, which is the error log, to the stress data collection unit 32. The stress data collection unit 32 outputs the collected stress data to the cause analysis unit 341.
 操作履歴取得部23は、エンジニアリングツールの使用においてエラーが発生したことをトリガとして、操作履歴収集部33へ操作履歴データを送信する。ステップS63において、ストレスデータ分析システム1は、操作履歴取得部23によって送信された操作履歴データを操作履歴収集部33により取得する。操作履歴収集部33は、操作履歴データを収集し、収集された操作履歴データを原因分析部341へ出力する。 When an error occurs during use of the engineering tool, the operation history acquisition unit 23 sends operation history data to the operation history collection unit 33. In step S63, the stress data analysis system 1 acquires the operation history data sent by the operation history acquisition unit 23 using the operation history collection unit 33. The operation history collection unit 33 collects the operation history data and outputs the collected operation history data to the cause analysis unit 341.
 ステップS64において、ストレスデータ分析システム1は、プログラムの作成において使用された機能と作成されたプログラムとを原因分析部341により抽出することによって、プログラム作成状況データを取得する。原因分析部341は、プログラムのうち、エラーが発生した際に作成中であった部分を抽出する。また、原因分析部341は、プログラムのうち当該部分の作成に使用された機能を操作履歴データから抽出する。原因分析部341は、エラーログであるストレスデータと、プログラム作成状況データとを互いに関連付けて記憶する。 In step S64, the stress data analysis system 1 obtains program creation status data by extracting the functions used in creating the program and the created program using the cause analysis unit 341. The cause analysis unit 341 extracts the part of the program that was being created when the error occurred. The cause analysis unit 341 also extracts the functions used in creating that part of the program from the operation history data. The cause analysis unit 341 stores the stress data, which is the error log, and the program creation status data in association with each other.
 ステップS65において、ストレスデータ分析システム1は、更新部36により一時的対応策を選択し、選択した一時的対応策をユーザインタフェース部41により提示する。判断者によって対応策の採用が決定されると、ステップS66において、更新部36は、決定された一時的対応策をエンジニアリングツールに反映させる。ステップS65およびステップS66の詳細は、図8に示すステップS45およびステップS46の場合と同様である。 In step S65, the stress data analysis system 1 selects a temporary countermeasure using the update unit 36, and presents the selected temporary countermeasure using the user interface unit 41. When the decision to adopt the countermeasure is made by the judge, in step S66, the update unit 36 reflects the determined temporary countermeasure in the engineering tool. Details of steps S65 and S66 are the same as those of steps S45 and S46 shown in FIG. 8.
 一時的対応策が反映されたエンジニアリングツールが使用される状況にて、ステップS67において、ストレスデータ分析システム1は、エラーが解消されたか否かをストレスデータ取得部22により判断する。エラーは解消されていないと判断した場合(ステップS67,No)、ストレスデータ分析システム1は、ステップS62へ手順を戻し、原因分析部341においてストレスデータとプログラム作成状況データとを取得する。原因分析部341は、ストレスデータとプログラム作成状況データとを互いに関連付けて記憶する。一方、エラーは解消されたと判断した場合(ステップS67,Yes)、ストレスデータ分析システム1は、図10に示す手順による動作を終了する。 In a situation where an engineering tool reflecting temporary countermeasures is being used, in step S67, the stress data analysis system 1 determines whether the error has been resolved using the stress data acquisition unit 22. If it is determined that the error has not been resolved (step S67, No), the stress data analysis system 1 returns to step S62, and acquires stress data and program creation status data in the cause analysis unit 341. The cause analysis unit 341 stores the stress data and the program creation status data in association with each other. On the other hand, if it is determined that the error has been resolved (step S67, Yes), the stress data analysis system 1 ends the operation according to the procedure shown in FIG. 10.
 サーバ装置3は、原因分析部341におけるストレスデータとプログラム作成状況データとの分析を開始する。図11に示すステップS71において、原因分析部341は、エラーログに基づいてストレスの原因を探索する。 The server device 3 starts analyzing the stress data and the program creation status data in the cause analysis unit 341. In step S71 shown in FIG. 11, the cause analysis unit 341 searches for the cause of stress based on the error log.
 ステップS72において、原因分析部341は、プログラム作成状況データのうちエラーに関連する部分を抽出し、抽出された部分に基づいてストレスの原因を探索する。原因分析部341は、エラーが発生した時点からストレスが生じたものとみなすこととして、エラーに関連する部分を抽出する。 In step S72, the cause analysis unit 341 extracts the part of the program creation status data that is related to the error, and searches for the cause of stress based on the extracted part. The cause analysis unit 341 extracts the part related to the error, assuming that stress occurred from the time the error occurred.
 ステップS73において、対応策作成部342は、ステップS71およびステップS72において探索されたストレスの原因について、ストレスの原因に対する対応策を作成する。 In step S73, the countermeasure creation unit 342 creates countermeasures for the causes of stress discovered in steps S71 and S72.
 ステップS74において、対応策分類部343は、ステップS73において作成された対応策は本質的対応策であるか否かを判断する。作成された対応策が本質的対応策である場合(ステップS74,Yes)、対応策分類部343は、作成された対応策の情報とともに本質的対応策であることを示すカテゴリー情報を端末装置4へ送信する。判断者によって対応策の採用が決定されると、ステップS75において、対応策分類部343は、ステップS73において作成された対応策を本質的対応策として登録する。 In step S74, the countermeasure classification unit 343 judges whether the countermeasure created in step S73 is an essential countermeasure. If the created countermeasure is an essential countermeasure (step S74, Yes), the countermeasure classification unit 343 transmits category information indicating that the countermeasure is an essential countermeasure to the terminal device 4 along with information about the created countermeasure. When the decision is made by the judge to adopt the countermeasure, in step S75, the countermeasure classification unit 343 registers the countermeasure created in step S73 as an essential countermeasure.
 一方、作成された対応策が本質的対応策ではない場合(ステップS74,No)、対応策分類部343は、作成された対応策が一時的対応策であるものと判断する。対応策分類部343は、作成された対応策の情報とともに一時的対応策であることを示すカテゴリー情報を端末装置4へ送信する。判断者によって対応策の採用が決定されると、ステップS76において、対応策分類部343は、ステップS73において作成された対応策を一時的対応策として登録する。以上により、サーバ装置3は、図11に示す手順による動作を終了する。 On the other hand, if the created countermeasure is not an essential countermeasure (step S74, No), the countermeasure classification unit 343 determines that the created countermeasure is a temporary countermeasure. The countermeasure classification unit 343 transmits category information indicating that the countermeasure is a temporary countermeasure to the terminal device 4 along with information about the created countermeasure. When the decision is made by the judge to adopt the countermeasure, in step S76, the countermeasure classification unit 343 registers the countermeasure created in step S73 as a temporary countermeasure. With the above, the server device 3 ends the operation according to the procedure shown in FIG. 11.
 なお、対応策分類部343によって一時的対応策に分類された対応策について、判断者により本質的対応策として採用することが決定された場合、対応策分類部343は、ステップS73において作成された対応策を本質的対応策として登録する。また、サーバ装置3は、図5に示すように、一時的対応策として登録された対応策を実行する場合におけるストレスの原因を探索し、当該対応策の登録を本質的対応策としての登録に修正しても良い。 If the judge decides to adopt a countermeasure classified as a temporary countermeasure by the countermeasure classification unit 343 as an essential countermeasure, the countermeasure classification unit 343 registers the countermeasure created in step S73 as an essential countermeasure. As shown in FIG. 5, the server device 3 may also search for the cause of stress when executing a countermeasure registered as a temporary countermeasure, and revise the registration of the countermeasure to a registration as an essential countermeasure.
 図12は、実施の形態1にかかるストレスデータ分析システム1による、分析のためのデータを取得する動作の手順の第4の例を示すフローチャートである。図13は、実施の形態1にかかるストレスデータ分析システム1のサーバ装置3による、対応策を作成して作成された対応策を登録する動作の手順の第4の例を示すフローチャートである。図12および図13の各々に示す第4の例は、第4の取得方法によってストレスデータを取得する場合の例とする。 FIG. 12 is a flowchart showing a fourth example of the procedure of the operation of the stress data analysis system 1 according to the first embodiment to acquire data for analysis. FIG. 13 is a flowchart showing a fourth example of the procedure of the operation of the server device 3 of the stress data analysis system 1 according to the first embodiment to create countermeasures and register the created countermeasures. The fourth examples shown in each of FIG. 12 and FIG. 13 are examples of the case where stress data is acquired by a fourth acquisition method.
 図12に示すステップS81において、ストレスデータ分析システム1は、エンジニアリングツールの使用においてアラームが発生したか否かをストレスデータ取得部22により判断する。エンジニアリングツールは、エンジニアリングツールの使用におけるユーザによる操作に特定の事象が生じたときにアラームを発生する。例えば、ユーザによる操作が停止したときからの時間があらかじめ設定された時間を超えた場合に、エンジニアリングツールは、アラームを発生する。ストレスデータ取得部22は、エンジニアリングツールの使用においてアラームが発生した場合を、ユーザにストレスが生じた場合とみなす。アラームが発生していない場合(ステップS81,No)、ストレスデータ分析システム1は、手順をステップS81に戻す。一方、アラームが発生した場合(ステップS81,Yes)、ステップS82において、ストレスデータ分析システム1は、ストレスデータ取得部22によりアラーム情報を取得する。 In step S81 shown in FIG. 12, the stress data analysis system 1 determines whether an alarm has occurred during use of the engineering tool using the stress data acquisition unit 22. The engineering tool generates an alarm when a specific event occurs during operation by the user during use of the engineering tool. For example, the engineering tool generates an alarm when the time since the user's operation stopped exceeds a preset time. The stress data acquisition unit 22 considers the occurrence of an alarm during use of the engineering tool to be a case in which the user has become stressed. If an alarm has not occurred (step S81, No), the stress data analysis system 1 returns the procedure to step S81. On the other hand, if an alarm has occurred (step S81, Yes), in step S82, the stress data analysis system 1 acquires alarm information using the stress data acquisition unit 22.
 アラーム情報は、例えば、操作を開始した時間、アラームが発生した時間、操作が終了した場合には操作を終了した時間、操作が滞ったステップ、または、操作が滞ったプログラム番号などといった、アラームの要因となった事象に関する情報を含む。ストレスデータ取得部22は、アラーム情報であるストレスデータをストレスデータ収集部32へ送信する。ストレスデータ収集部32は、収集されたストレスデータを原因分析部341へ出力する。 The alarm information includes information about the event that caused the alarm, such as the time the operation started, the time the alarm occurred, the time the operation ended if it ended, the step where the operation was stalled, or the program number where the operation was stalled. The stress data acquisition unit 22 transmits the stress data, which is the alarm information, to the stress data collection unit 32. The stress data collection unit 32 outputs the collected stress data to the cause analysis unit 341.
 操作履歴取得部23は、エンジニアリングツールの使用においてアラームが発生したことをトリガとして、操作履歴収集部33へ操作履歴データを送信する。ステップS83において、ストレスデータ分析システム1は、操作履歴取得部23によって送信された操作履歴データを操作履歴収集部33により取得する。操作履歴収集部33は、操作履歴データを収集し、収集された操作履歴データを原因分析部341へ出力する。 The operation history acquisition unit 23 transmits operation history data to the operation history collection unit 33 when an alarm occurs during use of the engineering tool. In step S83, the stress data analysis system 1 acquires the operation history data transmitted by the operation history acquisition unit 23 using the operation history collection unit 33. The operation history collection unit 33 collects the operation history data and outputs the collected operation history data to the cause analysis unit 341.
 ステップS84において、ストレスデータ分析システム1は、プログラムの作成において使用された機能と作成されたプログラムとを原因分析部341により抽出することによって、プログラム作成状況データを取得する。原因分析部341は、プログラムのうち、アラームが発生した際に作成中であった部分を抽出する。また、原因分析部341は、プログラムのうち当該部分の作成に使用された機能を操作履歴データから抽出する。原因分析部341は、アラーム情報であるストレスデータと、プログラム作成状況データとを互いに関連付けて記憶する。 In step S84, the stress data analysis system 1 obtains program creation status data by extracting the functions used in creating the program and the created program using the cause analysis unit 341. The cause analysis unit 341 extracts the part of the program that was being created when the alarm occurred. The cause analysis unit 341 also extracts the functions used in creating that part of the program from the operation history data. The cause analysis unit 341 stores the stress data, which is alarm information, and the program creation status data in association with each other.
 ステップS85において、ストレスデータ分析システム1は、更新部36により一時的対応策を選択し、選択した一時的対応策をユーザインタフェース部41により提示する。判断者によって対応策の採用が決定されると、ステップS86において、更新部36は、決定された一時的対応策をエンジニアリングツールに反映させる。ステップS85およびステップS86の詳細は、図8に示すステップS45およびステップS46の場合と同様である。 In step S85, the stress data analysis system 1 selects a temporary countermeasure using the update unit 36, and presents the selected temporary countermeasure using the user interface unit 41. When the decision to adopt the countermeasure is made by the judge, in step S86, the update unit 36 reflects the determined temporary countermeasure in the engineering tool. Details of steps S85 and S86 are the same as those of steps S45 and S46 shown in FIG. 8.
 一時的対応策が反映されたエンジニアリングツールが使用される状況にて、ステップS87において、ストレスデータ分析システム1は、アラームが解除されたか否かをストレスデータ取得部22により判断する。アラームは解除されていないと判断した場合(ステップS87,No)、ストレスデータ分析システム1は、ステップS82へ手順を戻し、原因分析部341においてストレスデータとプログラム作成状況データとを取得する。原因分析部341は、ストレスデータとプログラム作成状況データとを互いに関連付けて記憶する。一方、アラームは解除されたと判断した場合(ステップS87,Yes)、ストレスデータ分析システム1は、図12に示す手順による動作を終了する。 In a situation where an engineering tool reflecting temporary countermeasures is being used, in step S87, the stress data analysis system 1 determines whether the alarm has been released using the stress data acquisition unit 22. If it is determined that the alarm has not been released (step S87, No), the stress data analysis system 1 returns to step S82, and acquires stress data and program creation status data in the cause analysis unit 341. The cause analysis unit 341 stores the stress data and the program creation status data in association with each other. On the other hand, if it is determined that the alarm has been released (step S87, Yes), the stress data analysis system 1 ends the operation according to the procedure shown in FIG. 12.
 サーバ装置3は、原因分析部341におけるストレスデータとプログラム作成状況データとの分析を開始する。図13に示すステップS91において、原因分析部341は、アラーム情報に基づいてストレスの原因を探索する。 The server device 3 starts analyzing the stress data and the program creation status data in the cause analysis unit 341. In step S91 shown in FIG. 13, the cause analysis unit 341 searches for the cause of stress based on the alarm information.
 ステップS92において、原因分析部341は、プログラム作成状況データのうちアラームに関連する部分を抽出し、抽出された部分に基づいてストレスの原因を探索する。原因分析部341は、アラームの要因となった事象が発生した時点からストレスが生じたものとみなすこととして、アラームに関連する部分を抽出する。アラームの要因となった事象が発生した時点とは、例えば、操作が停止された時点である。 In step S92, the cause analysis unit 341 extracts the portion of the program creation status data that is related to the alarm, and searches for the cause of stress based on the extracted portion. The cause analysis unit 341 extracts the portion related to the alarm, assuming that stress arose from the point in time when the event that caused the alarm occurred. The point in time when the event that caused the alarm occurred is, for example, the point in time when the operation was stopped.
 ステップS93において、対応策作成部342は、ステップS91およびステップS92において探索されたストレスの原因について、ストレスの原因に対する対応策を作成する。 In step S93, the countermeasure creation unit 342 creates countermeasures for the causes of stress discovered in steps S91 and S92.
 ステップS94において、対応策分類部343は、ステップS93において作成された対応策は本質的対応策であるか否かを判断する。作成された対応策が本質的対応策である場合(ステップS94,Yes)、対応策分類部343は、作成された対応策の情報とともに本質的対応策であることを示すカテゴリー情報を端末装置4へ送信する。判断者によって対応策の採用が決定されると、ステップS95において、対応策分類部343は、ステップS93において作成された対応策を本質的対応策として登録する。 In step S94, the countermeasure classification unit 343 determines whether the countermeasure created in step S93 is an essential countermeasure. If the created countermeasure is an essential countermeasure (step S94, Yes), the countermeasure classification unit 343 transmits category information indicating that the countermeasure is an essential countermeasure to the terminal device 4 along with information about the created countermeasure. When the decision is made by the judge to adopt the countermeasure, in step S95, the countermeasure classification unit 343 registers the countermeasure created in step S93 as an essential countermeasure.
 一方、作成された対応策が本質的対応策ではない場合(ステップS94,No)、対応策分類部343は、作成された対応策が一時的対応策であるものと判断する。対応策分類部343は、作成された対応策の情報とともに一時的対応策であることを示すカテゴリー情報を端末装置4へ送信する。判断者によって対応策の採用が決定されると、ステップS96において、対応策分類部343は、ステップS93において作成された対応策を一時的対応策として登録する。以上により、サーバ装置3は、図13に示す手順による動作を終了する。 On the other hand, if the created countermeasure is not an essential countermeasure (step S94, No), the countermeasure classification unit 343 determines that the created countermeasure is a temporary countermeasure. The countermeasure classification unit 343 transmits category information indicating that the countermeasure is a temporary countermeasure to the terminal device 4 along with information about the created countermeasure. When the decision is made by the judge to adopt the countermeasure, in step S96, the countermeasure classification unit 343 registers the countermeasure created in step S93 as a temporary countermeasure. With the above, the server device 3 ends the operation according to the procedure shown in FIG. 13.
 なお、対応策分類部343によって一時的対応策に分類された対応策について、判断者により本質的対応策として採用することが決定された場合、対応策分類部343は、ステップS93において作成された対応策を本質的対応策として登録する。また、サーバ装置3は、図5に示すように、一時的対応策として登録された対応策を実行する場合におけるストレスの原因を探索し、当該対応策の登録を本質的対応策としての登録に修正しても良い。 If the judge decides to adopt a countermeasure classified as a temporary countermeasure by the countermeasure classification unit 343 as an essential countermeasure, the countermeasure classification unit 343 registers the countermeasure created in step S93 as an essential countermeasure. As shown in FIG. 5, the server device 3 may also search for the cause of stress when executing a countermeasure registered as a temporary countermeasure, and revise the registration of the countermeasure to a registration as an essential countermeasure.
 ストレスデータ分析システム1は、ストレスデータとプログラム作成状況データとに基づいて、エンジニアリングツールの使用におけるストレスの原因を特定する。ストレスデータ分析システム1は、エンジニアリングツールのうちストレスの原因である部分を特定することができる。エンジニアリングツールのうちストレスの原因である部分とは、例えば、エンジニアリングツールの機能のうちユーザにストレスを生じさせる要因となっている機能である。 The stress data analysis system 1 identifies the cause of stress in the use of an engineering tool based on stress data and program creation status data. The stress data analysis system 1 can identify the part of the engineering tool that is the cause of stress. The part of the engineering tool that is the cause of stress is, for example, one of the functions of the engineering tool that is causing stress to the user.
 ストレスデータ分析システム1は、特定された原因に対し取り得る対応策を作成し、採用が決定された対応策をエンジニアリングツールに反映させる。また、ストレスデータ分析システム1は、作成された対応策を本質的対応策と一時的対応策とに分類して管理する。ストレスデータ分析システム1は、本質的対応策に分類された対応策の適用により、ストレスの根本的な回避を図ることができる。ストレスデータ分析システム1は、一時的対応策の適用によって、ストレスの低減を図ることができ、ストレスの蓄積を防ぐことができる。 The stress data analysis system 1 creates possible countermeasures for the identified causes, and reflects the countermeasures that have been decided upon for adoption in the engineering tool. The stress data analysis system 1 also classifies and manages the created countermeasures into essential countermeasures and temporary countermeasures. By applying countermeasures classified as essential countermeasures, the stress data analysis system 1 can fundamentally avoid stress. By applying temporary countermeasures, the stress data analysis system 1 can reduce stress and prevent stress from accumulating.
 ストレスデータ分析システム1は、対応策の適用によってエンジニアリングツールを随時改善させることで、エンジニアリングツールの使用における満足度を向上させることができる。ストレスデータ分析システム1は、一時的対応策のカテゴリーがあることによって、ユーザに固有の特性に応じた対応策を作成することができる。ストレスデータ分析システム1は、ユーザにとって十分な対応策については一時的対応策から本質的対応策へカテゴリーを変更することによって、ユーザの特性に対応してストレスの根本的な回避を図ることができる。 The stress data analysis system 1 can improve satisfaction in using the engineering tool by continually improving the engineering tool through the application of countermeasures. The stress data analysis system 1 can create countermeasures that correspond to the unique characteristics of the user by providing a category of temporary countermeasures. For countermeasures that are sufficient for the user, the stress data analysis system 1 can change the category from temporary countermeasures to essential countermeasures, thereby enabling the fundamental avoidance of stress in accordance with the user's characteristics.
 なお、実施の形態1において、ストレスデータ分析システム1は、ストレスデータを取得した場合に、あらかじめ設定されたルールに基づいて、ストレスデータに応じたポイントをユーザ等に付与することとしても良い。ルールとは、例えば、ストレスデータの取得回数に応じた数のポイントを付与すること、または、ストレスに基づく不具合の重要度に応じた数のポイントを付与すること、などである。 In the first embodiment, when stress data is acquired, the stress data analysis system 1 may award points to the user, etc., according to the stress data, based on a preset rule. The rule may be, for example, awarding a number of points according to the number of times stress data is acquired, or awarding a number of points according to the importance of a problem caused by stress.
 実施の形態1では、ストレスデータ分析システム1は、ストレスの分析と対応策の作成との対象をエンジニアリングツールとしたが、対象はエンジニアリングツール以外のプログラミングソフトウェアであっても良い。プログラミングソフトウェアを使用して作成されるプログラムは、ラダー言語を使用して記述されるラダープログラムに限られず、ラダー言語以外のプログラミング言語で記述されるプログラムであっても良い。 In the first embodiment, the stress data analysis system 1 analyzes stress and creates countermeasures using engineering tools, but the target may be programming software other than engineering tools. Programs created using programming software are not limited to ladder programs written using ladder language, and may be programs written in programming languages other than ladder language.
 次に、サーバ装置3のハードウェア構成について説明する。図14は、実施の形態1にかかるストレスデータ分析システム1を構成するサーバ装置3のハードウェア構成例を示す図である。サーバ装置3は、処理回路51と通信装置52とを備えるコンピュータシステムにより実現される。処理回路51は、プロセッサ53およびメモリ54を備える。処理回路51は、プロセッサ53がソフトウェアを実行する回路である。 Next, the hardware configuration of the server device 3 will be described. FIG. 14 is a diagram showing an example of the hardware configuration of the server device 3 constituting the stress data analysis system 1 according to the first embodiment. The server device 3 is realized by a computer system including a processing circuit 51 and a communication device 52. The processing circuit 51 includes a processor 53 and a memory 54. The processing circuit 51 is a circuit on which the processor 53 executes software.
 サーバ装置3のエンジニアリングツール部31と、ストレスデータ収集部32と、操作履歴収集部33と、データ分析部34と、更新部36との各部は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアまたはファームウェアはプログラムとして記述され、メモリ54に格納される。処理回路51では、メモリ54に記憶されたプログラムをプロセッサ53が読み出して実行することにより、サーバ装置3の各部の機能を実現する。すなわち、処理回路51は、サーバ装置3の処理が結果的に実行されることになるプログラムを格納するためのメモリ54を備える。メモリ54に記憶されたプログラムは、ストレスデータ分析システム1の手順および方法をコンピュータに実行させるストレスデータ分析プログラムである。 Each of the engineering tool unit 31, stress data collection unit 32, operation history collection unit 33, data analysis unit 34, and update unit 36 of the server device 3 is realized by software, firmware, or a combination of software and firmware. The software or firmware is written as a program and stored in memory 54. In the processing circuit 51, the processor 53 reads and executes the program stored in memory 54, thereby realizing the functions of each of the parts of the server device 3. In other words, the processing circuit 51 has a memory 54 for storing a program that will result in the processing of the server device 3 being executed. The program stored in memory 54 is a stress data analysis program that causes a computer to execute the procedures and methods of the stress data analysis system 1.
 プロセッサ53は、CPU(Central Processing Unit)、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサ、またはDSP(Digital Signal Processor)である。メモリ54は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、EEPROM(登録商標)(Electrically Erasable Programmable Read Only Memory)といった、不揮発性または揮発性の半導体メモリである。対応策DB35は、メモリ54に格納される。 The processor 53 is a CPU (Central Processing Unit), a processing unit, an arithmetic unit, a microprocessor, a microcomputer, a processor, or a DSP (Digital Signal Processor). The memory 54 is, for example, a non-volatile or volatile semiconductor memory such as a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory), or an EEPROM (registered trademark) (Electrically Erasable Programmable Read Only Memory). The countermeasure DB 35 is stored in the memory 54.
 通信装置52は、サーバ装置3の外部の装置との通信を行う。サーバ装置3によるエンジニアリング装置2との通信、および、サーバ装置3による端末装置4との通信は、通信装置52の使用により実現される。 The communication device 52 communicates with devices external to the server device 3. The communication between the server device 3 and the engineering device 2, and the communication between the server device 3 and the terminal device 4 are realized by using the communication device 52.
 なお、メモリ54に格納されるプログラムは、例えば、CD(Compact Disc)-ROM、DVD(Digital Versatile Disc)-ROMなどの記憶媒体に書き込まれた状態で提供される形態でも良く、通信回線を介して提供される形態でも良い。 The programs stored in memory 54 may be provided in a form written on a storage medium such as a CD (Compact Disc)-ROM or a DVD (Digital Versatile Disc)-ROM, or may be provided via a communication line.
 実施の形態1においてサーバ装置3に備えられるものとした各部は、互いに異なる位置に配置された2以上の装置で実現されても良い。2以上の装置の各々は、例えば、図14に示すハードウェア構成により実現される。2以上の装置は、互いに通信可能に接続される。2以上の装置の各々はサーバ装置であっても良い。2以上のサーバ装置には、処理サーバとデータサーバとが含まれても良い。 The components provided in the server device 3 in the first embodiment may be realized by two or more devices arranged in different locations. Each of the two or more devices is realized, for example, by the hardware configuration shown in FIG. 14. The two or more devices are connected so as to be able to communicate with each other. Each of the two or more devices may be a server device. The two or more server devices may include a processing server and a data server.
 次に、エンジニアリング装置2のハードウェア構成について説明する。図15は、実施の形態1にかかるストレスデータ分析システム1を構成するエンジニアリング装置2のハードウェア構成例を示す図である。エンジニアリング装置2は、処理回路61、通信装置62、入力装置65、および表示装置66を備えるコンピュータシステムにより実現される。 Next, the hardware configuration of the engineering device 2 will be described. FIG. 15 is a diagram showing an example of the hardware configuration of the engineering device 2 constituting the stress data analysis system 1 according to the first embodiment. The engineering device 2 is realized by a computer system including a processing circuit 61, a communication device 62, an input device 65, and a display device 66.
 処理回路61は、プロセッサ63およびメモリ64を備える。処理回路61は、プロセッサ63がソフトウェアを実行する回路である。プロセッサ63およびメモリ64は、図14に示すプロセッサ53およびメモリ54と同様であるものとする。エンジニアリング装置2のストレスデータ取得部22および操作履歴取得部23の機能は、メモリ64に記憶されたプログラムをプロセッサ63が読み出して実行することにより実現される。 The processing circuit 61 includes a processor 63 and a memory 64. The processing circuit 61 is a circuit in which the processor 63 executes software. The processor 63 and the memory 64 are assumed to be similar to the processor 53 and the memory 54 shown in FIG. 14. The functions of the stress data acquisition unit 22 and the operation history acquisition unit 23 of the engineering device 2 are realized by the processor 63 reading and executing a program stored in the memory 64.
 入力装置65は、エンジニアリング装置2へ情報を入力するための装置である。ユーザは、入力装置65を操作する。入力装置65は、文字入力手段とポインティングデバイスとで構成される。入力装置65は、キーボード、マウス、キーパッド、またはタッチパネルなどを含む。表示装置66は、各種情報を表示する。表示装置66は、例えば、LCD(Liquid Crystal Display)または有機EL(Electro-Luminescence)ディスプレイである。ユーザインタフェース部21は、入力装置65および表示装置66により実現される。通信装置62は、エンジニアリング装置2の外部の装置との通信を行う。エンジニアリング装置2によるサーバ装置3との通信は、通信装置62の使用により実現される。 The input device 65 is a device for inputting information to the engineering apparatus 2. A user operates the input device 65. The input device 65 is composed of a character input means and a pointing device. The input device 65 includes a keyboard, a mouse, a keypad, or a touch panel. The display device 66 displays various information. The display device 66 is, for example, an LCD (Liquid Crystal Display) or an organic EL (Electro-Luminescence) display. The user interface unit 21 is realized by the input device 65 and the display device 66. The communication device 62 communicates with devices external to the engineering apparatus 2. Communication between the engineering apparatus 2 and the server apparatus 3 is realized by using the communication device 62.
 次に、端末装置4のハードウェア構成について説明する。端末装置4は、図15に示すハードウェア構成と同様のハードウェア構成により実現される。ここでは、図15を参照して、端末装置4のハードウェア構成を説明する。ユーザインタフェース部41は、入力装置65および表示装置66により実現される。端末装置4は、通信装置62により、端末装置4の外部の装置との通信を行う。端末装置4によるサーバ装置3との通信は、通信装置62の使用により実現される。 Next, the hardware configuration of the terminal device 4 will be described. The terminal device 4 is realized by a hardware configuration similar to that shown in FIG. 15. Here, the hardware configuration of the terminal device 4 will be described with reference to FIG. 15. The user interface unit 41 is realized by an input device 65 and a display device 66. The terminal device 4 communicates with devices external to the terminal device 4 by means of a communication device 62. Communication between the terminal device 4 and the server device 3 is realized by using the communication device 62.
 実施の形態1によると、ストレスデータ分析システム1は、ストレスデータを取得して、ストレスデータを分析することによってストレスの原因を特定する。ストレスデータ分析システム1は、原因に対し取り得る対応策を作成して、採用が決定された対応策をエンジニアリングツールに反映させることによりエンジニアリングツールを更新する。ストレスデータ分析システム1は、エンジニアリングツールにあらかじめ準備された機能の操作についての情報のみならず、準備された機能を使用する流れの中での情報の収集が可能であることによって、エンジニアリングツールの使用を継続するユーザのストレスの低減または回避を図ることができる。ユーザのストレスを低減または回避させることによって、エンジニアリングツールの使用における満足度を向上させることが可能となる。以上により、ストレスデータ分析システム1は、エンジニアリングツールの使用における満足度を向上させることができるという効果を奏する。 According to the first embodiment, the stress data analysis system 1 acquires stress data and analyzes the stress data to identify the cause of stress. The stress data analysis system 1 creates possible countermeasures for the cause, and updates the engineering tool by reflecting the countermeasures that have been decided upon for adoption. The stress data analysis system 1 is capable of collecting not only information about the operation of functions prepared in advance in the engineering tool, but also information in the flow of using the prepared functions, thereby making it possible to reduce or avoid stress in a user who continues to use the engineering tool. Reducing or avoiding user stress makes it possible to improve satisfaction in using the engineering tool. As a result, the stress data analysis system 1 has the effect of improving satisfaction in using the engineering tool.
 以上の実施の形態に示した構成は、本開示の内容の一例を示すものである。実施の形態の構成は、別の公知の技術と組み合わせることが可能である。本開示の要旨を逸脱しない範囲で、実施の形態の構成の一部を省略または変更することが可能である。 The configurations shown in the above embodiments are examples of the contents of this disclosure. The configurations of the embodiments can be combined with other known technologies. Parts of the configurations of the embodiments can be omitted or modified without departing from the gist of this disclosure.
 1 ストレスデータ分析システム、2 エンジニアリング装置、2a カメラ、3 サーバ装置、4 端末装置、21,41 ユーザインタフェース部、22 ストレスデータ取得部、23 操作履歴取得部、31 エンジニアリングツール部、32 ストレスデータ収集部、33 操作履歴収集部、34 データ分析部、35 対応策DB、36 更新部、51,61 処理回路、52,62 通信装置、53,63 プロセッサ、54,64 メモリ、65 入力装置、66 表示装置、341 原因分析部、342 対応策作成部、343 対応策分類部。 1 Stress data analysis system, 2 Engineering device, 2a Camera, 3 Server device, 4 Terminal device, 21, 41 User interface section, 22 Stress data acquisition section, 23 Operation history acquisition section, 31 Engineering tool section, 32 Stress data collection section, 33 Operation history collection section, 34 Data analysis section, 35 Countermeasure DB, 36 Update section, 51, 61 Processing circuit, 52, 62 Communication device, 53, 63 Processor, 54, 64 Memory, 65 Input device, 66 Display device, 341 Cause analysis section, 342 Countermeasure creation section, 343 Countermeasure classification section.

Claims (11)

  1.  エンジニアリングツールを使用するユーザに生じるストレスの状況についてのストレスデータを取得するストレスデータ取得部と、
     前記エンジニアリングツールのうち前記エンジニアリングツールの使用におけるストレスの原因である部分を、前記ストレスデータを分析することによって特定する原因分析部と、
     前記原因に対し取り得る対応策を作成する対応策作成部と、
     採用が決定された前記対応策を前記エンジニアリングツールに反映させることにより前記エンジニアリングツールを更新する更新部と、
     を備えることを特徴とするストレスデータ分析システム。
    a stress data acquisition unit that acquires stress data regarding a stress state caused to a user who uses the engineering tool;
    a cause analysis unit that identifies a part of the engineering tool that is a cause of stress in use of the engineering tool by analyzing the stress data;
    A countermeasure creation unit that creates possible countermeasures for the cause;
    an update unit that updates the engineering tool by reflecting the countermeasure that has been decided to be adopted in the engineering tool;
    A stress data analysis system comprising:
  2.  前記原因分析部は、前記エンジニアリングツールの使用により作成されるプログラムにおける関数またはファンクションブロックを特定することにより前記原因を特定することを特徴とする請求項1に記載のストレスデータ分析システム。 The stress data analysis system according to claim 1, characterized in that the cause analysis unit identifies the cause by identifying a function or a function block in a program created using the engineering tool.
  3.  前記対応策作成部によって作成された前記対応策を提示し、提示された前記対応策を採用することの可否を示す情報を受け付ける提示部を備え、
     前記更新部は、前記提示部において採用が決定された前記対応策を前記エンジニアリングツールに反映させることを特徴とする請求項1に記載のストレスデータ分析システム。
    a presentation unit that presents the countermeasure created by the countermeasure creation unit and receives information indicating whether or not the presented countermeasure can be adopted;
    2. The stress data analysis system according to claim 1, wherein the update unit reflects the countermeasure decided to be adopted by the presentation unit in the engineering tool.
  4.  前記対応策作成部によって作成された前記対応策を、実行を要する本質的対応策と、前記本質的対応策以外の前記対応策である一時的対応策とに分類して管理する対応策分類部を備え、
     前記提示部は、前記対応策作成部によって作成された前記対応策の分類を提示することを特徴とする請求項3に記載のストレスデータ分析システム。
    a countermeasure classification unit that classifies and manages the countermeasures created by the countermeasure creation unit into essential countermeasures that need to be executed and temporary countermeasures that are the countermeasures other than the essential countermeasures;
    4. The stress data analysis system according to claim 3, wherein the presentation unit presents a classification of the countermeasures created by the countermeasure creation unit.
  5.  前記対応策分類部は、前記一時的対応策に分類された前記対応策を実行した際の成果に基づいて、前記対応策の分類を前記一時的対応策から前記本質的対応策へ変更することを特徴とする請求項4に記載のストレスデータ分析システム。 The stress data analysis system according to claim 4, characterized in that the countermeasure classification unit changes the classification of the countermeasure from the temporary countermeasure to the essential countermeasure based on the outcome of implementing the countermeasure classified as the temporary countermeasure.
  6.  前記ストレスデータは、前記エンジニアリングツールについての問い合わせを受け付けるコミュニケーションツールへ前記ユーザによって入力された情報を含むことを特徴とする請求項1から5のいずれか1つに記載のストレスデータ分析システム。 The stress data analysis system according to any one of claims 1 to 5, characterized in that the stress data includes information input by the user to a communication tool that accepts inquiries about the engineering tool.
  7.  前記ストレスデータは、前記ユーザの身体状態を観察することによって取得される情報を含むことを特徴とする請求項1から5のいずれか1つに記載のストレスデータ分析システム。 The stress data analysis system according to any one of claims 1 to 5, characterized in that the stress data includes information obtained by observing the physical condition of the user.
  8.  前記ストレスデータは、前記エンジニアリングツールの使用においてエラーが発生したときにおける操作の内容を示す情報を含むことを特徴とする請求項1から5のいずれか1つに記載のストレスデータ分析システム。 The stress data analysis system according to any one of claims 1 to 5, characterized in that the stress data includes information indicating the operation content when an error occurs during use of the engineering tool.
  9.  前記ストレスデータは、前記エンジニアリングツールの使用における前記ユーザによる操作に特定の事象が生じたときの操作の内容を示す情報を含むことを特徴とする請求項1から5のいずれか1つに記載のストレスデータ分析システム。 The stress data analysis system according to any one of claims 1 to 5, characterized in that the stress data includes information indicating the content of an operation performed by the user when a specific event occurs in the operation performed by the user while using the engineering tool.
  10.  エンジニアリングツールを使用するユーザに生じるストレスの状況についてのストレスデータを取得するステップと、
     前記エンジニアリングツールのうち前記エンジニアリングツールの使用におけるストレスの原因である部分を、前記ストレスデータを分析することによって特定するステップと、
     分析された前記原因に対し取り得る対応策を作成するステップと、
     採用が決定された前記対応策を前記エンジニアリングツールに反映させることにより前記エンジニアリングツールを更新するステップと、
     を含むことを特徴とするストレスデータ分析方法。
    acquiring stress data regarding a stress situation caused to a user who uses the engineering tool;
    identifying portions of the engineering tool that are causing stress in use of the engineering tool by analyzing the stress data;
    generating possible countermeasures for the analyzed causes;
    updating the engineering tool by reflecting the countermeasure that has been decided to be adopted in the engineering tool;
    A stress data analysis method comprising:
  11.  エンジニアリングツールを使用するユーザに生じるストレスの状況についてのストレスデータを取得するステップと、
     前記エンジニアリングツールのうち前記エンジニアリングツールの使用におけるストレスの原因である部分を、前記ストレスデータを分析することによって特定するステップと、
     特定された前記原因に対し取り得る対応策を作成するステップと、
     採用が決定された前記対応策を前記エンジニアリングツールに反映させることにより前記エンジニアリングツールを更新するステップと、
     をコンピュータに実行させることを特徴とするストレスデータ分析プログラム。
    acquiring stress data regarding a stress situation caused to a user who uses the engineering tool;
    identifying portions of the engineering tool that are causing stress in use of the engineering tool by analyzing the stress data;
    generating possible countermeasures for the identified causes;
    updating the engineering tool by reflecting the countermeasure that has been decided to be adopted in the engineering tool;
    A stress data analysis program that causes a computer to execute the above steps.
PCT/JP2022/041049 2022-11-02 2022-11-02 Stress data analysis system, stress data analysis method, and stress data analysis program WO2024095410A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2022/041049 WO2024095410A1 (en) 2022-11-02 2022-11-02 Stress data analysis system, stress data analysis method, and stress data analysis program
JP2023519772A JP7333885B1 (en) 2022-11-02 2022-11-02 STRESS DATA ANALYSIS SYSTEM, STRESS DATA ANALYSIS METHOD AND STRESS DATA ANALYSIS PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2022/041049 WO2024095410A1 (en) 2022-11-02 2022-11-02 Stress data analysis system, stress data analysis method, and stress data analysis program

Publications (1)

Publication Number Publication Date
WO2024095410A1 true WO2024095410A1 (en) 2024-05-10

Family

ID=87654370

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/041049 WO2024095410A1 (en) 2022-11-02 2022-11-02 Stress data analysis system, stress data analysis method, and stress data analysis program

Country Status (2)

Country Link
JP (1) JP7333885B1 (en)
WO (1) WO2024095410A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319513A (en) * 1994-05-20 1995-12-08 Fuji Electric Co Ltd Programming device for programmable controller and sequence program preparing method for the same
JP2004102553A (en) * 2002-09-06 2004-04-02 Nec Corp Electronic document display method, its program and its device
JP2010034998A (en) * 2008-07-30 2010-02-12 Sony Corp Information processor, system and method for information processing
JP2012083883A (en) * 2010-10-08 2012-04-26 Mitsubishi Electric Corp Screen data preparation device
JP2015018422A (en) * 2013-07-11 2015-01-29 株式会社Ihi Control system and program used for engineering thereof

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019144660A (en) 2018-02-16 2019-08-29 富士通株式会社 Information transmission program, information transmission method, and information transmission device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319513A (en) * 1994-05-20 1995-12-08 Fuji Electric Co Ltd Programming device for programmable controller and sequence program preparing method for the same
JP2004102553A (en) * 2002-09-06 2004-04-02 Nec Corp Electronic document display method, its program and its device
JP2010034998A (en) * 2008-07-30 2010-02-12 Sony Corp Information processor, system and method for information processing
JP2012083883A (en) * 2010-10-08 2012-04-26 Mitsubishi Electric Corp Screen data preparation device
JP2015018422A (en) * 2013-07-11 2015-01-29 株式会社Ihi Control system and program used for engineering thereof

Also Published As

Publication number Publication date
JP7333885B1 (en) 2023-08-25

Similar Documents

Publication Publication Date Title
US20200412599A1 (en) Learning based incident or defect resolution, and test generation
US10901727B2 (en) Monitoring code sensitivity to cause software build breaks during software project development
US10747651B1 (en) System for optimizing system resources and runtime during a testing procedure
US8396815B2 (en) Adaptive business process automation
US11954461B2 (en) Autonomously delivering software features
US8156475B2 (en) Device and method for testing embedded software using emulator
US20170031800A1 (en) Determining code complexity scores
US7451391B1 (en) Method for web page rules compliance testing
JP2006202304A (en) System for automatic invocation of computational resources
US10635574B1 (en) Screenshot testing of applications on windows desktop environments
US8438422B2 (en) Failure response support apparatus and failure response support method
US20220294897A1 (en) Systems and methods to manage models for call data
US10241808B2 (en) Determining test application effectiveness
WO2021061185A1 (en) Test automation of application
WO2024095410A1 (en) Stress data analysis system, stress data analysis method, and stress data analysis program
CN112911283A (en) Smart television testing method and device
JP6451417B2 (en) Debug support device, debug support system, debug support method, and debug support program
US20220147437A1 (en) Automated testing of mobile devices using visual analysis
US9691036B2 (en) Decision making in an elastic interface environment
CN104823406A (en) Identifying reports to address network issues
JP7297609B2 (en) Incident diagnosis response support device
US10691515B2 (en) Testing in serverless system with autostop of endless loop
KR102155866B1 (en) Method and apparatus for monitoring worker based on cause of return
Oishwee et al. Investigating Software Developer'Challenges for Android Permissions in Stack Overflow
CN117149266A (en) Task processing method and device, storage medium and electronic equipment