A non-transitory device-readable storage medium storing instructions, the instructions when executed causing one or more processors to: • identify two or more reuse candidates (210, 230) in a graphical state diagram model, the reuse candidates (210, 230) comprising at least an element (212-222, 232-242) in the state diagram model, wherein each reuse candidate comprises a state and a hierarchy for the state, the hierarchy comprising zero or more child states, zero or more child transitions, and zero or more child junctions; • select a canonicalized version of the reuse candidates (210, 230), the canonicalized version of the reuse candidates (210, 230) having a generalized structure for representing a structure of the reuse candidates (210, 230), the canonicalized version of the reuse candidates comprises: ∘ a placeholder state representing the state, ∘ zero or more placeholder child states representing the zero or more child states, zero or more placeholder child transitions representing the zero or more child transitions, and ∘ zero or more placeholder child junctions representing the zero or more child junctions; and • insert the canonicalized version of the reuse candidates (210, 230) into the state diagram model in place of the reuse candidates (210, 230); and • for each reuse candidate, create a link associated with the reuse candidate (210, 230) and the canonicalized version, wherein the link ∘ represents a logical association between the reuse candidate (210, 230) and the canonicalized version, and ∘ wherein the link is parameterized such that the link provides semantic information related to the reuse candidate (210, 230), wherein the semantic information is represented by variables and/or constants. • identify two or more reuse candidates (210, 230) in a graphical state diagram model, the reuse candidates (210, 230) comprising at least an element (212-222, 232-242) in the state diagram model, wherein each reuse candidate comprises a state and a hierarchy for the state, the hierarchy comprising zero or more child states, zero or more child transitions, and zero or more child junctions; • select a canonicalized version of the reuse candidates (210, 230), the canonicalized version of the reuse candidates (210, 230) having a generalized structure for representing a structure of the reuse candidates (210, 230), the canonicalized version of the reuse candidates comprises: ∘ a placeholder state representing the state, ∘ zero or more placeholder child states representing the zero or more child states, zero or more placeholder child transitions representing the zero or more child transitions, and ∘ zero or more placeholder child junctions representing the zero or more child junctions; and ∘ a placeholder state representing the state, ∘ zero or more placeholder child states representing the zero or more child states, zero or more placeholder child transitions representing the zero or more child transitions, and ∘ zero or more placeholder child junctions representing the zero or more child junctions; and • insert the canonicalized version of the reuse candidates (210, 230) into the state diagram model in place of the reuse candidates (210, 230); and • for each reuse candidate, create a link associated with the reuse candidate (210, 230) and the canonicalized version, wherein the link ∘ represents a logical association between the reuse candidate (210, 230) and the canonicalized version, and ∘ wherein the link is parameterized such that the link provides semantic information related to the reuse candidate (210, 230), wherein the semantic information is represented by variables and/or constants. ∘ represents a logical association between the reuse candidate (210, 230) and the canonicalized version, and ∘ wherein the link is parameterized such that the link provides semantic information related to the reuse candidate (210, 230), wherein the semantic information is represented by variables and/or constants.