Suite of metrics for software quality assurance and product development
First Claim
1. A computer-implemented method for measuring a complexity of nested object state transition diagrams that are represented as data structures in the computer, the method comprising:
- a) using the computer, determining a plurality of graphs of object state transitions at K levels lk, wherein;
(A) 0<
k<
K;
(B) one or more of said graphs at level lk+1 are expansions of one or more of said graphs at level lk; and
(C) said graphs comprise a plurality of nodes to represent a corresponding plurality of states of use-cases and a plurality of edges to represent a corresponding plurality of transitions between the states; and
b) using the computer, determining a complexity for said plurality of graphs.
1 Assignment
0 Petitions
Accused Products
Abstract
Based on software developed with use-cases, a suite of metrics for the Product/Process (PP) complexity of software systems as well the PP complexity of each stage in the software development process—analysis, design, and testing—is provided. The metrics suite is important for software quality assurance—Validation and Verification (V&V) as well as for understanding new complexities brought into software development by new technologies. The metrics can be collected based on the two most important documents of use-case software development—scenario diagrams and state diagrams. All metrics are CASE tool computable. Thus, each iterative or incremental development process can be quantitatively measured and compared without incurring extra cost or load on the project team. Efficiency metrics for implementation and test stages, normalization rules and logic-metrics for business tables are also presented. A three-level software visualization approach may have impact on graphical programming or direct transformation.
42 Citations
10 Claims
-
1. A computer-implemented method for measuring a complexity of nested object state transition diagrams that are represented as data structures in the computer, the method comprising:
-
a) using the computer, determining a plurality of graphs of object state transitions at K levels lk, wherein; (A) 0<
k<
K;(B) one or more of said graphs at level lk+1 are expansions of one or more of said graphs at level lk; and (C) said graphs comprise a plurality of nodes to represent a corresponding plurality of states of use-cases and a plurality of edges to represent a corresponding plurality of transitions between the states; and b) using the computer, determining a complexity for said plurality of graphs. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer-implemented method for measuring a complexity of nested object state transition diagrams that are represented as data structures in the computer, the complexity measuring method comprising:
-
a) using the computer, determining a plurality of graphs of object state transitions at K levels lk, wherein; (A) 0<
k<
K;(B) one or more of said graphs at level lk+1 are expansions of one or more of said graphs at level lk; and (C) said graphs comprise a plurality of nodes to represent a corresponding plurality of states of use-cases and a plurality of edges to represent a corresponding plurality of transitions between the states; and b) using the computer, determining a complexity for said plurality of graphs, the complexity determining step including measuring a nested object state transition complexity between two super-states by recursively applying Equation 6;
wherein; mk=a number of transition paths of level-k object (k>
1) between two super-states or a number of transition paths of level-1 object;nk,i=a number of states along path i for level-k object; Ck,i,j is a number of conditions to bring level-k object state from Sk,i,j−
1 to Sk,i,j;STPCk+1,i,j=Substate Transition Complexity between state Sk,i,j−
1 and Sk,i,j;subk,i,j=0 if STPCk+1,i,j=0 and subk,i,j=1 if (STPCk+1,i,j≠
0);if a multiplicity between level-k object and level-(k+1) is 1;
N, then mulk,i(N)=0 if (N=1) and mulk,i(N)=r if (N>
1); andr is a number of times that level-k+1 objects transit back to level-k in path i. - View Dependent Claims (7, 8, 9, 10)
-
Specification