Change management apparatus, change management method, and program

The change management device and method address the issue of missing relationships in concept structures by using a graph storage unit and change impact calculation to determine and recommend necessary edge changes, ensuring accurate relationship management during text modifications.

JP2025140296APending Publication Date: 2025-09-29NEC CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024039608
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-03-14
Publication Date
2025-09-29

AI Technical Summary

Technical Problem

Existing methods, such as those described in Patent Document 1, fail to address the absence of relationships between concepts when creating or changing a concept structure, particularly for specific and differing concepts, leading to inappropriate inference of relationships.

Method used

A change management device and method that includes a graph storage unit and a change impact calculation unit to determine affected relationship and unrelationship information edges when a vertex is changed, using a differential requirements context and similarity calculations to recommend necessary edge changes.

Benefits of technology

Enables accurate determination of impacted edges during text changes in a graph structure, allowing for effective management of relationships and unrelationships in concept structures.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025140296000001_ABST
    Figure 2025140296000001_ABST
Patent Text Reader

Abstract

To provide a relationship management apparatus capable of determining (estimating) related information edges and unrelated information edges that will be affected by a change when text associated with a vertex is changed.SOLUTION: A change management apparatus according to one embodiment comprises a graph storage unit and a change impact calculation unit. The graph storage unit stores graph information consisting of a plurality of vertices each having text, related information edges indicating that there is a relationship from one upper vertex to another lower vertex, and unrelated information edges indicating that there is no relationship from one upper vertex to another lower vertex. The change impact calculation unit determines, if one of the plurality of vertices is a change target vertex that is the target of a text change, the related information edges that will be affected by the text change and the unrelated information edges that will be affected by the text change, based on the graph information held by the graph storage unit.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a change management device, a change management method, and a program. [Background technology]

[0002] In conventional technology, the correspondence between the meanings expressed by multiple texts could be expressed as a graph structure. One type of correspondence is the relationship between higher and lower levels. A graph structure consists of vertices and edges. By gradually refining the top-level vertex, it is possible to represent a graph that connects to lower vertices and even lower vertices.

[0003] When this kind of graph structure expression is applied to requirements definition in system development, for example, it is as follows: In other words, requirements definition has been constructed by associating customer requests with the top vertex, and then expressing the requirements that are gradually refined from those requests as a graph structure. Since this graph shows the relationship between higher and lower levels, the requirements form a hierarchical structure.

[0004] A typical representation format, for example, SysML (registered trademark) established by the Object Management Group (OMG), defines the Requirement Diagram as a means of expressing a set of requirements. A Requirement Diagram is shown as a graph structure with requirements as vertices and relationships between requirements, such as derivation, dependency, and inclusion, as edges. As mentioned above, these relationships represent gradual refinement, so they can be called superordinate-subordinate relationships, with the requirements that are the source of the refinement being the superordinate and the requirements that are the result of the refinement being the subordinate.

[0005] The above requirements definition is just one example, and the structure of concepts expressed in text can be expressed as a graph, not just in requirements definitions. When dealing with many concepts (in other words, when dealing with a large graph made up of individual requirements), it is difficult to manually manage the relationships between all of the concepts. Previously, methods have been proposed to mechanically infer and present relationships from a collection of concepts, or to mechanically construct relationships.

[0006] For example, Patent Document 1 describes a method, a system, and a computer program for user-driven dynamic generation of a semantic network and media integration. In order to build a concept structure called a semantic network, Patent Document 1 proposes a method for sequentially receiving text queries from a user, deriving relationships between new concepts calculated from the queries and the concept structure, and incorporating the derived relationships into the concept structure. [Prior art documents] [Patent documents]

[0007] [Patent Document 1] Patent No. 6958083 Summary of the Invention [Problem to be solved by the invention]

[0008] The method described in Patent Document 1 assumes that the derived relationships between existing concepts have already been constructed, and merely infers relationships between newly constructed concepts from the relationships between existing concepts. In the process of creating / changing a concept structure, the absence of a relationship between two concepts does not necessarily indicate that the two concepts will have no relationship in the final concept structure. Since a user may later indicate that the previously non-existent relationship should exist, there is a problem in that it is not appropriate to use the concept structure in the creation process to infer relationships between new concepts.

[0009] This problem becomes particularly pronounced when the target concept is very specific and has many differences from existing concepts, making it impossible to reuse the concept structure. Patent Document 1 does not provide any solution to this problem.

[0010] An object of the present disclosure is to provide a change management device, a change management method, and a program that solve the above-mentioned problems. [Means for solving the problem]

[0011] A change management device according to one aspect of the present disclosure includes a graph storage unit and a change impact calculation unit. The graph storage unit stores graph information including a plurality of vertices, each having text, relationship information edges representing a relationship from one upper vertex to another lower vertex, and unrelationship information edges representing no relationship from one upper vertex to another lower vertex. When one of the plurality of vertices is a change target vertex that is the target of a text change, the change impact calculation unit determines, based on the graph information stored in the graph storage unit, relationship information edges that will be affected by the change to the text and unrelationship information edges that will be affected by the change to the text. [Effects of the Invention]

[0012] According to the above aspect, when changing the text corresponding to one vertex of the graph held by the graph holding unit, it is possible to determine (estimate) the related information edges that will be affected by the change and the unrelated information edges that will be affected by the change. [Brief explanation of the drawings]

[0013] [Figure 1] 1 is a block diagram showing a schematic functional configuration of a relationship management device according to the present disclosure. [Figure 2] 1 is a schematic diagram illustrating an example of a graph representing relationships between requirements that are targets of processing by a relationship management device according to the present disclosure. [Figure 3]1 is a schematic diagram showing an example of the configuration of a table for storing requirement text, which is one of the data stored (stored) in a graph storage unit of a relationship management device according to the present disclosure. FIG. [Figure 4] 1 is a schematic diagram showing an example of the configuration of data relating to edges held (stored) in a graph holding unit of a relationship management device according to the present disclosure. [Figure 5] 10 is a flowchart illustrating an overall procedure when a relationship management device according to the present disclosure performs processing to respond to a change in a requirement. [Figure 6] 10 is a flowchart illustrating a detailed procedure when a relationship management device according to the present disclosure executes a process for calculating relationship information edges affected by a change in requirements. [Figure 7] 10 is a flowchart showing detailed steps performed by the relationship management device according to the present disclosure when it executes a process of calculating a relationship information edge that can be set as an alternative to a relationship information edge that is affected by a change in requirements. [Figure 8] 10 is a flowchart illustrating an overall procedure when a relationship management device according to the present disclosure executes a process for calculating unrelated information edges affected by a change in requirements. [Figure 9] 1 is a block diagram showing a schematic functional configuration of a relationship management device according to the present disclosure. [Figure 10] 1 is a block diagram showing a schematic functional configuration of a relationship management device according to the present disclosure. [Figure 11] 1 is a block diagram showing a schematic functional configuration of a relationship management device according to the present disclosure. [Figure 12] 1 is a schematic diagram illustrating an example of a graph that is treated as a processing target by a relationship management device 4 according to the present disclosure. [Figure 13] 1 is a block diagram illustrating an example of the internal configuration of a relationship management device according to the present disclosure when implemented using a computer. DETAILED DESCRIPTION OF THE INVENTION

[0014] Each embodiment will be described below with reference to the drawings. In all drawings, the same or corresponding components are designated by the same reference numerals, and common descriptions will be omitted.

[0015] First Embodiment Hereinafter, an embodiment according to the present disclosure will be described with reference to the drawings.

[0016] This embodiment relates to a relationship management device that processes a requirement graph. A requirement graph is information that represents individual requirements as vertices and edges that indicate the presence or absence of a relationship between two requirements. There are two types of edges, both of which are directed edges. The first type is a relationship information edge, which indicates that a superior-subordinate relationship exists between two requirements. The second type is an unrelationship information edge, which indicates that no superior-subordinate relationship exists between two requirements. Each vertex has as its attribute a text (string) that corresponds to the requirement text.

[0017] This embodiment supports the incremental reconfiguration of an existing requirements graph. To achieve this purpose, this embodiment takes as input (1) information about an already constructed requirements graph, (2) information specifying a vertex corresponding to a requirement to be changed, and (3) text (character string) representing the requirement body after the change of the requirement (vertex). It is characterized by presenting and recommending related information edges and unrelated information edges that may need to be changed in the given requirements graph as a result of the change in requirements.

[0018] The following three are more specific features of this embodiment. First, this embodiment uses the set of all requirements (vertices) that exist on the path when tracing edges upward from a specific requirement to the top-level requirement as a "requirement context." A top-level requirement is a requirement that has no higher-level requirements. Second, this embodiment uses the requirement context for both related information edges and unrelated information edges. Third, this embodiment uses the change difference in the text of changed requirements. With these features, this embodiment presents and recommends related information edges and unrelated information edges that may need to be changed.

[0019] An additional feature of this embodiment is that for relationship information edges that are presented or recommended when a change is necessary, the system recommends the requirement that is closest to the requirement to be changed and that may create a relationship after the change, based on the requirement context of the requirement that is the starting point of the relationship information edge (the requirement above that relationship information edge).

[0020] The solution used in this embodiment is further described below.

[0021] This embodiment uses a "differential requirements context." The differential requirements context D(G,A,B) is defined as follows: The differential requirements context D(G,A,B) is the set of requirements (vertices) included in the requirement context of requirement (vertex) A in requirement graph G minus the set of requirements (vertices) included in the requirement context of requirement (vertex) B in requirement graph G. The differential requirements context may also be called a "difference set."

[0022] This embodiment performs the following process to present and recommend edges that may need to be changed among existing related information edges and unrelated information edges on a requirements graph. That is, this embodiment calculates a differential requirement context for each requirement (vertex) that has a related information edge or an unrelated information edge for the requirement (vertex) to be changed. Then, it calculates a similarity between the differential requirement context and the difference in the change in the text of the requirement body. Based on this similarity, this embodiment determines whether the related information edge or unrelated information edge should be changed, and presents and recommends the related information edge or unrelated information edge that should be changed.

[0023] In this embodiment, for a relationship edge that is presented or recommended as needing a change, the system recommends a requirement that is closest to the requirement to be changed and that may have a relationship after the change, based on the requirement context of the requirement that is the starting point of the relationship edge (the requirement above the relationship edge). A change to a requirement may determine that the relationship edge for the requirement to be changed should be deleted. However, even in such a case, it is generally difficult to imagine a situation in which a change is made that is completely unrelated to the ancestor requirement (i.e., the requirement context for the higher-level requirement) of the source of the relationship edge (i.e., the requirement above the relationship edge). In other words, it is more appropriate to assume that one of the ancestor requirements is likely to have a relationship edge. Taking into account such unique circumstances in requirements definition, when proposing to delete a relationship edge, the system proposes that the requirement closest to requirement X, which has sufficient similarity to the changed requirement, be the starting point of a new relationship edge (i.e., the requirement above the new relationship edge), based on the requirement context of the requirement that is the starting point of the relationship edge to be deleted (referred to as requirement X).

[0024] FIG. 1 is a block diagram showing a schematic functional configuration of a relationship management device 1. As shown in the figure, the relationship management device 1 includes an interface unit 101, a graph modification unit 102, a change impact calculation unit 103, a graph storage unit 104, and a context acquisition unit 105. Each of these functional units constituting the relationship management device 1 can be realized, for example, by a computer and a program. Each functional unit also has a storage unit as needed. The storage unit is, for example, a memory allocated by program variables or program execution. Non-volatile storage units such as a magnetic hard disk drive or a solid-state drive (SSD) may also be used as needed. At least some of the functions of each functional unit may also be realized as a dedicated electronic circuit rather than a program.

[0025] The interface unit 101 realizes a user interface when a user operates a requirements graph. Specifically, the interface unit 101 obtains and displays an existing requirements graph from the graph storage unit 104. The interface unit 101 also receives from the user a specification of a requirement to be changed on the requirements graph and the changed requirement text for the requirement, and passes these to the change impact calculation unit 103. The interface unit 101 also receives from the user a confirmation instruction for the requirement change and a specification of edges to be deleted from among related information edges and unrelated information edges affected by the change. The interface unit 101 also passes information identifying the requirement to be changed and the changed requirement text to the graph change unit 102.

[0026] The interface unit 101 may be configured to handle a keyboard, a mouse, a touch panel, etc. as a means for input from the user. The interface unit 101 may also be configured to handle a display device using a liquid crystal display, etc. as a means for displaying (presenting) to the user.

[0027] That is, the interface unit 101 presents to the user the related information edges that will be affected by the text change and the unrelated information edges that will be affected by the text change, which have been determined by the change impact calculation unit 103.

[0028] The graph modification unit 102 modifies the requirement graph. Specifically, the graph modification unit 102 first obtains the requirement graph before the modification from the graph storage unit 104. The graph modification unit 102 also receives information identifying the requirement to be modified, the modified requirement text, and a specification of the related information edges and unrelated information edges that are affected by the modification and should be deleted. The graph modification unit 102 then deletes the related information edges and unrelated information edges specified for deletion, rewrites the requirement text of the requirement to be modified (replaces it with the modified requirement text), and generates a new requirement graph. The graph modification unit 102 passes the generated modified requirement graph to the graph storage unit 104 for storage.

[0029] That is, based on an instruction from the user, the graph modification unit 102 can modify (update) the graph information held by the graph storage unit 104 so as to delete a related information edge that will be affected by the change in text, or delete an unrelated information edge that will be affected by the change in text. Also, based on an instruction from the user, the graph modification unit 102 can modify the information held by the graph storage unit 104 so as to newly add a related information edge that can be newly added due to the effect of the change, as determined by the change impact calculation unit 103.

[0030] The change impact calculation unit 103 calculates the impact of a change to the requirements graph. Specifically, the change impact calculation unit 103 obtains the current requirements graph from the graph storage unit 104. The change impact calculation unit 103 also receives information identifying the requirements to be changed on the requirements graph and the changed requirement text for that requirement. The change impact calculation unit 103 then calculates the related information edges and unrelated information edges that will be affected by the change. Furthermore, the change impact calculation unit 103 passes the calculated information on the related information edges and unrelated information edges that will be affected by the change to the interface unit 101. This allows the interface unit 101 to display (present to the user) the information on the related information edges and unrelated information edges that will be affected by the change.

[0031] In other words, when one of the multiple vertices in the graph is a change target vertex that is the target of a text change, the change impact calculation unit 103 determines (estimates) the related information edges that will be affected by the text change and the unrelated information edges that will be affected by the text change based on the graph information held by the graph holding unit 104.

[0032] The graph storage unit 104 stores a requirement graph. Specifically, the graph storage unit 104 has a storage means and stores information about the requirement graph expressed in an appropriate format. Here, the storage means is, for example, a semiconductor memory or a magnetic hard disk drive. There are various possible methods for expressing a requirement graph on a computer. As an example, the graph storage unit 104 stores information about a set of vertices (requirements) and information about a set of edges (relationship information edges and unrelationship information edges). The graph storage unit 104 may use a database management system (DBMS), such as a relational database, to store the information about the requirement graph.

[0033] In other words, the graph storage unit 104 stores graph information consisting of multiple vertices, each of which has text, relationship information edges indicating that there is a relationship from one higher-level vertex to another lower-level vertex, and unrelationship information edges indicating that there is no relationship from one higher-level vertex to another lower-level vertex.

[0034] An example of the data structure of the vertices (requirements) and edges (relationship information edges and irrelevance information edges) held by the graph holding unit 104 will be described later with reference to FIGS.

[0035] The context acquisition unit 105 acquires the context of a specific vertex (requirement). As described above, the context is a set of all vertices (requirements) that exist on a path when tracing edges in a sequential upward direction from the specific vertex (requirement) to the highest vertex (requirement). The highest vertex (requirement) is a vertex (requirement) for which there are no higher vertices (requirements). For example, when requested to acquire a context by the change impact calculation unit 103, the context acquisition unit 105 acquires a context based on information about the graph held by the graph holding unit 104, and returns the acquired context to the requesting change impact calculation unit 103.

[0036] FIG. 2 is a schematic diagram showing an example of a graph representing the relationships between requirements that are the target of processing by the relationship management device 1. As shown in the figure, the graph is composed of vertices and edges. In this embodiment, each vertex represents a requirement. Furthermore, an edge represents whether or not there is a relationship between the requirements. The graph in the example shown includes eight requirements. For convenience, each requirement is assigned a requirement number (requirement 1 to requirement 8). There may be a solid line edge or a dashed line edge between requirements. In other words, between any two requirements included in the graph, there can be three possible states: 1) there is a solid line edge, 2) there is a dashed line edge, or 3) there is no edge.

[0037] In this embodiment, solid line edges are called relationship information edges. Relationship information edges indicate that there is a relationship between the two requirements located at both ends of the edge. Dashed line edges are called unrelationship information edges. Unrelationship information edges explicitly indicate that there is no relationship between the two requirements located at both ends of the edge. Both relationship information edges and unrelationship information edges have a direction. In other words, the graph illustrated in FIG. 2 is a directed graph.

[0038] The graph in this example has seven related information edges and one unrelated information edge. Specifically, there are seven related information edges: requirement 1 → requirement 3, requirement 1 → requirement 4, requirement 2 → requirement 5, requirement 2 → requirement 6, requirement 4 → requirement 6, requirement 5 → requirement 7, and requirement 5 → requirement 8. There is also one unrelated information edge: requirement 3 → requirement 6.

[0039] The vertex at the base of a directed edge may be called the "higher side" or "upper," and the vertex at the tip of that edge (the side where the arrowhead is) may be called the "lower side" or "lower." The vertex at the base of a directed edge may be called the "parent," and the vertex at the tip of that edge (the side where the arrowhead is) may be called the "child." In other words, the solid arrow representing a related information edge points from the higher-level requirement to the lower-level requirement. The dashed arrow representing an unrelated information edge also points from the higher-level requirement to the lower-level requirement.

[0040] The relationship management device 1 may perform processing based on the context of a certain vertex in the requirements graph. For example, when focusing on requirement 6, its context includes requirements 1, 2, and 4. In other words, the range enclosed by the closed curve of the dashed line in the figure is the range of requirement 6 and its context.

[0041] Here, we explain the paths and their lengths in the requirements graph. Consider the following [Condition A], [Condition B], and [Condition C] for (n+1) requirements R(1), R(2), , R(n+1) that exist in the requirements graph. [Condition A]: Requirement A is requirement R(1), [Condition B]: Requirement B is requirement R(n+1), [Condition C]: For all k such that 1≦k≦n, there exists a relational information edge V(k) in the requirements graph with R(k) as the upper side and R(k+1) as the lower side.

[0042] When all of these [Condition A], [Condition B], and [Condition C] are satisfied, the sequence of relationship information edges P = (V(1), V(2), , V(n)) is a path from requirement A to requirement B. In addition, the length of this path is the length of sequence P (the number of relationship information edges that sequence P has), that is, n. Furthermore, the shortest path among all the paths from requirement A to requirement B is defined as the shortest path from requirement A to requirement B.

[0043] For any pair of requirements, requirement A and requirement B, in a requirement graph, the number of paths from requirement A to requirement B is either 0 (no path exists) or 1 or more (path exists).

[0044] In other words, in this embodiment, the set of multiple vertices included in the graph is a requirements definition. The text held by each vertex represents the text of each individual requirement. A relationship edge indicates that there is a relationship from the requirement corresponding to the vertex on the upper side of the relationship edge to the requirement corresponding to the vertex on the lower side. An unrelationship edge indicates that there is no relationship from the requirement corresponding to the vertex on the upper side of the relationship edge to the requirement corresponding to the vertex on the lower side. Requirements can be expressed as a set of descriptions of the matters that a desired system must satisfy when building it using engineering techniques. In other words, the relationship management device 1 of this embodiment performs processing regarding requirement relationships.

[0045] FIG. 3 is a schematic diagram showing an example of the configuration of a table for storing requirement text, which is one of the data stored (stored) by the graph storage unit 104. As shown in the figure, this data has the format of a two-dimensional table, and has fields called requirement number and requirement text. One row of data in this table corresponds to one requirement and one vertex on the graph. The requirement number is information for uniquely identifying a vertex in one graph. The requirement text is text associated with the requirement number and is a sentence that expresses the content of the requirement. In the same figure, for example, the requirement text corresponding to requirement 1 is, "The system can perform X operation based on user instructions." The same applies to other requirement numbers.

[0046] 4 is a schematic diagram showing an example of the configuration of edge-related data stored (stored) by the graph storage unit 104. As shown in the figure, this data is in the form of a two-dimensional table, and has items such as a higher-level requirement number, a lower-level requirement number, and a type. One row of data in this table corresponds to one edge in the graph and indicates whether there is a relationship between two vertices (requirements). The higher-level requirement number is the requirement number of the vertex (requirement) higher than that edge. The lower-level requirement number is the requirement number of the vertex (requirement) lower than that edge. The type is information that indicates the type of edge. Specifically, the type here is either a "related information edge" or an "unrelated information edge."

[0047] For convenience, each line is assigned a line number. For example, in the data of the first line, the higher-level requirement number is "Requirement 1," the lower-level requirement number is "Requirement 2," and the type is "Relationship Information Edge." The same applies to the data of the other lines.

[0048] The operation procedure of the relationship management device 1 will be described below with reference to a flowchart.

[0049] Figure 5 is a flowchart showing the overall procedure when the relationship management device 1 performs processing to respond to a change in a requirement. The processing procedure will be explained below with reference to this flowchart. Note that the processing shown in Figure 5 is premised on the assumption that the requirement graph to be processed has been identified and that the specific requirement (vertex) to be changed has been designated.

[0050] First, in step S100, the interface unit 101 receives information for specifying a requirement to be changed in the requirement graph. The interface unit 101 also receives input of the changed requirement text (character string) for the requirement to be changed. For example, the interface unit 101 receives this information by the user operating a keyboard or pointing device (e.g., a mouse or touch panel). The interface unit 101 then passes the information specifying the requirement to be changed (e.g., requirement 1) and the changed requirement text to the change impact calculation unit 103.

[0051] Next, in step S200, the change impact calculation unit 103 calculates the impact of changing a requirement. Specifically, the change impact calculation unit 103 calculates relationship information edges related to the requirement to be changed based on information specifying the requirement. In other words, in step S200, the change impact calculation unit 103 calculates relationship information edges for the requirement to be changed (relationship information edges that have the requirement to be changed as a lower-level requirement) that need to be deleted due to the impact of the change. Then, the change impact calculation unit 103 causes the interface unit 101 to display information on a set of calculated relationship information edges on a screen or the like. Note that a more detailed procedure for the processing of step S200 will be described later with reference to another flowchart.

[0052] Next, in step S300, the change impact calculation unit 103 calculates new relationship information edges that can be set as substitutes for the relationship information edges that will be affected by the change in requirements (the relationship information edges found in step S200). Then, the change impact calculation unit 103 causes the interface unit 101 to display the new relationship information edges that can be set as substitutes. Note that the processing procedure of step S300 will be described in more detail later with reference to another flowchart.

[0053] Next, in step S400, the change impact calculation unit 103 calculates which of the unrelated information edges for the requirement to be changed (unrelated information edges with the requirement to be changed as a lower-level requirement) need to be deleted due to the impact of the change. Then, the change impact calculation unit 103 causes the interface unit 101 to display the unrelated information edges that need to be deleted due to the impact of the change. Note that a more detailed procedure for the processing of step S400 will be described later with reference to another flowchart.

[0054] Next, in step S500, the interface unit 101 accepts a designation of which related information edges and unrelated information edges are to be deleted or added from among those affected by the change. The interface unit 101 also accepts an instruction to finalize the requirements. That is, the user can instruct whether to actually delete or add the information requested in steps S200, S300, and S400.

[0055] That is, in step S500, the interface unit 101 accepts relationship information edges and unrelationship information edges that the user has actually specified as being to be deleted from the relationship information edges and unrelationship information edges to be deleted that the interface unit 101 has presented through steps S200 and S400. Also in step S500, the interface unit 101 accepts relationship information edges that the user has actually specified as being to be added from the relationship information edges that can be newly added that the interface unit 101 has presented through step S300. Also in step S500, the interface unit 101 accepts an instruction to finalize the text of the requirement body after change for the requirement to be changed that has been specified in S100. The interface unit 101 sends the information about the items received in this step to the graph modification unit 102 .

[0056] Next, in step S600, the graph modification unit 102 actually deletes or adds the specified related information edges or unrelated information edges based on the instructions received from the user by the interface unit 101 in step S500, and modifies the text of the requirement body.

[0057] That is, in step S600, the graph modification unit 102 updates the graph information stored in the graph storage unit 104 based on the information received in step S500. That is, the graph modification unit 102 updates the text of the requirement body of the vertex to be modified. The graph modification unit 102 also deletes the specified related information edges and unrelated information edges to be deleted. The graph modification unit 102 also adds new related information edges to be added as replacements to the graph. As a result of the processing in step S600, the graph storage unit 104 stores the information of the modified graph.

[0058] 6 is a flowchart showing the detailed steps taken by the relationship management device 1 when it executes a process for calculating relationship information edges that are affected by a change in a requirement. The process steps will be explained below with reference to this flowchart.

[0059] In step S201, the change impact calculation unit 103 acquires a set of requirements that have relationship information edges with the requirement to be changed from the graph storage unit 104. Specifically, the change impact calculation unit 103 identifies relationship information edges that have the requirement to be changed as a higher or lower requirement number. Then, for each of these relationship information edges, the change impact calculation unit 103 acquires a set of requirements on the opposite side of the requirement to be changed.

[0060] Each element of the set of requirements acquired in step S201 will hereinafter be referred to as a requirement R. Next, the change impact calculation unit 103 repeats the processes from steps S202 to S207 for each requirement R in the set acquired in step S201.

[0061] In step S202, the change impact calculation unit 103 acquires the requirement context of the requirement R by making a request to the context acquisition unit 105. The set of requirements acquired in this step is referred to as a requirement set A.

[0062] For example, if requirement R is requirement 6 shown in Figure 2, the requirement context of requirement 6 is the requirements within the area surrounded by the dashed line. That is, the requirement context of requirement 6 is requirement 1, requirement 2, requirement 4, and requirement 6.

[0063] In step S203, the change impact calculation unit 103 acquires requirement contexts for all requirements that have unrelated information edges to requirement R by requesting the context acquisition unit 105. The set of requirements acquired in this step is referred to as requirement set B.

[0064] For example, if requirement R is requirement 6 shown in Figure 2, the only requirement that has an irrelevant information edge to requirement 6 is requirement 3. The requirement context of requirement 3 is then requirement 1 and requirement 3.

[0065] In step S204, the change impact calculation unit 103 calculates a set (called a difference set) obtained by subtracting requirement set B from requirement set A. In other words, the elements of the difference set are elements that are elements of requirement set A but are not elements of requirement set B. This difference set is called requirement set C.

[0066] For example, if requirement R is requirement 6 shown in Figure 2, Calculate the difference set by removing requirement set B, i.e., {requirement 1, requirement 2, requirement 4, requirement 6}, from requirement set A, i.e., {requirement 1, requirement 2, requirement 4, requirement 6}. This difference set (requirement set C) is {requirement 2, requirement 4, requirement 6}.

[0067] In step S205, the change impact calculation unit 103 calculates the similarity between the requirement set C obtained in step S204 and the difference in change of the requirement text of the requirement to be changed.

[0068] Any method may be used to calculate the similarity in step S205. In this embodiment, as an example of a method for calculating the similarity, the frequency of appearance of nouns in the content of requirements is used as a feature of the requirements, and the cosine similarity between these feature values ​​is used. What is important here is that in step S204, the set of requirements included in the requirement context of a requirement that has an unrelated information edge to requirement R is excluded from the calculation target. Another important point is that the calculation is performed using the difference in the change to the requirement body, rather than the entire requirement body of the requirement to be changed.

[0069] Specifically, in calculating the similarity in step S205, the change impact calculation unit 103 calculates the cosine similarity between vectors representing the occurrence frequencies of nouns in each of the requirements. That is, the change impact calculation unit 103 performs morphological analysis on the text of the requirement body included in the difference set (requirement set C) obtained in step S204, and calculates the occurrence frequencies of nouns included in the requirement body. This occurrence frequency is referred to as VE. The occurrence frequency of a noun here is a form of data structure widely known as bag-of-words. That is, the occurrence frequency of a noun is expressed as a vector in which each dimension corresponds to a noun and the numerical value of the occurrence frequency of the noun is used as the element of that dimension. Meanwhile, the change impact calculation unit 103 calculates the occurrence frequency VN of nouns included in the change difference of the requirement body of the requirement to be changed. The calculation method of the occurrence frequency VN is the same as that of the occurrence frequency VE described above. Then, the change impact calculation unit 103 calculates the cosine similarity S between the occurrence frequency VE and the occurrence frequency VN. The cosine similarity S is calculated using the following formula: In the formula below, the operator "·" calculates the dot product between vectors.

[0070] S=(VE·VN) / (|VE||VN|)

[0071] In step S206, the change impact calculation unit 103 determines whether the similarity S calculated in step S205 is below a predetermined threshold. If the similarity S is below the threshold (step S206: YES), the process proceeds to the next step S207. If the similarity S is not below the threshold (step S206: NO), the process skips the next step S207.

[0072] In step S207, the change impact calculation unit 103 determines the relationship edge from the current requirement R to the requirement to be changed as the relationship edge affected by the change. In the determination of step S206, if the similarity S falls below the threshold, it means that the content of the requirement text of the changed requirement has a low similarity when compared with the content indicated by the requirement (requirement R) that has the relationship edge. In other words, it can be interpreted that the change to the requirement has made the relationship edge meaningless. Then, the change impact calculation unit 103 causes the interface unit 101 to display the relationship edges affected by the change.

[0073] When the processing up to this point is complete (including when the determination result in step S206 is "NO"), the process returns to step S202 and proceeds to processing the next requirement R. However, when processing has been completed for all requirements R to be processed, the entire processing of this flowchart ends.

[0074] 6 is as follows: The change impact calculation unit 103 determines (estimates) relationship information edges that will be affected by the change to the text as follows: For each relationship information edge that has the change target vertex (requirement to be changed) as its lower vertex, the change impact calculation unit 103 determines (estimates) relationship information edges that will be affected by the change to the text as follows: For each relationship information edge that has the change target vertex (requirement to be changed) as its lower vertex, the change impact calculation unit 103 determines all vertices connected to the first vertex (the upper vertex of the relationship information edge) ("all vertices connected to the upper vertex" are vertices that belong to the requirement context of requirement R. "Connected" means that they are directly or indirectly connected) by the relationship information edge as second vertices (vertices that belong to that context. vertices that belong to requirement set A). All vertices connected further up by edges (vertices belonging to the requirement context of the requirement corresponding to the third vertex) are set as the fourth vertex (vertices belonging to requirement set B), and a first similarity (similarity calculated in step S205) is calculated, which is the similarity between the text of a vertex that is the second vertex but not the fourth vertex (a vertex that belongs to the difference set described in step S204; a vertex that belongs to requirement set C) and the changed text information, which is information related to the change of the vertex to be changed.If the first similarity is below a predetermined threshold (judgment of "YES" in step S206), the relationship information edge representing the relationship from the first vertex to the vertex to be changed is determined to be the relationship information edge affected by the change.

[0075] However, the above-mentioned changed text information is a text of the difference between the text before the change and the text after the change at the vertex to be changed.

[0076] Furthermore, as described as an embodiment, the calculated first similarity may be as follows: That is, the first similarity may be calculated as a cosine similarity between a vector representing the appearance frequency of a word included in a text of a vertex that is the second vertex and is not the fourth vertex, and a vector representing the appearance frequency of a word included in the changed text information.

[0077] 7 is a flowchart showing the detailed steps performed by the relationship management device 1 when it executes a process to calculate relationship information edges that can be set as substitutes for relationship information edges that are affected by a change in requirements. In the process of this flowchart, new relationship information edges that can be substitutes are proposed and displayed for each relationship information edge V that was displayed in step S200 as a relationship information edge that is affected by the change. The process steps will be explained below with reference to this flowchart.

[0078] 7, for each relationship information edge affected by the change in requirements (relationship information edge obtained in step S200), a new relationship information edge that can serve as a substitute is obtained and proposed. This proposal is performed for each requirement R obtained from among the requirements X in the requirement context of the requirement S that is the starting point of each relationship information edge (represented as relationship information edge V), in order from the requirement X with the shortest length of the shortest path from requirement X to requirement S.

[0079] This flowchart has doubly nested loops (repeated processes). In the outer loop, the process of the inner loop is repeated for each relationship edge (referred to as relationship edge V) displayed as a relationship edge affected by the change in step S200. In addition, the inner loop repeats the process for each acquired requirement (referred to as requirement R) in the requirement context of the requirement (referred to as requirement S) that is the starting point of the relationship edge V, in order of the shortest path to requirement S.

[0080] In step S301, the change impact calculation unit 103 acquires the requirement context of requirement R by making a request to the context acquisition unit 105. The set of requirements acquired in this step is referred to as requirement set D. Note that the processing in step S301 is the same as the processing in step S202 described above.

[0081] In step S302, the change impact calculation unit 103 acquires requirement contexts for all requirements that have unrelated information edges to requirement R by requesting the context acquisition unit 105. The set of requirements acquired in this step is referred to as requirement set E. Note that the processing in step S302 is the same as the processing in step S203 described above.

[0082] In step S303, the change impact calculation unit 103 calculates a set (difference set) obtained by subtracting requirement set E from requirement set D. In other words, the elements of this difference set are elements that are elements of requirement set D but are not elements of requirement set E. This difference set is called requirement set F. Note that the processing in step S303 is the same as the processing in step S204 described above.

[0083] In step S304, the change impact calculation unit 103 calculates the similarity between the requirement set F obtained in step S303 and the change difference in the requirement body of the requirement to be changed. Note that the processing in step S304 is the same as the processing in step S205 described above. As explained in step S205, any method can be used to calculate the similarity here. As in step S205, an example of a specific method for calculating the similarity is as follows. That is, it is possible to calculate the cosine similarity between a vector (bag-of-words vector) representing the appearance frequency of nouns in the requirement body included in the requirement set F and a vector representing the appearance frequency of nouns included in the change difference in the requirement body of the requirement to be changed.

[0084] In step S305, the change impact calculation unit 103 determines whether the similarity calculated in S304 exceeds a preset threshold. If the calculated similarity exceeds the predetermined threshold (step S305: YES), the process proceeds to the next step S306. If the calculated similarity does not exceed the threshold (step S305: NO), the process of step S306 is skipped, and one iteration of the inner loop of this flowchart is completed (the process for the current requirement R is completed).

[0085] In the judgment of step S305 above, if the calculated similarity exceeds the threshold, it means, in other words, that the content of the requirement text of the requirement to be changed is more similar than the content indicated by the requirement with the relationship information edge that can be newly added.

[0086] If the process proceeds to step S306 (the case of "step S305: YES" above), in step S306, the change impact calculation unit 103 sets the relationship information edge from requirement R to the requirement to be changed as a relationship information edge that can be newly added due to the impact of the change. Furthermore, the change impact calculation unit 103 causes the interface unit 101 to display the relationship information edge that can be newly added. After the process of step S306 ends, one round of processing in the outer loop of this flowchart ends (processing for the current relationship information edge V ends).

[0087] In other words, by performing the processing of this flowchart, at most one requirement among the requirements in the requirement context of requirement S, which is the starting point of relationship information edge V, can be proposed as a requirement to which a new relationship information edge can be assigned. Conversely, there may be cases where all requirements whose similarity has been calculated as starting points to which a new relationship information edge should be assigned fall below a preset threshold, in which case it is determined that there are no relationship information edges to which a new relationship information edge can be assigned.

[0088] 7 is as follows: The change impact calculation unit 103 determines (estimates) relationship information edges that may be newly added due to the impact of the change, as follows: For each relationship information edge (relationship information edge V) that the change impact calculation unit 103 has determined as a relationship information edge affected by the change, based on the ninth vertex (the vertex corresponding to requirement S) that is the upper vertex of the relationship information edge affected by the change, the change impact calculation unit 103 determines all vertices further connected to the tenth vertex (requirement S, requirement R) that are connected to the ninth vertex by relationship information edges as the eleventh vertex (requirement context of requirement R; requirement belonging to requirement set D), and all vertices higher up the irrelevant information edges that have the tenth vertex as a lower vertex as the twelfth vertex (the vertex having an irrelevant information edge to requirement R as explained in step S302). The 12th vertex is defined as the 13th vertex, and all vertices connected further up from the 12th vertex by relationship information edges (vertices belonging to requirement set E) are defined as the 13th vertex. A third similarity (similarity calculated in step S304) is calculated, which is the similarity between the text of a vertex that is the 11th vertex but not the 13th vertex (the difference set explained in step S303; a vertex belonging to requirement set F) and the changed text information, which is information related to the change to the vertex to be changed. If the third similarity exceeds a predetermined threshold (determination of "YES" in step S305), the relationship information edge with the 10th vertex on the upper side and the vertex to be changed on the lower side is determined to be a relationship information edge that can be newly added due to the influence of the change.

[0089] In the above process of this embodiment, when the change impact calculation unit 103 determines relationship information edges that can be newly assigned as a result of the change, it limits the determination to the top K relationship information edges (K is an integer of 1 or more that is determined appropriately) in descending order of distance from the ninth vertex to the tenth vertex. Here, the distance is the number of relationship information edges that pass between the ninth vertex and the tenth vertex. In addition, the value of K in this embodiment is 1.

[0090] Furthermore, as described as an embodiment, the calculated third similarity may be as follows: That is, the third similarity may be calculated as the cosine similarity between a vector representing the appearance frequency of words included in a text of a vertex that is the eleventh vertex and is not the thirteenth vertex, and a vector representing the appearance frequency of words included in the changed text information.

[0091] 8 is a flowchart showing the overall procedure when the relationship management device 1 executes the process of calculating irrelevant information edges affected by a change in a requirement. The processing procedure will be explained below with reference to this flowchart.

[0092] In step S401, the change impact calculation unit 103 acquires a set of requirements that have an unrelated information edge with respect to the requirement to be changed from the graph storage unit 104. The set of requirements acquired here is referred to as requirement set G. The processing of this step S401 is similar to the processing of step S201 described above. However, the difference is that the processing of step S201 acquires a set of requirements that have a related information edge, whereas the processing of step S401 acquires a set of requirements that have an unrelated information edge.

[0093] Each element of the requirement set G acquired in step S401 will hereinafter be referred to as a requirement R. Next, the change impact calculation unit 103 repeats the processes from steps S402 to S407 for each requirement R in the requirement set G acquired in step S401.

[0094] In step S402, the change impact calculation unit 103 acquires the requirement context of requirement R by making a request to the context acquisition unit 105. The set of requirements acquired in this step is referred to as requirement set H. Note that the processing in step S402 is the same as the processing in step S202 described above.

[0095] In step S403, the change impact calculation unit 103 acquires requirement contexts for all requirements that have unrelated information edges to requirement R by requesting the context acquisition unit 105. The set of requirements acquired in this step is referred to as requirement set I. Note that the processing in step S403 is the same as the processing in step S203 described above.

[0096] In step S404, the change impact calculation unit 103 calculates a set (difference set) obtained by removing requirement set I from requirement set H. In other words, the elements of this difference set are elements that are elements of requirement set H but are not elements of requirement set I. The difference set calculated in this step is defined as requirement set J. Note that the processing in step S404 is the same as the processing in step S204 described above.

[0097] In step S405, the change impact calculation unit 103 calculates the similarity between the requirement set J obtained in step S404 and the change difference in the requirement body of the requirement to be changed. Note that the processing in step S405 is the same as the processing in step S205 described above. As explained in step S205, any method can be used to calculate the similarity here. As in step S205, an example of a specific method for calculating the similarity is as follows: That is, a cosine similarity may be calculated between a vector (bag-of-words vector) representing the appearance frequency of nouns in the requirement body included in the requirement set F and a vector representing the appearance frequency of nouns included in the change difference in the requirement body of the requirement to be changed.

[0098] In step S406, the change impact calculation unit 103 determines whether the similarity calculated in S405 exceeds a preset threshold. If the calculated similarity exceeds the predetermined threshold (step S406: YES), the process proceeds to the next step S407. If the calculated similarity does not exceed the threshold (step S406: NO), the process of step S407 is skipped, and one iteration of the loop in this flowchart is completed (the process for the current requirement R is completed).

[0099] The determination in step S206 was whether "the similarity is below a predetermined threshold." In contrast to this, the determination in step S406 is whether "the similarity is above a predetermined threshold." The difference between S206 and S406 is as follows: in step S206, the validity of an existing related information edge is reconfirmed based on a high similarity, whereas in step S406, the validity of an existing unrelated information edge is reconfirmed based on a low similarity.

[0100] If the process proceeds to step S407 (the case of "step S406: YES" above), in step S407, the change impact calculation unit 103 determines that the unrelated information edge from requirement R to the requirement to be changed is an unrelated information edge that will be affected by the change. In addition, the change impact calculation unit 103 causes the interface unit 101 to display the unrelated information edge that will be affected by the change. After the process of step S407 ends, one iteration of the loop in this flowchart ends (the process for the current requirement R ends).

[0101] When the above processing for all requirements R is completed, the entire processing of this flowchart is completed.

[0102] 8 is as follows: The change impact calculation unit 103 determines (estimates) the unrelated information edges that will be affected by the change to the text as follows: For each unrelated information edge that has the vertex to be changed as its lower vertex, the change impact calculation unit 103 determines as a sixth vertex all vertices (requirement context of requirement R; vertices belonging to requirement set G) that are connected further up by related information edges from the fifth vertex (the vertex belonging to requirement set F described in step S401; requirement R) that is the upper vertex of the unrelated information edge, and for each unrelated information edge that has the fifth vertex as its lower vertex, all vertices (requirement context of requirement R; vertices belonging to requirement set G) that are connected further up by related information edges from the seventh vertex that is the upper vertex of the unrelated information edge The sixth vertex (a vertex belonging to set H) is set as the eighth vertex, and a second similarity (similarity calculated in step S405) is calculated, which is the similarity between the text of a vertex that is the sixth vertex but not the eighth vertex (a vertex that belongs to the difference set (= requirement set I) described in step S404) and the changed text information, which is information regarding the change to the vertex to be changed.If the second similarity exceeds a predetermined threshold (judgment of ``YES'' in step S406), the unrelated information edge indicating that there is no relationship from the fifth vertex to the vertex to be changed is determined to be the unrelated information edge that will be affected by the change.

[0103] If there are multiple requirements to be changed, the processes from steps S100 to S600 (FIG. 5) are repeated for each of the requirements to be changed.

[0104] As explained above with reference to the flowchart, in a series of processes, the user inputs information specifying the requirements to be changed and the changed requirement text into the relationship management device 1. Based on the input information, the relationship management device 1 can determine (estimate) relationship information edges or unrelated information edges that should be deleted or added newly in the existing requirements graph due to the change in requirements, and can also determine (estimate) relationship information edges or unrelated information edges that should be added newly. The relationship management device 1 can also display the relationship information edges or unrelated information edges that should be deleted or the relationship information edges or unrelated information edges that should be added newly as candidates. Because the user can view the information presented by the relationship management device 1, the user can avoid the trouble of having to recheck all relationship information edges, unrelated information edges, and requirements.

[0105] Furthermore, if there are multiple requirements to be changed, the processes from steps S100 to S600 are repeated for each requirement, so that once the changes to each requirement have been completed, the requirements graph can be updated sequentially while maintaining a semantically consistent requirements graph.

[0106] In other words, according to this embodiment, the relationship management device 1 calculates the impact on existing relationship information edges and unrelationship information edges based on the differences in the requirement text to be changed. This allows the user to change the requirements graph while receiving presentations and recommendations of optimal upper and lower relationships at the time of change, even during the process of sequentially changing requirements.

[0107] Second Embodiment Hereinafter, an embodiment according to the present disclosure will be described with reference to the drawings. Note that the description of matters already described in the previous embodiment may be omitted. Here, the description will focus on matters unique to this embodiment.

[0108] FIG. 9 is a block diagram showing a schematic functional configuration of the relationship management device 2. As shown in the figure, the relationship management device 1 includes an interface unit 101, a graph modification unit 102, a change impact calculation unit 103B, a graph storage unit 104, and a context acquisition unit 105. A feature of the relationship management device 2 is that it includes a change impact calculation unit 103B instead of the change impact calculation unit 103 in the relationship management device 1 described above. Each of these functional units constituting the relationship management device 2 can also be realized by a computer and a program, as in the case of the relationship management device 1 described above. Furthermore, each functional unit has a storage means as necessary. Furthermore, at least some of the functions of each functional unit may be realized by a dedicated electronic circuit rather than a program.

[0109] In the above-described configuration, the change impact calculation unit 103 uses the difference in the change in the requirement body and a given set of requirements as inputs when calculating the similarity when executing each of the processing steps S200, S300, and S400. That is, the change impact calculation unit 103 calculates the similarity between the difference in the change in the requirement body and the given set of requirements. In addition to calculating the similarity, the change impact calculation unit 103B in this embodiment separately calculates the similarity between the entire body of the changed requirements and the given set of requirements. The change impact calculation unit 103B then uses a weighted sum of these two types of similarity (first, the similarity between the difference in the change in the requirement body and the given set of requirements; and second, the similarity between the entire body of the changed requirements and the given set of requirements) using a predetermined weighting factor, and uses the resulting value as the similarity for the determination. The weights for both may be, for example, preset. This allows the change impact calculation unit 103B of this embodiment to more finely adjust the degree of impact due to the difference in change of the requirement body in the process of proposing related information edges and unrelated information edges to be deleted.

[0110] In other words, in this embodiment, the "changed text information" is the difference between the pre-change text and the post-change text at the change target vertex, and the post-change text that the change target vertex will have as a result of the change. The change impact calculation unit 103B calculates the similarity between such change text information and a given requirement set by using the above-mentioned weighted addition.

[0111] <Third embodiment> Hereinafter, an embodiment according to the present disclosure will be described with reference to the drawings. Note that the following description may omit matters that have already been described in the previous embodiments. Here, the description will focus on matters unique to this embodiment.

[0112] FIG. 10 is a block diagram showing a schematic functional configuration of the relationship management device 3. As shown in the figure, the relationship management device 3 is configured to include an interface unit 101, a graph modification unit 102, a change impact calculation unit 103C, a graph storage unit 104, and a context acquisition unit 105. A feature of the relationship management device 3 is that it has a change impact calculation unit 103C instead of the change impact calculation unit 103 in the relationship management device 1 described above. Each of these functional units that make up the relationship management device 3 can also be realized by a computer and a program, as in the case of the relationship management device 1 described above. Furthermore, each functional unit has storage means as necessary. Furthermore, at least some of the functions of each functional unit may be realized by a dedicated electronic circuit rather than a program.

[0113] In the above-described configuration, the change impact calculation unit 103 is configured to propose at most one new relationship information edge in the process of step S300. In contrast, the change impact calculation unit 103C in this embodiment may relax the "at most one" constraint and propose multiple relationship information edges. For example, the change impact calculation unit 103C may propose all new relationship information edges with a similarity equal to or greater than a predetermined threshold. Alternatively, the change impact calculation unit 103C may propose a predetermined number (this number may be predetermined) of new relationship information edges with a similarity equal to or greater than a predetermined threshold, in order of shortest path length. In this case, when determining relationship information edges that can be newly assigned due to the change, the change impact calculation unit 103 limits the relationship information edges that can be newly assigned due to the change to the top K relationship information edges (K is an integer equal to or greater than 1, as determined appropriately) in order of shortest distance from the ninth vertex to the tenth vertex. Here, the distance is the number of relationship information edges passing between the ninth vertex and the tenth vertex.

[0114] <Fourth embodiment> Hereinafter, an embodiment according to the present disclosure will be described with reference to the drawings. Note that the following description may omit matters that have already been described in the previous embodiments. Here, the description will focus on matters unique to this embodiment.

[0115] 11 is a block diagram showing a schematic functional configuration of the relationship management device 4. As shown in the figure, the relationship management device 4 is configured to include a change impact calculation unit 103 and a graph storage unit 104. Each of these functional units that make up the relationship management device 4 can also be realized by a computer and a program, as in the case of the relationship management device 1 described above. Furthermore, each functional unit has a storage means as necessary. Furthermore, at least some of the functions of each functional unit may be realized as a dedicated electronic circuit rather than a program.

[0116] The graph storage unit 104 stores graph information. A graph is composed of multiple vertices and edges connecting the vertices. Each vertex has text. The graph stored in the graph storage unit 104 is a directed graph. That is, edges have a direction. In the graph stored in the graph storage unit 104, edges are oriented from a higher-level vertex to a lower-level vertex. There are two types of edges: relationship information edges, which indicate a relationship from one higher-level vertex to another lower-level vertex, and unrelationship information edges, which indicate no relationship from one higher-level vertex to another lower-level vertex. Here, the presence or absence of a relationship between vertices may depend on the meaning of the text held by the vertices.

[0117] In other words, the graph storage unit 104 stores graph information consisting of multiple vertices, each of which has text, relationship information edges indicating that there is a relationship from one higher-level vertex to another lower-level vertex, and unrelationship information edges indicating that there is no relationship from one higher-level vertex to another lower-level vertex.

[0118] When one of the multiple vertices in the graph is a change target vertex that is the target of a text change, the change impact calculation unit 103 determines (estimates) the related information edges that will be affected by the text change and the unrelated information edges that will be affected by the text change, based on the graph information held by the graph holding unit 104.

[0119] The change impact calculation unit 103 determines (estimates) the related information edges and unrelated information edges that will be affected by the change in text, for example, as follows.

[0120] In other words, for each relationship information edge that has the vertex to be changed as its lower vertex, the change impact calculation unit 103 calculates a first similarity, which is the similarity between the text held by a vertex that is a second vertex but is not the fourth vertex, and changed text information, which is information regarding the change to the vertex to be changed, by determining as second vertices all vertices connected higher by relationship information edges from the first vertex, which is the upper vertex of the relationship information edge, and for each unrelated information edge that has the first vertex as its lower vertex, all vertices connected higher by relationship information edges from the third vertex, which is the upper vertex of the unrelated information edge, as fourth vertices, and if the first similarity is below a predetermined threshold, the change impact calculation unit 103 determines the relationship information edge that represents the relationship from the first vertex to the vertex to be changed to be the relationship information edge that will be affected by the change.

[0121] Furthermore, for each unrelated information edge having the vertex to be changed as its lower vertex, the change impact calculation unit 103 determines all vertices connected higher up by related information edges from the fifth vertex, which is the upper vertex of the unrelated information edge, as a sixth vertex, and for each unrelated information edge having the fifth vertex as its lower vertex, all vertices connected higher up by related information edges from the seventh vertex, which is the upper vertex of the unrelated information edge, as an eighth vertex, and calculates a second similarity, which is the similarity between the text held by a vertex that is the sixth vertex but not the eighth vertex, and changed text information, which is information regarding the change to the vertex to be changed, and if the second similarity exceeds a predetermined threshold, determines the unrelated information edge, which indicates that there is no relationship from the fifth vertex to the vertex to be changed, as the unrelated information edge that will be affected by the change.

[0122] FIG. 12 is a schematic diagram of an example of a graph to be processed by the relationship management device 4. As shown in the figure, the graph in this example has eight vertices, from vertex 1 to vertex 8. Furthermore, vertices may be connected by related information edges or unrelated information edges. In this figure, related information edges are represented by solid lines, and unrelated information edges are represented by dashed lines. Each related information edge and unrelated information edge has a direction. The direction of each related information edge and unrelated information edge is represented by an arrow in the figure. Vertices may have a higher-order and lower-order relationship. In this example, the direction is represented as the direction from the higher-order vertex to the lower-order vertex. Note that vertices may also be called nodes, sections, vertices, etc. Furthermore, edges may also be called edges, arcs, links, etc.

[0123] Each vertex has text (not shown). The text may be, for example, a requirement text in a requirement definition or the like, but is not limited to this and may be any text.

[0124] The detailed procedure of the process executed by the change influence calculation unit 103 is as described in other embodiments. However, in this embodiment, the vertices do not necessarily have to correspond to the requirements.

[0125] That is, for example, when the vertices of the graph correspond to requirements, the relationship management device 4 can function as a requirements definition support device. However, the relationship management device 4 can be used not only for the purpose of supporting requirements definition, but also for managing relationships between any texts.

[0126] FIG. 13 is a block diagram showing an example of the internal configuration of a related management device in each of the above-described embodiments. The related management device (1, 2, 3, or 4) can be realized using a computer. As shown in the figure, the computer includes a central processing unit 901, a RAM 902, an input / output port 903, input / output devices 904 and 905, and a bus 906. The computer itself can be realized using existing technology. The central processing unit 901 executes instructions contained in a program read from the RAM 902 or the like. In accordance with each instruction, the central processing unit 901 writes data to the RAM 902, reads data from the RAM 902, and performs arithmetic and logical operations. The RAM 902 stores data and programs. Each element contained in the RAM 902 has an address and can be accessed using the address. RAM is an abbreviation for "random access memory." The input / output port 903 is a port through which the central processing unit 901 exchanges data with external input / output devices, etc. Input / output devices 904 and 905 exchange data with the central processing unit 901 via an input / output port 903. A bus 906 is a common communication path used within the computer. For example, the central processing unit 901 reads and writes data from and to RAM 902 via the bus 906. Also, for example, the central processing unit 901 accesses the input / output port 903 via the bus 906.

[0127] At least some of the functions of the related management device in the above-described embodiment can be implemented by a computer and a program. In this case, the program for implementing the functions may be recorded on a computer-readable recording medium and then loaded and executed by a computer system. Note that the term "computer system" as used herein includes hardware such as an operating system and peripheral devices. Furthermore, "computer-readable recording medium" refers to portable media such as flexible disks, optical magnetic disks, ROMs, CD-ROMs, DVD-ROMs, and USB memory, as well as storage devices such as hard disks built into computer systems. In other words, a "computer-readable recording medium" may be a non-transitory computer-readable recording medium. Furthermore, the term "computer-readable recording medium" may also include media that temporarily and dynamically store programs, such as communication lines used when transmitting programs over networks such as the Internet or telephone lines, or media that store programs for a certain period of time, such as volatile memory within the computer systems that serve as servers or clients. The program may also be designed to implement some of the above-described functions, or it may be capable of implementing the above-described functions in combination with programs already stored in the computer system.

[0128] Although multiple embodiments have been described above, the present invention can also be implemented in the following modified examples. Note that multiple embodiments and modified examples may be implemented in combination to the extent that they can be combined.

[0129] For example, in any of the first to third embodiments, the relationship management device may not have at least either the interface unit 101 or the graph change unit 102.

[0130] Also, for example, in the fourth embodiment, the relationship management device may have at least one of the interface unit 101 or the graph change unit 102 described in the first embodiment and the like.

[0131] Furthermore, for example, in any of the first to fourth embodiments, the relationship management device may be configured not to determine (or estimate) other relationship information edges that can replace the relationship information edge determined as the relationship information edge affected by the change in requirements. Even in such a case, the relationship management device can determine (or estimate) the relationship information edge or the unrelated information edge affected by the change in requirements.

[0132] Although an embodiment of the present invention has been described above in detail with reference to the drawings, the specific configuration is not limited to this embodiment, and includes designs within the scope of the gist of the present invention.

[0133] Although the present disclosure has been described above with reference to the embodiments, the present disclosure is not limited to the above-described embodiments. Various modifications that can be understood by those skilled in the art can be made to the configuration and details of the present disclosure within the scope of the present disclosure. Furthermore, each embodiment can be combined with other embodiments as appropriate.

[0134] Some or all of the above-described embodiments can be described as, but are not limited to, the following supplementary notes.

[0135] (Appendix 1) a graph storage unit for storing graph information including a plurality of vertices each having text, a relationship information edge representing a relationship from one upper vertex to another lower vertex, and an unrelationship information edge representing no relationship from one upper vertex to another lower vertex; a change influence calculation unit that, when one of the plurality of vertices is a change target vertex that is the target of a text change, determines, based on the graph information stored in the graph storage unit, a related information edge that will be affected by the text change and an unrelated information edge that will be affected by the text change; A change management device comprising:

[0136] (Appendix 2) a graph storage unit for storing graph information including a plurality of vertices each having text, a relationship information edge representing a relationship from one upper vertex to another lower vertex, and an unrelationship information edge representing no relationship from one upper vertex to another lower vertex; a change influence calculation unit that, when one of the plurality of vertices is a change target vertex that is the target of a text change, determines a related information edge that is affected by the text change and an unrelated information edge that is affected by the text change; Equipped with the change influence calculation unit calculates a first similarity, which is the similarity between text held by a second vertex that is not a fourth vertex and changed text information that is information related to the change of the vertex to be changed, for each relationship information edge having the vertex to be changed as a lower vertex, by setting as second vertices all vertices connected higher by relationship information edges from a first vertex that is a higher vertex of the relationship information edge, and for each unrelationship information edge having the first vertex as a lower vertex all vertices connected higher by relationship information edges from a third vertex that is a higher vertex of the unrelationship information edge, and calculates a first similarity, which is the similarity between text held by a vertex that is a second vertex but is not a fourth vertex, and changed text information that is information related to the change of the vertex to be changed, and if the first similarity is below a predetermined threshold, determines the relationship information edge that represents the relationship from the first vertex to the vertex to be changed as a relationship information edge that will be affected by the change; and the change influence calculation unit calculates a second similarity between text held by a vertex that is the sixth vertex but not the eighth vertex and changed text information that is information related to the change to the vertex to be changed, for each unrelated information edge having the vertex to be changed as a lower vertex, by designating all vertices connected higher up by relationship information edges from the fifth vertex, which is the upper vertex of the unrelated information edge, as a sixth vertex, and for each unrelated information edge having the fifth vertex as a lower vertex, by designating all vertices connected higher up by relationship information edges from the seventh vertex, which is the upper vertex of the unrelated information edge, as an eighth vertex; and if the second similarity exceeds a predetermined threshold, determines the unrelated information edge that indicates there is no relationship from the fifth vertex to the vertex to be changed as an unrelated information edge that will be affected by the change. Change management equipment.

[0137] (Appendix 3) the change impact calculation unit calculates, for each relationship information edge determined by the change impact calculation unit as a relationship information edge affected by the change, a third similarity which is the similarity between text held by a vertex which is an 11th vertex but is not the 13th vertex and changed text information which is information regarding the change to the vertex to be changed, and, based on a 9th vertex which is the upper vertex of the relationship information edge affected by the change, determines, among a 10th vertex which is a vertex connected to the 9th vertex at an upper side by a relationship information edge, all vertices connected further up from the 10th vertex at an upper side by relationship information edges as an 11th vertex, all vertices connected further up from the 10th vertex at an lower side by relationship information edges as an 12th vertex, and all vertices connected further up from the 12th vertex at an lower side by relationship information edges as a 13th vertex, the third similarity being the similarity between text held by a vertex which is an 11th vertex but is not the 13th vertex and changed text information which is information regarding the change to the vertex to be changed, and if the third similarity exceeds a predetermined threshold, determines the relationship information edge which has the 10th vertex at an upper side and the vertex to be changed at a lower side as a relationship information edge which may be newly added due to the influence of the change. A change control device as described in Appendix 2.

[0138] (Appendix 4) The change text information is a difference text between the text before the change and the text after the change at the vertex to be changed. A change control device as described in Appendix 2 or Appendix 3.

[0139] (Appendix 5) The change text information is a difference text between the pre-change text and the post-change text at the change target vertex, and the post-change text that the change target vertex will have as a result of the change. A change control device as described in Appendix 2 or Appendix 3.

[0140] (Appendix 6) when determining a relationship information edge that can be newly assigned as a result of the influence of the change, the change influence calculation unit determines the relationship information edge by limiting it to the top K (K is an integer of 1 or more that is appropriately determined) relationship information edges that can be newly assigned as a result of the influence of the change in order of proximity from the ninth vertex to the tenth vertex, The distance is the number of relationship information edges passing between the ninth vertex and the tenth vertex. Change control device as described in Appendix 3.

[0141] (Appendix 7) the set of vertices is a requirement definition, The text of each of the vertices represents the body of each requirement, The relationship information edge indicates that there is a relationship from a requirement corresponding to a vertex on the upper side of the relationship information edge to a requirement corresponding to a vertex on the lower side of the relationship information edge, The irrelevant information edge indicates that there is no relationship from a requirement corresponding to a vertex on the upper side of the relational information edge to a requirement corresponding to a vertex on the lower side. 10. The change management apparatus of any one of appendices 2 to 6.

[0142] (Appendix 8) an interface unit that presents to a user the related information edges that will be affected by the change in the text and the unrelated information edges that will be affected by the change in the text, which have been determined by the change impact calculation unit; 8. The change management device according to any one of Supplementary Note 2 to Supplementary Note 7, further comprising:

[0143] (Appendix 9) A change management method in which a change management device having a graph storage unit and a change impact calculation unit manages changes, the graph storage unit stores graph information including a plurality of vertices each having text, a relationship information edge indicating that there is a relationship from one upper vertex to another lower vertex, and an unrelationship information edge indicating that there is no relationship from one upper vertex to another lower vertex; when one vertex of the plurality of vertices is a change target vertex that is a target of a text change, the change influence calculation unit determines, based on the graph information held by the graph holding unit, a related information edge that will be affected by the text change and an unrelated information edge that will be affected by the text change; Change management methods.

[0144] (Appendix 10) a graph storage unit for storing graph information including a plurality of vertices each having text, a relationship information edge representing a relationship from one upper vertex to another lower vertex, and an unrelationship information edge representing no relationship from one upper vertex to another lower vertex; a change influence calculation unit that, when one of the plurality of vertices is a change target vertex that is the target of a text change, determines, based on the graph information stored in the graph storage unit, a related information edge that will be affected by the text change and an unrelated information edge that will be affected by the text change; A program for causing a computer to function as a change management device comprising:

[0145] (Appendix 11) a graph modification unit that modifies information held by the graph holding unit based on an instruction from the user, such as deleting a related information edge that will be affected by the change in the text, or deleting an unrelated information edge that will be affected by the change in the text; 9. The change management device according to any one of Supplementary Note 2 to Supplementary Note 8, further comprising:

[0146] (Appendix 12) the graph modification unit modifies the information held by the graph storage unit based on an instruction from the user so as to newly add relationship information edges that can be newly added due to the influence of the change, as determined by the change influence calculation unit. 12. The change management device according to claim 2 and according to claim 11.

[0147] (Appendix 13) the first similarity is calculated as a cosine similarity between a vector representing an appearance frequency of a word included in a text of a vertex that is the second vertex and is not the fourth vertex, and a vector representing an appearance frequency of a word included in the changed text information; The second similarity is calculated as a cosine similarity between a vector representing the frequency of appearance of a word included in a text of a vertex that is a sixth vertex and is not an eighth vertex, and a vector representing the frequency of appearance of a word included in the changed text information. 1. A change management device according to any one of appendices 2 to 8 or appendices 11 to 12.

[0148] (Appendix 14) the third similarity is calculated as a cosine similarity between a vector representing the frequency of appearance of a word included in a text of a vertex that is the eleventh vertex and is not the thirteenth vertex, and a vector representing the frequency of appearance of a word included in the changed text information; A change control device as described in Appendix 3 or Appendix 6.

[0149] (Appendix 15) A change management method in which a change management device having a graph storage unit and a change impact calculation unit manages changes, the graph storage unit stores graph information including a plurality of vertices each having text, a relationship information edge indicating that there is a relationship from one upper vertex to another lower vertex, and an unrelationship information edge indicating that there is no relationship from one upper vertex to another lower vertex; when one vertex of the plurality of vertices is a change target vertex that is a target of a text change, the change influence calculation unit determines a related information edge that is affected by the text change and an unrelated information edge that is affected by the text change; the change influence calculation unit calculates a first similarity, which is the similarity between text held by a second vertex that is not a fourth vertex and changed text information that is information related to the change of the vertex to be changed, for each relationship information edge having the vertex to be changed as a lower vertex, by setting as second vertices all vertices connected higher by relationship information edges from a first vertex that is a higher vertex of the relationship information edge, and for each unrelationship information edge having the first vertex as a lower vertex all vertices connected higher by relationship information edges from a third vertex that is a higher vertex of the unrelationship information edge, and calculates a first similarity, which is the similarity between text held by a vertex that is a second vertex but is not a fourth vertex, and changed text information that is information related to the change of the vertex to be changed, and if the first similarity is below a predetermined threshold, determines the relationship information edge that represents the relationship from the first vertex to the vertex to be changed as a relationship information edge that will be affected by the change; and the change influence calculation unit calculates a second similarity between text held by a vertex that is the sixth vertex but not the eighth vertex and changed text information that is information related to the change to the vertex to be changed, for each unrelated information edge having the vertex to be changed as a lower vertex, by designating all vertices connected higher up by relationship information edges from the fifth vertex, which is the upper vertex of the unrelated information edge, as a sixth vertex, and for each unrelated information edge having the fifth vertex as a lower vertex, by designating all vertices connected higher up by relationship information edges from the seventh vertex, which is the upper vertex of the unrelated information edge, as an eighth vertex; and if the second similarity exceeds a predetermined threshold, determines the unrelated information edge that indicates there is no relationship from the fifth vertex to the vertex to be changed as an unrelated information edge that will be affected by the change. Change Management Methodology

[0150] (Appendix 16) the change impact calculation unit calculates, for each relationship information edge determined by the change impact calculation unit as a relationship information edge affected by the change, a third similarity which is the similarity between text held by a vertex which is an 11th vertex but is not the 13th vertex and changed text information which is information regarding the change to the vertex to be changed, and, based on a 9th vertex which is the upper vertex of the relationship information edge affected by the change, determines, among a 10th vertex which is a vertex connected to the 9th vertex at an upper side by a relationship information edge, all vertices connected further up from the 10th vertex at an upper side by relationship information edges as an 11th vertex, all vertices connected further up from the 10th vertex at an lower side by relationship information edges as an 12th vertex, and all vertices connected further up from the 12th vertex at an lower side by relationship information edges as a 13th vertex, the third similarity being the similarity between text held by a vertex which is an 11th vertex but is not the 13th vertex and changed text information which is information regarding the change to the vertex to be changed, and if the third similarity exceeds a predetermined threshold, determines the relationship information edge which has the 10th vertex at an upper side and the vertex to be changed at a lower side as a relationship information edge which may be newly added due to the influence of the change. Change control methods as described in Appendix 15.

[0151] (Appendix 17) The change text information is a difference text between the text before the change and the text after the change at the vertex to be changed. Change control methods as described in Appendix 15 or Appendix 16.

[0152] (Appendix 18) The changed text information is the changed text that the change target vertex will have as a result of the change. Change control methods as described in Appendix 15 or Appendix 16.

[0153] (Appendix 19) when determining a relationship information edge that can be newly assigned as a result of the influence of the change, the change influence calculation unit determines the relationship information edge by limiting it to the top K (K is an integer of 1 or more that is appropriately determined) relationship information edges that can be newly assigned as a result of the influence of the change in order of proximity from the ninth vertex to the tenth vertex, The distance is the number of relationship information edges passing between the ninth vertex and the tenth vertex. Change control methods as described in Appendix 16.

[0154] (Appendix 20) the set of vertices is a requirement definition, The text of each of the vertices represents the body of each requirement, The relationship information edge indicates that there is a relationship from a requirement corresponding to a vertex on the upper side of the relationship information edge to a requirement corresponding to a vertex on the lower side of the relationship information edge, The irrelevant information edge indicates that there is no relationship from a requirement corresponding to a vertex on the upper side of the relational information edge to a requirement corresponding to a vertex on the lower side. A change control method as set forth in any of Annexes 15 to 19.

[0155] (Appendix 21) an interface unit that presents to a user the related information edges that will be affected by the change in the text and the unrelated information edges that will be affected by the change in the text, which have been determined by the change impact calculation unit; 21. The change management method according to any one of appendices 15 to 20, further comprising:

[0156] (Appendix 22) a graph modification unit that modifies information held by the graph holding unit based on an instruction from the user, such as deleting a related information edge that will be affected by the change in the text, or deleting an unrelated information edge that will be affected by the change in the text; 22. The change management method according to any one of appendices 15 to 21, further comprising:

[0157] (Appendix 23) the graph modification unit modifies the information held by the graph storage unit based on an instruction from the user so as to newly add relationship information edges that can be newly added due to the influence of the change, as determined by the change influence calculation unit. The change control method described in Appendix 15 and described in Appendix 22.

[0158] (Appendix 24) the first similarity is calculated as a cosine similarity between a vector representing an appearance frequency of a word included in a text of a vertex that is the second vertex and is not the fourth vertex, and a vector representing an appearance frequency of a word included in the changed text information; The second similarity is calculated as a cosine similarity between a vector representing the frequency of appearance of a word included in a text of a vertex that is a sixth vertex and is not an eighth vertex, and a vector representing the frequency of appearance of a word included in the changed text information. A change control method as set forth in any of Annexes 15 to 23.

[0159] (Appendix 25) the third similarity is calculated as a cosine similarity between a vector representing the frequency of appearance of a word included in a text of a vertex that is the eleventh vertex and is not the thirteenth vertex, and a vector representing the frequency of appearance of a word included in the changed text information; Change control methods as described in Appendix 16 or Appendix 19.

[0160] (Appendix 26) a graph storage unit for storing graph information including a plurality of vertices each having text, a relationship information edge representing a relationship from one upper vertex to another lower vertex, and an unrelationship information edge representing no relationship from one upper vertex to another lower vertex; a change influence calculation unit that, when one of the plurality of vertices is a change target vertex that is the target of a text change, determines a related information edge that is affected by the text change and an unrelated information edge that is affected by the text change; Equipped with the change influence calculation unit calculates a first similarity, which is the similarity between text held by a second vertex that is not a fourth vertex and changed text information that is information related to the change of the vertex to be changed, for each relationship information edge having the vertex to be changed as a lower vertex, by setting as second vertices all vertices connected higher by relationship information edges from a first vertex that is a higher vertex of the relationship information edge, and for each unrelationship information edge having the first vertex as a lower vertex all vertices connected higher by relationship information edges from a third vertex that is a higher vertex of the unrelationship information edge, and calculates a first similarity, which is the similarity between text held by a vertex that is a second vertex but is not a fourth vertex, and changed text information that is information related to the change of the vertex to be changed, and if the first similarity is below a predetermined threshold, determines the relationship information edge that represents the relationship from the first vertex to the vertex to be changed as a relationship information edge that will be affected by the change; and the change influence calculation unit calculates a second similarity between text held by a vertex that is the sixth vertex but not the eighth vertex and changed text information that is information related to the change to the vertex to be changed, for each unrelated information edge having the vertex to be changed as a lower vertex, by designating all vertices connected higher up by relationship information edges from the fifth vertex, which is the upper vertex of the unrelated information edge, as a sixth vertex, and for each unrelated information edge having the fifth vertex as a lower vertex, by designating all vertices connected higher up by relationship information edges from the seventh vertex, which is the upper vertex of the unrelated information edge, as an eighth vertex; and if the second similarity exceeds a predetermined threshold, determines the unrelated information edge that indicates there is no relationship from the fifth vertex to the vertex to be changed as an unrelated information edge that will be affected by the change. A program that enables a computer to function as a change management device.

[0161] (Appendix 27) the change impact calculation unit calculates, for each relationship information edge determined by the change impact calculation unit as a relationship information edge affected by the change, a third similarity which is the similarity between text held by a vertex which is an 11th vertex but is not the 13th vertex and changed text information which is information regarding the change to the vertex to be changed, and, based on a 9th vertex which is the upper vertex of the relationship information edge affected by the change, determines, among a 10th vertex which is a vertex connected to the 9th vertex at an upper side by a relationship information edge, all vertices connected further up from the 10th vertex at an upper side by relationship information edges as an 11th vertex, all vertices connected further up from the 10th vertex at an lower side by relationship information edges as an 12th vertex, and all vertices connected further up from the 12th vertex at an lower side by relationship information edges as a 13th vertex, the third similarity being the similarity between text held by a vertex which is an 11th vertex but is not the 13th vertex and changed text information which is information regarding the change to the vertex to be changed, and if the third similarity exceeds a predetermined threshold, determines the relationship information edge which has the 10th vertex at an upper side and the vertex to be changed at a lower side as a relationship information edge which may be newly added due to the influence of the change. 26. The program described in Appendix 26.

[0162] (Appendix 28) The change text information is a difference text between the text before the change and the text after the change at the vertex to be changed. 28. The program of claim 26 or 27.

[0163] (Appendix 29) The changed text information is the changed text that the change target vertex will have as a result of the change. 28. The program of claim 26 or 27.

[0164] (Appendix 30) when determining a relationship information edge that can be newly assigned as a result of the influence of the change, the change influence calculation unit determines the relationship information edge by limiting it to the top K (K is an integer of 1 or more that is appropriately determined) relationship information edges that can be newly assigned as a result of the influence of the change in order of proximity from the ninth vertex to the tenth vertex, The distance is the number of relationship information edges passing between the ninth vertex and the tenth vertex. 27. The program described in Appendix 27.

[0165] (Appendix 31) the set of vertices is a requirement definition, The text of each of the vertices represents the body of each requirement, The relationship information edge indicates that there is a relationship from a requirement corresponding to a vertex on the upper side of the relationship information edge to a requirement corresponding to a vertex on the lower side of the relationship information edge, The irrelevant information edge indicates that there is no relationship from a requirement corresponding to a vertex on the upper side of the relational information edge to a requirement corresponding to a vertex on the lower side. 30. A program according to any one of claims 26 to 30.

[0166] (Appendix 32) an interface unit that presents to a user the related information edges that will be affected by the change in the text and the unrelated information edges that will be affected by the change in the text, which have been determined by the change impact calculation unit; 32. The program according to any one of claims 26 to 31, further comprising:

[0167] (Appendix 33) a graph modification unit that modifies information held by the graph holding unit based on an instruction from the user, such as deleting a related information edge that will be affected by the change in the text, or deleting an unrelated information edge that will be affected by the change in the text; 33. The program of any one of appendices 26 to 32, further comprising:

[0168] (Appendix 34) the graph modification unit modifies the information held by the graph storage unit based on an instruction from the user so as to newly add relationship information edges that can be newly added due to the influence of the change, as determined by the change influence calculation unit. 26. The program according to claim 33.

[0169] (Appendix 35) the first similarity is calculated as a cosine similarity between a vector representing an appearance frequency of a word included in a text of a vertex that is the second vertex and is not the fourth vertex, and a vector representing an appearance frequency of a word included in the changed text information; The second similarity is calculated as a cosine similarity between a vector representing the frequency of appearance of a word included in a text of a vertex that is a sixth vertex and is not an eighth vertex, and a vector representing the frequency of appearance of a word included in the changed text information. 34. A program according to any one of claims 26 to 34.

[0170] (Appendix 36) the third similarity is calculated as a cosine similarity between a vector representing the frequency of appearance of a word included in a text of a vertex that is the eleventh vertex and is not the thirteenth vertex, and a vector representing the frequency of appearance of a word included in the changed text information; 2. The program of claim 27 or 30.

[0171] The disclosed technical configuration can be used to analyze and present the impact of a change to one entity on relationships when multiple entities and the relationships between those entities are defined. For example, such technology can be used to understand and organize requirements in system development or consulting. However, the scope of use of the disclosed technology is not limited to this. [Explanation of symbols]

[0172] 1,2,3,4 Relationship management device 101 Interface section 102 Graph change section 103, 103B, 103C Change impact calculation section 104 Graph storage unit 105 Context Acquisition Unit 901 Central Processing Unit 902 RAM 903 Input / Output Ports 904,905 Input / Output Devices 906 Bus

Claims

1. a graph storage unit for storing graph information including a plurality of vertices each having text, a relationship information edge representing a relationship from one upper vertex to another lower vertex, and an unrelationship information edge representing no relationship from one upper vertex to another lower vertex; a change influence calculation unit that, when one of the plurality of vertices is a change target vertex that is the target of a text change, determines, based on the graph information stored in the graph storage unit, a related information edge that will be affected by the text change and an unrelated information edge that will be affected by the text change; A change management device comprising:

2. a graph storage unit for storing graph information including a plurality of vertices each having text, a relationship information edge representing a relationship from one upper vertex to another lower vertex, and an unrelationship information edge representing no relationship from one upper vertex to another lower vertex; a change influence calculation unit that, when one of the plurality of vertices is a change target vertex that is the target of a text change, determines a related information edge that is affected by the text change and an unrelated information edge that is affected by the text change; Equipped with the change influence calculation unit calculates a first similarity, which is the similarity between text held by a vertex that is a second vertex but is not a fourth vertex, and changed text information, which is information related to the change of the vertex to be changed, for each relationship information edge having the vertex to be changed as a lower vertex, by setting as second vertices all vertices connected higher by relationship information edges from a first vertex that is a higher vertex of the relationship information edge, and for each unrelationship information edge having the first vertex as a lower vertex all vertices connected higher by relationship information edges from a third vertex that is a higher vertex of the unrelationship information edge, the change influence calculation unit calculates a second similarity between text held by a vertex that is the sixth vertex but is not the eighth vertex and changed text information that is information related to the change to the vertex to be changed, for each unrelated information edge having the vertex to be changed as a lower vertex, by designating as a sixth vertex all vertices connected higher up by relationship information edges from the fifth vertex that is the upper vertex of the unrelated information edge, and for each unrelated information edge having the fifth vertex as a lower vertex all vertices connected higher up by relationship information edges from the seventh vertex that is the upper vertex of the unrelated information edge, Change management equipment.

3. The change impact calculation unit: For each relationship information edge determined by the change influence calculation unit as a relationship information edge affected by the change, based on a ninth vertex that is an upper vertex of the relationship information edge affected by the change, Among the tenth vertices that are connected to the ninth vertex by a relationship edge, All vertices connected to the 10th vertex on the higher side by relationship information edges are defined as 11th vertices, The upper vertices of all irrelevant information edges with the tenth vertex as the lower vertex are defined as the twelfth vertex, All vertices connected to the 12th vertex on the higher side by relationship information edges are defined as the 13th vertex. Calculating a third similarity between a text of a vertex that is an eleventh vertex and is not a thirteenth vertex and changed text information that is information related to the change of the vertex to be changed; If the third similarity exceeds a predetermined threshold, the relationship information edge having the tenth vertex on the upper side and the change target vertex on the lower side is determined to be a relationship information edge that can be newly assigned due to the influence of the change. The change management device according to claim 2 .

4. The change text information is a difference text between the text before the change and the text after the change at the vertex to be changed. The change management device according to claim 2 or 3.

5. The change text information is a difference text between the pre-change text and the post-change text at the change target vertex, and the post-change text that the change target vertex will have as a result of the change. The change management device according to claim 2 or 3.

6. when the change influence calculation unit determines a relationship information edge that can be newly assigned in response to the influence of the change, the change influence calculation unit limits the determination to the top K relationship information edges (K is an integer of 1 or more that is appropriately determined) in order of proximity from the ninth vertex to the tenth vertex, which can be newly assigned in response to the influence of the change, The distance is the number of relationship information edges passing between the ninth vertex and the tenth vertex. The change management device according to claim 3 .

7. the set of vertices is a requirement definition, The text of each of the vertices represents the body of each requirement, The relationship information edge indicates that there is a relationship from a requirement corresponding to a vertex on the upper side of the relationship information edge to a requirement corresponding to a vertex on the lower side of the relationship information edge, The irrelevant information edge indicates that there is no relationship from a requirement corresponding to a vertex on the upper side of the relational information edge to a requirement corresponding to a vertex on the lower side. The change management device according to claim 2 .

8. an interface unit that presents to a user the related information edges that will be affected by the change in the text and the unrelated information edges that will be affected by the change in the text, which have been determined by the change impact calculation unit; The change management apparatus of claim 2 further comprising:

9. A change management method in which a change management device having a graph storage unit and a change impact calculation unit manages changes, the graph storage unit stores graph information including a plurality of vertices each having text, a relationship information edge representing a relationship from one upper vertex to another lower vertex, and an unrelationship information edge representing no relationship from one upper vertex to another lower vertex; when one of the plurality of vertices is a change target vertex that is the target of a text change, the change influence calculation unit determines, based on the graph information held by the graph holding unit, a related information edge that will be affected by the text change and an unrelated information edge that will be affected by the text change. Change management methods.

10. a graph storage unit for storing graph information including a plurality of vertices each having text, a relationship information edge representing a relationship from one upper vertex to another lower vertex, and an unrelationship information edge representing no relationship from one upper vertex to another lower vertex; a change influence calculation unit that, when one of the plurality of vertices is a change target vertex that is the target of a text change, determines, based on the graph information stored in the graph storage unit, a related information edge that will be affected by the text change and an unrelated information edge that will be affected by the text change; A program for causing a computer to function as a change management device comprising:

Citation Information

Patent Citations

  • Requirements definition support device, requirements definition support method, and computer program

    JP6958083B2