0% found this document useful (0 votes)
1K views15 pages

Iso Iec 25023-2016

ISO/IEC 25023:2016 outlines the measurement of system and software product quality, detailing various quality measures categorized by characteristics and subcharacteristics. It emphasizes the importance of establishing target values for quality measures, which should be iteratively applied throughout development. The document provides specific measures for functional suitability, performance efficiency, and resource utilization, along with their respective mathematical formulations.

Uploaded by

hamze.rom.2002
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views15 pages

Iso Iec 25023-2016

ISO/IEC 25023:2016 outlines the measurement of system and software product quality, detailing various quality measures categorized by characteristics and subcharacteristics. It emphasizes the importance of establishing target values for quality measures, which should be iteratively applied throughout development. The document provides specific measures for functional suitability, performance efficiency, and resource utilization, along with their respective mathematical formulations.

Uploaded by

hamze.rom.2002
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 15

INTERNATIONAL ISO/IEC

STANDARD 25023

First edition
2016-06-15

Systems and software engineering —


Systems and software Quality
Requirements and Evaluation
(SQuaRE) — Measurement of system
and software product quality
Ingénierie des systèmes et du logiciel — Exigences de qualité et
évaluation des systèmes et du logiciel (SQuaRE) — Mesurage de la
qualité du produit logiciel et du système

Reference number
ISO/IEC 25023:2016(E)

© ISO/IEC 2016
ISO/IEC 25023:2016(E)


Some quality measures produce a result that is relative to a target value that needs to be established as
part of requirements.
NOTE 2 Some measurements are normalized against the target value specified in a requirement specification,
a design specification, or a user documentation. Such target value is able to be determined and required as the
threshold by developers or maintainers to improve architecture, design, implementation, assembles, operational
procedures, user interface or performance of the software product or system. The target value is also able to be
specified as one of agreed requirements by acquirers and suppliers to specify quality requirements or to examine
conformance for acquisition. A requirements specification is usually changed and revised during development and
affects the quality measures based on it. Some of requirements to be specified might be missing or inconsistent,
or some of the target values might be insufficient and need to be changed because it is very difficult to specify
completely both of stated and implied needs derived from stakeholder or system requirements at the beginning
of development. Accordingly, users of quality measures are expected to take account of evolving and revising a
requirements specification and to apply quality measures not at once but iteratively during development and/or
evaluation.

NOTE 3 Some quality measures (such as mean response time) can be difficult to interpret in isolation. The
following are ways that quality measures can be applied so that they are easier to understand and interpret:

a) conformance: comparing measures with a specific business or usage requirements (e.g. the
maximum acceptable response time is 0,5 seconds);
b) benchmarks: comparing measures with a benchmark for the same or a similar product or
system used for the same purpose (e.g. the mean response time of the new system in no more than
the mean response time of the old system);
c) time series: comparing trends over time (e.g. how does the mean response time change during
the day).

7 Format used for documenting the quality measures


The following information is given for each quality measure in the tables in Clause 8:
a) ID: identification code of quality measure; each ID consists of the following three parts:
— abbreviated alphabetic code representing the quality characteristics as capital X and
subcharacteristics as one capital X followed by lowercase x (for example, “PTb” denotes “Time
behaviour” measures for “Performance efficiency”);
— serial number of sequential order within quality subcharacteristic;
— G (Generic) or S (Specific) expressing potential categories of quality measure; where, Generic
measures can be used whenever appropriate and Specific measures could be used when relevant in
a particular situation;
b) Name: quality measure name;
c) Description: the information provided by the quality measure;
d) Measurement function: mathematical formula showing how the quality measure elements are
combined to produce the quality measure.
NOTE Useful QMEs which can be used frequently to construct quality measures are specified briefly in
Annex B to help comprehend and apply measurement function for the quality measures.

8 System and software product quality measures

8.1 General
The quality measures in Clause 8 are listed by quality characteristics and subcharacteristics in the
order used in ISO/IEC 25010.

© ISO/IEC 2016 – All rights reserved  7


ISO/IEC 25023:2016(E)


Quality measures can be used with different evaluation techniques that could be chosen according
to quality characteristics and evaluation rating levels depending on whether it is used as internal or
external measures. Accordingly, some quality measures listed in Clause 8 can be used at different stages
of evaluation such as static review of design specification or dynamic analysis of executable products.
Quality measures, which may be applicable, are not limited to these listed here. It is recommended
to refer a specific measure or measurement from specific International Standards or guidelines. For
example, functional size measurement is defined in ISO/IEC 14143 and an example of precise time
efficiency measurement can be referred from ISO/IEC 14756.
NOTE 1 This list of quality measures is not finalized and might be revised in future versions of this
International Standard. Readers of this International Standard are invited to provide feedback.

NOTE 2 In this clause, the word measure means quality measure unless otherwise mentioned. For example,
“Functional suitability measures” means “Functional suitability quality measures”.

8.2 Functional suitability measures


Functional suitability measures are used to assess the degree to which a product or system provided
functions that meet stated and implied needs when used under specified conditions.
NOTE 1 Functional suitability is concerned with whether the functions meet stated and implied needs.

NOTE 2 A function referred to here could be an elementary process as defined in functional user requirements
in ISO/IEC 14143.

NOTE 3 Similar measures with other QMEs like functional size can be defined as a way to weight the result
with better accuracy, as unit ratios do not indicate the quantum of functionality that is missing.

8.2.1 Functional completeness measures

Functional completeness measures are used to assess the degree to which the set of functions covers all
the specified tasks and user objectives.

Table 1 — Functional completeness measures


ID Name Description Measurement function
FCp-1-G Functional What proportion of the specified X = 1 – A/B
coverage functions has been implemented?
A = Number of functions missing
B = Number of functions specified
NOTE 1    Functions can be specified in a requirement specification, a design specification, a user manual or all
of these.
NOTE 2    A missing function is detected when the system or software product does not have the ability to
perform a function that is specified.

8.2.2 Functional correctness measures

Functional correctness measures are used to assess the degree to which a product or system provides
the correct results with the needed degree of precision.

8  © ISO/IEC 2016 – All rights reserved


ISO/IEC 25023:2016(E)


Table 2 — Functional correctness measures


ID Name Description Measurement function
FCr-1-G Functional What proportion of functions X = 1 – A/B
correctness provides the correct results?
A = Number of functions that are incorrect
B = Number of functions considered
NOTE 1    An incorrect function is one that does not provide a reasonable and acceptable outcome to achieve
the specific intended objective.
NOTE 2    The functions considered for evaluation may be all the functions of a product or a specific set of
functions required for a particular usage.
NOTE 3    Developer or maintainer possibly examines an individual function by reviewing or testing and
determines whether the function successfully provides suitable outcomes to specific objectives as defined in
the requirements specification or not. In such a case, the degree of correctness is determined per an individual
function.

8.2.3 Functional appropriateness measures

Functional appropriateness measures are used to assess the degree to which the functions facilitate
the accomplishment of specified tasks and objectives.

Table 3 — Functional appropriateness measures


ID Name Description Measurement function
FAp-1-G Functional What proportion of the functions X = 1 – A/B
appropriateness required by the user provides
A = Number of functions missing or
of usage appropriate outcome to achieve a
incorrect among those that are required for
objective specific usage objective?
achieving a specific usage objective
B = Number of functions required for
achieving a specific usage objective
NOTE 1    This function will typically be considered for the most important or most frequently identified usage
objectives. Thus, this quality measure is first calculated for each of the defined usage objectives that can be
pursued in the system, and then the next quality measure, i.e. FAp-2-G “Functional appropriateness of the
system”, can be calculated collectively across all usage objectives to provide a system measure.
NOTE 2    Users of this International Standard could also consider measuring the proportion of user objectives
that are achievable in order to get a better understanding of the actual impact on user’s intended usage.
FAp-2-G Functional What proportion of the functions
appropriateness required by the users to achieve
X= å Ai / n
of system their objectives provides i = 1 to n
appropriate outcome? A i = Appropriateness score for usage objec-
tive i, that is, the measured value of FAp-1-G
for i-th specific usage objective
n = Number of usage objectives

8.3 Performance efficiency measures


Performance efficiency measures are used to assess the performance relative to the amount of
resources used under stated conditions. Resources can include other software products, the software
and hardware configuration of the system, and materials (e.g. print paper, storage media).
NOTE 1 The performance efficiency measure is affected strongly and fluctuates depending on the conditions
of use, such as load of processing data, frequency of use, number of connecting sites and so on. Therefore,
performance efficiency measures might include the ratio of estimated or measured value with error fluctuation
to the designed value with allowed error fluctuation range required by specification. It is recommended to list
and to investigate the role played by factors such as “CPU” and memory used by other software, network traffic,
and scheduled background processes. Possible fluctuations and valid ranges for estimated or measured values
can be established and compared to requirement specifications.

© ISO/IEC 2016 – All rights reserved  9


ISO/IEC 25023:2016(E)


NOTE 2 It is also recommended that a task be identified and defined to be suitable for performance efficiency
or capacity measures; for example, a transaction as a task for a business application, a switching or data packet
sent as a task for a communication application, an event control as a task for a control application and an output
of data produced by a user callable function as a task for a common user application.

8.3.1 Time behaviour measures

Time behaviour measures are used to assess the degree to which the response and processing times
and throughput rates of a product or system when performing its functions meet the requirements.

Table 4 — Time behaviour measures


ID Name Description Measurement function
PTb-1-G Mean response time How long is the mean time taken
by the system to respond to a user
X= å
(A i ) / n
task or system task? i = 1 to n
A i = Time taken by the system to respond
to a specific user task or system task at i-th
measurement
n = Number of responses measured
PTb-2-G Response time How well does the system X = A/B
adequacy response time meet the
A = Mean response time measured by
specified target?
PTb-1-G
B = Target response time specified
NOTE 1    Result of a smaller value is better and less than or equal to 1 is good.
NOTE 2    Response time is the time from the submission of a request until the first response is produced, i.e.
the time it takes to start responding, not the time it take to output the response.
NOTE 3    An alternative to this measure is nth percentile response time under expected load conditions. It is
also useful to apply it on individual functions or classes of functions.
PTb-3-G Mean turnaround What is the mean time taken for
time completion of a job or an
X= å (B i - A i ) / n
asynchronous process? i = 1 to n
A i = Time of starting a job i
Bi = Time of completing the job i
n = Number of measurements
PTb-4-G Turnaround time How well does the turnaround X = A/B
adequacy time meet the specified targets?
A = Mean turnaround time measured by
PTb-3-G
B = Target turnaround time specified
NOTE 1    Result of a smaller value is better and less than or equal to 1 is good.
NOTE 2    In the case of a pipeline (e.g. a systems chain), the elapsed time in each stage of the pipeline has to be
considered and bottlenecks in one stage can affect overall turnaround time.
NOTE 3    It is recommended to use this measure in conjunction with specified payload and/or workload.

10  © ISO/IEC 2016 – All rights reserved


ISO/IEC 25023:2016(E)


Table 4 (continued)
ID Name Description Measurement function
PTb-5-G Mean throughput What is the mean number of jobs
completed per unit time?
X= å (A i / B i ) / n
i = 1 to n
A i = Number of jobs completed during the
i-th observation time
Bi = i-th observation time period
n = Number of observations
NOTE 1    Jobs could be fine-grained operations like microprocessor operations or coarse grained transaction
processing units like those defined by Transaction Processing Performance Council (TPC) or higher level
abstractions like functions. So, the results of this measure when used in different contexts should be
interpreted appropriately.
NOTE 2    Mean throughput is able to be compared to a target threshold of throughput to calculate the
throughput adequacy. When such a target threshold under specific condition is specified as one of
requirements, the result value is required to be larger than 1.

8.3.2 Resource utilization measures

Resource utilization measures are used to assess the degree to which the amounts and types of
resources used by a product or system when performing its functions meet the requirements.

Table 5 — Resource utilization measures


ID Name Description Measurement function
PRu-1-G Mean How much processor time is used
processor to execute a given set of tasks
X= å (A i / B i ) / n
utilization compared to the operation time? i = 1 to n
A i = Processor time actually used to execute a
given set of tasks in observation i
Bi = Operation time to perform the tasks in
observation i
n = Number of observations
NOTE    Result value varies from greater than 0 to 1. Usually, the smaller is better.
PRu-2-G Mean How much of memory is used to
memory execute a given set of tasks
X= å (A i / B i ) / n
utilization compared to the available i = 1 to n
memory? A i = Size of memory actually used to perform a
given set of tasks for i-th sample processing
Bi = Size of memory available to perform the
tasks during i-th sample processing
n = Number of samples processed
NOTE    Result value varies from greater than 0 to 1. Usually, the smaller is better.
PRu-3-G Mean How much of I/O device busy
I/O devices time is used to perform a given
X= å (A i / B i ) / n
utilization set of tasks compared to the I/O i = 1 to n
operation time? A i = Duration of I/O device(s) busy time to per-
form a given set of tasks for i-th
observation
Bi = Duration of I/O operations to perform the
tasks for i-th observation
n = Number of observations

© ISO/IEC 2016 – All rights reserved  11


ISO/IEC 25023:2016(E)


Table 5 (continued)
ID Name Description Measurement function
NOTE 1    Result value varies from greater than 0 to1. Usually, the smaller is better.
NOTE 2    Busy time means the period of time during which a system or a device is actually working.
PRu-4-S Bandwidth What proportion of the X = A/B
utilization available bandwidth is utilized
A = Bandwidth of actual transmission measured
to perform a given set of tasks?
over time to perform a given set of tasks
B = Bandwidth capacity available to perform a
given set of tasks
NOTE 1    In case there is a concern whether the relevant type of resource is well utilized during specific time
period or not, for example, to complete specified tasks with maximum resource utilization by avoiding
interrupting processing, the result value of closer to optimal is better. In this case, the optimal value depends
on the circumstance.
NOTE 2    The measurer has to consider the possible communication traffic limitations (e.g. dropping or
throttling) which can affect the resulting statistical values including average.

8.3.3 Capacity measures

Capacity measures are used to assess the degree to which the maximum limits of a product or system
parameter meet the requirements.
NOTE 1 Capacity measures are expected to be measured through dynamic analysis, such as volume testing of
the system, or can be measured by system integration testing or simulation. Maximum value and distribution of
the duration can be investigated for many cases of static analysis, dynamic testing or operations.

NOTE 2 The maximum limit is expected to be specified as a target value which can theoretically be beyond a
possible realistic value.

Table 6 — Capacity measures


ID Name Description Measurement function
PCa-1-G Transaction How many transactions can be X = A/B
processing processed per unit time?
A = Number of transactions completed during
capacity
observation time
B = Duration of observation
NOTE 1    Result value varies from 0 to maximum limit. Usually, the larger is better.
NOTE 2    This measure can be useful only if there is sufficient workload to test.
NOTE 3    Task can be alternatively used, as well as transaction.
PCa-2-G User access How many users can access
capacity the system simultaneously at a
X= å Ai / n
certain time? i = 1 to n
A i = Maximum number of users who can simul-
taneously access the system at i-th observation
n = Number of observations

12  © ISO/IEC 2016 – All rights reserved


ISO/IEC 25023:2016(E)


Table 6 (continued)
ID Name Description Measurement function
NOTE    Result value varies from 0 to maximum limit. Usually, the result of larger value is better.
PCa-3-S User access How many users can be added X = A/B
increase successfully per unit time?
A = Number of users successfully added during
adequacy
observation time
B = Duration of observation
NOTE 1    Result value varies from 0 to maximum limit. Usually, the larger is better.
NOTE 2    This measure indicates the degree to which the capability of software or system to have enough
capacity to accept accesses from a lot of users, even during rapid increase of users in a given moment, e.g. an
extremely large number of users could simultaneously access the system or software in an instance through
the internet.

8.4 Compatibility measures


Compatibility measures are used to assess the degree to which a product, system or component can
exchange information with other products, systems or components, and/or perform its required
functions, while sharing the same hardware or software environment.

8.4.1 Co-existence measures

Co-existence measures are used to assess the degree to which a product can perform its required
functions efficiently while sharing a common environment and resources with other products, without
detrimental impact on any other product.

Table 7 — Co-existence measures


ID Name Description Measurement function
CCo-1-G Co-existence What proportion of specified X = A/B
with other software products can share the
A = Number of other specified software
products environment with this software
products with which this product can
product without adverse impact
co-exist
on their quality characteristics or
functionality? B = Number of other software products
specified to co-exist with this product in the
operation environment

8.4.2 Interoperability measures

Interoperability measures are used to assess the degree to which two or more systems, products or
components can exchange information and successfully use the information that has been exchanged.

© ISO/IEC 2016 – All rights reserved  13


ISO/IEC 25023:2016(E)


Table 13 — User interface aesthetics measures


ID Name Description Measurement function
UIn-1-S Appearance To what extent are user interfac- X = A/B
aesthetics of es and the overall design
A = Number of display interfaces
user interfaces aesthetically pleasing in
aesthetically pleasing to the users in
appearance?
appearance
B = Number of display interfaces
NOTE 1    An internal or external user interface aesthetics quality measure is used to assess the appearance
of the user interfaces and will be influenced by factors such as screen design and colour. This is particularly
important for consumer products.
NOTE 2    Good colour combinations can help users to quickly read the text or identify the image. Then, it can
be helpful for better aesthetics measurement to address bad colour combinations, such as light blue on grey,
red on orange, green on blue and so on.
NOTE 3    This quality measure often depends on an individual of users. Then, either expertise usability
designers or testers on behalf of users, or representatives from target user groups are expected to be involved
to measure this.

8.5.6 Accessibility measures

Accessibility measures are used to assess the degree to which a product or system can be used by
people with the widest range of characteristics and capabilities to achieve a specified goal in a specified
context of use.
NOTE For the additional criteria for accessibility, refer to ISO 9241-171.

Table 14 — Accessibility measures


ID Name Description Measurement function
UAc-1-G Accessibility To what extent can potential users X = A/B
for users with with specific disabilities
A = Number of functions successfully usable
disabilities successfully use the system (with
by the users with a specific disability
assistive technology if appropriate)?
B = Number of functions implemented
NOTE 1    Specific disabilities include cognitive disability, physical disability, hearing/voice disability, and
visual disability.
NOTE 2    The range of capabilities includes disabilities associated with age.
NOTE 3    Any person becomes possibly a user with limited cognitive, physical, hearing or visual ability under
specific situations or environments, for example, in darkness, in low atmospheric pressure at high altitude, in
water and so on.
UAc-2-S Supported What proportion of needed X = A/B
languages languages is supported?
A = Number of languages actually supported
adequacy
B = Number of languages needed to be
supported
NOTE    When users are trying to use a system or software with different language from their own native one,
they frequently suffer from operational errors and sometimes give up to achieve their intended goals. Such case
is one of decreasing accessibility and caused by misunderstanding of description and messages. Then, it has to
be considered, specified and implemented, which languages are to be supported for possible variation of users.

8.6 Reliability measures


Reliability measures are used to assess the degree to which a system, product or component performs
specified functions under specified conditions for a specified period of time.

© ISO/IEC 2016 – All rights reserved  19


ISO/IEC 25023:2016(E)


Internal reliability measures are used for predicting if the completed system/software product in
question will satisfy prescribed reliability needs during the development of the system/software
product.
External reliability quality measures are used to assess attributes related to the behaviour of the
system of which the software is a part during execution testing to indicate the extent of reliability of
the software in that system during operation. Systems and software are not distinguished from each
other in most cases.

8.6.1 Maturity measures

Maturity measures are used to assess the degree to which a system, product or component meets the
needs for reliability under normal operation.
NOTE The concept of maturity can also be applied to other quality characteristics to indicate the degree to
which they meet the required needs under normal operation (see ISO/IEC 25010).

Table 15 — Maturity measures


ID Name Description Measurement function
RMa-1-G Fault correction What proportion of detected X = A/B
reliability-related faults has been
A = Number of reliability-related faults cor-
corrected?
rected in design /coding/testing phase
B = Number of reliability-related faults
detected in design/coding/testing phase
NOTE    For example, inadequate error handling is a kind of reliability-related faults.
RMa-2-G Mean time What is the MTBF during the X = A/B
between failure system/software operation?
A = Operation time
(MTBF)
B = Number of system/software failures
actually occurred
NOTE 1    Result value varies from 0 to infinite. Usually, the larger is better.
NOTE 2    MTBF itself can be used to compare the reliabilities of different systems or software products.
RMa-3-G Failure rate What is the average number of X = A/B
failures during a defined period?
A = Number of failures detected during
observation time
B = Duration of observation
NOTE 1    The period used in this measure could be different for testing and operations purposes, which refers
to actual usage or testing time.
NOTE 2    A reliability estimation model can use this measure as an input.
NOTE 3    The usefulness of this quality measure depends on the adequacy of test cases or the extent of system
usage during testing, e.g. normal, exceptional and abnormal cases.
RMa-4-S Test coverage What percentage of the system or X = A/B
software capabilities, operational
A = Number of system or software
scenarios or functions that are
capabilities, operational scenarios or
included in their associated test
functions that are actually performed
suites are actually performed?
B = Number of system or software
capabilities, operational scenarios or
functions which are included in their
associated test suites

8.6.2 Availability measures

Availability measures are used to assess the degree to which a system, product or component is
operational and accessible when required for use.

20  © ISO/IEC 2016 – All rights reserved


ISO/IEC 25023:2016(E)


Table 16 — Availability measures


ID Name Description Measurement function
RAv-1-G System For what proportion of the scheduled X = A/B
availability system operational time is the system
A = System operation time actually
actually available?
provided
B = System operation time specified in the
operation schedule
NOTE    This measure can be extended to special days, such as holidays and weekend, in addition to regular
operational days.
RAv-2-G Mean down How long does the system stay X = A/B
time unavailable when a failure occurs?
A = Total down time
B = Number of breakdowns observed
NOTE 1    Result value varies from 0 to infinite. Usually, the smaller is better.
NOTE 2    Externally, availability can be assessed by the proportion of total time during which the system,
product or component is in an up state. Availability is therefore a combination of maturity (which governs the
frequency of failure), fault tolerance and recoverability (which governs the length of down time following each
failure).

8.6.3 Fault tolerance measures

Fault tolerance measures are used to assess the degree to which a system, product or component
operates as intended despite the presence of hardware or software faults.
NOTE An internal or external fault tolerance measure can be related to the system/software products’
capability of maintaining a specified performance level in cases of operation faults or infringement of its specified
interface.

Table 17 — Fault tolerance measures


ID Name Description Measurement function
RFt-1-G Failure What proportion of fault patterns X = A/B
avoidance has been brought under control
A = Number of avoided critical and serious
to avoid critical and serious
failure occurrences (based on test cases)
failures?
B = Number of executed test cases of fault
pattern (almost causing failure) during
testing
RFt-2-S Redundancy of What proportion of system X = A/B
components components is installed
A = Number of system components
redundantly to avoid system
redundantly installed
failure?
B = Number of system components
NOTE    For example, in many safety-critical systems, some parts of the control system could be duplicated
with the intention of increasing reliability of the system.
RFt-3-S Mean fault How quickly does the system
notification time report the occurrence of faults?
X= å (A i - B i ) / n
i = 1 to n
A i = Time at which the fault i is reported by
the system
Bi = Time at which fault i is detected
n = Number of faults detected
NOTE    Result value varies from 0 to infinite. Usually, the closer to 0 is the better.

© ISO/IEC 2016 – All rights reserved  21


ISO/IEC 25023:2016(E)


8.6.4 Recoverability measures

Recoverability measures are used to assess the degree to which, in the event of an interruption or a
failure, a product or system can recover the data directly affected and re-establish the desired state of
the system.

Table 18 — Recoverability measures


ID Name Description Measurement function
RRe-1-G Mean recovery How long does it take for the
time software/system to recover from
X= å Ai / n
failure? i = 1 to n
A i = Total time to recover the downed soft-
ware /system and re-initiate operation for
each failure i
n = Number of failures
NOTE 1    Result value varies from 0 to infinite. Usually, the smaller is better.
NOTE 2    When this quality measure is compared to a target threshold for mean recovery time, that is speci-
fied in agreed requirements by acquirer and supplier, the measure is able to be used to examine conformance.
RRe-2-S Backup data What proportion of data items is X = A/B
completeness backed up regularly?
A = Number of data items actually backed up
regularly
B = Number of data items requiring backup
for error recovery

8.7 Security measures


Security measures are used to assess the degree to which a product or system protects information and
data so that persons or other products or systems have the degree of data access appropriate to their
types and levels of authorization.
NOTE 1 Penetration tests can be performed to simulate an attack because such a security attack does not
normally occur in the usual testing.

NOTE 2 Security protection requirements vary widely from the case of a stand-alone system to the case of
a system connected to the Internet. The determination of the required security functions and the assurance
of their effectiveness have been addressed extensively in related International Standards. The user of this
International Standard has to determine what kind of security functions need to be used in each case depending
on the level of risk.

8.7.1 Confidentiality measures

Confidentiality measures are used to assess the degree to which a product or system ensures that data
are accessible only to those authorized to have access.

22  © ISO/IEC 2016 – All rights reserved


ISO/IEC 25023:2016(E)


Table 19 — Confidentiality measures


ID Name Description Measurement function
SCo-1-G Access What proportion of confidential X = 1 − A/B
controllabil- data items are protected from
A = Number of confidential data items that can
ity unauthorized accesses?
be accessed without authorization
B = Number of data items that require access
control
SCo-2-G Data How correctly is the encryption/ X = A/B
encryption decryption of data items
A = Number of data items encrypted/decrypted
correctness implemented as stated in the
correctly
requirement specification?
B = Number of data items that require
encryption/decryption
NOTE    For the details of related data quality, refer to Cnf-I-1 in ISO/IEC 25024.
SCo-3-S Strength of What proportion of X = 1 − A/B
cryptograph- cryptographic algorithms has
A = Number of cryptographic algorithms broken
ic algorithms been
or unacceptably risky in use
well-vetted?
B = Number of cryptographic algorithms used
NOTE 1    It is important to select a well-vetted algorithm that is currently considered to be strong by experts
in the field and to select well-tested implementations. As with some cryptographic mechanisms, the source
code has to be available for analysis. For example, US government systems require FIPS 140-2 certification.
NOTE 2    There are other ways of measuring the strength of cryptographic algorithms, for example, using
ethical hacking.

8.7.2 Integrity measures

Integrity measures are used to assess the degree to which a system, product or component prevents
unauthorized access to, or modification of, computer programs or data.

Table 20 — Integrity measures


ID Name Description Measurement function
SIn-1-G Data integrity To what extent is the data X = 1 − A/B
corruption or modification by
A = Number of data items which are actually
unauthorized access
corrupted by unauthorized access
prevented?
B = Number of data items for which data
corruption or modification have to be prevented
SIn-2-G Internal data To what extent are the X = A/B
corruption available prevention methods
A = Number of data corruption prevention
prevention for data corruption
methods actually implemented
implemented?
B = Number of data corruption prevention
methods available and recommended
NOTE    Examples of internal methods for data corruption prevention are back up data frequently, compare
data to reference data periodically, store data in multiple mirror sites.
SIn-3-S Buffer overflow What portion of memory X = A/B
prevention accesses with user input in
A = Number of memory accesses with user input
software modules has been
that are bounds checked
done bounds checking for
preventing buffer overflow? B = Number of memory accesses with user input
in software modules
NOTE    A buffer overflow occurs when data written to a buffer corrupts data values in memory addresses
adjacent to the destination buffer due to insufficient bounds checking. This can occur when copying data from
one buffer to another without first checking that the data fits within the destination buffer.

© ISO/IEC 2016 – All rights reserved  23


ISO/IEC 25023:2016(E)


8.7.3 Non-repudiation measures

Non-repudiation measures are used to assess the degree to which actions or events can be proven to
have taken place, so that the events or actions cannot be repudiated later.

Table 21 — Non-repudiation measures


ID Name Description Measurement function
SNo-1-G Digital signa- What proportion of events X = A/B
ture usage requiring non-repudiation is
A = Number of events that ensure
processed using digital
non-repudiation using digital signature
signature?
B = Number of events requiring
non-repudiation using digital signature
NOTE    Certificates and security algorithms are also helpful to improve non-repudiation.

8.7.4 Accountability measures

Accountability measures are used to assess the degree to which the actions of an entity can be traced
uniquely to the entity.

Table 22 — Accountability measures


ID Name Description Measurement function
SAc-1-G User audit trail How complete is the audit trail X = A/B
completeness concerning the user access to the
A = Number of accesses recorded in all logs
system or data?
B = Number of accesses to system or data
actually tested
SAc-2-S System log For what percent of the required X = A/B
retention retention period is the system log
A = Duration for which the system log is
retained in stable storage?
actually retained in stable storage
B = Retention period specified for keeping
the system log in stable storage
NOTE 1    A stable storage is a classification of computer data storage technology that guarantees atomicity for
any given write operation and allows software to be written that is robust against some hardware and power
failures. Most often, stable storage functionality is achieved by mirroring data on separate disks via RAID
technology.
NOTE 2    Result value varies from 0 to infinite. Usually, larger than 1 is better.

8.7.5 Authenticity measures

Authenticity measures are used to assess the degree to which the identity of a subject or resource can
be proved to be the one claimed.

24  © ISO/IEC 2016 – All rights reserved


ISO/IEC 25023:2016(E)


Table 23 — Authenticity measures


ID Name Description Measurement function
SAu-1-G Authentication How well does the system X = A/B
mechanism authenticate the identity of a
A = Number of authentication mechanisms
sufficiency subject?
provided (e.g., User ID/password or IC card)
B = Number of authentication mechanisms
specified
NOTE    What is relevant for security is the strength of the authentication model and the ability to have
multi-level multi-factor authentication and threat detection. Number of factors and degree of authenticity of
provided protocol can also be used as authenticity measure.
SAu-2-S Authentication What proportion of the required X = A/B
rules conformity authentication rules is
A = Number of authentication rules
established?
implemented
B = Number of authentication rules
specified

8.8 Maintainability measures


Maintainability measures are used to assess the degree of effectiveness and efficiency with which a
product or system can be modified by the intended maintainers.

8.8.1 Modularity measures

Modularity measures are used to assess the degree to which a system or computer program is composed
of discrete components such that a change to one component has minimal impact on other components.

Table 24 — Modularity measures


ID Name Description Measurement function
MMo-1-G Coupling of How strongly are the X = A/B
components components independent and
A = Number of components which are
how many components are free
implemented with no impact on others
from impacts from changes to
other components in a system or B = Number of specified components which
computer program? are required to be independent
NOTE    Such a threshold is helpful to determine whether the degree of impact from changes of other compo-
nents is minimal or not, for example, the frequency of changes of the component caused by changes of other
components or the number of externally shared data bases that the component directly accesses.
MMo-2-S Cyclomatic How many software modules X = 1– A/B
complexity have acceptable cyclomatic
A = Number of software modules which have
adequacy complexity?
a cyclomatic complexity score that exceeds
the specified threshold
B = Number of software modules
implemented
NOTE    Such a threshold is used to determine whether a value of cyclomatic complexity is acceptable or not for
each module. This is defined by each project or organization and is possibly a different value for a program-
ming language, a type of module or function.

8.8.2 Reusability measures

Reusability measures are used to assess the degree to which an asset can be used in more than one
system or in building other assets.

© ISO/IEC 2016 – All rights reserved  25

You might also like