The Design Metrics Analyzer for SDL



The Design Metrics Analyzer for SDL has been developed to automate metrics collection and calculation for SDL systems. This tool improves the metrics collection by ensuring the accuracy of metrics calculation and by minimizing the interface with the existing workload of a software engineer. The DMA for SDL currently collects metrics including the Zage's design metrics.

Reports
There are three types of reports generated by the execution of the DMA for SDL:
1) Stress Point Reports
2) Content Information Reports
3) Metric Reports

Stress Point Reports The Research team has developed and tested our design metrics for over ten years and has found them to be excellent predictors of error-prone components. Our technology yields a list of stress points, which are components that are considered to be error-prone or difficult for developers. This analysis is performed at the state, transition, and procedure level to provide the software engineer with the smallest localization of design information. A set analysis is also performed in which components identified as stress points by one, two, or all three of the design metrics De, Di, D(G) are grouped into sets. This total analysis assists software engineers in determining which components in a system need to be reexamined. The set analysis can be customized by a practitioner to include any of the metrics that the tool collects.

Content Information Reports From the given input, the DMA for SDL also generates a variety of content reports. The content information reports that are produced are named unit information, files analyzed, and variable table. The unit information report (see example below) is a textual summary of information available about each design component. To determine which files were included in the execution of the tool, the files analyzed report would be reviewed. Also included here is the physical line count for each file. The variable table report contains all variables, sorts, their type, location of their declaration, and a list of design components that access or modify them.

Metrics Reports For each design component, 80 design and code metrics are listed.

Example of One Design Unit Listed in the Unit Information Report

STATE TRANSITION *
IN STATE * IN PROCESS VIEWER
IN FILE sdl_vendor_out
Starts on line 418*
Ends on line 427
CALLS (times) :
(none)
INPUT SIGNALS:
INPUT SHOWTXT LINE 418
Sender (s) :
STATE TRANSITION CONTENTS (STATUS)
LINE 137
IN STATE CONTENTS
IN PROCESS CONTROL
IN BLOCK DIALOGUE
IN SYSTEM TOFFEEVENDOR
IN FILE sdl_vendor
STATE TRANSITION PAYMENT (TIMEOUT)
line 156
IN STATE PAYMENT
IN PROCESS CONTROL
IN BLOCK DIALOGUE
IN SYSTEM TOFEEVENDOR
IN FILE sdl_vendor
STATE TRANSITION MONEY (UNAVAIL)
Line 143
IN STATE MONEY
IN PROCESS CONTROL
IN BLOCK DIALOGUE
IN SYSTEM TOFFEEVENDOR
IN FILE sdl_VENDOR
STATE TRANSITION MONEY (AVAIL)
Line 151
IN STATE MONEY
IN PROCESS CONTROL
IN BLOCK DIALOGUE
IN SYSTEM TOFFEEVENDOR
IN FILE sdl_vendor
STATE TRANSITION *(MAINT)
Line 185
IN STATE *
IN PROCESS CONTROL
IN BLOCK DIALOGUE
IN SYSTEM TOFFEEVENDOR
IN FILE sdl_vendor
STATE TRANSITION * (FILLED)
LINE 192
IN STATE *
IN PROCESS CONTROL
IN BLOCK DIALOGUE
IN SYSTEM TOFFFEEVENDOR
IN FILE sdl_vendor
OUTPUT SIGNALS:
OUTPUT DISP1 421
Receiver (s) ;
ENV;
NEXTSTATE (times) :
IDLE (1)
JOINS:
GRST1 Line: 422
VARIABLES OUTSIDE OF SCOPE ACCESSED:
BRKDWN: declared in DIALOGUE
MSG: declared in VIEWER


METRIC NAME VALUE**
DE 26
DI 2
DG 28
VAR_IN 2
DATA_IN 8
TOTAL_FANIN 6
TOTAL_FANOUT 3
DSM 1
NO_VARIABLES_ACCESSED 3
PHYSICAL_LINES 8
BLANK_LINES 1
NCNB DECISION_STMTS 1
JOIN_STMTS 1
NEXTSTATE_STMTS 1
INPUT_STMTS 1
OUTPUT_STMTS 1
JOINS 1
NEXTSTATE 1
SIGNAL_FANIN 6
SIGNAL_FANOUT 1


* Line number will be replaced with #SDTREF if provided with SDT’s prm output
** Only non-zero values are displayed

Integration

The DMA for SDL can be incorporated seamlessly into the Telelogic’s Tau tool set by using Telelogic’s API to incorporate a metrics option on its main window.

[ Home ] - [ BSU CS Homepage ] - [ BSU Homepage ]


For more information contact:
wmz@cs.bsu.edu
Last modified 3/2001 by Dolores M. Zage.

© Copyright, 2001, Design Metrics Research Team, Ball State University, All Rights Reserved.