Rule merging in system for monitoring adherence by developers to a software code development process
First Claim
1. A method comprising:
- receiving, by a processing device, a first process pattern descriptive of a first portion of a software code development process,the first process pattern including a first plurality of states;
receiving, by the processing device, a second process pattern descriptive of another portion of the software code development process,the second process pattern including a second plurality of states;
determining, by the processing device, a first number of the first plurality of states that match a corresponding number of the second plurality of states;
determining, by the processing device, a second number of the first plurality of states that do not match any of the second plurality of states;
determining, by the processing device, a third number of the second plurality of states that do not match any of the first plurality of states;
merging, by the processing device, the first process pattern and the second process pattern to provide a merged processing pattern, the merging including;
merging the first number of the first plurality of states that match the corresponding number of the second plurality of states to created a merged plurality of states, andadding, to the merged plurality of states, one or more states that correspond to the second number of the first plurality of states and one or more states that correspond to the third number of the second plurality of states;
converting, by the processing device, the merged processing pattern into a verification rule; and
using, by the processing device, the verification rule to process event information associated with a system.
1 Assignment
0 Petitions
Accused Products
Abstract
In a rule-based system for monitoring process adherence, first and second processing patterns are received and merged to provide a merged processing pattern. Each processing pattern, which may be expressed in a state graph representation, embodies at least a portion of a desired software code development process. Optionally, the merged processing pattern may be presented to a subject-matter expert to obtain feedback thereon. The merged processing pattern may then be converted into an executable process verification rule for use in monitoring process adherence. In an embodiment, development process event data is compared to the executable process verification rules. Violations of the rules result in the generation of failure indications that may be stored and subsequently reported as needed. In this manner, efficiency of automated process adherence monitoring systems may be improved when determining the level of compliance by developers with one or more software code development processes.
18 Citations
20 Claims
-
1. A method comprising:
-
receiving, by a processing device, a first process pattern descriptive of a first portion of a software code development process, the first process pattern including a first plurality of states; receiving, by the processing device, a second process pattern descriptive of another portion of the software code development process, the second process pattern including a second plurality of states; determining, by the processing device, a first number of the first plurality of states that match a corresponding number of the second plurality of states; determining, by the processing device, a second number of the first plurality of states that do not match any of the second plurality of states; determining, by the processing device, a third number of the second plurality of states that do not match any of the first plurality of states; merging, by the processing device, the first process pattern and the second process pattern to provide a merged processing pattern, the merging including; merging the first number of the first plurality of states that match the corresponding number of the second plurality of states to created a merged plurality of states, and adding, to the merged plurality of states, one or more states that correspond to the second number of the first plurality of states and one or more states that correspond to the third number of the second plurality of states; converting, by the processing device, the merged processing pattern into a verification rule; and using, by the processing device, the verification rule to process event information associated with a system. - View Dependent Claims (2, 3, 4, 5, 6, 19)
-
-
7. An apparatus comprising:
-
a memory to store instructions; and a processor to execute the instructions to; receive a first process pattern descriptive of a first portion of a software code development process, the first process pattern including a first plurality of states; receive a second process pattern descriptive of another portion of the software code development process, the second process pattern including a second plurality of states; determine a first number of the first plurality of states that match a corresponding number of the second plurality of states; determine a second number of the first plurality of states that do not match any of the second plurality of states; determine a third number of the second plurality of states that do not match any of the first plurality of states; merge the first process pattern and the second process pattern to provide a merged processing pattern, the processor, when merging the first process pattern and the second process pattern, being to; merge the first number of the first plurality of states that match the corresponding number of the second plurality of states to created a merged plurality of states, and add, to the merged plurality of states, one or more states that correspond to the second number of the first plurality of states and one or more states that correspond to the third number of the second plurality of states; convert the merged processing pattern into a verification rule; and use the verification rule to process event information associated with a system. - View Dependent Claims (8, 9, 10, 11, 12, 20)
-
-
13. A non-transitory computer readable medium storing instructions, the instructions comprising:
one or more instructions which, when executed by at least one processor, cause the at least one processor to; receive a first process pattern descriptive of a first portion of a software code development process, the first process pattern including a first plurality of states; receive a second process pattern descriptive of another portion of the software code development process, the second process pattern including a second plurality of states; determine a first number of the first plurality of states that match a corresponding number of the second plurality of states; determine a second number of the first plurality of states that do not match any of the second plurality of states; determine a third number of the second plurality of states that do not match any of the first plurality of states; merge the first process pattern and the second process pattern to provide a merged process pattern, the one or more instructions to merge the first process pattern and the second process pattern including; one or more instructions to merge the first number of the first plurality of states that match the corresponding number of the second plurality of states to created a merged plurality of states, and one or more instructions to add, to the merged plurality of states, one or more states that correspond to the second number of the first plurality of states and one or more states that correspond to the third number of the second plurality of states; convert the merged process pattern into a verification rule; and use the verification rule to process event information associated with a system. - View Dependent Claims (14, 15, 16, 17, 18)
Specification