SlideShare a Scribd company logo
1 of 21
SOFTWARE
METRICS
PRESENTED BY:
DIMPY CHUGH(1833)
DRISHTI BHALLA(1838)
• MEASURE: A quantitative indication of the extent, amount, dimension, or size of some attribute
of a product or process (e.g. number of errors)
• METRICS: The degree to which a system, component, or process possesses a given attribute.It
Relates several measures (e.g. average number of errors found per person hour).
• INDICATORS: An indicator is a metric or combination of metrics that provide insight into the
software process, a software project, or the product itself.
• DIRECT METRICS: Immediately measurable attributes (e.g. line of code, execution speed,
defects reported).
• INDIRECT METRICS: Aspects that are not immediately quantifiable (e.g. functionality,
quantity, reliability).
• MEASUREMENT is the process by which numbers or symbols are assigned to the attributes of
the entities in the real world in such a way as to define them accordingly to clearly defined rules.
• FAULTS:
 Errors: Faults found by the developers during software development.
 Defects: Faults found by the customers after release.
BASIC TERMINOLOGIES
WHY MEASURE SOFTWARE?
• Establish baselines for comparisons with future assessments.
• To evaluate the status with respect to plans.
• Predict qualities of a product or a process by gaining understandings of relationships
among process and products.
• Improve product quality and process performance by identifying roadblocks and
inefficiencies.
A Good Manager Measures
Measurement Project metrics
Process metricsProcess
Product metrics
Product
METRICS GUIDELINES
• Use common sense and organizational sensitivity when interpreting metrics data.
• Provide regular feedback to the individuals and teams who collect measures and
metrics.
• Don’t use metrics to appraise individuals.
• Work with practitioners and teams to set clear goals and metrics that will be used to
achieve them.
• Never use metrics to threaten individuals or teams.
• Metrics data that indicate a problem area should not be considered “negative.” These
data are merely an indicator for process improvement.
• Don’t obsess on a single metric to the exclusion of other important metrics.
Product Metrics
• Product metrics help the software engineers gain insight into the design and
construction of the software they build by focussing on specific and measurable
attributes of the work products.
• These metrics examine the requirements model with the intent of predicting the size
and complexity of the resulting system.
Function-ORIENTED metrics
• The Function point (FP) metric can be used effectively as a means for measuring the
functionality delivered by a system.
• The FP metric can be used to -
a. Estimate the cost or effort required to design, code and test the software.
b. Predict the number of errors that will be encountered during testing
c. Forecast the number of components in the system
• Function points are derived using an empirical relationship based on countable (direct)
measures of software's information domain and assessments of software complexity.
• Information domain values are defined in the following manner:
• Number of external inputs (EIs)
• Number of external outputs (EOs)
• Number of external inquiries (EQs)
• Number of internal logical files (ILFs)
• Number of external interface files (EIFs)
COMPUTINGFUNCTIONAL POINTS
Analyzing the Information Domain
Information
Domain Value Count simple average complex
Weighting factor
External Inputs ( EIs)
External Outputs ( EOs)
External Inquiries ( EQs)
Internal Logical Files ( ILFs)
External Interface Files ( EIFs)
3 4 6
4 5 7
3 4 6
7 10 15
5 7 10
=
=
=
=
=
Count total
3
3
3
3
3
Information
Domain Value Count simple average complex
Weighting factor
External Inputs ( EIs)
External Outputs ( EOs)
External Inquiries ( EQs)
Internal Logical Files ( ILFs)
External Interface Files ( EIFs)
3 4 6
4 5 7
3 4 6
7 10 15
5 7 10
=
=
=
=
=
Count total
3
3
3
3
3
X
X
X
X
Taking Complexity into Account
1. Does the system require reliable backup and recovery?
2. Are specialized data communications required to transfer information to or from the application?
3. Are there distributed processing functions?
4. Is performance critical?
5. Will the system run in an existing, heavily utilized operational environment?
6. Does the system require online data entry?
7. Does the online data entry require the input transaction to be built over multiple screens or
operations?
8. Are the ILFs updated online?
9. Are the inputs, outputs, files, or inquiries complex?
10. Is the internal processing complex?
11. Is the code designed to be reusable?
12. Are conversion and installation included in the design?
13. Is the system designed for multiple installations in different organizations?
14. Is the application designed to facilitate change and ease of use by the user?
The Fi ( i=1 to 14) are value adjustment factors (VAF) based on responses to the
following questions.
Example: Safe Home Functionality
We assume that ∑(Fi) is 38 (a moderately complex product).
Therefore,
FP = count total X [0.65 +(0.01 X ∑(Fi) )]
50 X [0.65 + (0.01 X 38)] = 51.5
SIZE-ORIENTED METRICS
• Size oriented metrics are derived by normalizing quality or
productivity measures by considering the size of the software
that has been produced.
A simple set of size-oriented metrics can be developed for each
project :
• Errors per KLOC
• Defects per KLOC
• Cost per KLOC
• Pages of documentation per KLOC
Why Opt for FP?
• FP is not restricted to code whereas LOC is defined on code.
• FP is Language independent whereas LOC is not.
• In FP, the necessary data is available early in a project. We need only a detailed
specification whereas in LOC, it is the measure of lines of code which is not available
early in the project .
• FP takes account of functionality or complexity of the product whereas LOC
characterize only one specific view of size , namely length .
PROCESS METRICS
• Process metrics are used for strategic purposes.
• Process metrics are collected across all projects and over long period of time. Their intent
is to provide a set of process indicators that lead to long-term software process
improvement.
• The only way to improve any process is to measure specific attributes of the process,
develop a set of meaningful metrics based on the outcomes and then use the metrics to
provide indicators that will lead to strategic improvements.
Software Process Improvement
PROJECT METRICS
• Unlike process metrics, software project metrics are used for tactical purposes.
• Project metrics and the indicators derived from them enables a software project manager to -
• assess the status of an ongoing project,
• track potential risks,
• uncover problem areas before they go “critical,”
• adjust work flow or tasks, and
• evaluate the project team’s ability to control quality of software work products.
The intent of these metrics is twofold -
1. It is used to minimize the development schedule by making the adjustments necessary to
avoid delays and mitigate potential problems and risks
2. It is used to assess product quality on an ongoing basis and, when necessary, modify the
technical approach to improve quality.
As the quality improves, defects are minimized and the amount of rework required during the
project is also reduced , which leads to the reduction in overall project cost.
• Correctness — The degree to which a program operates correctly
according to specification. A program must operate correctly or it
provides no value to it’s users. The most common measure for
correctness is the defects per KLOC.
• Maintainability—It is the ease with which a program can be
corrected if an error is encountered, adapted if it’s environment
changes or enhanced if the customer desires a change in the
requirements.
• Integrity— This is the measure of the system’s ability to withstand
attacks to it’s security.
• Usability—The degree to which a program is easy to use.
Measuring Quality
Defect Removal Efficiency
• A quality metric that provides benefit at both the project and the process level is defect
removal efficiency.
• DRE gives a measure of the development team ability to remove defects prior to release.
When considered for a project as a whole, DRE is defined as-
DRE= E/(E+D)
Where
E is the number of errors found before delivery of the software to the end-user
D is the number of defects found after delivery
• DRE can also be used within the project to find errors before development team is passed
to the next software engineering action. In this context, DRE is defined as-
DRE= Ei /(Ei+ E i+1)
Where
Ei is the no of errors found during engineering action i
E i+1 is the no of errors found during engineering action i+1
BIBLIOGRAPHY
• Software Engineering A Practitioner’s Approach, Roger S. Pressman
• http://www.tutorialspoint.com/index.htm
• http://www.sqa.net/softwarequalitymetrics.html
• http://resources.sei.cmu.edu/library/asset-view.cfm?assetid=10537
THANK YOU!

More Related Content

What's hot

Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
Siva Ayyakutti
 

What's hot (20)

Software Myths
Software MythsSoftware Myths
Software Myths
 
Staffing level estimation
Staffing level estimation Staffing level estimation
Staffing level estimation
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
 
Estimating Software Maintenance Costs
Estimating Software Maintenance CostsEstimating Software Maintenance Costs
Estimating Software Maintenance Costs
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
 
Software project management Software economics
Software project management Software economicsSoftware project management Software economics
Software project management Software economics
 
Software reliability
Software reliabilitySoftware reliability
Software reliability
 
Software metrics
Software metricsSoftware metrics
Software metrics
 
Quality and productivity factors
Quality and productivity factorsQuality and productivity factors
Quality and productivity factors
 
Software Cost Estimation Techniques
Software Cost Estimation TechniquesSoftware Cost Estimation Techniques
Software Cost Estimation Techniques
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressman
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software matrics and measurement
Software matrics and measurementSoftware matrics and measurement
Software matrics and measurement
 
Software Process Improvement
Software Process ImprovementSoftware Process Improvement
Software Process Improvement
 
Software requirements
Software requirementsSoftware requirements
Software requirements
 
Characteristics of Software
Characteristics of SoftwareCharacteristics of Software
Characteristics of Software
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
software project management Waterfall model
software project management Waterfall modelsoftware project management Waterfall model
software project management Waterfall model
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 

Viewers also liked

Software Engineering Practice - Software Metrics and Estimation
Software Engineering Practice - Software Metrics and EstimationSoftware Engineering Practice - Software Metrics and Estimation
Software Engineering Practice - Software Metrics and Estimation
Radu_Negulescu
 
SOFTWARE MEASUREMENT ESTABLISHING A SOFTWARE MEASUREMENT PROCESS
SOFTWARE MEASUREMENT ESTABLISHING A SOFTWARE MEASUREMENT PROCESSSOFTWARE MEASUREMENT ESTABLISHING A SOFTWARE MEASUREMENT PROCESS
SOFTWARE MEASUREMENT ESTABLISHING A SOFTWARE MEASUREMENT PROCESS
Amin Bandeali
 
Software metrics
Software metricsSoftware metrics
Software metrics
Ione Donosa
 
Software Metrics
Software MetricsSoftware Metrics
Software Metrics
gh0sst
 

Viewers also liked (20)

13 software metrics
13 software metrics13 software metrics
13 software metrics
 
Software metrics
Software metricsSoftware metrics
Software metrics
 
Chapter 6 software metrics
Chapter 6 software metricsChapter 6 software metrics
Chapter 6 software metrics
 
Software Metrics
Software MetricsSoftware Metrics
Software Metrics
 
Software Engineering Practice - Software Metrics and Estimation
Software Engineering Practice - Software Metrics and EstimationSoftware Engineering Practice - Software Metrics and Estimation
Software Engineering Practice - Software Metrics and Estimation
 
Software Metrics & Measurement-Sharbani Bhattacharya
Software Metrics & Measurement-Sharbani BhattacharyaSoftware Metrics & Measurement-Sharbani Bhattacharya
Software Metrics & Measurement-Sharbani Bhattacharya
 
Sw Software Metrics
Sw Software MetricsSw Software Metrics
Sw Software Metrics
 
OO Metrics
OO MetricsOO Metrics
OO Metrics
 
SOFTWARE MEASUREMENT ESTABLISHING A SOFTWARE MEASUREMENT PROCESS
SOFTWARE MEASUREMENT ESTABLISHING A SOFTWARE MEASUREMENT PROCESSSOFTWARE MEASUREMENT ESTABLISHING A SOFTWARE MEASUREMENT PROCESS
SOFTWARE MEASUREMENT ESTABLISHING A SOFTWARE MEASUREMENT PROCESS
 
Software Testing - Defect Metrics & Analysis
Software Testing - Defect Metrics & AnalysisSoftware Testing - Defect Metrics & Analysis
Software Testing - Defect Metrics & Analysis
 
Product metrics
Product metricsProduct metrics
Product metrics
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
 
Testing Metrics
Testing MetricsTesting Metrics
Testing Metrics
 
What is Software Quality and how to measure it?
What is Software Quality and how to measure it?What is Software Quality and how to measure it?
What is Software Quality and how to measure it?
 
Software metrics
Software metricsSoftware metrics
Software metrics
 
Software metrics
Software metricsSoftware metrics
Software metrics
 
Software Metrics
Software MetricsSoftware Metrics
Software Metrics
 
Metrics
MetricsMetrics
Metrics
 
Project Management
Project ManagementProject Management
Project Management
 
s/w metrics monitoring and control
s/w metrics monitoring and controls/w metrics monitoring and control
s/w metrics monitoring and control
 

Similar to Software Metrics - Software Engineering

Unit2 - Metrics.pptx
Unit2 - Metrics.pptxUnit2 - Metrics.pptx
Unit2 - Metrics.pptx
rituah
 
boughtonalexand jdjdjfjjfjfjfjnfjfjjjfkdifij
boughtonalexand jdjdjfjjfjfjfjnfjfjjjfkdifijboughtonalexand jdjdjfjjfjfjfjnfjfjjjfkdifij
boughtonalexand jdjdjfjjfjfjfjnfjfjjjfkdifij
akd3143
 

Similar to Software Metrics - Software Engineering (20)

Software engineering
Software engineeringSoftware engineering
Software engineering
 
Managing software project, software engineering
Managing software project, software engineeringManaging software project, software engineering
Managing software project, software engineering
 
Software Productivity Measurement
Software Productivity MeasurementSoftware Productivity Measurement
Software Productivity Measurement
 
Process and Project Metrics-1
Process and Project Metrics-1Process and Project Metrics-1
Process and Project Metrics-1
 
Cost estimation techniques
Cost estimation techniquesCost estimation techniques
Cost estimation techniques
 
Chapter 11 Metrics for process and projects.ppt
Chapter 11  Metrics for process and projects.pptChapter 11  Metrics for process and projects.ppt
Chapter 11 Metrics for process and projects.ppt
 
Unit2 - Metrics.pptx
Unit2 - Metrics.pptxUnit2 - Metrics.pptx
Unit2 - Metrics.pptx
 
Pressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metricsPressman ch-22-process-and-project-metrics
Pressman ch-22-process-and-project-metrics
 
Software Engineering 2 lecture slide
Software Engineering 2 lecture slideSoftware Engineering 2 lecture slide
Software Engineering 2 lecture slide
 
Chapter 15 software product metrics
Chapter 15 software product metricsChapter 15 software product metrics
Chapter 15 software product metrics
 
Unit 1.pdf
Unit 1.pdfUnit 1.pdf
Unit 1.pdf
 
Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2
 
Bai giang-spm-13feb14
Bai giang-spm-13feb14Bai giang-spm-13feb14
Bai giang-spm-13feb14
 
Project Matrix and Measuring S/W
Project Matrix and Measuring S/WProject Matrix and Measuring S/W
Project Matrix and Measuring S/W
 
5_6134023428304274682.pptx
5_6134023428304274682.pptx5_6134023428304274682.pptx
5_6134023428304274682.pptx
 
software metrics(process,project,product)
software metrics(process,project,product)software metrics(process,project,product)
software metrics(process,project,product)
 
software Engineering process
software Engineering processsoftware Engineering process
software Engineering process
 
Software testing and introduction to quality
Software testing and introduction to qualitySoftware testing and introduction to quality
Software testing and introduction to quality
 
Software metrics
Software metricsSoftware metrics
Software metrics
 
boughtonalexand jdjdjfjjfjfjfjnfjfjjjfkdifij
boughtonalexand jdjdjfjjfjfjfjnfjfjjjfkdifijboughtonalexand jdjdjfjjfjfjfjnfjfjjjfkdifij
boughtonalexand jdjdjfjjfjfjfjnfjfjjjfkdifij
 

More from Drishti Bhalla

More from Drishti Bhalla (16)

Propositions - Discrete Structures
Propositions - Discrete Structures Propositions - Discrete Structures
Propositions - Discrete Structures
 
Physical Layer Numericals - Data Communication & Networking
Physical Layer  Numericals - Data Communication & NetworkingPhysical Layer  Numericals - Data Communication & Networking
Physical Layer Numericals - Data Communication & Networking
 
Determinants - Mathematics
Determinants - MathematicsDeterminants - Mathematics
Determinants - Mathematics
 
Matrices - Mathematics
Matrices - MathematicsMatrices - Mathematics
Matrices - Mathematics
 
Holy Rivers - Hindi
Holy Rivers - HindiHoly Rivers - Hindi
Holy Rivers - Hindi
 
Mid point line Algorithm - Computer Graphics
Mid point line Algorithm - Computer GraphicsMid point line Algorithm - Computer Graphics
Mid point line Algorithm - Computer Graphics
 
Unix Memory Management - Operating Systems
Unix Memory Management - Operating SystemsUnix Memory Management - Operating Systems
Unix Memory Management - Operating Systems
 
Collections Api - Java
Collections Api - JavaCollections Api - Java
Collections Api - Java
 
Airline Reservation System - Software Engineering
Airline Reservation System - Software EngineeringAirline Reservation System - Software Engineering
Airline Reservation System - Software Engineering
 
Performance Management and Feedback - SHRM
Performance Management and Feedback - SHRMPerformance Management and Feedback - SHRM
Performance Management and Feedback - SHRM
 
Computer System Architecture - BUN instruction
Computer System Architecture - BUN instructionComputer System Architecture - BUN instruction
Computer System Architecture - BUN instruction
 
King of acids -Sulphuric Acid H2SO4
King of acids -Sulphuric Acid H2SO4King of acids -Sulphuric Acid H2SO4
King of acids -Sulphuric Acid H2SO4
 
Information Technology - System Threats
Information Technology - System ThreatsInformation Technology - System Threats
Information Technology - System Threats
 
Binary Search - Design & Analysis of Algorithms
Binary Search - Design & Analysis of AlgorithmsBinary Search - Design & Analysis of Algorithms
Binary Search - Design & Analysis of Algorithms
 
CNF & Leftmost Derivation - Theory of Computation
CNF & Leftmost Derivation - Theory of ComputationCNF & Leftmost Derivation - Theory of Computation
CNF & Leftmost Derivation - Theory of Computation
 
Fd & Normalization - Database Management System
Fd & Normalization - Database Management SystemFd & Normalization - Database Management System
Fd & Normalization - Database Management System
 

Recently uploaded

Introduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxIntroduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptx
hublikarsn
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptx
pritamlangde
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Kandungan 087776558899
 
Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...
Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...
Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...
dannyijwest
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
Kamal Acharya
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
Epec Engineered Technologies
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
AldoGarca30
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
Neometrix_Engineering_Pvt_Ltd
 

Recently uploaded (20)

8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor8086 Microprocessor Architecture: 16-bit microprocessor
8086 Microprocessor Architecture: 16-bit microprocessor
 
Introduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptxIntroduction to Robotics in Mechanical Engineering.pptx
Introduction to Robotics in Mechanical Engineering.pptx
 
Convergence of Robotics and Gen AI offers excellent opportunities for Entrepr...
Convergence of Robotics and Gen AI offers excellent opportunities for Entrepr...Convergence of Robotics and Gen AI offers excellent opportunities for Entrepr...
Convergence of Robotics and Gen AI offers excellent opportunities for Entrepr...
 
Digital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptxDigital Communication Essentials: DPCM, DM, and ADM .pptx
Digital Communication Essentials: DPCM, DM, and ADM .pptx
 
Ground Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth ReinforcementGround Improvement Technique: Earth Reinforcement
Ground Improvement Technique: Earth Reinforcement
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 
Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...
Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...
Cybercrimes in the Darknet and Their Detections: A Comprehensive Analysis and...
 
Augmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptxAugmented Reality (AR) with Augin Software.pptx
Augmented Reality (AR) with Augin Software.pptx
 
Unsatisfied Bhabhi ℂall Girls Ahmedabad Book Esha 6378878445 Top Class ℂall G...
Unsatisfied Bhabhi ℂall Girls Ahmedabad Book Esha 6378878445 Top Class ℂall G...Unsatisfied Bhabhi ℂall Girls Ahmedabad Book Esha 6378878445 Top Class ℂall G...
Unsatisfied Bhabhi ℂall Girls Ahmedabad Book Esha 6378878445 Top Class ℂall G...
 
Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)Theory of Time 2024 (Universal Theory for Everything)
Theory of Time 2024 (Universal Theory for Everything)
 
Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)Introduction to Artificial Intelligence ( AI)
Introduction to Artificial Intelligence ( AI)
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 
Databricks Generative AI Fundamentals .pdf
Databricks Generative AI Fundamentals  .pdfDatabricks Generative AI Fundamentals  .pdf
Databricks Generative AI Fundamentals .pdf
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
Signal Processing and Linear System Analysis
Signal Processing and Linear System AnalysisSignal Processing and Linear System Analysis
Signal Processing and Linear System Analysis
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptxS1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
S1S2 B.Arch MGU - HOA1&2 Module 3 -Temple Architecture of Kerala.pptx
 
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
1_Introduction + EAM Vocabulary + how to navigate in EAM.pdf
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 

Software Metrics - Software Engineering

  • 2. • MEASURE: A quantitative indication of the extent, amount, dimension, or size of some attribute of a product or process (e.g. number of errors) • METRICS: The degree to which a system, component, or process possesses a given attribute.It Relates several measures (e.g. average number of errors found per person hour). • INDICATORS: An indicator is a metric or combination of metrics that provide insight into the software process, a software project, or the product itself. • DIRECT METRICS: Immediately measurable attributes (e.g. line of code, execution speed, defects reported). • INDIRECT METRICS: Aspects that are not immediately quantifiable (e.g. functionality, quantity, reliability). • MEASUREMENT is the process by which numbers or symbols are assigned to the attributes of the entities in the real world in such a way as to define them accordingly to clearly defined rules. • FAULTS:  Errors: Faults found by the developers during software development.  Defects: Faults found by the customers after release. BASIC TERMINOLOGIES
  • 3. WHY MEASURE SOFTWARE? • Establish baselines for comparisons with future assessments. • To evaluate the status with respect to plans. • Predict qualities of a product or a process by gaining understandings of relationships among process and products. • Improve product quality and process performance by identifying roadblocks and inefficiencies.
  • 4. A Good Manager Measures Measurement Project metrics Process metricsProcess Product metrics Product
  • 5. METRICS GUIDELINES • Use common sense and organizational sensitivity when interpreting metrics data. • Provide regular feedback to the individuals and teams who collect measures and metrics. • Don’t use metrics to appraise individuals. • Work with practitioners and teams to set clear goals and metrics that will be used to achieve them. • Never use metrics to threaten individuals or teams. • Metrics data that indicate a problem area should not be considered “negative.” These data are merely an indicator for process improvement. • Don’t obsess on a single metric to the exclusion of other important metrics.
  • 6. Product Metrics • Product metrics help the software engineers gain insight into the design and construction of the software they build by focussing on specific and measurable attributes of the work products. • These metrics examine the requirements model with the intent of predicting the size and complexity of the resulting system.
  • 7. Function-ORIENTED metrics • The Function point (FP) metric can be used effectively as a means for measuring the functionality delivered by a system. • The FP metric can be used to - a. Estimate the cost or effort required to design, code and test the software. b. Predict the number of errors that will be encountered during testing c. Forecast the number of components in the system
  • 8. • Function points are derived using an empirical relationship based on countable (direct) measures of software's information domain and assessments of software complexity. • Information domain values are defined in the following manner: • Number of external inputs (EIs) • Number of external outputs (EOs) • Number of external inquiries (EQs) • Number of internal logical files (ILFs) • Number of external interface files (EIFs) COMPUTINGFUNCTIONAL POINTS
  • 9. Analyzing the Information Domain Information Domain Value Count simple average complex Weighting factor External Inputs ( EIs) External Outputs ( EOs) External Inquiries ( EQs) Internal Logical Files ( ILFs) External Interface Files ( EIFs) 3 4 6 4 5 7 3 4 6 7 10 15 5 7 10 = = = = = Count total 3 3 3 3 3 Information Domain Value Count simple average complex Weighting factor External Inputs ( EIs) External Outputs ( EOs) External Inquiries ( EQs) Internal Logical Files ( ILFs) External Interface Files ( EIFs) 3 4 6 4 5 7 3 4 6 7 10 15 5 7 10 = = = = = Count total 3 3 3 3 3 X X X X
  • 10. Taking Complexity into Account 1. Does the system require reliable backup and recovery? 2. Are specialized data communications required to transfer information to or from the application? 3. Are there distributed processing functions? 4. Is performance critical? 5. Will the system run in an existing, heavily utilized operational environment? 6. Does the system require online data entry? 7. Does the online data entry require the input transaction to be built over multiple screens or operations? 8. Are the ILFs updated online? 9. Are the inputs, outputs, files, or inquiries complex? 10. Is the internal processing complex? 11. Is the code designed to be reusable? 12. Are conversion and installation included in the design? 13. Is the system designed for multiple installations in different organizations? 14. Is the application designed to facilitate change and ease of use by the user? The Fi ( i=1 to 14) are value adjustment factors (VAF) based on responses to the following questions.
  • 11. Example: Safe Home Functionality
  • 12. We assume that ∑(Fi) is 38 (a moderately complex product). Therefore, FP = count total X [0.65 +(0.01 X ∑(Fi) )] 50 X [0.65 + (0.01 X 38)] = 51.5
  • 13. SIZE-ORIENTED METRICS • Size oriented metrics are derived by normalizing quality or productivity measures by considering the size of the software that has been produced. A simple set of size-oriented metrics can be developed for each project : • Errors per KLOC • Defects per KLOC • Cost per KLOC • Pages of documentation per KLOC
  • 14. Why Opt for FP? • FP is not restricted to code whereas LOC is defined on code. • FP is Language independent whereas LOC is not. • In FP, the necessary data is available early in a project. We need only a detailed specification whereas in LOC, it is the measure of lines of code which is not available early in the project . • FP takes account of functionality or complexity of the product whereas LOC characterize only one specific view of size , namely length .
  • 15. PROCESS METRICS • Process metrics are used for strategic purposes. • Process metrics are collected across all projects and over long period of time. Their intent is to provide a set of process indicators that lead to long-term software process improvement. • The only way to improve any process is to measure specific attributes of the process, develop a set of meaningful metrics based on the outcomes and then use the metrics to provide indicators that will lead to strategic improvements.
  • 17. PROJECT METRICS • Unlike process metrics, software project metrics are used for tactical purposes. • Project metrics and the indicators derived from them enables a software project manager to - • assess the status of an ongoing project, • track potential risks, • uncover problem areas before they go “critical,” • adjust work flow or tasks, and • evaluate the project team’s ability to control quality of software work products. The intent of these metrics is twofold - 1. It is used to minimize the development schedule by making the adjustments necessary to avoid delays and mitigate potential problems and risks 2. It is used to assess product quality on an ongoing basis and, when necessary, modify the technical approach to improve quality. As the quality improves, defects are minimized and the amount of rework required during the project is also reduced , which leads to the reduction in overall project cost.
  • 18. • Correctness — The degree to which a program operates correctly according to specification. A program must operate correctly or it provides no value to it’s users. The most common measure for correctness is the defects per KLOC. • Maintainability—It is the ease with which a program can be corrected if an error is encountered, adapted if it’s environment changes or enhanced if the customer desires a change in the requirements. • Integrity— This is the measure of the system’s ability to withstand attacks to it’s security. • Usability—The degree to which a program is easy to use. Measuring Quality
  • 19. Defect Removal Efficiency • A quality metric that provides benefit at both the project and the process level is defect removal efficiency. • DRE gives a measure of the development team ability to remove defects prior to release. When considered for a project as a whole, DRE is defined as- DRE= E/(E+D) Where E is the number of errors found before delivery of the software to the end-user D is the number of defects found after delivery • DRE can also be used within the project to find errors before development team is passed to the next software engineering action. In this context, DRE is defined as- DRE= Ei /(Ei+ E i+1) Where Ei is the no of errors found during engineering action i E i+1 is the no of errors found during engineering action i+1
  • 20. BIBLIOGRAPHY • Software Engineering A Practitioner’s Approach, Roger S. Pressman • http://www.tutorialspoint.com/index.htm • http://www.sqa.net/softwarequalitymetrics.html • http://resources.sei.cmu.edu/library/asset-view.cfm?assetid=10537