0% found this document useful (0 votes)
13 views3 pages

Software Metrics

Software metrics are quantifiable measures used to assess various characteristics of software, particularly focusing on quality metrics such as code quality, reliability, performance, usability, correctness, maintainability, integrity, and security. These metrics are categorized into product, process, and project metrics, and can further be divided into product quality, in-process quality, and maintenance quality metrics. While software metrics provide advantages like comparative analysis and resource management, they also have disadvantages including difficulty in application and reliance on potentially unverified historical data.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
13 views3 pages

Software Metrics

Software metrics are quantifiable measures used to assess various characteristics of software, particularly focusing on quality metrics such as code quality, reliability, performance, usability, correctness, maintainability, integrity, and security. These metrics are categorized into product, process, and project metrics, and can further be divided into product quality, in-process quality, and maintenance quality metrics. While software metrics provide advantages like comparative analysis and resource management, they also have disadvantages including difficulty in application and reliance on potentially unverified historical data.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

A software metric is a measure of software characteristics which are measurable or countable.

Software metrics are valuable for many reasons, including measuring software performance,
planning work items, measuring productivity, and many other uses..

Software quality metrics are a subset of software metrics that focus on the quality aspects of the
product, process, and project. These are more closely associated with process and product
metrics than with project metrics.
There is a number of metrics available based on which software quality is measured. But
among them, there are a few most useful metrics which are essential in software quality
measurement. They are –
1. Code Quality
2. Reliability
3. Performance
4. Usability
5. Correctness
6. Maintainability
7. Integrity
8. Security

each quality metric in detail


1. Code Quality – Code quality metrics measure the quality of code used for software project
development. Maintaining the software code quality by writing Bug-free and semantically
correct code is very important for good software project development. In code quality, both
Quantitative metrics like the number of lines, complexity, functions, rate of bugs generation,
etc, and Qualitative metrics like readability, code clarity, efficiency, and maintainability, etc
are measured.
2. Reliability – Reliability metrics express the reliability of software in different conditions.
The software is able to provide exact service at the right time or not checked. Reliability can
be checked using Mean Time Between Failure (MTBF) and Mean Time To Repair (MTTR).
3. Performance – Performance metrics are used to measure the performance of the software.
Each software has been developed for some specific purposes. Performance metrics measure
the performance of the software by determining whether the software is fulfilling the user
requirements or not, by analyzing how much time and resource it is utilizing for providing the
service.
4. Usability – Usability metrics check whether the program is user-friendly or not. Each
software is used by the end-user. So it is important to measure that the end-user is happy or
not by using this software.
5. Correctness – Correctness is one of the important software quality metrics as this checks
whether the system or software is working correctly without any error by satisfying the user.
Correctness gives the degree of service each function provides as per developed.
6. Maintainability – Each software product requires maintenance and up-gradation.
Maintenance is an expensive and time-consuming process. So if the software product provides
easy maintainability then we can say software quality is up to mark. Maintainability metrics
include the time required to adapt to new features/functionality, Mean Time to Change
(MTTC), performance in changing environments, etc.
7. Integrity – Software integrity is important in terms of how much it is easy to integrate with
other required software which increases software functionality and what is the control on
integration from unauthorized software’s which increases the chances of cyberattacks.

8. Security – Security metrics measure how secure the software is. In the age of cyber
terrorism, security is the most essential part of every software. Security assures that there are
no unauthorized changes, no fear of cyber attacks, etc when the software product is in use by
the end-user

Software metrics can be classified into three categories −


 Product metrics − Describes the characteristics of the product such as size, complexity,
design features, performance, and quality level.
 Process metrics − These characteristics can be used to improve the development and
maintenance activities of the software.
 Project metrics − This metrics describe the project characteristics and execution.
Examples include the number of software developers, the staffing pattern over the life
cycle of the software, cost, schedule, and productivity.

Software quality metrics can be further divided into three categories


 Product quality metrics
 In-process quality metrics
 Maintenance quality metrics

Product Quality Metrics-This metrics include the following −


 Mean Time to Failure
 Defect Density
 Customer Problems
 Customer Satisfaction

process Quality Metrics--In-process quality metrics deals with the tracking of defect arrival
during formal machine testing for some organizations. This metric includes −
 Defect density during machine testing
 Defect arrival pattern during machine testing
 Phase-based defect removal pattern
 Defect removal effectiveness

Maintenance Quality Metrics--Although much cannot be done to alter the quality of the
product during this phase, following are the fixes that can be carried out to eliminate the defects
as soon as possible with excellent fix quality.
 Fix backlog and backlog management index
 Fix response time and fix responsiveness
 Percent delinquent fixes
 Fix quality

Advantage of Software Metrics

Comparative study of various design methodology of software systems.


For analysis, comparison, and critical study of different programming language concerning their
characteristics.
In comparing and evaluating the capabilities and productivity of people involved in software
development.
In the preparation of software quality specifications.
In the verification of compliance of software systems requirements and specifications.
In making inference about the effort to be put in the design and development of the software
systems.
In getting an idea about the complexity of the code.
In taking decisions regarding further division of a complex module is to be done or not.
In guiding resource manager for their proper utilization.
In comparison and making design tradeoffs between software development and maintenance
cost.
In providing feedback to software managers about the progress and quality during various phases
of the software development life cycle.
In the allocation of testing resources for testing the code.

Disadvantage of Software Metrics

The application of software metrics is not always easy, and in some cases, it is difficult and
costly.
The verification and justification of software metrics are based on historical/empirical data
whose validity is difficult to verify.
These are useful for managing software products but not for evaluating the performance of the
technical staff.
The definition and derivation of Software metrics are usually based on assuming which are not
standardized and may depend upon tools available and working environment.
Most of the predictive models rely on estimates of certain variables which are often not known
precisely.

You might also like