Design system, information processing apparatus, program, output device, and method
The design system addresses the slow processing speed in design automation by utilizing a storage unit for associated information and applying conversion rules to similar requirement information, thereby enhancing efficiency and speed.
Patent Information
- Application Number
- JP2023559349
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-11-12
- Publication Date
- 2025-06-18
- Estimated Expiration
- 2041-11-12
AI Technical Summary
The automation of design processes is often time-consuming, and there is a need to improve processing speed.
A design system that includes a storage unit for associated information, a determination unit for selecting between outputting pre-existing configuration information or generating new configuration information, a similar information acquisition unit for selecting similar definition information, and a configuration design unit for generating new configuration information by applying conversion rules to similar requirement information.
The design system improves processing speed by reducing the time required for generating configuration information through the use of pre-existing information and efficient application of conversion rules.
Smart Images

Figure 0007694693000001 
Figure 0007694693000002 
Figure 0007694693000003
Abstract
Description
Technical Field
[0001] The present disclosure relates to a design system, an information processing apparatus, Program , an output device, and a method.
Background Art
[0002] In various business fields, services and products based on designs are provided by designing specific configurations from requirements and the like. As a technology for automating such designs, for example, in the field of ICT (Information and Communication Technology) systems, Patent Document 1 describes that by concretizing abstract configuration information included in the configuration requirements of a system using concretization rules stored in a memory, system configuration information, which is information indicating the configuration of a system that does not include the undetermined part based on the configuration requirements, is generated. Patent Document 2 describes displaying the system requirement similarity, manual work hours, and environment construction instructions used in each project. Patent Document 3 describes that a developer registers basic requirements and functions in a database in advance as basic requirements and basic functions when developing a system, and divides and registers more detailed and specific contents into a plurality of types of objects with different contents and levels (granularities) such as child requirements, system correspondence, and software specifications. Non-Patent Document 1 describes a technology required for performance evaluation of products constituting an ICT system, which is a technology for automatically generating an exhaustive evaluation environment. Non-Patent Document 2 describes a method for autonomously acquiring knowledge required for design by utilizing AI (Artificial Intelligence) and machine learning. Non-Patent Document 3 describes generating a specific service configuration based on abstract customer requirements and the environment in which the service is deployed.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
[0004] [Non-Patent Document 1] Kazuki Tanabe et al., "Automatic Construction Technology for Product Evaluation Environments of ICT Systems Using an Exploratory System Design Method", "IEICE Technical Report", Institute of Electronics, Information and Communication Engineers, March 2021, vol. 120, no. 433, ICM2020-60, pp. 7-12 [Non-Patent Document 2] Takahiro Kuroda et al., "Acquisition of Knowledge Related to the Design of ICT Systems by Machine Learning", "Transactions of the Institute of Electronics, Information and Communication Engineers", Institute of Electronics, Information and Communication Engineers, March 1, 2021, Vol.J104-B, No.3, pp. 140-151 [Non-Patent Document 3] Takayuki Kuroda et al., "A Novel Configuration Designer for IT / NW Services in Heterogeneous Environments", 2019 IEEE Global Communications Conference (GLOBECOM), December 2019 [Summary of the Invention] [Problems to be Solved by the Invention]
[0005] Regarding the automation (including semi-automation) of design, it may take time for processing, and an improvement in processing speed is desired.
[0006] One of the objects of the present disclosure is to provide a design system, an information processing apparatus, Program , an output device, and a method that solve the above problems. [Means for Solving the Problems]
[0007] (1) The present disclosure relates to a design system that performs a configuration generation process for generating configuration information of a design target by repeatedly applying conversion rules to components of the design target for a design target indicated by requirements, the design system including: a storage unit that stores associated information in which a set of definition information consisting of one or more requirement elements, requirement information indicating the requirements represented by a component group, and configuration information indicating a configuration represented by a component group are associated in advance; a determination unit that, when the definition information of the design target is input, determines whether to perform a first process of outputting the configuration information of the associated information based on the associated information or a second process of outputting the configuration information generated by the configuration generation process; a similar information acquisition unit that, when performing the second process, selects similar definition information that is definition information similar to the definition information of the design target based on the associated information, and acquires similar configuration information that is configuration information associated with the similar definition information; a configuration design unit that generates new configuration information by performing the configuration generation process after applying a conversion rule applied to a part of the component group represented by the similar requirement information to the requirement information based on the definition information of the design target; and an information management unit that stores a set including the definition information of the design target and the new configuration information in the storage unit as the associated information.
[0008] (2) The present disclosure relates to a configuration design apparatus that performs a configuration generation process for generating configuration information of a design target by repeatedly applying conversion rules to components of the design target for a design target indicated by requirements, the configuration design apparatus including: a similar information acquisition unit that, when the definition information of the design target is input, acquires similar requirement information that is requirement information associated with definition information similar to the definition information of the design target based on associated information in which a set of definition information consisting of one or more requirement elements, requirement information indicating the requirements represented by a component group, and configuration information indicating a configuration represented by a component group are associated in advance; and a configuration design unit that generates new configuration information by performing the configuration generation process after applying a conversion rule applied to a part of the component group represented by the similar requirement information to the requirement information based on the definition information of the design target.
[0009] (3) This disclosure is a learned model used in a configuration design apparatus that performs a configuration generation process for generating configuration information of a design target by repeatedly applying conversion rules to components of the design target for which requirements are indicated. Based on a set of requirement information indicating the requirements represented by a group of components, and configuration information indicating a configuration represented by a group of components, which is generated by performing machine learning, in related information in which a set of definition information consisting of one or more requirement elements, the requirement information, and the configuration information is associated in advance, a conversion rule applied to a part of the group of components represented by similar requirement information associated with definition information similar to the definition information of the design target is applied to requirement information based on the definition information of the design target, and then the configuration generation process is performed, and a storage medium that stores a learned model in which new configuration information is added.
[0010] (4) This disclosure is an output device that displays configuration information of a design target generated by repeatedly applying conversion rules to components of the design target for which requirements are indicated. The output device includes an input form that receives an input of the requirement elements from a user, and refers to related information in which a set of definition information consisting of one or more requirement elements, requirement information indicating the requirements represented by a first group of graph elements representing nodes or edges, and configuration information indicating a configuration represented by a second group of the graph elements is associated in advance, and displays a graph structure including an image of the graph elements for the configuration information related to the definition information for the requirement elements input to the input form.
[0011] (5) This disclosure is a method in a design system that performs a configuration generation process for generating configuration information of a design target by repeatedly applying conversion rules to components of the design target for which requirements are indicated. The storage medium Stores related information in which a set of definition information consisting of one or more requirement elements, requirement information indicating the requirements represented by a group of components, and configuration information indicating a configuration represented by a group of components is associated in advance. The information processing apparatusWhen the definition information of the design object is input, it is determined whether to perform a first process of outputting the configuration information of the related information based on the related information, or to perform a second process of outputting the configuration information generated by the configuration generation process. The information processing apparatus When performing the second process, similar definition information that is definition information similar to the definition information of the design object is selected based on the related information, and similar requirement information that is requirement information associated with the similar definition information is obtained. The information processing apparatus After applying a conversion rule applied to a part of the component group represented by the similar requirement information to the requirement information based on the definition information of the design object, a new configuration information is generated by performing the configuration generation process, and a set including the definition information of the design object and the new configuration information is stored in a storage unit as the related information.
Effect of the Invention
[0012] According to the present disclosure, the processing speed of the design can be improved.
Brief Description of the Drawings
[0013]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17
Figure 18
Figure 19
Figure 20
Figure 21
Figure 22
Figure 23
Figure 24
Figure 25
Figure 26
Figure 27
Figure 28
Figure 29
Mode for Carrying Out the Invention
[0014] Hereinafter, embodiments of the present invention will be described. However, the following embodiments do not limit the invention according to the claims. Also, not all combinations of features described in the embodiments are essential for the solution means of the invention.
[0015] <First Embodiment> FIG. 1 is a diagram illustrating the appearance of a design device 1 according to the first embodiment. The design device 1 is, for example, a personal computer (PC), and includes a main body 10, input devices 13 such as a keyboard 131 and a mouse 132, and a display 14. The design device 1 automatically (including semi-automatically) performs design. Specifically, the design device 1 generates requirements for the definitions input from the input device 13. The design device 1 is a design system that designs a configuration from the generated requirements and displays it on the display 14. Here, a definition is a set of elements (also referred to as "requirement elements") that make up a requirement. Also, requirements and configurations are described in a graph structure. Requirements are described more abstractly than configurations, and the components (nodes and edges described later) of the graph structure of requirements are converted into the components of the graph structure of configurations.
[0016] In the present embodiment, the design device 1 designs an ICT (Information and Communication Technology) system. Hereinafter, in the case of an ICT system, design, definition, requirement, and configuration are also referred to as "system design", "system definition", "system requirement", and "system configuration", respectively. However, the design targeted by the design device 1 is not limited to a specific field. For example, the design device 1 can be applied to those that perform the design of the configuration from the definition of services, products, etc. In that case, the terms system design, system definition, system requirements, and system configuration of the embodiment may be replaced with service design, service definition, service requirements, and service configuration, or product design, product definition, product requirements, and product configuration.
[0017] Note that the design device 1 is an example of a design system. A part of the functions of the design device 1 may be provided in one or more devices, and the design system may include a plurality of devices. For example, the design device 1 may be configured using a computer such as a workstation, or may be configured using dedicated hardware for the design device 1 such as configured using an SIC (Application Specific Integrated Circuit). Also, the design system may be configured with functions distributed among a plurality of devices such as a cloud computing system.
[0018] FIG. 2 is a diagram showing an example of the screen display according to the present embodiment. This screen display G1 is a graphical user interface (GUI) displayed to the user by the design device 1. The user is, for example, a designer who performs system design. In the screen display G1, the user inputs a system definition into the input form G11. In this input form G11, values are input for some or all of the requirement elements such as system type, bandwidth, availability, or the necessity of backup as the system definition. Here, the system type represents the type of the system, for example, face recognition, ERP (Enterprise Resource Planning), Web, etc. The bandwidth indicates the communication bandwidth, and the unit is, for example, bps (bits per second). The availability indicates an index for continuously operating without stopping the system, and is expressed as an operation rate. Note that the system definition in the input form G11 can add or delete requirement elements. For example, throughput, the presence or absence of a firewall, the presence or absence of a DMZ (DeMilitarized Zone), the presence or absence of an authentication function, the presence or absence of a mail function, etc. are stored in advance, and the user can add the requirement elements of the system definition by selecting the requirement elements.
[0019] For example, after each item of the input form G11 is input according to the selection operation by the user from the options displayed in the form of a pull-down menu, when the button G12 is pressed, a system configuration G13 (referred to as "system configuration G13") corresponding to each input item is displayed. The system configuration G13 is represented by a graph structure based on graph theory. Both the nodes and edges are elements (also referred to as "graph elements") that describe the graph structure. In the present disclosure, the graph elements are also referred to as "components". The graph structure is represented by a "component group" that is a set of components. A node is a point such as a node or a vertex, and in the system configuration G13, it is represented by a circle. An edge is a line such as a branch or a side, and in the system configuration G13 of a directed graph, it is represented by a directed arrow. Note that the graph structure of the system configuration G13 may be an undirected graph. Attribute information is added to each of the nodes and edges. In the system configuration G13, a certain node (node_1) is selected by the user, and the attribute window (Property) of that node is displayed. This attribute window includes an attribute name, a type, and attribute information.
[0020] FIG. 3 is an explanatory diagram for explaining an example of a method for deriving a configuration from the requirements according to the present embodiment. As an example of the method, an example in which a search tree is used will be described. The search tree illustrated in FIG. 3 is a learned model generated or updated by machine learning of the design device 1 and is stored in advance in the design device 1 as integrated data. The design device 1 generates system requirements from the system definition, and converts the generated system requirements into related system configurations on the search tree using the generated system requirements as input. The design device 1 outputs the converted system configuration (see FIG. 2).
[0021] In the search tree, a node represents a system requirement, and an edge represents a conversion rule. The edge is drawn from the node before applying the conversion rule to the node after applying the conversion rule. A plurality of edges starting from one node indicate a plurality of conversion rules applicable to the same system requirement. In the search tree illustrated in FIG. 3, the node N301 is the root. The node N302 is one of the leaves. One path from the root to the leaf, such as the path from the node N301 to the node N302, indicates one process of system design. Applying a conversion rule to a system requirement is referred to as conversion. Also, when it is explicitly stated that a conversion rule may be applied to a system requirement a plurality of times, it is referred to as a conversion sequence. Therefore, a conversion sequence is represented by a series connection of one or more conversions.
[0022] Note that the node at the start of system design is not limited to the root. For example, when a specified system requirement is input to the design device 1, a node other than the root can be the node at the start of system design. The specified system requirement is, for example, a system requirement that matches a node other than the root of the search tree. Also, the node at the end of system design is not limited to the leaf. For example, when one of the conversion rules includes a rule for replacing a specified component with another specified component, it is conceivable that the system design ends when the system requirement is specified to a level where it can be deployed at a node other than the leaf.
[0023] The leaf nodes represent the system configuration. However, nodes at the end of the system design other than leaves (for example, nodes at which system requirements have been specified to a level where they can be deployed among nodes other than leaves) may also be regarded as the system configuration.
[0024] Note that the integrated data is not limited to a tree and can be represented by various valid graphs according to the conversion rules used in the system design. For example, in the case where the same second system requirement can be obtained by applying any of different conversion sequences to the first system requirement, there will be multiple paths from the first node to the second node in the statistical data. In this case, the integrated data may be represented by a lattice. Also, the integrated data may include two or more subgraphs that are independent of each other. By two subgraphs being independent of each other here, it means that there is no path from the first subgraph to the second subgraph and no path from the second subgraph to the first subgraph among the two subgraphs. For example, the integrated data may be represented by a forest. Also, the integrated data may be any one of or a combination of a learned model, a table, or a function other than a search tree or a tree structure, and may include a plurality of conversion processes.
[0025] FIG. 4 is a diagram showing an example of the system requirements according to this embodiment. This system requirement is an example of the nodes of the search tree in FIG. 3 and represents the system requirements of a suspicious person detection system for detecting suspicious persons. The system requirements in FIG. 4 are represented by the graph structure of a directed graph, and attribute information is added to each of the nodes and edges. The system requirements are represented by a "group of components", which is a set of components (graph elements), in the same way as the system configuration G13. Note that the system requirements may also be an undirected graph.
[0026] For example, a node may be added with the name or identification information of the function or device represented by the node as attribute information. In the example of FIG. 4, node N101 represents a camera function (photographing function). Nodes N102 and N109 both represent network switches. Nodes N103 and N110 both represent routers. Node N104 represents a face recognition function. Node N105 represents a cloud platform. Node N106 represents a WAN (Wide Area Network). Node N107 represents a monitor function (image display function). Node N108 represents a server device.
[0027] In addition, the node may also have its abstraction level added as attribute information. In the example of FIG. 4, nodes N101, N104, N105, and N107 are abstract nodes. Meanwhile, nodes N102, N103, N106, N108, N109, and N110 are concrete nodes. Here, an abstract node is a node that can be converted into a node that represents a more concrete configuration than the current node by referring to a predetermined conversion rule at least once. Meanwhile, a concrete node (i.e., a node that has been embodied to a deployable level) is a node that cannot be converted into a node that represents a more concrete configuration even by referring to the conversion rule.
[0028] The design device 1 applies the conversion rule to the system requirements so as to materialize the abstract nodes. For example, the design device 1 may apply a conversion rule to the system requirements illustrated in Fig. 4, which converts the node N101 indicating a camera function into a subgraph including a node of a camera (imaging device) and a node of a control device that controls the camera.
[0029] In the example of FIG. 4, attribute information "join" of each of edges E101, E105, and E109, and attribute information "http" of each of edges E103 and E107 are shown. "Join" indicates an affiliation relationship. For example, the camera function indicated by node N101 is included in a LAN (Local Area Network) formed by a network switch indicated by node N102. The face recognition function indicated by node N104 is provided on a cloud platform indicated by node N105. The monitor function indicated by node N107 is controlled using a server device indicated by node N108.
[0030] "http" indicates communication using HTTP (Hyper Text Transfer Protocol). For example, edge E103 indicates that data is transmitted by HTTP from the camera function indicated by node N101 to the face recognition function indicated by node N105. Edge E107 indicates that data is transmitted by HTTP from the face recognition function indicated by node N105 to the monitor function indicated by node N107.
[0031] In addition, the abstraction level of an edge may also be added as attribute information to the edge. In the example of FIG. 4, edges E101, E103, E105, E107, and E109 are abstract edges. Meanwhile, edges E102, E104, E106, E108, E110, and E111 are concrete edges. Here, an abstract edge is an edge that can be converted into an edge that represents a more concrete configuration than the current one by referring to a predetermined conversion rule at least once. Meanwhile, a concrete edge is an edge that cannot be converted into an edge that represents a more concrete configuration even by referring to the conversion rule (i.e., an edge that has been concretized to a deployable level).
[0032] The conversion rules used by the design apparatus 1 may include a conversion rule for instantiating an edge. FIG. 5 is a diagram showing an example of system requirements before applying the conversion rules according to the present embodiment. In the system requirements shown in FIG. 5, the camera function indicated by node N201 is connected to the workstation indicated by node N202. Further, the face authentication function indicated by node N203 is executed on the workstation indicated by node N204. It is assumed that edge E201 indicates that data is transmitted by HTTP from the camera function indicated by node N201 to the face authentication function indicated by node N203.
[0033] FIG. 6 is a diagram showing an example of system requirements after applying the conversion rules according to the present embodiment. FIG. 6 shows an example in which the conversion rules are applied to the system requirements shown in FIG. 5. In FIG. 6, instead of edge E201 in FIG. 5, edge E211 is provided. It is assumed that edge E211 indicates that data is transmitted using TCP (Transmission Control Protocol) from the workstation indicated by node N202 to the workstation indicated by node N204. That is, FIG. 6 shows that the application of the conversion rules to the system requirements in FIG. 5 has resulted in the conversion of communication using HTTP into communication using TCP.
[0034] However, the system targeted by the design device 1 can be various systems including components. The method of expressing the system targeted by the design device 1 can be various methods of expressing that can identify the types of components and apply conversion rules.
[0035] Among a plurality of predefined conversion rules, depending on which conversion rule the design device 1 applies to the system requirements, and furthermore, depending on the order in which the design device 1 applies a plurality of conversion rules to the system requirements, an event occurs in which the content (configuration) represented by the system requirements after conversion is different. In particular, depending on the conversion rule applied to the system requirements, and furthermore, depending on the order in which a plurality of conversion rules are applied to the system requirements, the design device 1 is divided into a case where the system design is successful and a case where it fails. In other words, the purpose of the design device 1 is to concretize the system requirements to a level where the system can be deployed.
[0036] In the present disclosure, "component" represents a configuration that is maximally concretized to the extent that it cannot be further converted into a more specific configuration according to the configuration of the system desired as an end product, or represents a configuration concretized to a desired extent (for example, a functional module that realizes a certain function). Therefore, the degree of concretization of each component is not uniquely determined. Also, "component" may be defined in units such as "server", or more specifically, may be defined in units such as "CPU", "memory", "hard disk", etc., or more coarsely, may be defined in units such as "system for performing face recognition". Therefore, the unit in which each component is defined is not uniquely determined.
[0037] The design device 1 can also perform system design using the search tree shown in FIG. 3. In this case, the design device 1 acquires the system requirements for the design target. The system requirements are information describing the configuration that the ICT system should have. In the system requirements input to the design device 1, it is possible to abstractly describe the components of the design target. The design device 1 repeatedly applies predefined conversion rules to the acquired system requirements to concretize the system requirements to a level where the system can be deployed. Specifically, the system requirements for design targets are composed of one or more components. The design device 1 selects any one of the components included in the system requirements and applies a conversion rule for concretizing the selected component. The design device 1 performs system design by repeating the selection of components and the application of conversion rules. In this system design, conversion rules are applied to components, and the design target system is concretized in terms of components.
[0038] When the design device 1 always uses this system design, it is necessary to generate and narrow down design plans that require a certain amount of calculation time for each of the system requirements, and there may be a demand for further speeding up the design by shortening the calculation time while maintaining flexibility and labor saving. The design device 1 can achieve further speeding up of the design with the following configuration.
[0039] <Regarding the design device 1> FIG. 7 is an explanatory diagram for explaining the outline of the design device 1 according to the present embodiment. For the design device 1, for example, prior to the design of the system, a plurality of system definitions can be input. The system definition is composed of, for example, a set composed of the types shown in the "requirement elements" on the left side in FIG. 7 and the functional requirements or non-functional requirements related to the types. The user can select a desired system definition to be input from among a plurality of system definitions, which are sets of requirement elements constituting the system requirements, by selecting the values of each predefined requirement element. Also, for each pattern of system definition, the system requirements and the system configuration are associated in advance. Here, the system configuration is a system configuration derived by applying a conversion sequence from the system requirements using a search tree. This set of these system definitions, system requirements, and system configuration is also referred to as "preliminary design information". In the preliminary design information, the system requirements pre-associated with the system definition are also referred to as "preliminary requirements", and the system configuration is also referred to as "preliminary configuration".
[0040] The design device 1 stores pre-design information. When the system definition of the design target is input, the design device 1 outputs (selects) a system configuration corresponding to the input system definition from the pre-stored pre-design information. Thereby, the design device 1 can further speed up the design by shortening the calculation time while maintaining flexibility and labor saving.
[0041] Also, as will be described later, when there is no pre-design information including the system definition of the design target among the pre-stored pre-design information as described above, the design device 1 selects from the system definitions of the pre-stored pre-design information a system definition similar to the system definition of the design target (also referred to as "similar system definition"). The design device 1 generates a new system configuration using the system configuration (similar system configuration) corresponding to the identified similar system definition. In this case, the design device 1 outputs a new system configuration for the system definition of the design target. Since the design device 1 generates a new system configuration using the similar system configuration, even when the system definition of the design target is new, it is possible to further speed up the design by shortening the calculation time as compared with the case where the similar system configuration is not used. Also, in some cases, the design device 1 can perform a more accurate design.
[0042] FIG. 8 is a schematic block diagram showing the configuration of the design device according to the present embodiment. The design device 1 includes a communication unit 11, a storage unit 12, an operation input unit 13, a control unit C, and a display unit 14.
[0043] The communication unit 11 communicates with other devices. For example, the communication unit 11 may receive system requirements for the design target from other devices. The storage unit 12 stores various data. For example, the storage unit 12 stores requirement element information, requirement templates, pre-design information, integrated data, conversion rules, and component evaluation models.
[0044] The requirement element information is a list of requirement elements. The integrated data is information in which system requirements and system configurations are associated as described above. The requirement template is information in which system requirements are pre-associated for each set of system-defined requirement elements and value patterns. The integrated data includes multiple conversion processes from system requirements to system configuration, and system requirements before and after each conversion process. For example, the integrated data may be a pre-trained model (see Figure 3) on which machine learning has been performed, and the configuration may be such that the application order of conversion rules changes according to the results of machine learning. The component evaluation model is information in which system requirements and evaluation values of each component of the system requirements are pre-associated. For example, the component evaluation model is a pre-trained model that outputs the evaluation values of each component associated with the system requirements when the system requirements are input. The storage unit 12 is configured using the storage device provided in the design device 1. However, the storage unit 12 may be an external storage device of the design device 1, or may be a storage device of another device connected via the communication unit 11.
[0045] The operation input unit 13 is an input device such as a keyboard and a mouse, and receives user operations. For example, the operation input unit 13 receives inputs defined by the system or user operations that instruct to start system design. The control unit C controls each part of the design device 1 to perform various processes. The function of the control unit C is executed by the CPU (Central Processing Unit) provided in the design device 1 reading a program from the storage unit 12 and executing it. The display unit 14 is a display (display 14 in Figure 1), and displays various images based on the processing of the control unit C. For example, the display unit 14 displays the screen display in Figure 2. Note that the main body 10 in Figure 1 is configured to include the communication unit 11, the storage unit 12, and the control unit C. In addition, the design device 1 and the main body 10 may be provided with a microphone for inputting sound, a speaker for outputting sound, a camera for imaging an image, and the like.
[0046] The control unit C is composed of an information management unit C11, a reference determination unit C12, a similar design acquisition unit C13, a requirement generation unit C14, a configuration design unit C15, and an output control unit C16.
[0047] The information management unit C11 acquires requirement element information, preliminary design information, integrated data, conversion rules, and component evaluation models, and stores them in advance in the storage unit 12. Note that the information management unit C11 may acquire some or all of these pieces of information from each unit within the design device 1 or from a device other than the design device 1.
[0048] Based on the input system definition of the design target (also referred to as the "input system definition") and the system definition of the preliminary design information (preliminary definition), the reference determination unit C12 determines which system configuration to output as the system configuration of the design target. Specifically, the reference determination unit C12 determines whether to output the preliminary configuration corresponding to the preliminary definition or to generate and output a new system configuration. When it is determined to output the preliminary configuration, the reference determination unit C12 causes the preliminary configuration corresponding to the preliminary definition to be displayed on the display unit 14 as the system configuration of the design target.
[0049] When there is no preliminary definition that matches the input system definition, the similar design acquisition unit C13 selects a preliminary definition (similar system definition) similar to the input system definition from the preliminary design information. The similar design acquisition unit C13 acquires the preliminary design information (referred to as "similar design information") including the selected similar system definition. The process performed by the similar design acquisition unit C1 is also referred to as the similar design selection process.
[0050] Based on the input system definition and the requirement template, the requirement generation unit C14 extracts system requirements. The requirement generation unit C14 displays the extracted system requirements on the display unit 14 as system requirements for editing and accepts editing of components by the user. Editing of components is, for example, addition, deletion, or change of nodes, edges, or their attribute information. The requirement generation unit C14 generates new system requirements based on the editing results. The process performed by the requirement generation unit C14 is also referred to as the requirement generation process. Incidentally, the requirement generation unit C14 may display the preliminary requirements (referred to as "similar system requirements") included in the similar design information as system requirements for editing and let the user edit them. Further, the requirement generation unit C14 may let the user edit the system requirements from the beginning (from a state without components) without displaying the system requirements for editing. Also, the input system definition may be one selected by the user for a set of requirement elements and values.
[0051] Based on the new system requirements (also referred to as "input system requirements") edited by the requirement generation unit C14 as input, the configuration design unit C15 generates a new system configuration based on the similar design information, integrated data, conversion rules, and component evaluation model. The configuration design unit C15 displays the generated new system configuration on the display unit 14 as the system configuration corresponding to the system definition of the design target. The process performed by the configuration design unit C15 is also referred to as the configuration design process.
[0052] Based on the processing of each part of the control unit C, the output control unit C16 causes various images to be displayed on the display unit 14. For example, the output control unit C16 generates data for screen display of the system definition or system configuration (see FIG. 2) or for screen display for editing system requirements and causes the data to be displayed on the display unit 14. Incidentally, the output control unit C16 may generate data of the display image (for example, HTML) and output it to another device. In this case, another device may display the display image on a display or perform output such as printing. Hereinafter, the similar design selection process, requirement generation process, and configuration design process (these processes are also referred to as "design processes") will be described.
[0053] <Similar Design Selection Process> FIG. 9 is a diagram showing an example of the similar design selection process according to the present embodiment. The design device 1 determines whether the designs (system requirements or system configurations) are the same or similar by comparing system definitions. The similar design acquisition unit C13 refers to the system type of the input system definition and extracts predefined definitions including the same system type. The similar design acquisition unit C13 calculates the Hamming distance between the requirement elements and values for the extracted predefined definition and the input system definition. The similar design acquisition unit C13 selects the predefined definition with the smallest calculated Hamming distance as the similar system definition. Note that when the system types are different, the system requirements may be significantly different, so the predefined definitions with different system types are excluded from the comparison targets. In this way, in the similar design selection process, the similar design acquisition unit C13 may require that the values of some requirement elements match.
[0054] <Requirement generation process> FIG. 10 is a diagram showing the requirement generation process according to the present embodiment. For each set of requirement elements and value patterns of the system definition in the requirement template, system requirements are associated. The requirement generation unit C14 extracts system requirements that match the set of requirement elements and values of the input system definition from the requirement template. The extracted system requirements are displayed as system requirements for editing, and the user can edit the components represented by these system requirements. In the example of this figure, the user is performing editing such as adding attribute information to a node and adding a component. Specifically, the user is adding attribute information "minimum bandwidth is 100 Mbps" to the node indicating face authentication. In addition, the user is adding a node indicating a firewall and adding an edge (arrow) starting from the node indicating face authentication. As a result of these edits, the system requirements include a node N301 indicating a firewall, an edge E302 having this node as the end point, and attribute information of the node indicating face authentication.
[0055] <Configuration design process> FIG. 11 is a diagram showing an example of the configuration design process according to the present embodiment. The design device 1 improves the processing speed by reducing the processing for generating a system configuration by reapplying a part of a conversion sequence of a similar system configuration (also referred to as a "reapplication conversion sequence") to input system requirements. The configuration design unit C15 refers to the integrated data of similar system configurations, and extracts, for the conversion sequence from a similar system configuration to a similar system configuration, the system requirements (nodes in FIG. 3) before and after conversion, conversion rules, and evaluation values (these pieces of information are also referred to as "concretization patterns". The evaluation values will be described later) for the conversion sequence. The configuration design unit C15 identifies system requirements to which the concretization pattern of the similar system configuration can be applied for the input system requirements. Specifically, the configuration design unit C15 determines whether there is a target component to which the conversion rule is applied in accordance with the order of the conversion sequence of the similar system configuration. The configuration design unit C15 identifies the system requirements when the target component disappears as the "new design starting point" and the previous system requirements as the "reapplication end point". Here, the target component is, for example, any one of a node, an edge, or an attribute, or a combination thereof, and is stored in advance in the integrated data. As an example of the combination, two nodes and an edge having these as the starting point and the ending point are the target components.
[0056] The example in FIG. 11 shows that the configuration design unit C15 determines that the reapplication conversion sequence P101 of the similar system configuration N401 can be reapplied for the input system requirement N402 and identifies the new design starting point N403. The design device 1 generates a system configuration by performing a configuration generation process for the system requirements of the new design starting point N403. In this way, the design device 1 reapplies the concretization pattern (conversion sequence) of the similar system configuration to generate (design) a system configuration from system requirements to which the pattern cannot be applied. Thereby, the design device 1 can reduce the processing for generating a system configuration as compared with the case of generating a system configuration from input system requirements, and can further improve the processing speed.
[0057] <Processing flow> The processing flow of the design device 1 will be described below. FIG. 12 is a flowchart showing the processing of the design apparatus 1 according to the present embodiment. A system definition to be designed (input system definition) is input to the design apparatus 1 (S11). The reference determination unit C12 determines whether the input system definition input in S11 exists in the pre-design information stored in the storage unit 12, that is, whether it matches the pre-definition (S12). If it exists in the pre-design information (step S12: YES), the display unit 14 outputs the pre-configuration of the pre-design information (step S13). On the other hand, if it does not exist in the pre-design information (step S12: NO), the design apparatus 1 performs design processing (step S2).
[0058] FIG. 13 is a flowchart showing the design processing according to the present embodiment. The design processing is the processing of step S2 in FIG. 12. The similar design acquisition unit C13 selects a similar system definition similar to the input system definition from the pre-design information. The similar design acquisition unit C13 acquires similar design information including the selected similar system definition, that is, the similar system requirements and the similar system configuration corresponding to the similar system definition (step S21). The requirement generation unit C14 extracts system requirements corresponding to the input system definition using a requirement template and accepts editing of parts by the user. The requirement generation unit C14 generates new system requirements based on the editing result (step S22).
[0059] The new system requirements (input system requirements) generated in step S22 are input to the configuration design unit C15 (step S23). The configuration design unit C15 determines whether a part of the conversion sequence of the similar system configuration can be reapplied to the input system requirements, that is, whether there is a target part to which the conversion rule has been applied according to the order of the conversion sequence of the similar system configuration (step S24).
[0060] When a part of the conversion sequence of the similar system configuration can be reapplied (step S24: YES), the configuration design unit C15 applies the conversion rules of the conversion sequence of the similar system configuration up to the reapplication end point. After that, the configuration design unit C15 performs a configuration generation process from the new design start point, and as a result, generates and outputs a new configuration (step S25). On the other hand, when a part of the conversion sequence of the similar system configuration cannot be reapplied (step S24: NO), the configuration design unit C15 performs a configuration generation process from the input system requirements, and as a result, generates and outputs a new configuration (step S26). The outputs of step S25 and step S26 mean that, for example, the configuration design unit C15 causes the display unit 14 to display the generated new system configuration as the system configuration corresponding to the system definition of the design target. The information management unit C11 adds and stores the input system definition of S11 (FIG. 12), the input system requirements of S24, and the new system configuration generated in step S25 or step S26 in the storage unit 12 as preliminary design information.
[0061] <Processing of the configuration design unit> FIG. 14 is a schematic block diagram showing the configuration of the configuration design unit C15 according to the present embodiment. The configuration design unit C15 includes a reapplication determination unit C151, a conversion rule application unit C152, a design evaluation unit C153, a rule application evaluation unit C154, a learning data generation unit C155, and a learning unit C156.
[0062] The reapplication determination unit C151 determines whether a part of the conversion sequence of the similar system configuration can be reapplied to the system requirements. When it is determined that reapplication is possible, the configuration design unit C15 applies the conversion rules of the conversion sequence of the similar system configuration up to the reapplication end point to the input system requirements. After that, the configuration design unit C15 outputs the concretization pattern up to the reapplication end point and the system requirements of the new design start point to the conversion rule application unit C152. On the other hand, when it is determined that reapplication is not possible, the input system requirements are output to the conversion rule application unit C152.
[0063] The conversion rule application unit C152 performs system design by repeatedly applying conversion rules to the components represented by the input system requirements until the design result of the system design is obtained. Success in system design (successfully performing system design) includes obtaining system requirements that are concretized at a level where the system can be deployed. Failure in system design (failing to perform system design) includes the certainty of not obtaining system requirements that are concretized at a level where the system can be deployed. For example, when the system requirements are not concretized to the level where the system can be deployed and there are no applicable conversion rules for the system requirements, the conversion rule application unit C152 determines that the system design has failed.
[0064] Also, depending on the conversion rules, it is conceivable that the application of the conversion rules to the system requirements may fall into a loop. Even when there are applicable conversion rules for the system requirements, if there is no conversion sequence (application of the conversion rules one or more times) that does not form a loop, the conversion rule application unit C152 determines that the system design has failed.
[0065] Even when the conversion rule application unit C152 has repeatedly applied the conversion rules in the system design a predetermined number of times but has not succeeded in the system design, it may be determined that the system design has failed. That is, failure in system design may include the fact that even when the conversion rules in the system design are repeatedly applied a predetermined number of times, the system design is not successful.
[0066] When performing system design, the conversion rule application unit C152 generates history information of the system design. The history information generated by the conversion rule application unit C152 determines the evaluation values of the system requirements and the components included in the system requirements, and is used to generate learning data.
[0067] FIG. 15 is a diagram showing an example of the history information according to the present embodiment. In the example of FIG. 15, the conversion rule application unit C152 generates a configuration path and a component path as the history information of the system design.
[0068] The configuration path shows, in chronological order, the system requirements each time a conversion rule is applied, from the initial system requirements to the final system requirements. Here, the initial system requirements refer to the input system requirements. Here, the final system requirements refer to the system requirements when the design result of the system design is obtained, which is the system configuration. Here, the design result of the system design can be any result that can be evaluated for the system design. In the following, the case where the result of success or failure of the system design is obtained as the design result will be taken as an example for explanation, but it is not limited to this.
[0069] In the example of FIG. 15, the number of times the conversion rule is applied from the initial system requirements to obtaining the final system requirements is set as N times. N is a positive integer. In the example of FIG. 15, the configuration path is composed of time-series data of N + 1 system requirements. The component path is composed of time-series data of N components. The component to be converted at the i-th time shown in the component path is included in the i-th system requirement in chronological order in the configuration path. Here, i is an integer satisfying 1 ≦ i ≦ N.
[0070] The final system requirements correspond to the system requirements after applying the conversion rule N times. Since the result of success or failure of the system design is obtained in the final system requirements, the design evaluation unit C153 can determine the evaluation value for one system design. For example, when the result of the system design is successful, the design evaluation unit C153 may set the evaluation value of one system design to 1, and when the result of the system design is a failure, the design evaluation value of one system design may be set to 0.
[0071] A series of repetitions of component selection and application of the conversion rule from the initial system requirements to the final system requirements is referred to as one system design, or simply system design. The conversion rule application unit C152 may generate history information indicating the history of the applied conversion rules, in addition to the history of the system requirements and the history of the components to which the conversion rule is applied, as the history information of the system design.
[0072] Based on the design result of the system design, the design evaluation unit C153 determines an evaluation value for the system design. As described above, when the conversion rule application unit C152 succeeds in the system design, the design evaluation unit C153 may determine the evaluation value of the system design to be 1. When the conversion rule application unit C152 fails in the system design, the design evaluation unit C153 may determine the evaluation value of the system design to be 0.
[0073] In addition to the success or failure result of the system design, when the conversion rule application unit C152 succeeds in the system design, the design evaluation unit C153 may determine an evaluation value for the system design based on the obtained evaluation index value of the system. Various types of evaluation index values can be used as the evaluation index value of the system here. For example, the design evaluation unit C153 may use, but is not limited to, the evaluation index value of the system's processing speed, the evaluation index value of reliability, the evaluation index value of construction cost, the evaluation index value of operation cost, or a combination thereof.
[0074] The design evaluation unit C153 may store in advance a calculation formula for calculating the evaluation index value of the system based on the components used in the system. Alternatively, the design evaluation unit C153 may obtain in advance by learning a model that outputs the evaluation index value of the system for the input of system requirements.
[0075] Based on the evaluation value for the system design, the rule application evaluation unit C154 determines an evaluation value regarding the conversion of each component in the system design. Specifically, the rule application evaluation unit C154 determines the evaluation value regarding the conversion of each component based on the data obtained by integrating a plurality of histories of the system design for the same component. The data obtained by integrating a plurality of histories of the system design for the same component is integrated data (see Figure 3). Note that when a concretization pattern is input to the conversion rule application unit C152, the integrated data also includes the concretization pattern.
[0076] FIG. 16 is a diagram illustrating the relationship in the integrated data according to this embodiment. This diagram shows the relationship between the system requirements in FIG. 3 and the system requirements after the conversion rule is applied once. In this diagram, similar to FIG. 3, the system requirements correspond to nodes. In the example of FIG. 16, the system requirements before applying the conversion rule include three components P11, P12, and P13. Three conversion rules R11, R12, and R13 can be applied to component P11. One conversion rule R14 can be applied to component P12. Two conversion rules R15 and R16 can be applied to component P13.
[0077] As described above, the edge of the integrated data is a directed edge indicating the conversion rule. The start end (the end on the starting point side) of this directed edge is connected to the node indicating the system requirements before conversion, and the end end (the end on the ending point side) is connected to the node indicating the system requirements after conversion. Also, the edges coming out of one node are grouped for each component included in the system requirements indicated by that node, as illustrated in FIG. 16. This grouping may be shown in the integrated data. For example, as in FIG. 16, the components of the constituent requirements may be shown in the nodes of the integrated data, and the grouping may be shown by connecting the starting point of the edge to any of the components.
[0078] Neither the number of components included in the system requirements nor the number of conversion rules applicable to one component is limited to a specific number. The number of components included in the system requirements may be different before and after the application of the conversion rule. The number of conversion rules applicable to a component may be different for each component.
[0079] Also, in the example of FIG. 16, the configuration design unit C15 is shown to calculate the evaluation value of the system requirements and the evaluation value for each component in the system requirements. The evaluation value of the system requirements is written to the node in the integrated data. On the other hand, the evaluation value for each component in the system requirements is calculated at the time of generating the learning data and incorporated into the learning data. There is no need to provide a storage area for the evaluation value of components in the system requirements in the nodes of the integrated data.
[0080] The learning data generation unit C155 generates learning data for learning the component evaluation model. In particular, the learning data generation unit C155 generates learning data including evaluation values related to component conversion. Specifically, the learning data generation unit C155 generates learning data including system requirements, any one of the components included in the system requirements, and the evaluation value of that component in the system requirements.
[0081] The learning unit C156 learns about the selection of components to which the conversion rule is to be applied based on the learning data including the evaluation values related to component conversion generated by the learning data generation unit C155. Specifically, the learning unit C156 performs learning of the component evaluation model. The learning unit C156 corresponds to an example of a learning means.
[0082] Alternatively, when conversion rules are predetermined in common for the system design performed by the configuration design unit C15, the learning unit C156 may learn about the selection of conversion rules to be applied to the system requirements. That is, the learning unit C156 may learn about the selection of conversion rules applicable to the component, which is further refined from the selection of components included in the system requirements. Specifically, the learning unit C156 may perform learning of a conversion rule evaluation model that receives an input of system requirements and outputs the evaluation value of each conversion rule applicable to the system requirements.
[0083] FIG. 17 is a flowchart showing an example of the configuration generation process according to the embodiment. This flowchart shows the procedure of the configuration generation process and the processing procedure in which the configuration design unit C15 generates learning data and performs learning. In the process of FIG. 17, the configuration design unit C15 acquires system requirements to be learned (step Sa11). The configuration design unit C15 may use the system requirements given as the system requirements for the design target also as the system requirements to be learned. Alternatively, the configuration design unit C15 may acquire the system requirements to be learned separately from the system requirements for the design target.
[0084] Next, the control unit C determines whether the learning end condition is satisfied (step Sa12). The learning end condition may be based on, but is not limited to, learning time, number of learning times (the number of times the loop from step Sa12 to S24 is repeated), magnitude of learning error, etc.
[0085] If the control unit C determines that the end condition is satisfied (step Sa12: YES), the configuration design unit C15 ends the process of FIG. 17. On the other hand, if the control unit C determines that the end condition is not satisfied (step Sa12: NO), the conversion rule application unit C152 performs a system design for the system requirements to be learned (step Sa21). Specifically, the conversion rule application unit C152 repeatedly applies the conversion rule to the system requirements to be learned until a result of system design success or failure is obtained. In system design, the conversion rule application unit C152 generates a configuration path and a component path. Also, when there is no node of integrated data indicating the system requirements that appeared in the system design, the conversion rule application unit C152 adds a node indicating the system requirements that appeared in the system design to the integrated data. The process of step Sa21 is also referred to as "concretization design process".
[0086] FIG. 17 shows an example in which the configuration design unit C15 acquires a plurality of system requirements in step Sa11 and performs a design for each individual system requirement in step Sa21. Alternatively, instead of the configuration design unit C15 acquiring system requirements in step Sa11, one system requirement may be acquired each time step Sa21 is executed, and a system design may be performed for the acquired system requirement.
[0087] In addition, each time the configuration design unit C15 performs the process of step Sa21, it may perform system design for different system requirements. Alternatively, the configuration design unit C15 may perform system design using a conversion sequence different from the conversion sequence in the previous design in step Sa21 for the same system requirements as those for which system design was performed in the process of the previous step Sa21.
[0088] Next, the design evaluation unit C153 determines an evaluation value for the system design performed by the conversion rule application unit C152 (step Sa22). For example, based on whether the conversion rule application unit C152 has succeeded or failed in system design, the design evaluation unit C153 sets the evaluation value for the system design to 1 if the system design is successful, and sets the evaluation value for the system design to 0 if the system design fails. Alternatively, when the conversion rule application unit C152 succeeds in system design, the design evaluation unit C153 may determine the evaluation value for the system design based on the evaluation value of the obtained system.
[0089] Next, the rule application evaluation unit C154 updates the evaluation value of the node of the integrated data based on the evaluation value of the system design determined in step Sa22 (step Sa23). For example, the rule application evaluation unit C154 determines the evaluation value of the node of the integrated data as the largest evaluation value (the highest evaluation value) among the evaluation values of the child nodes of that node. The process of this step Sa23 is also referred to as the "node evaluation process".
[0090] Next, the rule application evaluation unit C154 determines the evaluation value of the components included in the system requirements, determines the evaluation value of each component in the component path, and the learning data generation unit C155 generates and stores learning data (step Sa24). The process of this step Sa24 is also referred to as the "learning data generation process". Then, the learning unit C156 performs learning of the component evaluation model using the learning data generated by the learning data generation unit C155 (step Sa25). As described above, the component evaluation model is a model that outputs an evaluation for each component indicated by the system requirement in response to an input of the system requirement. After step Sa25, the process returns to step Sa12.
[0091] FIG. 18 is a flowchart showing an example of the concretization design process according to the present embodiment. The configuration design unit C15 performs the process of FIG. 18 in step Sa21 of FIG. 17. As described above for step Sa21 of FIG. 17, the configuration design unit C15 generates a configuration path and a component path during system design, and also sets nodes of the integrated data. In the process of FIG. 18, the transformation rule application unit C152 stores the system requirement received in step Sa11 of FIG. 17 in the "current configuration" variable (step Sa101). That is, the transformation rule application unit C152 sets the system requirement received in step Sa11 of FIG. 17 as the initial value of the "current configuration" variable.
[0092] In the process of FIG. 18, the transformation rule application unit C152 determines whether the "current configuration" is registered as a node in the integrated data (step Sa102). For example, the transformation rule application unit C152 compares the system requirement indicated by each node in the integrated data with the "current configuration". Next, the transformation rule application unit C152 determines whether the "current configuration" is registered as a node in the integrated data (step Sa102). For example, the transformation rule application unit C152 compares the system requirement indicated by each node in the integrated data with the "current configuration".
[0093] When it is determined that the "current configuration" is not registered as a node in the integrated data (step Sa102: NO), the conversion rule application unit C152 registers the "current configuration" as a node in the integrated data (step Sa103). To register a system requirement as a node in the integrated data means to newly create a node indicating that system requirement. Next, the conversion rule application unit C152 determines whether the end condition of the system design is satisfied (step Sa104). For example, the conversion rule application unit C152 may determine that the end condition of the system design is satisfied when there is no concretization rule applicable to the "current configuration" or when the "current configuration" has been concretized to the deployable level.
[0094] When it is determined that the end condition is not satisfied (step Sa104: NO), the conversion rule application unit C152 selects one component to be concretized from the "current configuration" and applies the conversion rule (step Sa111). By applying the conversion rule, the conversion rule application unit C152 concretizes the component. The conversion rule application unit C152 stores the system requirement after applying the conversion rule in step Sa111 in the "next configuration" variable (step Sa112).
[0095] Next, the conversion rule application unit C152 determines whether the "next configuration" is registered as a node in the integrated data (step Sa113). For example, the conversion rule application unit C152 compares the system requirement indicated by each node in the integrated data with the "next configuration". When it is determined that the "next configuration" is not registered as a node in the integrated data (step Sa113: NO), the conversion rule application unit C152 registers the "next configuration" as a node in the integrated data (step Sa121). Specifically, the conversion rule application unit C152 creates a node indicating the "next configuration" in the integrated data. Then, the conversion rule application unit C152 creates an edge between the nodes with the node indicating the "current configuration" on the integrated data as the parent node and the node indicating the "next configuration" as the child node. This edge indicates the application of the conversion rule in step Sa111.
[0096] Then, the conversion rule application unit C152 stores the "next configuration" in the "current configuration" variable (step Sa122). After step Sa122, the process transitions to step Sa104. On the other hand, if the conversion rule application unit C152 determines in step Sa113 that the "next configuration" is registered as a node in the integrated data (step Sa113: YES), the process transitions to step Sa122. Therefore, in this case, the conversion rule application unit C152 does not perform the process of setting the node of the integrated data in step Sa121.
[0097] On the other hand, if it is determined in step Sa104 that the end condition is satisfied (step Sa104: YES), the conversion rule application unit C152 sets the system requirements that appeared in the processing of FIG. 18 this time arranged in chronological order as the configuration path (step Sa131). Further, the conversion rule application unit C152 sets the components selected as the application targets of the conversion rules in step Sa111 among the components included in the system requirements in the configuration path arranged in chronological order as the component path (step Sa132). After step Sa132, the configuration design unit C15 ends the processing of FIG. 18.
[0098] On the other hand, if the conversion rule application unit C152 determines in step Sa102 that the "current configuration" is already registered as a node in the integrated data, the process transitions to step Sa104. Therefore, in this case, the conversion rule application unit C152 does not perform the process of setting the node of the integrated data in step Sa103.
[0099] FIG. 19 is a flowchart showing an example of the node evaluation process according to the present embodiment. This flowchart shows an example of the processing procedure for the configuration design unit C15 to update the evaluation value indicated by the node of the integrated data. The configuration design unit C15 performs the processing of FIG. 19 in step Sa23 of FIG. 17. In the process of FIG. 19, the "evaluation value of update candidate" variable is used as a variable that takes the evaluation value of system requirements as a value. Also, in the process of FIG. 19, the "configuration to be updated" variable is used as a variable that takes a pointer indicating any one of the system requirements included in the configuration path as a value. The evaluation value shown as the value of the "evaluation value of update candidate" variable is denoted as the "evaluation value of update candidate". The system requirement pointed to by the value of the "configuration to be updated" variable is denoted as the "configuration to be updated".
[0100] In the process of FIG. 19, the rule application evaluation unit C154 sets the system requirement indicated by the last node of the configuration path as the "configuration to be updated" (step Sa201). That is, the rule application evaluation unit C154 sets the value of the "configuration to be updated" variable so that the value of the "configuration to be updated" variable points to the last node of the configuration path. The nodes of the configuration path are the individual system requirements included in the configuration path. Also, the rule application evaluation unit C154 sets the initial value of the "evaluation value of update candidate" variable to the evaluation value of the system design determined in step Sa22 of FIG. 17 (step Sa202).
[0101] Next, the rule application evaluation unit C154 determines the evaluation value of the node representing the "configuration to be updated" in the integrated data (step Sa203). The evaluation value of the node in the integrated data is the evaluation value of the system requirement indicated by that node. Specifically, the rule application evaluation unit C154 compares the evaluation value of the node representing the "configuration to be updated" in the integrated data with the "evaluation value of update candidate". When the "evaluation value of update candidate" is larger, the rule application evaluation unit C154 updates the evaluation value of the node representing the "configuration to be updated" in the integrated data to the "evaluation value of update candidate". On the other hand, when the evaluation value of the node representing the "configuration to be updated" in the integrated data is larger, the rule application evaluation unit C154 keeps the evaluation value of the node representing the "configuration to be updated" in the integrated data as its original value. Note that when the evaluation value of a node is not set, the rule application evaluation unit C154 performs processing assuming that 0 is set as the evaluation value of that node.
[0102] Next, the rule application evaluation unit C154 updates the value of the "evaluation value of the update candidate" (step Sa204). Specifically, the rule application evaluation unit C154 sets, in the "evaluation value of the update candidate", the value determined as the evaluation value of the node representing the "configuration to be updated" in the integrated data in step Sa203. Next, the rule application evaluation unit C154 determines whether the "configuration to be updated" is the first system requirement in the configuration path (step Sa205).
[0103] When the rule application evaluation unit C154 determines that the "configuration to be updated" is the first system requirement in the configuration path (step Sa205: YES), the configuration design unit C15 ends the process of FIG. 19. On the other hand, when it is determined that the "configuration to be updated" is not the first system requirement in the configuration path (step Sa205: NO), the rule application evaluation unit C154 sets the system requirement immediately before the "configuration to be updated" on the configuration path as the "configuration to be updated" (step Sa211). After step Sa211, the process returns to step Sa203.
[0104] FIG. 20 is a flowchart showing an example of the learning data generation process according to the present embodiment. This flowchart shows an example of the processing procedure for the configuration design unit C15 to generate learning data. The configuration design unit C15 performs the process of FIG. 20 in step Sa24 of FIG. 17. In FIG. 20, a "target configuration" variable is used as a variable that takes, as its value, a pointer indicating any one of the system requirements in the configuration path. Also, in the process of FIG. 20, a "target part" variable is used as a variable that takes, as its value, a pointer indicating any one of the parts in the part path. The system requirement indicated as the value of the "target configuration" variable is denoted as the "target configuration". The part indicated as the value of the "target part" variable is denoted as the "target part".
[0105] In the process of FIG. 20, the learning data generation unit C155 sets the first system requirement in the configuration path as the "target configuration" (step Sa301). That is, the learning data generation unit C155 sets the value of the "target configuration" variable so that the value of the "target configuration" variable points to the first system requirement in the configuration path. Next, the learning data generation unit C155 sets the first component on the component path as the "target component" (step Sa302). That is, the learning data generation unit C155 sets the value of the "target component" variable so that the value of the "target component" variable points to the first component on the component path. Then, the learning data generation unit C155 enumerates all the directed edges grouped by the "target component" among the directed edges starting from the node representing the "target configuration" in the integrated data (step Sa303).
[0106] Among the evaluation values recorded in the end nodes of each directed edge enumerated in step Sa303, the learning data generation unit C155 sets the maximum value as the evaluation value of the "target component" (step Sa304). Also, the learning data generation unit C155 generates a set of the "target configuration", the "target component", and the evaluation value of the "target component" determined in step Sa304 as learning data, and stores the generated learning data in the storage unit 12 (step Sa305).
[0107] Also, the learning data generation unit C155 determines whether the "target component" is the last component on the component path (step Sa306). That is, the learning data generation unit C155 determines whether the value of the "target component" variable points to the last component on the component path. If it is determined that the "target component" is not the last component on the component path (step Sa306: NO), the learning data generation unit C155 sets the component one after the "target component" on the component path as the "target component" (step Sa311). That is, the learning data generation unit C155 updates the value of the "target component" variable so that it points to the component one after on the component path. Also, the learning data generation unit C155 sets the system requirement one after the "target configuration" on the configuration path as the "target configuration" (step Sa312). That is, the learning data generation unit C155 updates the value of the "target configuration" variable so that it points to the system requirement one after on the configuration path. After step Sa312, the process transitions to step Sa303.
[0108] On the other hand, in step Sa306, when it is determined that the "target part" is the last part in the part path (step Sa306: NO), the configuration design unit C15 ends the process of FIG. 20. In this case, the process transitions to step Sa25 in FIG. 17. If the part path is empty at the start of step Sa24 in FIG. 17, the configuration design unit C15 omits the process of step Sa24. In this case, the configuration design unit C15 does not perform the process of FIG. 20.
[0109] In step Sa25 of FIG. 17, the learning unit C156 performs learning of the component evaluation model using each of the learning data generated by the learning data generation unit C155. In this learning, when the system requirements shown in the learning data are input to the component evaluation model, the learning unit C156 updates the parameter values of the component evaluation model so that the evaluation value output by the component evaluation model for the component shown in the learning data approaches the evaluation value of the component shown in the learning data.
[0110] FIG. 21 is a flowchart showing an example of the requirement evaluation process according to the present embodiment. This flowchart shows an example of the processing procedure for calculating the evaluation value of system requirements.
[0111] In the process of FIG. 21, the rule application evaluation unit C154 acquires the system requirements to be evaluated (step Sa401). Then, the rule application evaluation unit C154 calculates the evaluation value of each component included in the system to be evaluated using the component evaluation model learned in step Sa25 of FIG. 17 (step Sa402). Specifically, the rule application evaluation unit C154 inputs the system requirements to be evaluated into the component evaluation model and acquires the evaluation value of each component output by the component evaluation model.
[0112] Then, the rule application evaluation unit C154 integrates the evaluation values of each component to calculate the evaluation value of the entire system requirements (step Sa403). The method by which the rule application evaluation unit C154 integrates the evaluation values of each component is not limited to a specific method. For example, the rule application evaluation unit C154 may calculate any one of the maximum value, minimum value, or average value of the evaluation values of each component as the integrated value of the evaluation values of each component, but is not limited thereto. After step Sa403, the configuration design unit C15 ends the process of FIG. 21.
[0113] As described above, the conversion rule application unit C152 performs system design by repeatedly applying conversion rules to the parts of the design target system indicated by the system requirements until the design result of the system design is obtained. The design evaluation unit C153 determines the evaluation value for the system design based on the design result. The rule application evaluation unit C154 determines the evaluation value regarding the conversion of each individual part in the system design based on the evaluation value for the system design. The learning unit C156 learns about the selection of parts to which the conversion rules are to be applied based on the learning data including the evaluation values regarding the conversion of parts.
[0114] Here, in the method of learning a system design model that outputs a series of conversion rules to be applied for an input of system requirements, generally, due to the fact that the scale and configuration of the system vary, it is conceivable that the system configuration targeted during system design is different from the system configuration targeted during learning. As a result, it is conceivable that the system requirements given during system design are different from the system requirements given as learning data, and an appropriate series of conversion rules to be applied cannot be determined. Thus, in the method of learning a system design model that outputs a series of conversion rules to be applied for an input of system requirements, it is considered that effective learning cannot be performed.
[0115] On the one hand, even if the system configurations used in the fields targeted by the design device 1 differ from system to system, it is expected that common components or similar components are used. By performing learning regarding conversion in terms of components, it is expected that the same components or similar components as those used in the system targeted during system design are also used in the system targeted during learning. In this regard, by performing learning regarding conversion in terms of components, the design device 1 can perform effective learning even when the system configuration targeted during system design differs from the system configuration targeted during learning.
[0116] <Comparison of Processes> The design device 1 outputs the system configuration in step S13 of FIG. 12, step S25 of FIG. 13, and step S26. When outputting the system configuration in step S26, the design device 1 performs the process indicated by the history information in FIG. 15. That is, the design device 1 performs configuration generation processing corresponding to N conversions on the input system requirements. On the other hand, when outputting the system configuration in step S13, that is, when the input system definition is included in the pre-design information, the design device 1 performs the process indicated by FIG. 22.
[0117] FIG. 22 is an explanatory diagram showing a comparison example of the process history according to the present embodiment. In this figure, the final system requirements are obtained from the initial system requirements. No configuration generation processing is performed, and the number of applications of the conversion rule is also 0. In this way, the design device 1 outputs the pre-configuration without performing configuration generation processing on the input system requirements. Thereby, the design device 1 can improve the processing speed.
[0118] Also, when outputting the system configuration in step S25, that is, when reapplying the reapplication conversion sequence to the input system definition, the design device 1 performs the process indicated by FIG. 22.
[0119] FIG. 23 is an explanatory diagram showing another comparison example of the process history according to the present embodiment. In this figure, the component path represents the components applied in the configuration generation process. That is, the component path does not describe the components to which the reapplied transformation sequence is reapplied. In this figure, by reapplying the reapplied transformation sequence to the initial system requirements, the system requirements when the transformation rules are applied M - 1 times without performing the configuration generation process are obtained. Then, the transformation rules are applied to the obtained system requirements for M - 1 times, and the final system requirements are obtained. That is, the design device 1 performs the configuration generation process corresponding to (N - M + 1) transformations on the input system requirements. Thereby, the design device 1 can reduce the configuration generation process corresponding to M - 1 transformations. Note that in this case, the history information is as shown in FIG. 24.
[0120] FIG. 24 is a diagram showing another example of the history information according to the present embodiment. This history information is for the case where the reapplied transformation sequence is reapplied. This history information is for the case where the reapplied end point is the system requirement N501 at the (M - 1)th time and the new design start point is the system requirement N502 at the Mth time.
[0121] Among the history information of this figure, the system requirement N501 is the input system requirement. Components Ch101 to Ch103 are the target components of the reapplied transformation sequence. System requirements N502 to N504 are the system requirements sequentially transformed by the reapplied transformation sequence. Components Ch101 to Ch103 are the target components of the reapplied transformation sequence and are predetermined including the transformation rules. Thereby, the design device 1 can reduce the processing and improve the processing speed compared with the case of performing the configuration generation process. On the other hand, components Ch111 to Ch113 are the components to be transformed in the configuration generation process. System requirements N511 to N513 are the system requirements sequentially transformed in the configuration generation process. Here, the system requirement N513 is the system configuration.
[0122] As described above, in the present embodiment, the design system performs a configuration generation process of generating a system configuration (an example of configuration information) of a design target by repeatedly applying a conversion rule to a component of the design target for the design target indicated by requirements. The storage unit 12 stores advance design information (an example of associated information) in which a set of a system definition (an example of definition information) composed of one or more requirement elements, a system requirement (an example of requirement information) indicating a requirement represented by a group of components (for example, nodes or edges), and a system configuration indicating a configuration represented by a group of components are associated in advance. When the system definition of the design target is input, the reference determination unit C12 (an example of a determination unit) performs a first process (step S13 in FIG. 12) of outputting the system configuration of the advance design information based on the advance design information, or a second process (step S25 in FIG. 13) of outputting the system configuration generated by the configuration generation process after the reapplied conversion sequence is reapplied, and determines which process to perform.
[0123] When performing the second process, the similarity information acquisition unit C13 selects a similar system definition (an example of similar definition information) that is a system definition similar to the system definition of the design target based on the advance design information, and acquires a similar system configuration (an example of similar configuration information) that is a system configuration associated with the similar system definition. The configuration design unit C15 reapplies a reapplied conversion sequence (an example of a conversion rule) applied to a part of the component group represented by the similar system requirement (an example of a similar requirement) to the input system requirement (an example of a system requirement based on the system definition of the design target) edited by the requirement generation unit C14, and then performs a configuration generation process to generate a new system configuration. The information management unit C11 stores a set including the system definition of the design target and the new system configuration in the storage unit 12 as advance design information. In this way, since the design device 1 reapplies the reapplication conversion series to the system requirements of the design target, the configuration generation process corresponding to the conversion by the reapplication conversion series can be reduced. For example, the design device 1 can reduce the number of processing times corresponding to the conversion by the reapplication conversion series for the concretization design process, the node evaluation process, the requirement evaluation process, the learning data generation process, and the learning process. Thereby, the design device 1 can improve the processing speed.
[0124] Also, for example, the design device 1 can also receive as input the graph structure of system requirements (for example, new system requirements that do not exist in the pre-design information such as the edited system requirements) for an un-designed system composed of abstract elements, and generate a specific system configuration. Furthermore, when generating the system configuration, since the design device 1 reapplies the reapplication conversion series, that is, reuses some of the pre-design information, it can efficiently generate the system configuration from the new system requirements.
[0125] Note that the configuration design unit C15 may generate a new system configuration by performing a configuration generation process after reapplying the reapplication conversion series applied to a part of the component group represented by the similar system configuration for not only the edited input system requirements but also newly created input system requirements (an example of system requirements based on the system definition of the design target).
[0126] Also, in this embodiment, the requirement generation unit C14 provides a user interface that allows the user to edit the components represented by the similar system requirements, and reflects the edited content input through the user interface in the similar requirement information to generate new system requirements. The configuration design unit C15 generates new configuration information by performing a configuration generation process after reapplying the reapplication conversion series to the generated new system requirements. The information management unit C11 stores the set of the system definition of the design target, the new system requirements, and the new system configuration in the storage unit 12 as pre-design information. As a result, the user can design new system requirements using similar system requirements with similar system definitions, and thus can easily design system requirements as compared with the case of creating system requirements from scratch. Also, the user may be able to refer to past system requirements and design new system requirements of high quality. Further, since the design device 1 reapplies the reapplication conversion series of the similar system configuration to the new system requirements, more conversion rules can be applied from the conversion rules of the reapplication conversion series even for new system requirements. Thus, the design device 1 can further reduce the configuration generation process. Thereby, the design device 1 can improve the processing speed.
[0127] The similarity information acquisition unit C13 selects a similar system definition based on the number of matching requirement elements between the requirement elements of the system definition to be designed and the pre-defined requirement elements of the pre-design information. Thus, the design device 1 selects a similar system definition using the requirement elements for the system requirements represented by graph elements and input to the configuration generation process. That is, the design device 1 determines the similarity of the system requirements using the requirement elements and performs the configuration generation process based on the similar system requirements. For example, when determining the similarity using the graph elements of the system requirements, the similarity with elements other than the main requirement elements may be evaluated low, and a desired system configuration may not be obtained. Since the design device 1 evaluates the similarity using the requirement elements, it can appropriately evaluate the similarity of the system requirements, and then can obtain a desired system configuration as a result of the configuration generation process based on the similar system configuration.
[0128] In addition, the similar information acquisition unit C13 may use, as the similar system definition, the system definition in which the input system definition and the value of the system type match, the number of matching elements among the requirement elements constituting the input system definition is equal to or greater than a predetermined threshold, and the storage time is the latest or the priority is the highest. In this way, the similar information acquisition unit C13 may select the similar system definition based on the storage time or the priority. The priority may be, for example, in the order of higher user evaluation for the system configuration, in the order of higher evaluation of the reliability of the system implemented according to the design, in the order of more frequent adoption of the system configuration, or in the order based on the graph structure. The order based on the graph structure means the order of fewer or more graph elements, the order of a value (for example, the total) calculated based on the weights of the graph elements in the graph structure for the weighted graph elements, the order of fewer or more nodes or edges, the order of fewer or more application times of the conversion rules, etc.
[0129] Also, in this embodiment, at least a part of the components are graph elements representing nodes or edges. The output control unit C16 causes to display an input form G11 that receives input of requirement elements from the user and a graph structure G13 including an image of the graph elements for the system configuration corresponding to the system definition composed of the requirement elements input to the input form G11. The display unit 14 displays the input form G11 and the graph structure G13 based on the control from the output control unit C16 or the data of the screen display. Thereby, when the user inputs requirement elements, the design device 1 can allow the user to refer to the system configuration represented by the graph elements as a design plan.
[0130] In addition, the output control unit C16 may provide a user interface that allows the user to identify whether the displayed graph structure G13 is output by a process of outputting the system configuration of the preliminary design information based on the preliminary design information or is generated by a process of outputting the system configuration generated by the configuration generation process after the reapplied transformation sequence is reapplied. As a result, the design device 1 can allow the user to identify whether the displayed system configuration is based on the pre-designed pre-design information or is newly generated by reapplying the reapplication conversion sequence.
[0131] Note that the output control unit C16 may provide a user interface that allows the user to identify the first process, the second process, and the third process (step S26 in FIG. 12) that outputs the system configuration generated by the configuration generation process for the input system requirements. As a result, the design device 1 can further allow the user to identify whether the displayed system configuration has no similar pre-design information or the reapplication conversion sequence could not be reapplied. That is, the user can recognize that they are performing a design without precedent in the past and can take actions such as checking the details of the displayed system configuration.
[0132] Also, in the present embodiment, the pre-design information includes information representing the conversion process to which the conversion rule is applied and the parts group in each conversion process in the configuration generation process. The configuration design unit C15 (for example, the reapplication determination unit C151) determines the conversion process for performing the configuration generation process based on the parts group included in the system requirements based on the system definition of the design target and the parts group in each conversion process of the similar system configuration. Here, the system requirements based on the system definition of the design target are the system requirements of the requirement template, the edited system requirements, or the system requirements to which the conversion rule has been applied. For example, the design device 1 determines the reapplication end point or the new design start point by determining whether a part of the conversion sequence of the similar system configuration can be reapplied. Based on this determination, the design device 1 can reapply the reapplication conversion sequence up to the reapplication end point and perform the configuration generation process from the new design start point for the input system requirements. The "system requirements based on the system definition of the design target" may be system requirements that have not been edited by the requirement generation unit C14 or the like, that is, system requirements in which the system definition is described in a graph structure.
[0133] Also, in this embodiment, the process of converting a similar system configuration includes a process of converting a first component or a first group of components into a second component or a second group of components (see FIG. 15). The configuration design unit C15 performs a configuration generation process on a fourth component (for example, components Ch111 to Ch113 in FIG. 24) or a fourth group of components that do not include the first component or the first group of components among the third component or the third group of components to which the conversion rule is applied. Note that the configuration design unit C15 performs a conversion by reapplying the conversion rule of the reapplied conversion series to a fifth component (for example, components Ch101 to Ch103 in FIG. 24) or a fifth group of components that include the first component or the first group of components among the third component or the third group of components. In this way, when the target component included in the conversion target in the process of converting the similar system configuration exists in the component group represented by the system requirement, the design apparatus 1 reapplies the reapplied conversion series to the component, and when the target component does not exist, the design apparatus 1 performs a configuration generation process on the component. Thereby, the design apparatus 1 can reapply the reapplied conversion series to a part and perform a configuration generation process on another part with respect to the component group represented by the input system requirement.
[0134] Note that the output control unit C16 may provide a user interface that enables the user to identify the same graph elements and different graph elements in the new system configuration and the similar system configuration. Here, the new system configuration is a system configuration in which the reapplied conversion series of the similar system configuration is reapplied to a part of the input system requirement. Thereby, the design apparatus 1 can identify for the user whether each graph element of the new system configuration is the one to which the reapplied conversion series is reapplied or the one on which the configuration generation process is performed. For example, the user can know the new configuration (graph element) in the system configuration and prepare for the new configuration. More specifically, the user can consider or perform the procurement of articles, the evaluation of software and data for the new configuration more carefully than for the existing configuration (the configuration of the similar system configuration).
[0135] In addition, in the present embodiment, the learned model (for example, the search tree in FIG. 3) is stored in the storage unit 12 (an example of a storage medium). The learned model is a learned model used in the design device 1 that performs configuration generation processing for generating the system configuration of the design target by repeatedly applying conversion rules to the components of the design target with respect to the design target indicated by the requirements. The learned model is generated by performing machine learning based on a set of a system requirement indicating requirements represented by a component group and a system configuration indicating a configuration represented by a component group. The learned model is a learned model in which a reapplication conversion sequence applied to a part of a component group represented by a similar system configuration associated with a similar system definition similar to the system definition of the design target in advance design information in which a set of a system definition, a system requirement, and a system configuration each consisting of one or more requirement elements are associated in advance is reapplied to the system requirement based on the system definition of the design target, and then configuration generation processing is performed, thereby adding a new system configuration.
[0136] <Second Embodiment> FIG. 25 is a schematic block diagram showing the configuration of the design system 1a according to the second embodiment. Note that both a system configured by one design device 1 as in the first embodiment and a system configured by a plurality of devices are referred to as a "design system".
[0137] The design system 1a includes a terminal 10a, a design device 11a, and a learning device 12a. As described above, a part or all of the configuration of the design device 1 in the first embodiment may be provided in a plurality of devices, or the plurality of devices may include configurations other than the configuration of the design device 1.
[0138] For example, the terminal 10a receives the screen display information generated by the output control unit C16 of the design device 11a and displays the screen display in FIG. 2 on the display of the terminal 10a using a browser or an application. The design device 11a includes the communication unit 11, the storage unit 12, the operation input unit 13, and the information management unit C11, the reference determination unit C12, the similar design acquisition unit C13, the requirement generation unit C14, and the output control unit C16 shown in FIG. 8 and is configured. The learning device 12a includes the communication unit 11, the storage unit 12, the operation input unit 13, and the configuration design unit C15 shown in FIG. 8 and is configured.
[0139] FIG. 26 is a schematic block diagram showing the configuration of the design device 1b according to a modification of the above embodiment. The design device 1b performs a configuration generation process for generating a system configuration of a design target by repeatedly applying a conversion rule to components of the design target for a design target indicated by requirements. The design device 1b (an example of an information processing device) includes a similar information acquisition unit C13 and a configuration design unit C15.
[0140] When the system definition of the design target is input, the similar information acquisition unit C13 acquires a similar system configuration, which is configuration information associated with a similar system definition similar to the system definition of the design target, based on pre-designed information in which a set of a system definition composed of one or more requirement elements, a system requirement indicating requirements represented by a component group, and system configuration information indicating a configuration represented by a component group are associated in advance. The configuration design unit C15 generates new configuration information by performing a configuration generation process after reapplying a reapplying conversion sequence applied to a part of the component group represented by the similar system configuration to the system requirements based on the system definition of the design target. In this way, since the design device 1 reapplies the reapplying conversion sequence to the system requirements of the design target, the configuration generation process corresponding to the conversion by the reapplying conversion sequence can be reduced. Thereby, the design device 1 can improve the processing speed.
[0141] FIG. 27 is a schematic block diagram showing the configuration of a display device 1c according to a modification of the above embodiment. The display device 1c displays a system configuration of a design target generated by repeatedly applying conversion rules to components of the design target with respect to the design target for which requirements are shown. The display device 1c (an example of an output device) includes an output control unit C16.
[0142] The output control unit C16 causes to display an input form G11 that receives an input of requirement elements from a user, and a graph structure G13 including an image of graph elements with respect to a system definition composed of the requirement elements input to the input form G11, for the system configuration corresponding to the system definition. The display unit 14 displays the input form G11 and the graph structure G13 based on control from the output control unit C16 or data for screen display. Thereby, when the user inputs requirement elements, the design device 1 can cause the user to refer to the system configuration represented by graph elements as a design proposal.
[0143] FIG. 28 is a flowchart showing the processing of a design system according to a modification of the above embodiment. The design system is composed of one or more devices including a part of the configuration of the design device 1. An input system definition (system definition of a design target) is input to the design device 1 (S11). The similar design acquisition unit C13 selects a similar system definition similar to the input system definition from the pre-designed information. The similar design acquisition unit C13 acquires similar design information including the selected similar system definition, that is, a similar system configuration and a similar system configuration corresponding to the similar system definition (step S21). The configuration design unit C15 applies the conversion rules of the conversion sequence of the similar system configuration until the re-application end point. Thereafter, the configuration design unit C15 performs a configuration generation process from a new design start point, and as a result, generates and outputs a new configuration (step S25).
[0144] FIG. 29 is a schematic block diagram showing the configuration of a computer according to at least one embodiment. Any one or more of them may be implemented in the computer H1. For example, any one or more of the above-described design device 1, terminal 10a, design device 11a, learning device 12a, design device 1b, or display device 1c may be implemented in the computer H1. In that case, the operations of each of the above-described processing units are stored in the auxiliary storage device H13 in the form of a program. The CPU (Central Processing Unit) H11 reads the program from the auxiliary storage device H13, expands it in the main storage device H12, and executes the above processing according to the program. Further, the CPU H11 secures a storage area corresponding to each of the above-described storage units in the main storage device H12 according to the program.
[0145] When the design device 1 is implemented in the computer H1, the control unit C and the operations of each of its parts are stored in the auxiliary storage device H13 in the form of a program. The CPU H11 reads the program from the auxiliary storage device H13, expands it in the main storage device H12, and executes the above processing according to the program. Further, the CPU H11 secures a storage area corresponding to the storage unit 12 in the main storage device H12 according to the program. Communication by the communication unit 11 is executed by the interface H14 having a communication function and performing communication under the control of the CPU H11. Display by the display unit 14 is executed by the interface H14 having a display screen and displaying various images under the control of the CPU H11. Reception of a user operation by the operation input unit 13 is executed by the interface H14 having an input device, receiving the user operation, and outputting a signal indicating the received user operation to the CPU H11.
[0146] The functions of the design device 1, design system 1a, terminal 10a, design device 11a, learning device 12a, design device 1b, or display device 1c in the above-described embodiments may also be realized by a computer. In that case, a program for realizing the functions of this device may be recorded on a computer-readable recording medium, and the program recorded on this recording medium may be read into a computer system and executed to be realized. Here, the "computer system" includes hardware such as an OS (operating system) and peripheral devices. Further, the "computer-readable recording medium" refers to a portable medium such as a flexible disk, magneto-optical disk, ROM (Read Only Memory), CD-ROM (compact disc read-only memory), or a storage device such as a hard disk built into a computer system. Furthermore, the "computer-readable recording medium" also includes something that dynamically holds a program for a short time, like a communication line when transmitting a program via a network such as the Internet or a communication line such as a telephone line, and also includes something that holds a program for a certain time, like a volatile memory inside a computer system that serves as a server or client in that case. Also, the above program may be for realizing a part of the above-described functions, and may further be something that can be realized in combination with a program already recorded in the computer system for the above-described functions.
[0147] Also, the above program may be transmitted from a computer system storing the program in a storage device or the like to another computer system via a transmission medium or by a transmission wave in the transmission medium. Here, the "transmission medium" for transmitting the program refers to a medium having a function of transmitting information, such as a network (communication network) such as the Internet or a communication line (communication line) such as a telephone line. Also, the above program may be for realizing a part of the above-described functions. Further, it may be something that can be realized in combination with a program already recorded in the computer system for the above-described functions, that is, a so-called difference file (difference program). Moreover, each component of the design device 1, the design system 1a, the terminal 10a, the design device 11a, the learning device 12a, the design device 1b, or the display device 1c may be implemented by a plurality of devices. The plurality of devices may communicate to implement each component. The plurality of devices may include a user terminal.
[0148] [Appendix] (1) A design system that performs a configuration generation process for generating configuration information of a design target by repeatedly applying a conversion rule to the components of the design target for a design target for which requirements are indicated, the design system including: a storage unit that stores associated information in which a set of definition information consisting of one or more requirement elements, requirement information indicating the requirements represented by a component group, and configuration information indicating a configuration represented by a component group are associated in advance; a determination unit that, when the definition information of the design target is input, determines whether to perform a first process of outputting the configuration information of the associated information based on the associated information or a second process of outputting the configuration information generated by the configuration generation process; a similar information acquisition unit that, when performing the second process, selects similar definition information that is definition information similar to the definition information of the design target based on the associated information and acquires similar requirement information that is requirement information associated with the similar definition information; a configuration design unit that generates new configuration information by performing the configuration generation process after applying a conversion rule applied to a part of the component group represented by the similar requirement information to the requirement information based on the definition information of the design target; and an information management unit that stores a set including the definition information of the design target and the new configuration information in the storage unit as the associated information.
[0149] (2) A requirement generation unit is provided that offers a user interface enabling the user to edit the components represented by the similar requirement information, and generates new requirement information by reflecting the editing content input via the user interface in the similar requirement information. The configuration design unit performs the configuration generation process after applying the conversion rules applied to a part of the component group represented by the similar requirement information to the new requirement information, thereby generating new configuration information. The information management unit stores the set of the definition information of the design target, the new requirement information, and the new configuration information in the storage unit as the related information in the design system described in (1).
[0150] (3) The similar information acquisition unit selects the similar definition information based on the number of matching requirement elements between the requirement elements of the definition information of the design target and the requirement elements of the definition information of the related information in the design system described in (1) or (2).
[0151] (4) At least some of the components in the component group are graph elements representing nodes or edges. An input form that accepts input of the requirement elements from the user, and an output control unit that displays a graph structure including an image of the graph element for the configuration information related to the definition information composed of the requirement elements input into the input form. The design system according to any one of (1) to (3).
[0152] (5) The output control unit provides a user interface that enables the user to identify whether the displayed graph structure is the information output by the first process or the information generated by the second process in the design system described in (4).
[0153] (6) The related information includes the conversion process to which the conversion rule is applied in the configuration generation process and information representing the component groups in each conversion process. The configuration design unit determines the conversion process for performing the configuration generation process based on the component group included in the requirement information based on the definition information of the design target and the component groups in each conversion process of the similar configuration information, which is the configuration information associated with the similar definition information, in any one of (1) to (3).
[0154] (7) The conversion process of the similar configuration information includes the process of converting the first component or the first component group into the second component or the second component group. The configuration design unit performs the configuration generation process on the fourth component or the fourth component group that does not include the first component or the first component group among the third components or the third component groups to which the conversion rule is applied, in the design system described in (6).
[0155] (8) The output control unit presents a user interface that enables the user to identify the same graph elements and different graph elements in the new configuration information and the similar configuration information, which is the configuration information associated with the similar definition information, in the design system described in (4).
[0156] (9) A configuration design apparatus that performs a configuration generation process for generating configuration information of a design target by repeatedly applying a conversion rule to the components of the design target. When the definition information of the design target is input, based on related information in which a set of definition information consisting of one or more requirement elements, requirement information indicating the requirements represented by a component group, and configuration information indicating a configuration represented by a component group are associated in advance, a similar information acquisition unit that acquires similar requirement information, which is requirement information associated with definition information similar to the definition information of the design target, and a configuration design unit that generates new configuration information by performing the configuration generation process after applying the conversion rule applied to a part of the component group represented by the similar requirement information to the requirement information based on the definition information of the design target.
[0157] A learned model used in a configuration design device that performs a configuration generation process for generating configuration information of a design target by repeatedly applying a conversion rule to components of the design target that indicates requirements. The learned model is generated by performing machine learning based on a set of requirement information indicating the requirements represented by a component group, and configuration information indicating a configuration represented by a component group. In related information in which a set of definition information consisting of one or more requirement elements, the requirement information, and the configuration information are associated in advance, a conversion rule applied to a part of the component group represented by similar requirement information associated with definition information similar to the definition information of the design target is applied to the requirement information based on the definition information of the design target. After that, when the configuration generation process is performed, a storage medium that stores a learned model in which new configuration information is added.
[0158] (11) An output device that displays the configuration information of a design target generated by repeatedly applying a conversion rule to components of the design target that indicates requirements. The output device includes an input form that receives an input of requirement elements from a user, and refers to related information in which a set of definition information consisting of one or more of the requirement elements, requirement information indicating the requirements represented by a first group of graph elements representing nodes or edges, and configuration information indicating a configuration represented by a second group of the graph elements are associated in advance. For the definition information consisting of the requirement elements input to the input form, an output control unit that displays, on a display, a graph structure including an image of the graph elements for the configuration information related to the definition information.
[0159] A method in a design system that performs a configuration generation process for generating configuration information of a design target by repeatedly applying conversion rules to components of the design target for which requirements are shown. The method includes storing associated information in which a set of definition information consisting of one or more requirement elements, requirement information indicating the requirements represented by a component group, and configuration information indicating a configuration represented by a component group are associated in advance. When the definition information of the design target is input, it is determined whether to perform a first process of outputting the configuration information of the associated information based on the associated information or a second process of outputting the configuration information generated by the configuration generation process. When performing the second process, based on the associated information, similar definition information that is definition information similar to the definition information of the design target is selected, similar requirement information that is requirement information associated with the similar definition information is acquired, and after applying a conversion rule applied to a part of the component group represented by the similar requirement information to the requirement information based on the definition information of the design target, the configuration generation process is performed to generate new configuration information.
[0160] As described above, the embodiments of the present invention have been described in detail with reference to the drawings. However, the specific configuration is not limited to this embodiment, and designs and the like within the scope not departing from the gist of the present invention are also included.
Industrial Applicability
[0161] The present disclosure can be used in computers such as personal computers, servers, and smartphones, for example, in design devices such as product design devices and service design devices (e.g., system design devices), or in integrated circuits (e.g., CPUs (Central Processing Units) and communication chips) mounted on these or programs executed by these.
Explanation of Signs
[0162] 1, 11a, 1b Design device 11 Communication unit 12 Storage unit 13 Operation input unit 14 Display unit C Control Unit C11 Information Management Unit C12 Reference Judgment Unit C13 Similar Design Acquisition Unit C14 Requirement Generation Unit C15 Configuration Design Unit C151 Reapplication Judgment Unit C152 Conversion Rule Application Unit C153 Design Evaluation Unit C154 Rule Application Evaluation Unit C155 Learning Data Generation Unit C156 Learning Unit C16 Output Control Unit 1a Design System 10a Terminal 12a Learning Device 1c Display Device
Claims
1. A design system that performs a configuration generation process for generating configuration information of a design target by repeatedly applying a conversion rule to components of the design target for a design target indicated by requirements, a storage unit that stores associated information in which a set of definition information consisting of one or more requirement elements, requirement information indicating the requirements represented by a component group, and configuration information indicating a configuration represented by a component group are associated in advance; a determination unit that determines whether to perform a first process of outputting the configuration information of the associated information based on the associated information or a second process of outputting the configuration information generated by the configuration generation process when the definition information of the design target is input; a similar information acquisition unit that, when performing the second process, selects similar definition information that is definition information similar to the definition information of the design target based on the associated information and acquires similar requirement information that is requirement information associated with the similar definition information; a configuration design unit that generates new configuration information by performing the configuration generation process after applying a conversion rule applied to a part of the component group represented by the similar requirement information to the requirement information based on the definition information of the design target; an information management unit that stores a set including the definition information of the design target and the new configuration information in the storage unit as the associated information; A design system comprising.
2. A requirement generation unit that provides a user interface that allows a user to edit components represented by the similar requirement information and generates new requirement information by reflecting the edit content input via the user interface in the similar requirement information, the configuration design unit generates new configuration information by performing the configuration generation process after applying a conversion rule applied to a part of the component group represented by the similar requirement information to the new requirement information, the information management unit stores a set of the definition information of the design target, the new requirement information, and the new configuration information in the storage unit as the associated information; The design system according to claim 1.
3. The similar information acquisition unit selects the similar definition information based on the number of matching requirement elements between the definition information of the design target and the definition information of the related information. The design system according to claim 1 or claim 2.
4. At least some of the components in the component group are graph elements representing nodes or edges. An input form for receiving input of the requirement elements from a user. For the definition information composed of the requirement elements input into the input form, a graph structure including an image of the graph element for the configuration information related to the definition information. And an output control unit for displaying the above. The design system according to any one of claims 1 to 3, comprising the above.
5. The output control unit. Presents a user interface that allows the user to identify whether the displayed graph structure is information output by the first process or information generated by the second process. The design system according to claim 4.
6. The related information includes the conversion process to which the conversion rule is applied in the configuration generation process and information representing the component group in each conversion process. The configuration design unit determines the conversion process for performing the configuration generation process based on the component group included in the requirement information based on the definition information of the design target and the component group in each conversion process of the similar configuration information, which is the configuration information associated with the similar definition information. The design system according to any one of claims 1 to 3.
7. The conversion process of the similar configuration information includes a process of converting a first component or a first component group into a second component or a second component group. The configuration design unit performs the configuration generation process on a fourth component or a group of fourth components that do not include the first component or the group of first components among the third components or the group of third components to which the conversion rule is applied. The design system according to claim 6.
8. The output control unit presents a user interface that enables a user to identify identical graph elements and different graph elements in the new configuration information and similar configuration information, which is configuration information associated with the similarity definition information. The design system according to claim 4.
9. A configuration design apparatus that performs a configuration generation process for generating configuration information of a design target by repeatedly applying a conversion rule to the components of the design target, comprising: A similarity information acquisition unit that, when definition information of the design target is input, acquires similar requirement information, which is requirement information associated with definition information similar to the definition information of the design target, based on associated information in which a set of definition information consisting of one or more requirement elements, requirement information indicating the requirements represented by a group of components, and configuration information indicating a configuration represented by a group of components are associated in advance; A configuration design unit that generates new configuration information by performing the configuration generation process after applying a conversion rule applied to a part of the group of components represented by the similar requirement information to the requirement information based on the definition information of the design target; An information processing apparatus comprising the above.
10. A learned model used in a configuration design apparatus that performs a configuration generation process for generating configuration information of a design target by repeatedly applying a conversion rule to the components of the design target, comprising: Generated by performing machine learning based on a set of requirement information indicating the requirements represented by a group of components and configuration information indicating a configuration represented by a group of components. In the associated information in which a set of definition information consisting of one or more requirement elements, the requirement information, and the configuration information is associated in advance, after a conversion rule applied to a part of the component group represented by the similar requirement information associated with the definition information similar to the definition information of the design target is applied to the requirement information based on the definition information of the design target, the configuration generation process is performed, and a learned model with new configuration information added A program that exhibits the functions of.
11. An output device that displays the configuration information of a design target generated by repeatedly applying a conversion rule to the components of the design target for a design target indicating requirements, comprising: An input form that accepts input of requirement elements from a user, Referring to the associated information in which a set of definition information consisting of one or more of the requirement elements, requirement information indicating the requirements represented by a first group of graph elements representing nodes or edges, and configuration information indicating the configuration represented by a second group of the graph elements is associated in advance, for the definition information consisting of the requirement elements input into the input form, a graph structure including an image of the graph elements for the configuration information related to the definition information, And an output control unit that displays on a display An output device comprising.
12. A method in a design system that performs a configuration generation process for generating configuration information of a design target by repeatedly applying a conversion rule to the components of the design target for a design target indicating requirements, comprising: A storage medium stores associated information in which a set of definition information consisting of one or more requirement elements, requirement information indicating the requirements represented by a component group, and configuration information indicating the configuration represented by a component group is associated in advance, When the definition information of the design target is input, an information processing device determines whether to perform a first process of outputting the configuration information of the associated information based on the associated information or a second process of outputting the configuration information generated by the configuration generation process, When the information processing apparatus performs the second process, based on the related information, it selects similar definition information which is definition information similar to the definition information of the design target, and acquires similar requirement information which is requirement information associated with the similar definition information. After applying a conversion rule applied to a part of the component group represented by the similar requirement information to the requirement information based on the definition information of the design target, the information processing apparatus generates new configuration information by performing the configuration generation process. Method.
Citation Information
Patent Citations
System development support system and support program
JP2005352869A
System construction support method
JP2013114437A
Requirement detection device and requirement detection program
JP2014164385A
Information system building assistance device, information system building assistance method, and information system building assistance program
WO2014061229A1
System configuration derivation device and system configuration derivation method
WO2019216082A1
Cited By
Information processing device, information processing method, and program
JP7912810B1