Information processing device, information processing method, and program

The information processing device and method address inefficient coding in cloud computing by detecting user search opportunities and providing relevant information, reducing man-hours and ensuring up-to-date support for cloud system development.

JP7764127B2Active Publication Date: 2025-11-05CANON KK
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2020209351
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2020-12-17
Publication Date
2025-11-05
Estimated Expiration
2040-12-17

AI Technical Summary

Technical Problem

Existing cloud computing system development methods require extensive research on proprietary APIs and libraries, leading to inefficient program coding and increased man-hours due to frequent vendor updates, despite Patent Document 1 reducing the number of investigations.

Method used

An information processing device and method that acquires user input status to detect search opportunities and determines necessary information based on search preferences, outputting relevant information to assist developers in coding, with an update mechanism for the information database to include the latest cloud vendor updates.

Benefits of technology

Reduces the number of steps required for program coding investigations and ensures timely access to the latest information needed for cloud computing system development.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007764127000001
    Figure 0007764127000001
  • Figure 0007764127000002
    Figure 0007764127000002
  • Figure 0007764127000003
    Figure 0007764127000003
Patent Text Reader

Abstract

To provide an information processing apparatus, an information processing method, and a program that reduce the man-hours spent for every inspection related to coding of a program.SOLUTION: An information processing apparatus (development support device) for performing coding of a program has: acquisition means 301 that acquires the state of input performed by a user who performs the coding; calculation means 303 that, based on the acquired input state, calculates search information for searching for information on the coding; and output means 306 that determines necessary information from the search information 305, and outputs the determined necessary information.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to an information processing device, an information processing method, and a program for coding a program. [Background technology]

[0002] In recent years, cloud computing systems, which allow users to access information processing environments owned by service providers via a network rather than owning their own information processing devices to run applications, have become increasingly common. Cloud computing systems offer a variety of services, including online shopping systems for commerce and video streaming. Cloud computing systems, which allow for easy allocation and release of computing resources and reduce the burden of server-side management, will continue to be the standard for system development. System development using cloud computing systems involves linking systems with services provided by each cloud vendor. To achieve this, it is common to use the proprietary libraries and application programming interfaces (APIs) provided by each cloud vendor. Therefore, to build systems that integrate with each cloud service, programs must be written in accordance with the proprietary APIs, libraries, and standards defined by each cloud vendor. Furthermore, because cloud vendors implement more than 1,000 version upgrades per year, selecting and using the optimal services at the time of development is crucial for system development using cloud computing systems. This requires system developers to research the mechanisms and usage (libraries and APIs) of the latest services and new ways to use existing services. This research requires a lot of time, which reduces development efficiency.

[0003] To address this issue, Patent Document 1 discloses a method for detecting code that matches a predetermined code pattern from an implemented program and replacing it so that the corresponding processing is executed on a cloud computing system. This allows developers to execute processing on a cloud computing system without having to write programs or configuration information that are applied to the cloud computing system. This allows developers to focus on defining the essential information processing procedures, improving development efficiency. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] Japanese Patent Application Publication No. 2018-190261 Summary of the Invention [Problem to be solved by the invention]

[0005] However, although Patent Document 1 reduces the number of investigations related to cloud computing systems, it does not reduce the man-hours spent on each investigation. The present invention has been made in consideration of the above-mentioned problems, and aims to reduce the man-hours spent on each investigation related to program coding. [Means for solving the problem]

[0006] The present invention provides an information processing device for coding a program, the coder comprising: and acquiring means for acquiring an input status of a user who performs input; and For each of a plurality of required information candidates consisting of a combination of keywords, In On the output screen of the information processing device From the input cursor position Up to the above keywordand an output means for determining necessary information from the plurality of necessary information candidates based on the search preference, and outputting the determined necessary information. [Effects of the Invention]

[0007] According to the present invention, it is possible to reduce the number of steps required for each investigation related to the coding of a program. [Brief explanation of the drawings]

[0008] [Figure 1] FIG. 1 is a block diagram showing the hardware configuration of a development support device 100. [Figure 2] FIG. 2 is an image diagram of a development support tool that is an output result of the development support device 100 according to the first embodiment. [Figure 3] 1 is a block diagram showing the functional configuration of a development support device 100 according to a first embodiment. [Figure 4] FIG. 2 is a flowchart showing the flow of processing according to the first embodiment. [Figure 5] FIG. 3 is a block diagram showing the functional configuration of a search opportunity detection unit 302 according to the first embodiment. [Figure 6] FIG. 10 is a flowchart showing the processing flow in step S402 according to the first embodiment. [Figure 7] FIG. 5 is an image diagram showing the state of the development support tool at the moment when an input stop detection unit 502 according to the first embodiment detects that a user has stopped inputting. [Figure 8] FIG. 5 is an image diagram showing the state of the development support tool at the moment when an error occurrence detection unit 503 according to the first embodiment detects the occurrence of an error. [Figure 9] FIG. 10 is an image diagram showing the state of the development support tool at the moment when the range selection detection unit 505 according to the first embodiment detects a range selection. [Figure 10] FIG. 10 is a flowchart showing the flow of processing in a search preference calculation unit 303 according to the first embodiment. [Figure 11] FIG. 3 is an image diagram showing an example of a necessary information database 304 according to the first embodiment. [Figure 12] FIG. 10 is an image diagram showing a necessary information list displayed on a development support tool by a necessary information output unit 306 according to the first embodiment. [Figure 13] FIG. 10 is a block diagram showing the functional configuration of a development support device 100 according to a second embodiment. [Figure 14] FIG. 10 is a flowchart showing the flow of processing according to the second embodiment. [Figure 15] FIG. 13 is an image diagram showing an example of a necessary information database 1304 according to the second embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0009] The present invention will be described in detail below based on preferred embodiments thereof with reference to the accompanying drawings. Note that the configurations shown in the following embodiments are merely examples, and the present invention is not limited to the illustrated configurations.

[0010] (Embodiment 1) Using Figures 1 to 12, a series of processes from obtaining the input status to displaying the information the user is looking for will be explained.

[0011] 1 is a block diagram showing the hardware configuration of a development support device according to this embodiment. The components of the device will be described below with reference to FIG.

[0012] The development support device 100 is an information processing device with a configuration similar to that of a general computer, including a CPU 101, RAM 102, ROM 103, storage device 104, communication module 105, power supply 106, input device 107, and output device 108. The CPU 101 is a processor that performs arithmetic processing and may be either a single CPU or multiple CPUs. The CPU 101 is capable of processing tasks in threads. The CPU 101 uses RAM 102 as work memory to execute programs stored in ROM 103. The storage device 104 is a storage medium that stores programs executed by the CPU 101 and data to be processed. An HDD (hard disk drive) or an SSD (solid state drive) can be used. The communication module 105 is a communication interface that connects the development support device 100 to external computers such as cloud services. This interface allows the development support device 100 to input and output data stored in the RAM 102 and storage device 104. The communication module 105 preferably has two input / output ports: one for control and one for data transfer. The power supply 106 is a power supply module for the development support device 100, and may have multiple redundant power supplies or may be capable of storing power. The input device 107 is an input device for directly inputting commands to the development support device 100 using a keyboard, mouse, etc. The output device 108 is an output device for displaying information to the user using a monitor, etc.

[0013] 2 is an image diagram of a development support tool, which is the output result of the development support device displayed on a monitor or the like by output device 108 in this embodiment. The screen output by this embodiment includes a code description section 201 for writing the source code of the program, and a web browser section 202 used to collect information. It also includes a terminal section 203 for inputting program execution commands, etc., and an output section 204 for displaying output and errors during execution.

[0014] [Processing in the development support device 100] The processing performed by the development support device 100 of this embodiment will be described below with reference to the functional block diagram shown in FIG. 3 and the flowchart shown in FIG. 4. As shown in FIG. 3, the development support device 100 of this embodiment is composed of an input status acquisition unit 301, a search opportunity detection unit 302, a search preference calculation unit 303, a necessary information database 304, a necessary information determination unit 305, and a necessary information output unit 306. The development support device 100 realizes the functions of each of the above units by having the CPU 101 read and execute a control program stored in the ROM 103. The development support device 100 may also be configured to include dedicated processing circuits corresponding to each component. The flow of processing performed by each component will be described below.

[0015] In step S401, the input status acquisition unit 301 acquires an input status from the user. In this embodiment, the input status acquisition unit 301 constantly acquires input signals from the keyboard and mouse connected to the input device 107, the status of the web browser unit 202, the terminal unit 203, and the output unit 204, etc. Then, it outputs the acquired input status information for the entire screen to the search opportunity detection unit 302. Here, the input status information means continuous information such as the mouse click position, movement / drag trajectory, keyboard input, and the status of each screen.

[0016] In step S402, the search opportunity detection unit 302 determines and detects whether or not it is an opportunity for the user to search for information regarding coding or error handling, based on the input status information from the input status acquisition unit 301. Details of the processing by the search opportunity detection unit 302 will be described with reference to the functional block diagram shown in FIG. 5 and the flowchart shown in FIG. 6.

[0017] 5, the search opportunity detection unit 302 of this embodiment is composed of an input status acquisition unit 501, an input stop detection unit 502, an error occurrence detection unit 503, an error code database 504, a range selection detection unit 505, and a subsequent processing determination unit 506. The flow of processing performed by each component will be described below.

[0018] In step S601, the input status acquisition unit 501 acquires input status information from the input status acquisition unit 301. The operation information acquisition unit 501 outputs user operation information included in the acquired input status information to the input stop detection unit 502 and range selection detection unit 505, and similarly outputs status information of each screen included in the input status information to the error occurrence detection unit 503 and range selection detection unit 505.

[0019] In step S602, the input stop detection unit 502 detects that the user has stopped typing on the keyboard based on the user's operation information acquired. When the input stop detection unit 502 detects that the user has stopped typing for a certain period of time while writing code in the code description unit 201 of FIG. 2, it determines that the user is struggling with the correct way to write the code, thinking about it, and attempting to search for information, and recognizes this as a search opportunity. FIG. 7 shows the state of the development support tool at the moment the input stop detection unit 502 detects that the user has stopped typing. Here, the input stop detection unit 502 acquires the input status of the code description unit 701 and can determine that there is a code unit 702 that has already been entered, a code unit 703 that is being entered, and an input cursor 704. More specifically, in the code unit 703 that is being entered, the input stop detection unit 502 receives the characters "b," "u," "c," "k," "e," "t," ".", "c," "o," "p," and "y" from the operation information acquisition unit 501, in that order. If there is no input for a certain period of time (e.g., 3 seconds) or more after the input of "y," it is determined that the user is struggling with how to write code and is attempting to search for information, and a notification that an input stop has been detected is output to the subsequent process determination unit 506. Furthermore, if an input stop is not detected, such as when the user continues to input code, the input stop detection unit 502 outputs a notification that an input stop has not been detected to the subsequent process determination unit 506. If the input stop detection unit 502 detects that the user has stopped inputting, it transitions the process to step S605, thereby terminating the processing in the search opportunity detection unit 302. If an input stop is not detected, it transitions the process to step S603, thereby continuing the processing in the search opportunity detection unit 302. In this embodiment, an input stop is detected by detecting that there has been no keyboard input by the user for a certain period of time, but the detection means is not limited to this, and a means for detecting that the position of the input cursor 704 has not changed for a certain period of time may also be used.

[0020] In step S603, the error detection unit 503 detects that an error has occurred in the program executed by the user based on the status information of each screen acquired by the error detection unit 503. When an error occurs while the user is executing a program based on the code written in the code description unit 201 of FIG. 2, the error detection unit 503 determines that the user is attempting to search for information to investigate the cause of the error and detects it as a search opportunity. FIG. 8 shows the state of the development support tool at the moment the error detection unit 503 detects the occurrence of an error. The output result of the user executing a program based on the code written in the code description unit 801 is displayed in the output unit 802. Here, the error detection unit 503 extracts the content displayed in the output unit 802 from the acquired status information of each screen and determines whether an error has occurred based on the content. In this embodiment, an error code database 504 is used to determine whether an error has occurred from the displayed content. If an error code included in the error code database 504 is present in the displayed content, the error detection unit 503 determines that an error has occurred and outputs a notice of the error occurrence to the subsequent process determination unit 506. In the output unit 802 of FIG. 8 , for example, "Exception" and "Environment Value Is None" are included in the error code database 504. Since these error codes are present in the display content of the output unit 802, an error is detected. The error code database 504 also includes general words such as "Warning," "Critical," and "Error," as well as error codes specific to the library being used. If none of the error codes included in the error code database 504 are present in the display content of the output unit 802, the error occurrence detection unit 503 outputs to the subsequent processing determination unit 506 that no error was detected. If the error occurrence detection unit 503 detects an error, it transitions to step S605, thereby terminating the processing in the search opportunity detection unit 302. If no error is detected, it transitions to step S604, and the processing in the search opportunity detection unit 302 continues.In this embodiment, an error is detected based on the display content of the output unit 802, but the error occurrence means is not limited to this, and it is also possible to directly obtain the success or failure of the program execution from the CPU 101 that executes the program and detect the occurrence of an error based on this.

[0021] In step S604, the range selection detection unit 505 detects whether the user has selected a portion of code or a portion of the display content on the terminal unit 203 or output unit 204 based on the acquired user operation information and status information for each screen. When the user selects a portion of a document, such as code, using a pointing device such as a keyboard or mouse, the range selection detection unit 505 determines that the user is attempting to search for information about words included in the selected portion and detects this as a search opportunity. Figure 9 shows the state of the development support tool at the moment the range selection detection unit 505 detects a range selection. Figure 9(a) shows the case where a portion of code is selected, and Figure 9(b) shows the case where a portion of error output is selected. The range selection detection unit 505 first checks whether the acquired user operation information includes a range selection operation, such as keyboard input using the shift key and arrow keys or mouse dragging. If a range selection operation is included, the range selection detection unit 505 then compares the operation with the acquired status information for each screen. If the selected range includes part of a document, it is determined that the user has selected a range for information search, and the detection of range selection is output to the subsequent process determination unit 506. If the user has not performed an operation to select a range, or if the selected range does not include a document, the range selection detection unit 505 outputs the detection of range selection to the subsequent process determination unit 506. The range selection detection unit 505 proceeds to step S605 whether it has detected range selection or not.

[0022] In step S605, the subsequent process determination unit 506 determines the subsequent process based on the detection results obtained from the input stop detection unit 502, error occurrence detection unit 503, and range selection detection unit 505. If any one of the detection results obtained from the input stop detection unit 502, error occurrence detection unit 503, and range selection detection unit 505 detects a search opportunity, the subsequent process determination unit 506 determines the subsequent process to be the search preference calculation process of step S403. If none of the detection results obtained from the input stop detection unit 502, error occurrence detection unit 503, and range selection detection unit 505 detect a search opportunity, the subsequent process determination unit 506 determines the subsequent process to be the input status acquisition process of step S401. This concludes the processing of the search opportunity detection unit 302 in step S402, and the process proceeds to the processing step determined by the subsequent process determination unit 506.

[0023] Returning to the description of the development support device 100 .

[0024] In step S403, the search willingness calculation unit 303 receives the results of the search opportunity detection unit 302 and estimates what kind of information search the user desires. The search willingness calculation unit 303 then references a database 304 of candidate information needed by the user (hereinafter referred to as the necessary information database) and calculates the search willingness of each candidate piece of necessary information as search information. In this embodiment, the necessary information database 304 is a database in which all data needed by the user is registered in advance. Here, the search willingness represents a measure of "how much the information is needed." A specific method for calculating the search willingness will be described using an example in which a user's input has stopped in the situation shown in FIG. 7. FIG. 10 is a flowchart showing the processing flow in the search willingness calculation unit 303. In step S1001, the search willingness calculation unit 303 acquires information to be input for calculating the search willingness. The target portion varies depending on the means for detecting search opportunities. When an input stop is detected, the target portion is all of the code in the file where the input cursor 704 is located at the time of detection. If an error is detected, the target section is the error output of the output unit or terminal unit. If a range selection is detected, the entire selected range is the target section. In step S1002, the search preference calculation unit 303 extracts related words contained in the target section. Here, related words refer to words entered into the search box when a user manually searches for information. In this embodiment, words previously recorded in the necessary information database are extracted if they are included in the target section. Figure 11(a) shows an example of the necessary information database. All keywords contained in the Keyword (Same File), Keyword (Same Function), and Keyword (Same Line) columns in Figure 11(a) are related words in this embodiment. Therefore, in the situations shown in Figures 7 and 11(a), the word extraction result would be "(Same File) boto3, (Same Function) s3, resource, (Same Line) copy." Here, if the position information of the input cursor is included in the target section information, such as when an input stop is detected, the same file, same function, and same line are distinguished.On the other hand, if the position information of the input cursor is not included in the information of the target section, such as when an error occurs or range selection is detected, no distinction is made and the words included in the target section are extracted. In step S1003, the search willingness calculation unit 303 extracts only the lines containing the extracted words from the necessary information database and selects necessary information candidates. In the situation of Figures 7 and 11(a), the necessary information candidates selected by the search willingness calculation unit 303 are shown in Figure 11(b). In step S1004, the search willingness calculation unit 303 calculates the search willingness for each of the necessary information candidates in Figure 11(b). The formula for calculating search willingness is shown in Equation (1). Search preference = α(x1 + x2 + x3 + ) + β(y1 + y2 + y3 + ) + γ(z1 + z2 + z3 + ) (1) Here, x, y, and z are flags indicating whether the file, function, and line contain a keyword, respectively. If they do, the flag is 1; if they do, the flag is 0. The subscripts represent the number within each item. For example, in the first line of Figure 11(b), if the file contains "boto3," x1 = 1; if the function contains "s3," y1 = 1; if the function contains "Resource," y2 = 1; if the line contains "copy," z1 = 1. Furthermore, α, β, and γ are all weights, and are predefined constants in the range α≦β≦γ. However, if the input cursor information is not included in the target information, such as when an error occurs or range selection is detected, and the same file, function, and line are not distinguished, α = β = γ. In this embodiment, the search preference is calculated using Equation (1), but the search preference calculation method is not limited to this. It is also possible to use weighting based on the distance from the input cursor position or a calculation method using machine learning. In step S1005, the search preference calculation unit 303 checks whether the search preference has been calculated for all of the necessary information candidates selected in step S1003. If the calculation has been completed for all, the process proceeds to step S1006; if not, the process proceeds to step S1004. In step S1006, the search preference calculation unit 303 outputs the search preference calculated for each necessary information candidate to the necessary information determination unit 305. The output format is shown in Figure 11(c).

[0025] Returning to the description of the development support device 100 .

[0026] In step S404, the necessary information determination unit 305 determines the information the user needs for the opportunity detected by the search opportunity detection unit 302 based on the search preference calculated for each necessary information candidate obtained from the search preference calculation unit 303. In this embodiment, the necessary information determination unit 305 determines the information with the highest search preference among the obtained necessary information candidates as the necessary information. In the example of Figure 11(c), id = 1 is determined as the necessary information. In this embodiment, the necessary information is determined by selecting the candidate with the highest preference among the candidates, but the method of determining the necessary information is not limited to this, and other determination methods, such as determining the top three with the highest preference, can also be implemented. The necessary information determination unit 305 outputs a necessary information list for the determined necessary information ID to the necessary information output unit 306, and the process proceeds to step S405.

[0027] In step S405, the necessary information output unit 306 displays the necessary information list on the output device 108 based on the necessary information list acquired from the necessary information determination unit 305. FIG. 12 shows the necessary information list displayed by the necessary information output unit 306 on the development support tool. The website registered first in the necessary information list is displayed in browser 1201, the website registered second in the necessary information list is displayed in browser 1202, and the website registered third in the necessary information list is displayed in browser 1203. The display location is not limited to within the development support tool, and may be in the form of launching a separate web browser. In this embodiment, the search opportunity detection unit 302 detects when the user needs information and presents the necessary information at that time. However, the embodiment of the present invention is not limited to this. Regardless of whether a search opportunity is detected, the necessary information that the user is likely to need may always be presented while the development support tool is running.

[0028] The above is the flow of the processing performed by the development support device 100 of this embodiment.

[0029] (Embodiment 2) In the first embodiment, the necessary information database 304 is a database in which all data is registered in advance, so it is not possible to update the necessary information based on updates to the libraries provided by the cloud vendor, for example, and it is not possible to provide the latest information desired by the user. This embodiment solves this problem.

[0030] In the second embodiment, by updating the data in the necessary information database as needed, it becomes possible to provide information that includes the latest information and that the user needs at that time. Regarding the processing performed by the development support device 100 in the second embodiment, only the differences from the first embodiment will be explained.

[0031] The processing performed by the development support device 100 of this embodiment will be described with reference to the functional block diagram shown in FIG. 13 and the flowchart shown in FIG. 14. The functional block diagram differs from the first embodiment in that a necessary information update unit 1307 has been added. The necessary information update unit 1307 updates the necessary information database based on information acquired from the input status acquisition unit 1301 and the necessary information determination unit 1305. The flowchart differs from the first embodiment in that steps S1406 and S1407 have been added to the end, updating the necessary information database based on user operations after the necessary information of the first embodiment is output. The necessary information database itself also differs from the first embodiment. An example of the necessary information database in this embodiment is shown in FIG. 15. The necessary information database differs from the first embodiment in that there is no longer a limit to the number of pieces of necessary information registered in the necessary information list and that each piece of necessary information is associated with a number of selections. Here, the number of selections refers to the number of times the user has adopted the necessary information presented to the user by the development support device 100 in the past. Furthermore, since there is no limit to the number of pieces of necessary information registered in the necessary information list, new necessary information can be added at any time. The flow of processing performed by each component will be explained below.

[0032] In steps S1401 to S1405, the development support device 100 detects an opportunity for the user to search for information and outputs the necessary information based on input status information including user operation information and the status of the screen output by the development support device, as in embodiment 1. In this embodiment, the subsequent processing is different from embodiment 1.

[0033] In step S1406, the necessary information update unit 1307 acquires from the necessary information determination unit 1305 the necessary information determined in step S1404 and from the input status acquisition unit 1301 the user's operation information after step S1405.

[0034] In step S1407, the necessary information update unit 1307 updates the necessary information database based on the actions of the user who viewed the necessary information displayed by the necessary information output unit 1306 after viewing the information. Specifically, user actions after viewing the information can be broadly classified into three types. The first type is whether the user resumed code input in the code description unit 201 after viewing the displayed necessary information. The second type is whether the user manually performed an information search after viewing the displayed necessary information. The third type is neither. The necessary information update unit 1307 classifies the user's actions after viewing the displayed necessary information into these three types and performs a different necessary information database update process for each type. If the user resumes code input after viewing the first piece of necessary information, the necessary information update unit 1307 determines that the information the user needed was included in the displayed necessary information and increments the number of times the displayed necessary information was selected. Specifically, the number of times the necessary information registered has been selected is incremented by 1. This makes it easier for other users to see information needed by the user. If the user manually searches for information after viewing the second displayed necessary information, the necessary information update unit 1307 determines that the information the user needed was included in the results of the user's manual information search. Specifically, the URL of the web page viewed immediately before resuming code entry is added to the necessary information list in the necessary information database, or if the URL is already registered, the number of selections of the necessary information for which the URL is registered is incremented by 1. This makes it possible to update the necessary information based on, for example, updates to libraries provided by cloud vendors. If the third case is not met, the necessary information update unit 1307 does nothing and terminates processing. The necessary information update unit 1307 updates the necessary information database by switching processing depending on the above three cases.

[0035] In this embodiment, the information viewed immediately before resuming code input is determined to be necessary information and the database is updated, but the necessary information database updating means is not limited to this, and a means for determining the information that has been referenced for the longest time as necessary information may also be used. Trend information may also be notified to all users of the development support tool based on the necessary information database updated in this embodiment. Specifically, the URLs of web pages with a sudden increase in the number of selections may be displayed on the browsers of all users.

[0036] The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program. It can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.

Claims

1. An information processing device for coding a program, an acquisition means for acquiring an input status of the user who performs the coding; a calculation means for calculating a search preference for each of a plurality of necessary information candidates consisting of a combination of keywords based on the acquired input status, in accordance with the distance from the input cursor position on the output screen of the information processing device in the coding to the keyword; an output means for determining necessary information from the plurality of necessary information candidates based on the search preference and outputting the determined necessary information; An information processing device comprising:

2. The calculation means updates the determined necessary information based on the determined necessary information and the input status. The information processing device according to claim 1 .

3. 3. The information processing apparatus according to claim 1, wherein the input status includes a state in which the user's input has stopped.

4. 4. The information processing device according to claim 1, wherein the calculation means calculates the search preference based on the input status at the time the error occurred when the execution of the program results in an error.

5. An information processing method for coding a program, comprising: an acquisition step in which acquisition means acquires an input status of a user who performs the coding; a calculation step in which a calculation means calculates a search preference for each of a plurality of necessary information candidates consisting of a combination of keywords based on the acquired input status, according to the distance from the input cursor position on the output screen of the information processing device in the coding to the keyword; an output step in which output means determines necessary information from the plurality of necessary information candidates based on the search preference degree and outputs the determined necessary information; An information processing method comprising:

6. Computer, An information processing device for coding a program, an acquisition means for acquiring an input status of the user who performs the coding; a calculation means for calculating a search preference for each of a plurality of necessary information candidates consisting of a combination of keywords based on the acquired input status, in accordance with the distance from the input cursor position on the output screen of the information processing device in the coding to the keyword; A computer program for functioning as an information processing device, characterized by having an output means for determining necessary information from the plurality of necessary information candidates based on the search preference and outputting the determined necessary information.

Citation Information

Patent Citations

  • Method and device for generating instruction sentence

    JP1998116188A

  • Computer program, and device and method for receiving input of source program

    JP2010097426A

  • Information search system, information search method, and program

    JP2010186295A

  • Graphical representation of operator precedence

    JP2015510181A

  • Information processing apparatus, information processing method, and information processing program

    JP2018190261A