# Automatic Cause-Effect Graph Tool with Informal Korean Requirement Specifications
## 3 Automatic Generation for Cause-Effect Graph from Informal Korean Requirements
Unify with Two Similar Nodes in C3 Tree Models  
Our previous method [3] generated the cause-effect graph via the C3 Tree model from the Korean requirements. The problem does not consider redundant requirements, which means keeping redundant test cases. In order to solve this problem, we identified the similarities of nodes in the C3 Tree model with the Jaccard mechanism [14] and then unified two similar nodes into one node. In Step 4 of Figure 2, we mentioned the detailed process as follows: (1) identify the leaf nodes (that is, simple sentences) in the C3 Tree model of a requirement sentence; (2) define all possible pairs of leaf nodes, that is, pair combinations of all identified nodes; (3) measure the Jaccard similarity of all possible pairs (the J means Jaccard similarity); (4) measure the pair set with theta roles if the similarity is greater than or equal to 0.8 (the T means theta role); (5) unify similar nodes into one if all theta roles between nodes are the same. Therefore, we removed the redundant nodes. As a result, all C3 Tree models can be converted into one unified C3 Tree model. Figure 8: C3 Tree model for representing sample sentences. Figure 7: Three clauses’ Identification (this order of C1->C2->C3) in the sentence. Figure 9 is a simple example of Step 4 in Figure 1:0 We demonstrated generating two C3 Tree models from two Korean requirements and then compared the Jaccard similarity and theta role of leaf nodes in two C3 Tree models. A detailed description is given below. * Similarity Measurement with Jaccard mechanisms  
We adapted requirement engineering with the similarity mechanism to identify the redundancy of requirement specifications. For our adaption, we may assign that \(A\) in the original formula may be a set of morphemes within an informal Korean requirement sentence, R1, and \(B\) may also be a set of morphemes within another requirement sentence, R2. This is the original Jaccard similarity formula:  
Figure 1:1  
In requirement engineering, we measured the similarity between two pair sets, that is, the sets of the morphemes of the <<Clause>> nodes in the C3 Tree models of requirement sentences R1 and R2. The similarity measurement process is as follows: (1) identify the morphemes of all <<Clause>> nodes and (2) compare all <<Clause>> node morphemes. In this case, the case marker morpheme (only Korean morpheme) was removed because it does not have any meaning in our approach. Figure 1:2 The similar identification with the Jaccard similarity and theta-role. In the Jaccard Similarity part of Figure 9, we identified similar nodes in two C3 Tree models. The <<Clause>> nodes in the red boxes have three different morphemes, and two morphemes are the same. However, the three morphemes have no direct meaning. For example, the JKS and JKO are case marker morphemes. In Korean, the subject and object are not determined by the position in the sentence. The subject is a noun modified by JKS.KS. A noun modified by JKO is an object. The JKS and JKO determine the role of nouns and have no direct meaning. The XSV determines the active/manual role of the verb, and the EF means the end of a sentence. As a result, the morphemes with no direct meaning are excluded from the measurement item. Our tool calculates this score of similarity. If this score is more than 0.8, we decide to have two causes/effects similar, then unify them. Figure 10 shows the union, intersection, and similarity of Figure 1:3  
The C3 Tree model is transformed into a cause-effect graph. The C3 Tree model's terminal nodes are transformed into the cause-effect graph's nodes. The link of the C3 Tree model is transformed into the relation of the cause-effect graph. Figure 11 shows two Korean requirements to generate a cause-effect graph. The C3 Tree model has six leaf nodes and two similar nodes. Therefore we unified two similar leaf nodes into one node. As a result, the five nodes of cause-effect graph are generated.