Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 17 Software Metrics

Similar presentations


Presentation on theme: "Lecture 17 Software Metrics"— Presentation transcript:

1 Lecture 17 Software Metrics
Software Engineering Lecture 17 Software Metrics

2 What is a Software Metric?
Quantitative measure of the quality of software. Measure of the difficulty of testing, understanding, or maintaining a piece of software Measure of ease of using software

3 Size Metrics The larger the more complex – There are many ways to define size of a program 1. Lines of Code (LOC) Standard definition of LOC Count number of lines and data definitions Do not count comment lines Count a line containing both a statement or part of a statement and a comment as an executable line.

4 Problems with LOC Lack of a Standard definition for line of code.
Application written in multiple language. Size variation due to individual programming style.

5 Size Metrics 2. Number of Tokens -- A detailed measure of size
Size of program is number of tokens, where a token is a lexical token keyword, arithmetic operator, constants, grouping symbol such as parenthesis or bracket and so forth)

6 Data Structure Metrics
A count of amount of data input to , processed in, and output from software is called data structure metrics.

7 Information Flow Metrics
A coupling module increases with the complexity of interface and the total number of modules a module is coupled with. We want a metric that is better at quantifying coupling between modules. The information flow metrics attempt to define the complexity in terms of the total information flowing through a module

8 The complexity of module is considered as depending on the intra module complexity and the inter module complexity. intra module complexity- size of the module in LOC inter module complexity- Total information flowing in the module(inflow) and total info flowing out of the module(outflow

9 Design complexity Dc= size*(inflow*outflow)raise to the power 2 Module complexity also depends upon no of modules to or from which it is flowing. Dc= fan_in*fan_out+inflow*outflow Fan_in- the no of modules that call this module Fan_out- no of modules this module calls

10 Error prone Dc > avg_complexity+ std_deviation Complex Avg_complexity <DC<Avg_complexity+std_deviation Normal Otherwise

11 Function Points Weighted sum of following:
1. External inputs - provided by user that describe distinct application-oriented data (e.g. file names) 2. External outputs - items provided to user that generate distinct application-oriented data (e.g. reports) 3. External inquiries - interactive inputs requiring a response 4. External files - machine readable interfaces to other systems 5. Internal files - logical master files in the system


Download ppt "Lecture 17 Software Metrics"

Similar presentations


Ads by Google