IP Library Granted Patent US 11,853,761
Granted Patent B2
US 11,853,761 · App. 16/079,738 · Granted Dec 26, 2023

Similarity scores of rules in information technology workflows

Inventors: Shlomi Chovel (Yehud, IL); Hava Babay Adi (Yehud, IL); Rotem Chen (Yehud, IL); Ran Biron (Yehud, IL); Olga Tubman (Yehud, IL)
Assignee: Micro Focus LLC
G06F9/30076G06F40/194
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,853,761
App. No.
16/079,738
Granted
Dec 26, 2023
Kind
B2
Abstract

In some examples, first segment of computer language text in a first rule in IT workflow data and a second segment of computer language text in a second rule in the IT workflow data may be identified. In some examples, a similarity score may be determined between the first and the second rules based on a comparison of the first segment with the second segment.

Claims (75)

1. A non-transitory computer-readable storage medium storing instructions that are executable by a processor to cause the processor to:

receive a model workflow data of an application and a user-customized workflow data of the application, wherein the model workflow data includes a first rule, and the user-customized workflow data includes a second rule, and wherein each of the first rule and the second rule includes a condition clause and an action clause;

identify a first segment of computer-language text in the condition clause or the action clause of the first rule in the model workflow data and a second segment of computer-language text in the condition clause or the action clause of the second rule in the user-customized workflow data;

determine a first similarity score between the first rule and the second rule, including instructions that cause the processor to:

determine a distance between the first segment and the second segment,

determine a coefficient between the first segment and the second segment, and

generate a sum of the distance and the coefficient as the first similarity score between the first rule and the second rule; and

in response to the first similarity score exceeding a first threshold, cause the first rule in the model workflow data to replace the second rule in the user-customized workflow data during a running of the application.

2. The non-transitory computer-readable storage medium of claim 1 , wherein the instructions are executable to cause the processor to:

receive a selection from a user to use the first rule to replace the second rule during the running of the application.

3. The non-transitory computer-readable storage medium of claim 1 , wherein the distance between the first segment and the second segment is a Levenshtein distance between the first segment and the second segment, and the coefficient between the first segment and the second segment is a Dice coefficient.

4. The non-transitory computer-readable storage medium of claim 1 , wherein the instructions that cause the processor to generate the sum of the distance and the coefficient include instructions that cause the processor to:

determine the first similarity score based on a weighted average of the distance and the coefficient.

5. The non-transitory computer-readable storage medium of claim 1 , wherein the instructions are executable to cause the processor to:

determine a second similarity score between the first and the second rules based on a comparison of the first segment with the second segment; and

determine a third similarity score based on a weighted average of the first similarity score and the second similarity score, the similarity score being the third similarity score.

6. The non-transitory computer-readable storage medium of claim 1 wherein the instructions are executable to cause the processor to:

identify a third segment of computer-language text in a third rule in the model workflow data and a fourth segment of computer-language text in a fourth rule in the user-customized workflow data, the first rule and the third rule being part of a first ordered list of rules, the second and the fourth rule being part of a second ordered list of rules

determine a second similarity score between the third and fourth rules based on a comparison of the third segment with the fourth segment; and

in response to the third and the fourth rules being within a threshold distance from the first and the second rules in the first and the second ordered lists of rules, determine a third similarity score based on a weighted average of the first similarity score and the second similarity score, wherein the third similarity score is compared to the first threshold to determine whether to use the first rule in the model workflow data to replace the second rule in the user-customized workflow data.

7. The non-transitory computer-readable storage medium of claim 1 wherein the instructions to identify the first segment and the second segment comprise instructions to:

parse the first rule and the second rule to identify the first segment and the second segment, respectively; and

categorize the first segment and the second segment.

8. The non-transitory computer-readable storage medium of claim 1 , wherein the instructions are executable to cause the processor to:

generate, on a user interface, a visual representation of the model workflow data comprising a first ordered list including the first rule and the user-customized workflow data comprising a second ordered list including the second rule; and

generate, on the user interface, a visual notification to use the first rule in the model workflow data to replace the second rule in the user-customized workflow data.

9. The non-transitory computer-readable storage medium of claim 1 , wherein the computer-language text of the first segment and of the second segment is in a domain-specific language (DSL).

10. The non-transitory computer-readable storage medium of claim 1 , wherein the instructions are executable to cause the processor to identify a third segment in the first rule and a fourth segment in the second rule,

the third segment comprising a first string parameter and the second segment comprising a second string parameter,

wherein the first similarity score between the first and the second rules is further based on a comparison of the third segment with the fourth segment.

11. The non-transitory computer-readable storage medium of claim 1 , wherein the instructions are executable to cause the processor to:

identify a third segment in the first rule and a fourth segment in the second rule, the third segment comprising a first map or list parameter and the second segment comprising a map or list parameter,

wherein the first similarity score between the first and the second rules is further based on a comparison of the third segment with the fourth segment.

12. The non-transitory computer-readable storage medium of claim 1 , wherein the instructions are executable to cause the processor to:

identify a third segment in the first rule and a fourth segment in the second rule,

wherein the first segment and the second segment are part of condition clauses in the first and the second rules,

wherein the third segment and the fourth segment are part of action clauses in the first and the second rules, and

wherein the first similarity score between the first and the second rules is further based on a comparison of the third segment with the fourth segment.

13. A system comprising:

a processor; and

a memory comprising instructions executable by the processor to cause the processor to:

determine a first similarity score between a first rule in a model workflow data of an application and a second rule in a user-customized workflow data of the application, including instructions that cause the processor to:

identify a first segment in a condition clause or an action clause of the first rule and a second segment in a condition clause or an action clause of the second rule,

determine a distance between the first segment and the second segment,

determine a coefficient between the first segment and the second segment, and

generate a sum of the distance and the coefficient between the first segment and the second segment as the first similarity score between the first rule and the second rule;

determine whether the first similarity score exceeds a first threshold; and

in response to the first similarity score exceeding the first threshold, cause the first rule in the model workflow data to replace the second rule in the user-customized workflow data during a running of the application.

14. A method comprising:

identifying, by a processor of a computing device, a first segment in a first rule in a model workflow data of an application and a second segment in a second rule in a user-customized workflow data of the application, the first and the second segments including computer-language text;

determining, by the processor, a first similarity score between the first rule and the second rule, including:

determining a distance between the first segment and the second segment,

determining a coefficient between the first segment and the second segment, and

generating a sum of the distance and the coefficient between the first segment and the second segment as the first similarity score between the first rule and the second rule; and

in response to the first similarity score exceeding a first threshold, causing, by the processor, the first rule in the model workflow data to replace the second rule in the user-customized workflow data during a running of the application.

15. The method of claim 14 , comprising:

presenting, on a user interface, the first rule as a selectable option to replace the second rule;

receiving, via a user interface, a user selection of the first rule; and

responsive to receipt of the user selection, execute user-customized workflow data using the first rule as a replacement of the second rule in the user-customized workflow data.

16. The method of claim 14 , comprising:

presenting on a user interface:

a visual representation of the model workflow data comprising a first ordered list including the first rule, and

a visual representation of the user-customized workflow data comprising a second ordered list including the second rule.

17. The non-transitory computer-readable storage medium of claim 1 , comprising instructions to:

present, on a user interface, the first rule as a selectable option to replace the second rule;

receive, via the user interface, a user selection of the first rule; and

responsive to receipt of the user selection, execute the user-customized workflow data using the first rule as a replacement of the second rule.

18. The system of claim 13 , wherein the instructions are executable by the processor to cause the processor to:

generate a visual notification on a user interface to indicate that the first rule is selectable;

receive, via the user interface, a user selection to use the first rule; and

responsive to receipt of the user selection, execute the user-customized workflow data using the first rule as a replacement of the user-customized workflow data.

19. The system of claim 13 , wherein the instructions are executable by the processor to:

present on a user interface:

a visual representation of the model workflow data comprising a first ordered list including the first rule, and

a visual representation of the user-customized workflow data comprising a second ordered list including the second rule.

Assignments (7)
RELEASE OF SECURITY INTEREST REEL/FRAME 052294/0522 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062624/0449 →
RELEASE OF SECURITY INTEREST REEL/FRAME 052295/0041 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062625/0754 →
SECURITY AGREEMENT Recorded Apr 2, 2020
From: MICRO FOCUS LLC; BORLAND SOFTWARE CORPORATION; MICRO FOCUS SOFTWARE INC.; NETIQ CORPORATION; MICRO FOCUS (US), INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 052294/0522 →
SECURITY AGREEMENT Recorded Apr 2, 2020
From: MICRO FOCUS LLC; BORLAND SOFTWARE CORPORATION; MICRO FOCUS SOFTWARE INC.; NETIQ CORPORATION; MICRO FOCUS (US), INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 052295/0041 →
CHANGE OF NAME Recorded Aug 8, 2019
From: ENTIT SOFTWARE LLC
To: MICRO FOCUS LLC
Reel/Frame 050004/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2018
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: ENTIT SOFTWARE LLC
Reel/Frame 047511/0545 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2018
From: BIRON, RAN
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 047489/0035 →