Software configuration management data creation support device and software configuration management data creation support method

The software configuration management data creation support device addresses the challenge of managing complex information systems by assisting in the creation of accurate software configuration data, enhancing security risk management.

JP7760482B2Active Publication Date: 2025-10-27HITACHI LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2022173181
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-10-28
Publication Date
2025-10-27
Estimated Expiration
2042-10-28

AI Technical Summary

Technical Problem

Existing technologies struggle to reliably manage the software configuration of complex information systems comprising multiple software and information devices, as they often lack comprehensive software configuration information.

Method used

A software configuration management data creation support device that collects design information, extracts relevant phrases, compares them with predefined attribute information, and assists users in creating software configuration management data using a hierarchical structure, enabling accurate management of software configurations.

Benefits of technology

Enables reliable management of software configurations in complex information systems, facilitating the identification and mitigation of security risks through comprehensive software configuration data creation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007760482000001
    Figure 0007760482000001
  • Figure 0007760482000002
    Figure 0007760482000002
  • Figure 0007760482000003
    Figure 0007760482000003
Patent Text Reader

Abstract

To provide a technology for reliably managing software configurations of an information system including many information apparatuses.SOLUTION: A software configuration management data creation assistance device 100 includes: a design information collection unit 161 that collects design information on an information system; a design information extraction unit 162 that extracts a predetermined phrase from the design information; a class candidate selection unit 163; and a management data creation unit 164. The class candidate selection unit 163 compares the phrase extracted by the design information extraction unit 162 with attribute information set in advance in accordance with a functional configuration of the information system, and based on a result of comparison, selects a class candidate corresponding to a concrete class or an abstract class in a case where functional configurations assigned to an information apparatus in the information system are represented by a hierarchical structure. The management data creation unit 164 presents the class candidate to a user and creates software configuration management data.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a data structure for managing software configurations related to the configuration of software used in an information system, and to an apparatus and method for supporting the creation of this data. [Background technology]

[0002] Software used in information systems has security flaws called vulnerabilities, and if an information system continues to operate while these vulnerabilities are left unaddressed, it may be vulnerable to attacks such as unauthorized access by malicious third parties. Therefore, when operating an information system, it is necessary to continuously collect vulnerability information on software vulnerabilities and take measures as necessary.

[0003] In the case of an information system that is configured by combining one or more pieces of software and / or one or more pieces of information equipment provided by one or more suppliers, it is important for the manufacturer or operator of the information system to accurately understand the software configuration of all the information equipment in the entire information system in order to accurately implement the above measures. Therefore, the manufacturer or operator of the information system needs technology to reliably manage the software configuration of each piece of information equipment in the information system.

[0004] Regarding the management of software configuration in an information system, for example, the technology disclosed in Patent Document 1 is known. Patent Document 1 describes a bill of materials creation support device that acquires order data defining the specifications required for an ordered product, selects from multiple already-delivered units those that have a relatively high degree of similarity to the ordered product as approximate units, presents approximate bill of materials data representing the bill of materials for the approximate units to a user as a template for the bill of materials for the ordered product, and provides the user with an editing environment. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] International Publication No. 2022 / 018889 Summary of the Invention [Problem to be solved by the invention]

[0006] The technology of Patent Document 1 is based on the premise that the component configuration of the ordered product is known and that it is possible to reliably grasp the differences in component configuration between the already delivered unit and the ordered product. However, in the case of an information system consisting of a large number of information devices, it is difficult to apply the technology of Patent Document 1 because it is not always possible to obtain the software configuration information of each information device in the information system.

[0007] The present invention was made against this background, and aims to provide a technology for reliably managing the software configuration of an information system that is configured by combining one or more pieces of software and / or one or more information devices. [Means for solving the problem]

[0008] A software configuration management data creation support device according to the present invention supports the creation of software configuration management data for managing the software configuration of an information system having multiple information devices, and includes: a design information collection unit that collects design information of the information system; a design information extraction unit that extracts predetermined words and phrases from the design information; a class candidate selection unit that compares the words extracted by the design information extraction unit with attribute information that is preset in accordance with the functional configuration of the information system, and, based on the comparison result, selects class candidates that correspond to the concrete classes or abstract classes when the functional configuration handled by the information devices in the information system is represented in a hierarchical structure consisting of a concrete class at the lowest level and one or more abstract classes at higher levels; and a management data creation unit that presents the class candidates to a user and creates the software configuration management data based on the user's selection operation for the class candidates. A software configuration management data creation support method according to the present invention comprises: Using a software configuration management data creation support device,A method for supporting creation of software configuration management data for managing the software configuration of an information system having a plurality of information devices, comprising: The software configuration management data creation support device collecting design information for the information system; The software configuration management data creation support device extracting predetermined words and phrases from the collected design information; The software configuration management data creation support device comparing the extracted phrase with attribute information preset in accordance with the functional configuration of the information system; The software configuration management data creation support device Based on the result of the comparison, when a functional configuration of the information device in the information system is represented as a hierarchical structure consisting of a concrete class at the lowest level and one or more abstract classes at higher levels, a class candidate corresponding to the concrete class or the abstract class is selected; The software configuration management data creation support device presenting the selected class candidates to a user; The software configuration management data creation support device The software configuration management data is created based on the user's selection operation for the presented class candidates. [Effects of the Invention]

[0009] According to the present invention, it is possible to provide a technique for reliably managing the software configuration of an information system configured by combining one or more pieces of software and / or one or more information devices. [Brief explanation of the drawings]

[0010] [Figure 1] 1 is a block diagram showing a functional configuration of a software configuration management system according to an embodiment of the present invention; [Figure 2] FIG. 2 is a functional block diagram of a software configuration management data creation support device and a software configuration management device. [Figure 3] 10 is a flowchart showing the flow of a software configuration management data creation support process. [Figure 4] 10 is a flowchart showing the flow of a process for extracting words and phrases from design information. [Figure 5] 10 is a flowchart showing the flow of a process for selecting class candidates. [Figure 6]10 is a flowchart showing the flow of a process for creating software configuration management data in a depth-first manner. [Figure 7] 10 is a flowchart showing the flow of a process for creating software configuration management data with breadth priority; [Figure 8] FIG. 10 is a diagram illustrating an example of an abstract class database. [Figure 9] FIG. 10 is a diagram illustrating an example of a concrete class database. [Figure 10] FIG. 10 is a diagram illustrating an example of instance information data. [Figure 11] FIG. 10 is a diagram illustrating an example of class relationship data. [Figure 12] FIG. 10 is a sequence diagram showing a processing flow when software configuration management data is created. [Figure 13] FIG. 2 is a functional block diagram of an influence range estimation device. [Figure 14] FIG. 2 is a diagram illustrating an example of the configuration of a computer that constitutes the influence range estimation device. [Figure 15] FIG. 10 is a diagram illustrating an example of impact range information. [Figure 16A] FIG. 10 is a sequence diagram illustrating an example of a processing flow of an influence range estimation device. [Figure 16B] FIG. 10 is a sequence diagram illustrating an example of a processing flow of an influence range estimation device. [Figure 17] 10 is a flowchart illustrating an example of an influence range estimation process. [Figure 18] FIG. 10 is a diagram illustrating an example of a screen displayed based on influence range information. DETAILED DESCRIPTION OF THE INVENTION

[0011] Hereinafter, an embodiment of the present invention will be described with reference to the drawings.

[0012] Fig. 1 is a block diagram showing the functional configuration of a software configuration management system according to one embodiment of the present invention. The software configuration management system 1 shown in Fig. 1 is a system for managing the software configuration of an information system, such as an automobile, that is configured by combining one or more pieces of software and / or one or more information devices, and is configured by connecting a software configuration management data creation support device 100, a software configuration management device 200, an impact scope estimation device 300, and a terminal device 400 via a network 500.

[0013] Software configuration management data creation support device 100 supports the creation of software configuration management data used to manage the software configuration of an information system. With the support of software configuration management data creation support device 100, a user of software configuration management system 1 can easily create software configuration management data for the target information system. Note that the support for creating software configuration management data by software configuration management data creation support device 100 will be described in detail later.

[0014] Software configuration management device 200 has a recording device capable of recording data, and stores software configuration management data created by a user with the support of software configuration management data creation support device 100 in this recording device. The recording device of software configuration management device 200 is configured using, for example, a large-capacity non-transitory magnetic storage device such as an HDD (Hard Disk Drive) or an SSD (Solid State Drive), or a semiconductor storage device.

[0015] The impact extent estimation device 300 determines the impact extent of a security risk on an information system by using the software configuration management data stored in the software configuration management device 200. A specific method for determining the impact extent of an information system by the impact extent estimation device 300 will be described later.

[0016] Terminal device 400 is an information terminal that operates as a client terminal for software configuration management data creation support device 100 and software configuration management device 200, and is configured using, for example, a PC (Personal Computer). By operating terminal device 400, a user of software configuration management system 1 can cause software configuration management data creation support device 100 and software configuration management device 200 to execute desired processes, thereby creating software configuration management data, investigating the extent to which security risks affect the information system, and so on.

[0017] Network 500 is configured using, for example, a local area network (LAN), a wide area network (WAN), the Internet, or the like, and transmits data exchanged between software configuration management data creation support device 100, software configuration management device 200, impact extent estimation device 300, and terminal device 400. Note that a combination of two or more of software configuration management data creation support device 100, software configuration management device 200, impact extent estimation device 300, and terminal device 400 may be installed in the same location or in physically separate locations. Furthermore, these may be implemented on a single computer, or may be implemented on a virtual computer or cloud service.

[0018] Next, a description will be given of the details of the software configuration management data creation support device 100 and the software configuration management device 200. FIG.

[0019] The software configuration management data creation support device 100 includes a control unit 110 , a memory unit 120 , an input unit 130 , an output unit 140 , a communication unit 150 , a program storage unit 160 , and a data storage unit 170 .

[0020] The control unit 110 is configured using, for example, a central processing unit (CPU) or a graphics processing unit (GPU), and functions as a design information collecting unit 161, a design information extracting unit 162, a class candidate selecting unit 163, and a management data creating unit 164 by executing programs stored in the program storage unit 160. The design information collecting unit 161, the design information extracting unit 162, the class candidate selecting unit 163, and the management data creating unit 164 will be described in detail below. Note that in FIG. 2 , the program storage unit 160 includes the design information collecting unit 161, the design information extracting unit 162, the class candidate selecting unit 163, and the management data creating unit 164, but in reality, programs corresponding to these units are stored in the program storage unit 160, and the control unit 110 executes these programs to realize the design information collecting unit 161, the design information extracting unit 162, the class candidate selecting unit 163, and the management data creating unit 164 in the software configuration management data creation support device 100. Furthermore, programs and data for causing control unit 110 to function as design information collection unit 161, design information extraction unit 162, class candidate selection unit 163, and management data creation unit 164 may be imported from an external device or a nonvolatile storage medium into software configuration management data creation support device 100 and used in software configuration management data creation support device 100.

[0021] The memory unit 120 is configured using a semiconductor storage device such as a RAM (Random Access Memory), and temporarily stores programs that are loaded from the program storage unit 160 and executed by the control unit 110, as well as necessary work data.

[0022] Input unit 130 accepts input operations performed by the administrator of software configuration management data creation support device 100 and outputs the contents of the input operations to control unit 110. Output unit 140, under the control of control unit 110, outputs predetermined information to the administrator of software configuration management data creation support device 100, providing the administrator with information necessary for the administrator. Input unit 130 and output unit 140 are configured using, for example, a mouse, keyboard, display, etc.

[0023] Communication unit 150 operates under the control of control unit 110 and performs communication interface processing for transmitting and receiving various types of information between software configuration management data creation support device 100, software configuration management device 200, and terminal device 400. Through the communication interface processing performed by communication unit 150, the content of a user's operation on terminal device 400 is sent to software configuration management data creation support device 100 via network 500, and software configuration management data created by the processing of software configuration management data creation support device 100 is sent to software configuration management device 200 via network 500.

[0024] The program storage unit 160 and the data storage unit 170 are configured using storage devices such as HDDs and SSDs. The program storage unit 160 stores various programs executed by the control unit 110, and the data storage unit 170 stores various data used in the processing of the control unit 110. Note that the program storage unit 160 and the data storage unit 170 may be realized using a single shared storage device, or may be realized using separate storage devices.

[0025] The program storage unit 160 stores programs corresponding to the design information collection unit 161, design information extraction unit 162, class candidate selection unit 163, and management data creation unit 164. The design information collection unit 161 collects design information of information systems for which software configuration management data is to be created and registers it in a design information database 173 stored in the data storage unit 170. The design information extraction unit 162 extracts predetermined terms to be used in creating the software configuration management data from the design information registered in the design information database 173 and registers them in a design information extraction result database 174 stored in the data storage unit 170. The class candidate selection unit 163 compares each term in the design information extracted by the design information extraction unit 162 and registered in the design information extraction result database 174 with attribute information corresponding to the functional configuration of the information system, which is recorded in the abstract class database 171 and concrete class database 172 stored in the data storage unit 170, and selects class candidates to use in creating the software configuration management data based on the comparison results. The management data creation unit 164 presents each class candidate selected by the class candidate selection unit 163 to the user by outputting it to the terminal device 400 using the communication unit 150, and creates software configuration management data based on the user's selection operation in response to the class candidates.

[0026] In the software configuration management data used in the software configuration management system 1 of this embodiment, the functional configuration of each information device in the information system is represented in a hierarchical structure. In this hierarchical structure, the lowest level (class) is called a concrete class, and each level (class) except the lowest level is called an abstract class. This hierarchical software configuration management data abstractly represents the software configuration in the information system and is also called an abstract SBOM (Software Bill of Materials).

[0027] The data storage unit 170 stores an abstract class database 171, a concrete class database 172, a design information database 173, and a design information extraction result database 174. The abstract class database 171 and the concrete class database 172 are databases that store information on each abstract class and each concrete class in the hierarchically structured software configuration management data described above. The design information database 173 is a database that stores design information collected by the design information collection unit 161. The design information extraction result database 174 is a database that stores words and phrases extracted by the design information extraction unit 162 from the design information registered in the design information database 173. Details of these databases will be described later.

[0028] The software configuration management device 200 has a class relation database 201 and an instance information database 202. These databases are stored in a storage device such as an HDD or SSD in the software configuration management device 200.

[0029] The class relation database 201 is a database that stores class relation data that represents the functional configuration of each information device in the information system in the hierarchical structure described above. The instance information database 202 is a database that stores data representing instance information (various information such as the software creator name, supplier name, component name, version name, component hash value, unique ID, and dependency related information) related to software owned by each information device in the information system. In the software configuration management system 1 of this embodiment, the software configuration management data (abstract SBOM) of the information system is composed of the data stored in the class relation database 201 and the instance information database 202. Note that, to manage the software configuration of an information system, at least the class relation data is required, but the instance information data is not required. In other words, the software configuration management device 200 is only required to have at least the class relation database 201, and may not have the instance information database 202.

[0030] Next, a process for supporting the creation of software configuration management data executed in the software configuration management system 1 will be described.

[0031] 3 is a flowchart showing the flow of a process for supporting the creation of software configuration management data. In the software configuration management system 1 of this embodiment, the process shown in the flowchart in FIG. 3 is executed by the software configuration management data creation support device 100 when, for example, a user performs a predetermined operation using the terminal device 400.

[0032] In step S100, the design information collection unit 161 collects design information for the information system for which software configuration management data is to be created. Here, the necessary design information can be collected, for example, by receiving design information input by a user to the terminal device 400 from the terminal device 400, or by acquiring design information from an external server designated by the user. The design information collected in step S100 is registered in the design information database 173.

[0033] In step S200, the design information extraction unit 162 extracts words and phrases from the design information collected in step S100. Here, the design information stored in the design information database 173 is read, and predetermined words and phrases contained in the design information are extracted. The results of the word and phrase extraction in step S200 are registered in the design information extraction result database 174. Details of the processing content of step S200 will be described later with reference to the flowchart in FIG. 4.

[0034] In step S300, class candidate selection unit 163 selects class candidates based on the terms extracted from the design information in step S200. Here, the extraction results of the terms stored in design information extraction result database 174 are read out, and candidates for abstract or concrete classes corresponding to the extracted terms are selected by referring to abstract class database 171 and concrete class database 172. Details of the processing content of step S300 will be described later with reference to the flowchart in FIG. 5.

[0035] In step S400, a determination is made as to whether depth-first processing or breadth-first processing should be performed when creating software configuration management data. Depth-first processing prioritizes the depth of the hierarchical structure of the software configuration management data and sequentially presents the user with multiple class candidates selected in step S300. Breadth-first processing prioritizes the breadth of the hierarchical structure of the software configuration management data and sequentially presents the user with multiple class candidates selected in step S300. If depth-first processing is selected in step S400, the process proceeds to step S500. If breadth-first processing is selected, the process proceeds to step S600. The determination in step S400 may be performed by having the user select one of the options using the terminal device 400, or may be performed based on pre-defined settings. Alternatively, any other method may be used to perform the determination in step S400.

[0036] In step S500, management data creation unit 164 creates software configuration management data in a depth-first manner. By executing the depth-first processing described above, management data creation unit 164 assists the user in creating software configuration management data. Then, in response to input operations performed by the user using terminal device 400, class relationship data is created that represents, in a hierarchical structure, the functional configurations of each information device in the information system, and instance information for each information device, thereby creating software configuration management data. Details of the processing in step S500 will be described later with reference to the flowchart in FIG. 6.

[0037] In step S600, management data creation unit 164 creates software configuration management data with breadth priority. By executing the breadth priority process described above, management data creation unit 164 assists the user in creating software configuration management data. Then, in response to input operations performed by the user using terminal device 400, class relationship data is created that represents, in a hierarchical structure, the functional configurations handled by each information device in the information system, and instance information for each information device, thereby creating software configuration management data. Details of the processing in step S600 will be described later with reference to the flowchart in FIG. 7.

[0038] By selectively executing the processing of step S500 or S600 as described above, software configuration management data creation support device 100 can create software configuration management data for the information system for which design information was collected in step S100. After executing the processing of step S500 or step S600, software configuration management data creation support device 100 transmits the created software configuration management data to software configuration management device 200 via network 500, and then ends the processing shown in the flowchart in FIG.

[0039] Upon receiving software configuration management data from software configuration management data creation support device 100, software configuration management device 200 stores the class relation data and instance information data included in the software configuration management data in class relation database 201 and instance information database 202, respectively. As a result, the software configuration management data created in software configuration management data creation support device 100 is recorded in software configuration management device 200.

[0040] FIG. 4 is a flowchart showing the process of extracting words and phrases from design information, which is executed in step S200 of FIG.

[0041] In step S210, design information is read from the design information database 173 to obtain the design information of the information system for which software configuration management data is to be created.

[0042] In step S220, predetermined words and phrases are extracted from the design information read in step S210 from the design information database 173. Here, words and phrases corresponding to the functional configurations of each information device in the information system are searched for and extracted from the various sentences and figures acquired as the design information.

[0043] For example, consider a case where the requirements specification for an information system loaded as design information contains a sentence such as, "An on-board unit is composed of a control ECU used to control the vehicle drivetrain and an information ECU used for information and communication functions.... The ECU whose main function is information and communication functions is a TCU...." In this case, the processing in step S220 extracts phrases representing the functional configuration of the information device contained in the sentence, such as "drivetrain," "control ECU," "information and communication function," "information ECU," and "TCU." The information on the phrases to be extracted may be preset in the software configuration management data creation support device 100 or specified by the user. Alternatively, the phrases may be obtained from an external source, or existing design information and software configuration management data may be compared and analyzed, and the phrases to be extracted may be set based on the results. Various other methods are also possible for setting the phrases to be extracted.

[0044] In step S230, each of the terms extracted in step S220 is written to the design information extraction result database 174. As a result, information on various terms that express the functional configuration of the information devices extracted from the design information is written to the design information extraction result database 174.

[0045] When the process of step S230 is completed, the process of extracting words and phrases from the design information by the design information extraction unit 162 ends, and the process proceeds to step S300 in FIG.

[0046] FIG. 5 is a flowchart showing the process flow of class candidate selection executed in step S300 of FIG.

[0047] In step S310, the abstract class database 171 and the concrete class database 172 are read, and attribute information of the abstract classes and concrete classes recorded in these databases is obtained.

[0048] In step S320, the design information extraction result database 174 is read, and information on each word or phrase extracted from the design information by the design information extraction unit 162 is obtained.

[0049] In step S330, the attribute information of the abstract class or concrete class obtained in step S310 is compared with each extracted phrase obtained in step S320, and partial matching is performed between them. In the following step S340, based on the partial matching results of step S330, the classes that partially match the extracted phrases are selected as abstract class candidates or concrete class candidates in the software configuration management data of the information system for which design information was collected in step S100 of Figure 3.

[0050] Specifically, in step S330, it is determined whether part or all of the content of each class recorded in abstract class database 171 and concrete class database 172 matches any of the extracted phrases. If a class that matches the extracted phrase is found, in step S340, the class is selected as an abstract class candidate or a concrete class candidate. That is, if the class that matches the extracted phrase is an abstract class, the class is selected as an abstract class candidate for the information system, and if the class that matches the extracted phrase is a concrete class, the class is selected as a concrete class candidate for the information system.

[0051] When the process of step S340 is completed, the class candidate selection process by the class candidate selection unit 163 ends, and the process proceeds to step S400 in FIG.

[0052] FIG. 6 is a flowchart showing the flow of the depth-first software configuration management data creation process executed in step S500 of FIG.

[0053] In step S501, class candidates are presented to the user by displaying the top-level abstract class candidates on terminal device 400. Here, of the abstract class candidates selected in step S340 of Fig. 5, one or more abstract class candidates that are located at the top level in the hierarchical structure of the software configuration management data are displayed on terminal device 400 as the top-level abstract class candidates.

[0054] In step S502, a top-level abstract class in the software configuration management data is selected based on the top-level abstract class candidates displayed in step S501. Here, for example, the abstract class candidate selected by the user from one or more abstract class candidates displayed on terminal device 400 in step S501 is selected as the top-level abstract class.

[0055] In step S503, class candidates are presented to the user by displaying on terminal device 400 lower class candidates for the class candidate displayed immediately before. Here, among the abstract class candidates or concrete class candidates selected in step S340 of FIG. 5, one or more abstract class candidates or concrete class candidates that are located in the next hierarchy level of the hierarchy for which an abstract class candidate was selected in the immediately preceding step S502 or step S505 in the hierarchical structure of the software configuration management data are displayed on terminal device 400 as lower class candidates. That is, when the processing of step S503 is performed for the first time, each abstract class candidate or each concrete class candidate that belongs to a hierarchy level one level lower than the top-level abstract class candidate presented in the immediately preceding step S501 is presented to the user as the lower class candidate. On the other hand, when the processing of step S503 is performed for the second or subsequent times, each abstract class candidate or each concrete class candidate that belongs to a hierarchy level one level lower than the abstract class candidate presented in the previous step S503 is presented to the user as the lower class candidate.

[0056] In step S504, it is determined whether the lower class candidate displayed in the immediately preceding step S503 is a concrete class candidate. If a concrete class candidate was displayed in the immediately preceding step S503, the process proceeds to step S506. If the lower class candidate is not a concrete class candidate, i.e., if the lower class candidate is an abstract class candidate, the process proceeds to step S505.

[0057] If the process proceeds from step S504 to step S505, in step S505 a lower abstract class in the software configuration management data is selected based on the abstract class candidates displayed as lower class candidates in step S503. Here, for example, the abstract class candidate selected by the user from one or more abstract class candidates displayed on terminal device 400 in step S503 is selected as the lower abstract class. Once a lower abstract class is selected in step S505, the process returns to step S503 and repeats the above-described process.

[0058] If the process proceeds from step S504 to step S506, in step S506 a concrete class in the software configuration management data is selected based on the concrete class candidates displayed as lower class candidates in step S503. Here, for example, the concrete class candidate selected by the user from one or more concrete class candidates displayed on terminal device 400 in step S503 is selected as the concrete class. After the concrete class is selected in step S505, the process proceeds to step S507.

[0059] By performing the processing of steps S501 to S506 described above, the management data creation unit 164 can sequentially present multiple class candidates to the user in an order that corresponds to the hierarchical structure of the software configuration management data, from the abstract class candidate at the highest level to the concrete class candidate.

[0060] In step S507, instance information corresponding to the attribute information of the concrete class selected in step S506 is input. Here, for example, the user operates terminal device 400 to input the instance information, thereby enabling the instance information to be set for each information device in the information system for each class selected in steps S502, S505, and S506.

[0061] In step S508, it is determined whether there are any abstract class candidates other than the abstract class candidates that have been processed so far. If there are any other abstract class candidates, that is, if there are any abstract class candidates among the abstract class candidates selected by the class candidate selection unit 163 that have not been selected as abstract classes or excluded from abstract classes, the process returns to step S503 and continues the above-mentioned processing. On the other hand, if there are no other abstract class candidates, the depth-first software configuration management data creation process by the management data creation unit 164 ends.

[0062] FIG. 7 is a flowchart showing the flow of the software configuration management data creation process that prioritizes breadth, which is executed in step S600 of FIG.

[0063] In step S601, class candidates are presented to the user by displaying the top-level abstract class candidates on terminal device 400. Here, as in step S501 in Fig. 6, one or more abstract class candidates located at the top level in the hierarchical structure of the software configuration management data from among the abstract class candidates selected in step S340 in Fig. 5 are displayed on terminal device 400 as top-level abstract class candidates.

[0064] In step S602, a top-level abstract class in the software configuration management data is selected based on the top-level abstract class candidates displayed in step S601. Here, for example, the abstract class candidate selected by the user from among one or more abstract class candidates displayed on terminal device 400 in step S601 is selected as the top-level abstract class.

[0065] In step S603, it is determined whether there are any other top-level abstract class candidates in addition to the top-level abstract class candidates that have been processed up to this point. If there are any other top-level abstract class candidates, that is, if there are any abstract class candidates among the abstract class candidates in the top hierarchy selected by class candidate selection unit 163 that have not been selected as the top-level abstract class and have not been excluded from the top-level abstract class, the process returns to step S602 and continues selecting the top-level abstract class. On the other hand, if there are no other top-level abstract class candidates, the process proceeds to step S604.

[0066] In step S604, class candidates are presented to the user by displaying on terminal device 400 lower class candidates for the class candidate displayed immediately before. Here, as in step S503 of FIG. 6, among the abstract class candidates or concrete class candidates selected in step S340 of FIG. 5, one or more abstract class candidates or concrete class candidates that are located in the next hierarchy level below the hierarchy level for which an abstract class candidate was selected in the immediately preceding step S602 or step S606 in the hierarchical structure of the software configuration management data are displayed on terminal device 400 as lower class candidates. That is, when step S604 is executed for the first time, each abstract class candidate or each concrete class candidate that belongs to a hierarchy level one level lower than the top-level abstract class candidate presented in the immediately preceding step S601 is presented to the user as the lower class candidate. On the other hand, when step S604 is executed for the second or subsequent times, each abstract class candidate or each concrete class candidate that belongs to a hierarchy level one level lower than the abstract class candidate presented in the previous step S604 is presented to the user as the lower class candidate.

[0067] In step S605, it is determined whether the lower class candidate displayed in the immediately preceding step S604 is a concrete class candidate. If a concrete class candidate was displayed in the immediately preceding step S604, the process proceeds to step S608. If the lower class candidate is not a concrete class candidate, i.e., if it is an abstract class candidate, the process proceeds to step S606.

[0068] If the process proceeds from step S605 to step S606, in step S606 a lower abstract class in the software configuration management data is selected based on the abstract class candidates displayed as lower class candidates in step S604. Here, for example, the abstract class candidate selected by the user from among one or more abstract class candidates displayed on terminal device 400 in step S604 is selected as the lower abstract class.

[0069] In step S607, it is determined whether there are any abstract class candidates other than the abstract class candidates that have been processed so far. If there are any other abstract class candidates, that is, if there are any abstract class candidates among the abstract class candidates selected by class candidate selection unit 163 that have not been selected as abstract classes and have not been excluded from abstract classes, the process returns to step S604 and continues the above-mentioned processing. On the other hand, if there are no other abstract class candidates, the process proceeds to step S608.

[0070] If the process proceeds from step S605 or S607 to step S608, in step S608 a concrete class in the software configuration management data is selected based on the concrete class candidates displayed as lower class candidates in step S604. Here, for example, the concrete class candidate selected by the user from one or more concrete class candidates displayed on terminal device 400 in step S604 is selected as the concrete class. Once a concrete class is selected in step S608, the process proceeds to step S609.

[0071] By performing the processing of steps S601 to S608 described above, the management data creation unit 164 can sequentially present multiple class candidates to the user in an order that corresponds to the hierarchical structure of the software configuration management data, from the abstract class candidate at the highest level to the concrete class candidate.

[0072] In step S609, instance information corresponding to the attribute information of the concrete class selected in step S608 is input. Here, for example, the user operates terminal device 400 to input the instance information, thereby enabling the instance information to be set for each information device in the information system for each class selected in steps S602, S606, and S608.

[0073] After the process of step S609 is performed, the software configuration management data creation process with breadth priority by the management data creation unit 164 ends.

[0074] Next, the abstract class database 171, the concrete class database 172, the design information database 173, and the design information extraction result database 174 will be described in detail.

[0075] Fig. 8 is a diagram showing an example of abstract class database 171. As shown in Fig. 8, abstract class database 171 is configured by recording information shown in each column of reference numerals 1711 to 1714, for example, for a plurality of records of abstract classes set for each functional configuration handled by each information device in the information system.

[0076] Column 1711 stores information about the abstract class names when the functional configuration of each information device is represented in a hierarchical structure. Column 1712 stores attribute information corresponding to each abstract class. Column 1713 stores information indicating the selection method used when creating software configuration management data for lower classes of each abstract class. Column 1714 stores information indicating the lower classes of each abstract class.

[0077] Fig. 9 is a diagram showing an example of the concrete class database 172. As shown in Fig. 9, the concrete class database 172 is configured by recording information shown in each of columns 1721 to 1723, for example, for a plurality of records of concrete classes set for each functional configuration handled by each information device of the information system.

[0078] Column 1721 records information about concrete class names when the functional configuration of each information device is represented in a hierarchical structure. Column 1722 records attribute information corresponding to each concrete class. Column 1723 records information indicating that each concrete class does not have a lower class.

[0079] Fig. 10 is a diagram showing an example of instance information data stored in the instance information database 202. The instance information database 202 records instance information corresponding to each information device of the information system. Fig. 10 shows an example of instance information data 2021 corresponding to a TCU (Telematics Control Unit). This instance information data 2021 shows instance information related to software possessed by the TCU for each function of the concrete class to which the TCU belongs and each function of an abstract class in a higher hierarchy than the concrete class to which the TCU belongs.

[0080] Fig. 11 is a diagram showing an example of class relation data stored in class relation database 201. Class relation data representing the hierarchical structure of software configuration management data corresponding to each information device in the information system is recorded in class relation database 201. Fig. 11 shows an example of class relation data 2011 corresponding to a TCU. This class relation data 2011 represents the hierarchical structure of the software configuration management data of the TCU, from the abstract class at the top level to the concrete class at the bottom level.

[0081] 12 is a sequence diagram showing the processing flow when software configuration management data creation support device 100 creates software configuration management data using attribute information and instance information provided by end product manufacturer 1100, which produces the information system, first-order supplier (Tier 1) 1101, which supplies parts to end product manufacturer 1100, and second-order supplier (Tier 2) 1102, which supplies parts to first-order supplier 1101. The processing shown in the sequence diagram of FIG. 12 is executed, for example, when end product manufacturer 1100, who is a user of software configuration management system 1, uses terminal device 400 to send information about the information system to software configuration management data creation support device 100 and also sends part requirement specifications to first-order supplier 1101.

[0082] When design information is transmitted from the final product manufacturer 1100, the software configuration management data creation support device 100 collects the design information using the design information collection unit 161 (step S100). Then, the design information extraction unit 162 extracts predetermined words and phrases from the collected design information (step S200), and the class candidate selection unit 163 selects class candidates (step S300).

[0083] When the required specifications are transmitted from the final product manufacturer 1100, the primary supplier 1101 receives them using the terminal device 400. Then, the primary supplier 1101 transmits the required specifications of the part to the secondary supplier 1102.

[0084] When the required specifications are sent from the primary supplier 1101, the secondary supplier 1102 receives them using the terminal device 400. Then, the secondary supplier 1102 prepares attribute information and instance information of the parts it will supply and sends them to the primary supplier 1101.

[0085] When the attribute information and instance information are transmitted from the secondary supplier 1102, the primary supplier 1101 receives them using the terminal device 400. The primary supplier 1101 then prepares attribute information and instance information for the parts it supplies, including the received attribute information and instance information, and transmits it to the final product manufacturer 1100.

[0086] When the attribute information and instance information are sent from the primary supplier 1101, the final product manufacturer 1100 receives them using the terminal device 400. The final product manufacturer 1100 then prepares attribute information and instance information for each component of the information system, which is the final product, including the received attribute information and instance information, and sends this to the software configuration management data creation support device 100.

[0087] When attribute information and instance information are sent from end-product manufacturer 1100, software configuration management data creation support device 100 uses this information to create depth-first software configuration management data (step S500) or breadth-first software configuration management data (step S600) through management data creation unit 164. This creates class relationship data and instance information data for each component of the information system, generating software configuration management data.

[0088] In the sequence diagram described above, there are cases where the end product manufacturer 1100 is unable to obtain attribute information and instance information of supplied parts from the primary supplier 1101 or secondary supplier 1102. In such cases, the end product manufacturer 1100 must prepare attribute information and instance information for each part of the information system at its own responsibility, which increases the workload. Therefore, it is preferable for the end product manufacturer 1100 to obtain a sufficient understanding from the primary supplier 1101 and secondary supplier 1102 regarding the provision of attribute information and instance information.

[0089] Next, details of the impact extent estimation device 300 will be described. Fig. 13 is a functional block diagram of the impact extent estimation device 300. Fig. 13 also shows a functional block diagram of the software configuration management device 200, which is the same as that shown in Fig. 2. Fig. 14 is a diagram showing an example of the configuration of a computer that constitutes the impact extent estimation device 300 of this embodiment.

[0090] The influence extent estimation device 300 is connected to the software configuration management device 200 and the terminal device 400 via a network 500. The number of terminal devices 400 may be two or more.

[0091] The terminal device 400 transmits cybersecurity information describing the security risks of resources that realize a given function to the impact extent estimation device 300. Here, the term "resource" encompasses software and hardware. The cybersecurity information is information that includes character strings. The impact extent estimation device 300 identifies modules and components that are affected by the security risks of the resources and outputs the information to the terminal device 400 as impact extent information.

[0092] The terminal device 400 is a terminal operated by a manufacturer that manufactures a product, a vendor that sells a product, or the like, and is, for example, a general-purpose computer or a smartphone.

[0093] The impact extent estimation device 300 determines the impact extent of a security risk on a product. Here, the impact extent of a product refers to a group of components (elements) that are affected by a security risk among the components (elements) that make up the product. The impact extent estimation device 300 is realized using a computer with a configuration such as that shown in FIG. 14, for example. The number of computers that make up the impact extent estimation device 300 may be one, or two or more.

[0094] The influence range estimation device 300 includes a processor 301, a main memory device 302, a secondary memory device 303, and a network interface 304. The hardware elements are connected to each other via an internal bus 305.

[0095] The processor 301 executes a program stored in the main memory device 302. The processor 301 executes processing in accordance with the program, thereby operating as a functional unit (module) that realizes a specific function. In the following explanation, when a processing is explained using a functional unit as the subject, it indicates that the processor 301 is executing a program that realizes the functional unit.

[0096] The main memory device 302 is a dynamic random access memory (DRAM) that stores programs executed by the processor 301 and data used by the programs. The main memory device 302 is also used as a work area.

[0097] The secondary storage device 303 is a HDD, SSD, or the like, and permanently stores data. The programs and data stored in the main storage device 302 may be stored in the secondary storage device 303. In this case, the processor 301 reads the programs and information from the secondary storage device 303 and loads them into the main storage device 302.

[0098] The network interface 304 is an interface for connecting to an external device via a network.

[0099] The hardware configuration of the influence extent estimation device 300 is merely an example and is not limited to this. The influence extent estimation device 300 may include input devices such as a keyboard, a mouse, a touch panel, etc., and may also include output devices such as a display and a printer.

[0100] The influence extent estimation device 300 has, as shown in FIG. 13, an information acquisition unit 310, an information extraction unit 311, and an influence extent estimation unit 312 as functional units.

[0101] The information acquisition unit 310 acquires cybersecurity information. The information extraction unit 311 extracts information about resources that are subject to security risks from the cybersecurity information. For example, the name of vulnerable software and the details of the vulnerability are extracted. The information extraction unit 311 also generates a search key from the extracted information and outputs it to the impact scope estimation unit 312. The impact scope estimation unit 312 estimates the impact scope of the product based on the search key and outputs the estimation result as impact scope information. The impact scope estimation unit 312 includes a function determination unit 320 and a search unit 321.

[0102] It should be noted that with regard to each functional unit included in the influence extent estimation device 300, multiple functional units may be combined into one functional unit, or one functional unit may be divided into multiple functional units for each function.

[0103] FIG. 15 is a diagram illustrating an example of the impact range information.

[0104] The impact range information includes, for example, a table 800 as shown in Fig. 15. The table 800 stores entries each including a module name 801 and an impact range 802.

[0105] The module name 801 is a field for storing the name (identification information) of the module including the component affected by the security risk. The impact range 802 is a field for storing the name (identification information) of the component affected by the security risk.

[0106] 16A and 16B are sequence diagrams illustrating an example of the processing flow of the influence range estimation device 300 of this embodiment.

[0107] In this embodiment, a use case in which a vendor and a product manufacturer use the influence extent estimation device 300 will be described as an example.

[0108] First, a use case shown in Fig. 16A will be described. A vendor collects cybersecurity information from the Web or the like, and operates terminal device 400-1 to transmit the cybersecurity information to influence extent estimation device 300 (step S1101).

[0109] When the impact extent estimation device 300 receives the cybersecurity information, it executes an impact extent estimation process (step S1102). The impact extent estimation device 300 transmits impact extent information as a processing result to the terminal device 400-1 operated by the vendor (step S1103). The impact extent estimation process is executed for each product handled by the vendor.

[0110] The vendor operates terminal device 400-1 to generate a report using the impact range information (step S1104), and transmits the report to terminal device 400-2 operated by the product manufacturer (step S1105). Note that the report does not necessarily need to be generated using terminal device 400-1.

[0111] A use case shown in Fig. 16B will be described. A product manufacturer collects cybersecurity information from the Web or the like, and operates terminal device 400-2 to transmit the cybersecurity information to influence extent estimation device 300 (step S1201).

[0112] When the impact extent estimation device 300 receives the cybersecurity information, it executes an impact extent estimation process (step S1202). The impact extent estimation device 300 transmits impact extent information as a processing result to the terminal device 400-2 operated by the product manufacturer (step S1203). The impact extent estimation process is executed for all products.

[0113] 17 is a flowchart illustrating an example of the influence extent estimation process executed by the influence extent estimation device 300. Here, it is assumed that there is one target product.

[0114] The information extraction unit 111 acquires the cybersecurity information received by the information acquisition unit 310 (step S1401).

[0115] The information extraction unit 311 extracts information about security risks from the cybersecurity information and also extracts a search key from the extracted information (step S1402). In this embodiment, it is assumed that a search key representing a resource is extracted from the cybersecurity information. Note that a known method can be used to extract terms from documents, so detailed explanations will be omitted.

[0116] The function determining unit 320 of the impact extent estimating unit 312 determines whether or not there is a resource (impacted resource) that is affected by the security risk, based on the search key (step S1403).

[0117] Specifically, function determination unit 320 refers to instance information database 202 stored in software configuration management device 200 and searches for instance information that includes information that matches the search key. If instance information that includes information that matches the search key exists, function determination unit 320 determines that an affected resource exists.

[0118] If it is determined that the affected resource does not exist, the affected extent estimation unit 312 transmits error information to the terminal device 400 (step S1404) and terminates the affected extent estimation process. For example, it is possible to transmit error information indicating that there is no corresponding resource, or error information prompting confirmation of components related to the resource.

[0119] If it is determined that an affected resource exists, the function determining unit 320 of the influence extent estimating unit 312 sets a reference module and a target function (step S1405).

[0120] Specifically, function determination unit 320 sets the function corresponding to the retrieved instance information as the target function. Furthermore, function determination unit 320 refers to class relation database 201 stored in software configuration management device 200, searches for an abstract class that is in a higher hierarchy than the concrete class corresponding to the retrieved instance information, and determines the module corresponding to the retrieved abstract class as the reference module.

[0121] The search unit 321 of the influence range estimation unit 312 determines whether the reference module has the target function (step S1406).

[0122] Specifically, the search unit 321 refers to the class relation database 201 and acquires the functions possessed by the reference module. This allows the functions possessed by the reference module to be understood. The search unit 321 determines whether the target function is included in the functions possessed by the reference module. If the target function is included in the functions possessed by the reference module, the search unit 321 determines that the reference module has the target function.

[0123] If it is determined that the reference module does not have the target function, the search unit 321 of the influence extent estimation unit 312 updates the reference module (step S1407), and the process returns to step S1406.

[0124] Specifically, search unit 321 refers to class relation database 201 and searches for an abstract class that is in a higher hierarchy than the abstract class corresponding to the reference module. Function determination unit 320 sets the module corresponding to the searched abstract class as a new reference module.

[0125] The processing in steps S1406 and S1407 corresponds to processing for searching the inheritance relationship in the tree structure from the lower layer to the upper layer, starting from a module having an inheritance relationship with a component having a function realized by an affected resource.

[0126] If it is determined that the reference module has the target function, the search unit 321 of the influence range estimation unit 312 identifies a component by referring to the class relation database 201 based on the reference module (step S1408).

[0127] Specifically, the search unit 321 identifies the part by searching the inheritance relationship of the tree structure from the upper layer to the lower layer, starting from the reference module.

[0128] The influence extent estimation unit 312 generates influence extent information based on the identified component (step S1409), and ends the influence extent estimation process.

[0129] FIG. 18 is a diagram showing an example of a screen displayed on the terminal device 400 based on the influence extent information transmitted from the influence extent estimation device 300. As shown in FIG.

[0130] 18 is displayed on the terminal device 400. The screen 1000 includes a cybersecurity information column 1010, an impact range column 1020, and a resource information column 1030.

[0131] The cybersecurity information column 1010 is a column for selecting cybersecurity information and issuing instructions to execute the business condition range estimation process, and includes an input field 1011 and an execute button 1012. The input field 1011 is a field for inputting cybersecurity information. For example, a file or text is input into the input field 1011. The execute button 1012 is an operation button for issuing instructions to execute the impact range estimation process.

[0132] The impact range column 1020 is a column that displays the results of the estimation process on the impact range, such as impact range information. In Fig. 18, a tree structure is displayed on which the impact range of the product is superimposed. The diagonal-lined boxes represent components that have impact resources, and the diagonal-lined area indicates the search range starting from the module that has the target function. The search results of step S1403 are superimposed on the boxes corresponding to the components that have impact resources.

[0133] The resource information column 1030 is a column for a user who has referred to the impact range column 1020 to register new resource information, and includes an addition table 1031, an add button 1032, and a register button 1033. The addition table 1031 is a table for setting information to be registered as resource information. The add button 1032 is an operation button for adding an entry to the addition table 1031. The register button 1033 is an operation button for registering the contents of the addition table 1031.

[0134] Users such as vendors can add and update resource information by referring to the impact scope information, etc. When resource information is added or updated, the results are reflected in the class relation database 201 and the instance information database 202. This makes it possible to estimate the impact scope of a product more accurately and speed up the estimation process.

[0135] (Summary) In the prior art, in order to identify components that are affected by the security risk of a resource, it was necessary to fully understand the relationship between the resource and the component. On the other hand, in the present invention, if the relationship between the resource and the component is partially understood, it is possible to identify components that are affected by the security risk of the resource.

[0136] According to the embodiment of the present invention described above, the following advantageous effects can be obtained.

[0137] (1) The software configuration management data stored in software configuration management device 200 has a data structure for managing the software configuration of an information system having multiple information devices. This data structure is stored in class relation database 201 and includes class relation data that represents the functional configuration of each information device in the information system in a hierarchical structure consisting of concrete classes at the lowest level and one or more abstract classes at higher levels. This makes it possible to realize a data structure that can reliably manage the software configuration of an information system configured by combining one or more pieces of software and / or one or more information devices.

[0138] (2) The above data structure further includes instance information data stored in the instance information database 202 and representing instance information related to software owned by the information device. This instance information data includes instance information related to the software owned by the information device for each functional configuration of the concrete class to which the information device belongs and for each functional configuration of an abstract class that is in a higher hierarchy than the concrete class to which the information device belongs. This allows the instance information to represent details of the software for each information device included in the information system.

[0139] (3) Software configuration management data creation support device 100 supports the creation of software configuration management data for managing the software configuration of an information system having multiple information devices. Software configuration management data creation support device 100 includes design information collection unit 161, which collects design information for the information system; design information extraction unit 162, which extracts predetermined terms from the design information; class candidate selection unit 163; and management data creation unit 164. Class candidate selection unit 163 compares the terms extracted by design information extraction unit 162 with attribute information preset according to the functional configuration of the information system. Based on the comparison results, class candidates corresponding to concrete or abstract classes are selected when the functional configuration of the information devices in the information system is represented in a hierarchical structure consisting of a concrete class at the lowest level and one or more abstract classes at higher levels. Management data creation unit 164 presents the class candidates to the user and creates software configuration management data based on the user's selection of the class candidates. This allows the user to appropriately support the creation of software configuration management data for reliably managing the software configuration of an information system configured by combining one or more pieces of software and / or one or more information devices.

[0140] (4) The class candidate selection unit 163 selects concrete class candidates corresponding to concrete classes and abstract class candidates corresponding to abstract classes as class candidates (step S340). The management data creation unit 164 sequentially presents multiple class candidates to the user in an order corresponding to the hierarchical structure, from the abstract class candidate at the highest level to the concrete class candidate (steps S501 to S506, steps S601 to S608). This allows the user to appropriately support the creation of software configuration management data that represents the functional configuration of information devices in an information system in a hierarchical structure consisting of a concrete class at the lowest level and one or more abstract classes at higher levels.

[0141] (5) The management data creation unit 164 can selectively perform either depth-first processing (step S500), which prioritizes the depth of the hierarchical structure and sequentially presents multiple class candidates to the user, or breadth-first processing (step S600), which prioritizes the breadth of the hierarchical structure and sequentially presents multiple class candidates to the user. This allows class candidates to be presented to the user in a way appropriate for the situation when creating software configuration management data.

[0142] (6) When the user selects a concrete class candidate (steps S506 and S608), the management data creation unit 164 prompts the user to input instance information about the software in the information device (steps S507 and S609), and creates software configuration management data that includes this instance information. This allows the user to input the instance information required to create software configuration management data at the appropriate time.

[0143] (7) The management data creation unit 164 can acquire instance information about software owned by an information device from the manufacturer of the information device, or from the manufacturer of a higher-level device or information system that includes the information device, and create software configuration management data that includes this instance information, as shown in Figure 12. In this way, the instance information required to create software configuration management data can be acquired easily and reliably.

[0144] It goes without saying that the present invention is not limited to the above-described embodiments and can be modified in various ways without departing from the spirit of the present invention. For example, the above-described embodiments have been described in detail to clearly explain the present invention, and the present invention is not necessarily limited to those having all of the described configurations. Furthermore, it is possible to add, delete, or replace part of the configuration of the above-described embodiments with other configurations.

[0145] Furthermore, the above-mentioned configurations, functional units, processing units, processing means, etc. may be partially or entirely implemented in hardware, for example, by designing them as integrated circuits. The above-mentioned configurations, functions, etc. may also be implemented in software, with a processor interpreting and executing a program that implements each function. Information such as the programs, tables, and files that implement each function can be stored in a memory, a hard disk, a recording device such as an SSD, an IC card, an SD card, a DVD, or other recording media.

[0146] In addition, in the above figures, the control lines and information lines shown are those that are considered necessary for explanation, and do not necessarily show all the control lines and information lines that are actually implemented. For example, it can be considered that almost all components are actually connected to each other.

[0147] The above-described layout of the various functional units, processing units, and databases is merely an example, and may be changed to an optimal layout in terms of the performance, processing efficiency, communication efficiency, etc., of the hardware and software included in these devices. [Explanation of symbols]

[0148] 1: software configuration management system, 100: software configuration management data creation support device, 110: control unit, 120: memory unit, 130: input unit, 140: output unit, 150: communication unit, 160: program storage unit, 161: design information collection unit, 162: design information extraction unit, 163: class candidate selection unit, 164: management data creation unit, 170: data storage unit, 171: abstract class database, 172: concrete class database, 173: design information database, 174: design information extraction result database, 200: software configuration management device, 201: class relation database, 202: instance information database, 300: impact scope estimation device, 310: information acquisition unit, 311: information extraction unit, 312: impact scope estimation unit, 320: function determination unit, 321: search unit, 400: terminal device, 500: network

Claims

1. 1. An apparatus for supporting creation of software configuration management data for managing the software configuration of an information system having a plurality of information devices, comprising: a design information collection unit that collects design information of the information system; a design information extraction unit that extracts predetermined words and phrases from the design information; a class candidate selection unit that compares the term extracted by the design information extraction unit with attribute information that is preset in accordance with the functional configuration of the information system, and selects, based on the comparison result, a class candidate that corresponds to the concrete class or the abstract class when the functional configuration that the information device is responsible for in the information system is represented in a hierarchical structure consisting of a concrete class at the lowest hierarchy and one or more abstract classes at higher hierarchy levels; a management data creation unit that presents the class candidates to a user and creates the software configuration management data based on a selection operation by the user for the class candidates.

2. 2. The software configuration management data creation support device according to claim 1, the class candidate selection unit selects, as the class candidates, concrete class candidates corresponding to the concrete classes and abstract class candidates corresponding to the abstract classes; The management data creation unit sequentially presents the class candidates to the user in an order corresponding to the hierarchical structure, from the abstract class candidate at the top level to the concrete class candidate.

3. 3. The software configuration management data creation support device according to claim 2, the management data creation unit is capable of selectively executing either a depth-first process in which the class candidates are sequentially presented to the user, giving priority to the depth of the hierarchical structure, or a breadth-first process in which the class candidates are sequentially presented to the user, giving priority to the breadth of the hierarchical structure.

4. 3. The software configuration management data creation support device according to claim 2, When the user performs a selection operation on the concrete class candidate, the management data creation unit prompts the user to input instance information related to the software owned by the information device, and creates the software configuration management data including the instance information.

5. 3. The software configuration management data creation support device according to claim 2, The management data creation unit obtains instance information related to software owned by the information device from the manufacturer of the information device, a higher-level device that includes the information device, or the information system, and creates the software configuration management data including the instance information.

6. A method for supporting the creation of software configuration management data for managing the software configuration of an information system having multiple information devices, using a software configuration management data creation support device, comprising: collecting design information for the information system by the software configuration management data creation support device; extracting predetermined words and phrases from the collected design information by the software configuration management data creation support device; The software configuration management data creation support device compares the extracted phrase with attribute information that is preset according to the functional configuration of the information system; the software configuration management data creation support device selects, based on the results of the comparison, class candidates corresponding to the concrete class or the abstract class when the functional configuration of the information device in the information system is represented in a hierarchical structure consisting of a concrete class at the lowest level and one or more abstract classes at higher levels; the software configuration management data creation support device presents the selected class candidates to a user; a software configuration management data creation support method for creating the software configuration management data by the software configuration management data creation support device based on the user's selection operation for the presented class candidates;

7. 7. The software configuration management data creation support method according to claim 6, further comprising: the software configuration management data creation support device selects, as the class candidates, concrete class candidates corresponding to the concrete classes and abstract class candidates corresponding to the abstract classes; a software configuration management data creation support method, in which the software configuration management data creation support device sequentially presents the class candidates to the user in an order corresponding to the hierarchical structure, from the abstract class candidate in the highest hierarchy to the concrete class candidate.

8. 8. The software configuration management data creation support method according to claim 7, a software configuration management data creation support method in which the software configuration management data creation support device can selectively execute either a depth-first process in which the class candidates are sequentially presented to the user, giving priority to the depth of the hierarchical structure, or a breadth-first process in which the class candidates are sequentially presented to the user, giving priority to the breadth of the hierarchical structure.

9. 8. The software configuration management data creation support method according to claim 7, a software configuration management data creation support device that, when the user selects one of the concrete class candidates, prompts the user to input instance information about the software in the information device, and creates the software configuration management data including the instance information.

10. 8. The software configuration management data creation support method according to claim 7, a software configuration management data creation support method in which the software configuration management data creation support device obtains instance information related to software owned by the information device from the manufacturer of the information device, a higher-level device that includes the information device, or the information system, and creates the software configuration management data including the instance information.

Citation Information

Patent Citations

  • Generation support method for software component

    JP1997069041A

  • Parts list creation support device, parts list creation support method, and parts list creation support program

    WO2022018889A1