This application is based upon and claims the benefit of priority from Japanese Patent Application No. 2016-198406, filed on Oct. 6, 2016; the entire contents of which are incorporated herein by reference.
Embodiments of the present invention relates to an information generating system, an information generating device, an information generating method, and an information generating program.
A system for visually expressing a processing result of software (a program) with respect to a certain setting condition is used as a tool for supporting a software test. For example, a system displaying a timeline depicting activity levels during the execution of a program is proposed.
The target module is a module outputting a certain processing result with respect to a certain setting condition, and for example, is hardware executing predetermined arithmetic processing by an integrated circuit (IC), software (a program) controlling a processor, and the like.
For example, test processing is assumed as the processing of the target module. The test processing is processing of acquiring information for determining whether or not the target module suitably performs the processing. According to the test processing, a correspondence relationship between setting conditions and a processing result is acquired. The setting conditions are information relevant to the configuration or the like of the target module. In a case where the target module is hardware, for example, the number of cores, the capacity of memories, an operation frequency of the core, and the like can be the setting conditions. In a case where the target module is software, for example, the number of threads, the number of execution options, and the like can be the setting conditions. The processing result is information representing the result of the execution or the simulation of the target module. In a case where the target module is hardware, for example, an output value (an arithmetic result) according to the execution or the simulation, power consumption, the number of memory accesses, an execution performance value, and the like can be the processing result. In a case where the target module is software, for example, the output value according to the execution or the simulation, the execution performance value, and the like can be the processing result. The test processing is executed a plurality of times by changing the setting conditions, and thus, a plurality of correspondence relationships can be acquired. A specific method for executing the test processing is not particularly limited, and a known performance test and a method used for a function test or the like can be used. Furthermore, the processing of the target module is not limited to the test processing, and for example, may be the processing of the target module in normal times. In the following embodiments, a case will be described in which the processing of the target module is the test processing.
The information generating system 1 includes a receiving unit 10, a processing unit 11, a generating unit 12, a control unit 13, and a display unit 14.
The receiving unit 10 acquires a combination of a plurality of setting conditions from a user. Hereinafter, the combination of the setting conditions will be referred to as setting information. For example, the user inputs the combination of the plurality of setting conditions by using a user interface such as a keyboard or a mouse.
The processing unit 11 executes the test processing by using the setting information acquired by the receiving unit 10. Then, aggregated records representing the correspondence relationship between the setting conditions and the processing result for each test processing are acquired. The aggregated records will be described below in detail by
The generating unit 12 generates display information for generating a display image which visually expresses the correspondence relationship for each test processing, on the basis of the aggregated records. The display image will be described below in detail by using
The control unit 13 controls the display unit 14 such that the display image is displayed, on the basis of the display information generated by the generating unit 12. The control unit 13, for example, is configured of a CPU, a program controlling the CPU, a logic circuit, and the like. The display unit 14, for example, is a display.
Furthermore, the hardware configuration illustrated in
In addition, the receiving unit 10, the processing unit 11, the generating unit 12, the control unit 13, and the display unit 14, described above, can be realized by connecting a plurality of computers to each other through the intranet. For example, the server 16 and a plurality of information processing terminals 15 may be connected to each other through the network 17, and the receiving unit 10 may be realized by the plurality of information processing terminals 15.
In addition,
A program allowing the function of the information generating system 1 to be realized can be provided by being recorded in a recording medium readable by a computer, such as a CD-ROM, a flexible disk unit (FD), a CD-R, and a DVD, in a file of an installable format or an executable format. In addition, the program may be provided by being downloaded on a predetermined computer from a predetermined store device connected to a network, or may be provided in a predetermined information processing device by being incorporated in advance in a ROM or the like. In addition, the program may be configured of a plurality of modules realizing the functions of the receiving unit 10, the processing unit 11, the generating unit 12, the control unit 13, and the display unit 14, described above.
In addition, each of the functions of the receiving unit 10, the processing unit 11, the generating unit 12, the control unit 13, and the display unit 14, described above, may be realized by allowing the CPU 21 to execute the program, may be realized according to the function of the hardware such as an IC, and may be realized according to a combination thereof.
The setting conditions 51 and 52 and the processing results 55 to 57 are divided for each type. For example, a case will be considered in which the type of the first setting condition 51 is the “number of cores”, and the type of the second setting condition 52 is the “capacity of memories”. In this case, in the first record 41, a specific value of the first setting condition 51 (the number of cores) is “10”, and a specific value of the second setting condition 52 (the capacity of memories) is “20”. In addition, a case will be considered in which the type of the first processing result 55 is an “output value”, the type of the second processing result 56 is “power consumption”, and the type of the third processing result 57 is the “number of memory accesses”. In this case, in the first record 41, a specific value of the first processing result 55 (the output value) is “1”, a specific value of the second processing result 56 (the power consumption) is “40”, and a specific value of the third processing result 57 (the number of memory accesses) is “10”. Furthermore, the specific values are not limited to numerical values, and for example, may be characters, symbols, or the like.
Furthermore, in the description using
The receiving unit 10 may receive the input of the setting information representing the range of the setting condition 51 and the setting condition 52. For example, in a case where the setting information of “the setting condition 51 is 10 to 20, and the setting condition 52 is 60 to 80” is received, as illustrated in
In a case where the setting information is designated by the range, the processing unit 11 may extract all combinations between the setting condition 51 and the setting condition 52, which are designated by the range, and may execute the test processing in all of the combinations of the setting conditions. The processing unit 11 may randomly extract a predetermined number of combinations from all of the combinations between the setting condition 51 and the setting condition 52, which are designated by the range, and may execute the test processing. For example, as illustrated in
One setting condition may be designated by the range, and the other setting condition may be designated by a specific value. For example, in a case where the setting condition 51 is designated by the range, and the setting condition 52 is designated by the specific value, as illustrated in
Display images illustrated in
An object at the time of displaying setting information which has been executed by the processing unit 11 and an object at the time of displaying setting information which is received by the receiving unit 10 as the setting information but has not been subjected to the test processing by the processing unit 11 yet may be displayed by changing a display format such as a color or a form. An example of a display image in the case of displaying both of the setting information which has been executed and the setting information which has not been executed yet is illustrated in
Furthermore, the ranges of the axes displaying the setting conditions may be different according to the setting conditions. For example, in
As described above, the receiving unit 10 displays the received setting information, and thus, the user is capable of selecting the setting conditions used for the next test processing while confirming the setting conditions which has been set. For this reason, it is possible to suitably select the setting conditions.
Furthermore, as described above by using
In the setting information which has not been subjected to the test processing yet does not include the processing result, and thus, the object representing the setting condition and the relational object connecting the setting conditions are displayed, but the corresponding processing result is not displayed. In contrast, in the setting information which has been subjected to the test processing, the corresponding processing result is also displayed.
In Step S102, the processing unit 11 executes the test processing on the basis of the setting information. In a case where the setting information is designated by the range, a predetermined number of combinations may be randomly extracted from all of the combinations of the setting condition 51, and the test processing may be executed. The result of the test processing is output as the aggregated records.
In Step S103, the generating unit 12 generates the display information on the basis of the aggregated records, and in Step S104, the control unit 13 controls the display unit 14 such that display based on the display information is performed. The process is returned to Step S101 after Step S104, and the setting information may be further received.
In Step S201, the generating unit 12 acquires the setting condition range information. Information set in advance according to the module of the test processing may read out as the setting condition range information, or the setting condition range information may be acquired through the communication with other devices.
In Step S202, the generating unit 12 generates the display information on the basis of the setting condition range information, and in Step S203, the control unit 13 controls the display unit 14 such that the display based on the display information is performed. Accordingly, it is possible for the user to view the range of the setting conditions to be settable.
Step S101 and Step S102 are identical to Steps S101 and S102 of the processing illustrated in
In Step S204, the generating unit generates the display information on the basis of the aggregated records and the setting condition range information, and in Step S104, the control unit 13 controls the display unit 14 such that the display based on the display information is performed. The process is returned to Step S101 after Step S104, and the setting information may be further received.
(Modification 1)
In
In the first embodiment, the information generating system receiving the designation of the setting condition has been described. In a second embodiment, an information generating system receiving the designation of the processing result will be described. A hardware configuration of an information generating system 2 according to the second embodiment, or internal configurations of a server and an information processing terminal are identical to those of the information generating system 1, and thus, the description will be omitted.
The information generating system 2 according to the second embodiment includes a receiving unit 101, a processing unit 102, a generating unit 12, a control unit 13, and a display unit 14. The generating unit 12, the control unit 13, and the display unit 14 are identical to those of the information generating system 1, and thus, the description will be omitted.
The receiving unit 101 receives the specific value or the range of the processing result as ending conditions of the test processing. The receiving unit 101 may receive the input of the range of the processing result by a keyboard, or may receive the specific value or the range of the processing result by being clicked with a mouse or the like on the coordinate axis of the processing result displayed on the display unit 14.
The processing unit 102 repeats the test processing by changing the setting conditions until the processing result satisfying the ending conditions received by the receiving unit 101 is obtained, and generates the aggregated records. The setting conditions may be randomly set, may be set by using a known algorithm for optimization, or may be set by sequentially using the setting conditions of the predetermined range. In addition, as described in the first embodiment, the receiving unit 101 may receive the designation of the range or the specific value of the setting conditions from the user.
As illustrated in
In Step S304, the receiving unit 101 receives the ending conditions. In Step S305, the processing unit 102 sets the setting conditions. In a case where the designation of the setting information is received from the user, the setting conditions are set by using the setting information. In Step S306, the processing unit 102 executes the test processing in the setting conditions which are set. In Step S307, the processing unit 102 determines whether or not the result of the test processing satisfies the ending conditions. In a case where the result of the test processing does not satisfy the ending conditions (No of S307), the process is returned to Step S305, and the test processing is repeated in new setting conditions. In a case where the result of the test processing satisfies the ending conditions (Yes of S307), in Step S308, the generating unit 12 generates the display information on the basis of the aggregated records, and in Step S309, the control unit 13 displays the display image on the basis of the display information by controlling the display unit 14.
Furthermore, the test processing may be repeated until the ending conditions are satisfied, or in a case where the test processing is repeated a predetermined number of times even though the ending conditions are not satisfied, the repetition may be ended. The predetermined number of times may be determined in advance, or the designation may be received from the user.
The second embodiment can be modified according to the modification or the like described in the first embodiment. As described in the modification of the first embodiment, the display image may be the radar chart.
While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the inventions. Indeed, the novel embodiments described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the embodiments described herein may be made without departing from the spirit of the inventions. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the inventions.
Number | Date | Country | Kind |
---|---|---|---|
2016-198406 | Oct 2016 | JP | national |