Download presentation
Presentation is loading. Please wait.
Published byKimberly Cross Modified over 9 years ago
1
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Supplementary Slides for Software Engineering: A Practitioner's Approach, 5/e Supplementary Slides for Software Engineering: A Practitioner's Approach, 5/e copyright © 1996, 2001 R.S. Pressman & Associates, Inc. For University Use Only May be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioner's Approach. Any other reproduction or use is expressly prohibited. This presentation, slides, or hardcopy may NOT be used for short courses, industry seminars, or consulting purposes.
2
2 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Slide 26 Chapter 24 Technical Metrics for Object-Oriented Systems
3
3 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Distinguishing Characteristics Localization—the way in which information is concentrated in a program Encapsulation—the packaging of data and processing Information hiding—the way in which information about operational details is hidden by a secure interface Inheritance—the manner in which the responsibilities of one class are propagated to another Abstraction—the mechanism that allows a design to focus on essential details Berard [BER95] argues that the following characteristics require that special OO metrics be developed:
4
4 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Class-Oriented Metrics weighted methods per class (WMC) WMC = c i for I = 1 to n Where c i is complexity of method i Inheritance may complicate the counting depth of the inheritance tree (DIT) number of children (NOC) coupling between object classes (CBO) response for a class (RFC) Set of methods that are potentially executed in response to a message lack of cohesion in methods (LCOM) Proposed by Chidamber and Kemerer (CK Metrics):
5
5 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Class-Oriented Metrics class size (CS) Total number of operations The number of attributes too much responsibility would reduce reusability number of operations overridden by a subclass (NOO) number of operations added by a subclass (NOA) specialization index (SI) Specialization achieved by adding or deleting operations by overriding SI = (NOO * level)/M level is the level in the class hierarchy, M is number of methods The higher the SI, the more likely do not conform to the superclass abstraction Proposed by Lorenz and Kidd [LOR94]:
6
6 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Class-Oriented Metrics Method inheritance factor (MIF) The degree of the use of inheritance Coupling factor (CF) Connections between elements of the OO design Polymorphism factor (PF) Indirect measure of the amount of dynamic binding in a system The MOOD Metrics Suite
7
7 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Operation-Oriented Metrics average operation size (OS avg ) LOC or Number of messages sent by operation operation complexity (OC) Use complexity metrics average number of parameters per operation (NP avg ) Affect the complexity of collaboration Proposed by Lorenz and Kidd [LOR94]:
8
8 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 Testability Metrics encapsulation related lack of cohesion in methods (LCOM) percent public and protected (PAP) public access to data members (PAD) inheritance related number of root classes (NOR) fan in (FIN) Indication of multiple inheritance number of children (NOC) and depth of inheritance tree (DIT) Proposed by Binder [BIN94]:
9
9 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001 OO Project Metrics number of scenario scripts (NSS) Number of scenario script/use case is proportional to the number of classes number of key classes (NKC) Low probability for reuse substantial work number of subsystems (NSUB) Provides insight into resource allocation, scheduling & integration effort Proposed by Lorenz and Kidd [LOR94]:
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.