DSQI is an architectural design metric used to evaluate a computer program's design structure and the efficiency of its modules. The metric was developed by the United States Air Force Systems Command.
The result of DSQI calculations is a number between 0 and 1. The closer to 1, the higher the quality. It is best used on a comparison basis, i.e., with previous successful projects.
First Following Factor are checked and calculate their values:
S1 = The total number of modules defined in the Program Architecture.
S2 = The number of modules whose correct function depends on the source of data input or that produce data to be used elsewhere.
S3 = The number of modules whose correct function depends on prior processing.
S4 = The number of database items (includes data objects and all attributes that define objects).
S5 = The total number of unique database items.
S6 = The number of database segments (different records or individual objects).
S7 = The number of modules with a single entry and exit (exception processing is not considered to be a multiple exit).
Once values s1 through s7 are determined for a computer program, the following intermediate values can be computed:
D1-Program structure:
If the architectural design was developed using a distinct method (e.g., data flow-oriented design or object-oriented design), then D1 = 1, otherwise D1 = 0.
D2-Module independence:
D2 = 1 - (S2/S1)
D3-Modules not dependent on prior processing: D3 = 1 - (s3/s1)
D4-Database size: D4 = 1 - (s5/s4)
D5-Database compartmentalization: D5 = 1 - (s6/s4)
D6-Module entrance/exit characteristic: D6 = 1 - (s7/s1)
With these intermediate values determined, the DSQI is computed in the following manner:
DSQI = SUM(wiDi)
If the architectural design was developed using a distinct method (e.g., data flow-oriented design or object-oriented design), then D1 = 1, otherwise D1 = 0.
D2-Module independence:
D2 = 1 - (S2/S1)
D3-Modules not dependent on prior processing: D3 = 1 - (s3/s1)
D4-Database size: D4 = 1 - (s5/s4)
D5-Database compartmentalization: D5 = 1 - (s6/s4)
D6-Module entrance/exit characteristic: D6 = 1 - (s7/s1)
With these intermediate values determined, the DSQI is computed in the following manner:
DSQI = SUM(wiDi)
- where i = 1 to 6, wi is the relative weighting of the importance of each of the intermediate values, and S wi = 1 (if all Di are weighted equally, then wi = 0.167).
- Value of DSQI for past designs can be determined and compared to a design that is currently under development.
- If the DSQI is significantly lower than average, further design work and review are indicated.
- If major changes are to be made to an existing design, the effect of those changes on DSQI can be calculated.
Thank you for the detail explanation. But how does one gets the weighted factors for each Di and how do i compute it? I will be expecting your reply soon. Thanks
ReplyDeleteeasy bro
Delete