ProductMetrics

Document Sample
ProductMetrics Powered By Docstoc
					Advanced Software Engineering: Lecture number 2
Product Metrics Arvind W. Kiwelekar Assistant Professor Computer Engineering Department, Dr. B. A. Tech. University Lonere-402 103 akiwelekar@gmail.com

September 8, 2009

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 1 / 21

Metrics for Specification Quality

Quality of Requirements Specification is measured through parameters such as specificity and Completeness. Specificity =
1 2 3 4

nui nr

Total Number of Requirements (nr = nf + nnf ) Number of Functional Requirements (nf ) Number of Non-Functional Requirements (nnf ) Number of Requirements for which all reviewers have unique interpretation nui

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 2 / 21

Metrics for Specification Quality

Complteness =

nu ni Xns

1 2 3

Number of Unique Functional Requirement (nu ) Number of input stimuli (ni ) Number of States Specified (ns )

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 3 / 21

Registering Seminar Topic Scenario Modeling

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 4 / 21

Registering Seminar Topic Use Case Textual Description
Use Case Name Register for a Topic Primary Actor Student Pre-Condition Login, and Password Post-Condition Modified student and paper database Goal To assign a term paper to student Scenario
1 2 3 4 5 6

Enter Login and Password Select Area of Interest Get List of Papers Select a Paper Review details of the paper Register the term paper topic

Alternatives The selected paper is not available Exceptions 1.
1 2

User entered Login/ password incorrect. No Paper is available for selection.

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 5 / 21

Behavioral Modeling

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 6 / 21

Architectural Design Metrics
Following Metrics are defined for hierarchical architectures such as call-return architecture. Structural Complexity for Module M
2 S(M) = fout (M)

fout (M) is Fan-out Data Complexity D(M) = V (M) fout + 1

V(M) = Number of input and output varibles from and to Module M System Complexity C (M) = S(M) + D(M)

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 7 / 21

Call Architecture

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 8 / 21

Call Architecture
Module Name main() controller1() controller2() controller3() Process1 Process2() Process3() Process4() Process5() Process6() fout 3 3 4 3 0 0 4 3 0 0 No. of IO Variables 15 15 5 5 10 10 10 5 5 5

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 9 / 21

Architectural Design Metrics-Morphology based

Following Metrics are defined for hierarchical architectures such as call-return architecture. Number of Nodes (N) Number of Arcs (A) Size (N+A) Depth Width Arc-to-Node Ratio

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 10 / 21

Design Structure Quality Index (DSQI)
Parameter s1 s2 Description The total number of modules defined in the program architecture The total number of modules whose correct function depends on inputs or data produced by other modules The total number of modules whose correct function depends on Prior processing The total number of data base items The total number of unique data base item The total number of data base segments The total number of modules with single entry and exit.

s3 s4 s5 s6 s7

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 11 / 21

Design Structure Quality Index (DSQI)
Parameter Program Structure d1 = 0or 1 Module independence d2 1− Description If a well defined design methodology followed such as SAAD or OOAD s2 s1 s3 s1 s5 s4 s6 s4 s7 s1

Modules not dependent on Prior Processing d3

1−

Database Size d4 1−

Database Compartmentalization d4 1−

Module Entrance-Exit Characterstics d5 1−

Design Structure Quality Index (DSQI) = Σwi di

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 12 / 21

Design Structure Quality Index (DSQI)
Parameter Program Structure d1 = 0or 1 Module independence d2 1− Description If a well defined design methodology followed such as SAAD or OOAD s2 s1 s3 s1 s5 s4 s6 s4 s7 s1

Modules not dependent on Prior Processing d3

1−

Database Size d4 1−

Database Compartmentalization d4 1−

Module Entrance-Exit Characterstics d5 1−

Design Structure Quality Index (DSQI) = Σwi di

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 13 / 21

Characterstics of OOD

Size : Number of methods or classes Complexity: How classes are inter-related with others Coupling: Number of Collaborations between classes Sufficiency: The degree to which an class possess features required for it. Completeness: Cohesion: The set of properties it possesses are part of part of the problem or design domain. Primitiveness: Example: AVG Similarity: Example HostelStudent, LibraryUser

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 14 / 21

Cyclometric Complexity

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 15 / 21

CK Metrics Suite

Depth of Inheritence Tree (DIT) Number of Children (NOC) Wighted Method per Class (WMC) Coupling between object classes Lack of Cohesion in Methods.

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 16 / 21

Operation-Oriented Metrics

Average Operation Size (OSavg ) Operation Complexity (OC) Average number of parameters per operation (NPavg )

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 17 / 21

Metrics for Source Code

The number of distinct operators that appear in a program. (n1 ) The number of distinct operands that appear in a program. (n2 ) The total number of operator occurances. N1 The total number of operand occurances. N2
n n Length(N) = n1 log2 1 + n2 log2 2 n Volume(V ) = Nlog2 1 +n2

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 18 / 21

Metrics for Testing

Halstead Metrics Applied to Testing PorgramLevel(PL) =
n1 2

1 2 ∗ N2 n

Effort(E ) =

V PL

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 19 / 21

Metrics for OO Testing

LCOM Percent public and protected method Public access to data members(PAD) Number of Root Classes(NOR) Fan-In NOC and DIT

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 20 / 21

Metrics for OO Maintenance

The number of modules in the current release (MT ) The number of modules in the current release that have been changed (Fc ) The number of modules in the current release that have been added(Fa ) The number of modules from the preceding release that were deleted in the current release (Fd ) The Software Maturity Index (SMI) =
MT −(Fa +Fc +Fd ) MT

Arvind W. Kiwelekar Assistant Professor Computer EngineeringEngineering: Lecture number 2 University Lonere-402 103 akiwelekar@gm Advanced Software Department, Dr. B. A. Tech. September 8, 2009 21 / 21


				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:66
posted:9/15/2009
language:English
pages:21