Basic definitions
Errors
An error
is a mistake, misconception, or misunderstanding on the part of a software
developer.
In the
category of developer we include software engineers, programmers, analysts, and
testers. For example, a developer may misunderstand a design notation, or a
programmer might type a variable name incorrectly.
Faults (Defects)
A fault
(defect) is introduced into the software as the result of an error. It is an
anomaly in the software that may cause it to behave incorrectly, and not
according to its specification.
Faults or
defects are sometimes called ―bugs. Use of the latter term trivializes the
impact faults have on software quality. Use of the term ―defect is also
associated with software artifacts such as requirements and design documents.
Defects occurring in these artifacts are also caused by errors and are usually
detected in the review process.
Failures
A failure
is the inability of a software system or component to perform its required
functions within specified performance requirements .
During
execution of a software component or system, a tester, developer, or user
observes that it does not produce the expected results. In some cases a
particular type of misbehavior indicates a certain type of fault is
Test case
A test
case in a practical sense is a test-related item which contains the following
information:
1. A set of test inputs. These are
data items received from an external source by the code under test. The external source can be hardware,
software, or human.
2. Execution conditions. These are
conditions required for running the test, for example, a certain state of a database, or a configuration
of a hardware device.
3. Expected outputs. These are
the specified results to be produced by the code under test.
Test
A test is
a group of related test cases, or a group of related test cases and test
procedures.
Test Oracle
A test
oracle is a document, or piece of software that allows testers to determine
whether a test has been passed or failed.
A
program, or a document that produces or specifies the expected outcome of a
test, can serve as an oracle.Examples include a specification (especially one
that contains pre- and post conditions), a design document, and a set of
requirements. Other sources are regression test suites. The suites usually
contain components with correct results for previous versions of the software.
If some of the functionality in the new version overlaps the old version, the
appropriate oracle information can be extracted. A working trusted program can
serve as its own oracle in a situation where it is being ported to a new
environment. In this case its intended behavior should not change in the new
environment.
Test Bed
A test
bed is an environment that contains all the hardware and software needed to
test a software component or a software system.This includes the entire testing
environment, for example, simulators, emulators,memory checkers, hardware
probes, software tools, and all other items needed to support execution of the
tests.
Software Quality
1.
Quality relates to the degree to which a system, system component, or process
meets specified requirements.
2.
Quality relates to the degree to which a system, system component, or process
meets customer or user needs, or expectations.
In order
to determine whether a system, system component, or process is of high quality
we use what are called quality attributes. the degree to which they possess a
given quality attribute with quality metrics.
Quality metric
A metric
is a quantitative measure of the degree to which a system, system component,or
process possesses a given attribute.
There are
product and process metrics. A very commonly used example of a software product
metric is software size, usually measured in lines of code (LOC). Two examples
of commonly used process metrics are costs and time required for a given task.
Quality metrics are a special kind of metric.
A quality metric is a quantitative measurement of
the degree to which an item possesses a given quality attribute.
Some
examples of quality attributes with brief explanations are the following:
correctness—the degree to which the system
performs its intended function
reliability—the degree to which the software
is expected to perform its required functions under stated conditions for a stated period of time
usability—relates to the degree of effort
needed to learn, operate, prepare input, and interpret output of the software
integrity—relates to the system‘s ability
to withstand both intentional and accidental attacks portability—relates to the ability of the software to be
transferred from one environment to
another
maintainability—the effort needed to make changes
in the software interoperability—the
effort needed to link or couple one
system to another.
Another
quality attribute that should be mentioned here is testability.
•
the amount of effort needed to test the software to
ensure it performs according to specified requirements (relates to number of
test cases needed),
the
ability of the software to reveal defects under testing conditions (some
software is designed in such a way that defects are well hidden during ordinary
testing conditions).
Testers
must work with analysts, designers and, developers throughout the software life
system to ensure that testability issues are addressed.
Software Quality Assurance Group
The
software quality assurance (SQA) group in an organization has ties to quality
issues. The group serves as the customers‘ representative and advocate. Their
responsibility is to look after the customers‘ interests.
The
software quality assurance (SQA) group is a team of people with the necessary
training and skills to ensure that all necessary actions are taken during the
development process so that the resulting software conforms to established
technical requirements.
Review
A review is a group meeting whose purpose is to
evaluate a software artifact or a set of software artifacts.
The
composition of a review group may consist of managers, clients,developers,
testers and other personnel depending on the type of artifact under review. A
special type of review called an audit is usually conducted by a Software
Quality Assurance group for the purpose of assessing compliance with
specifications, and/or standards, and/or contractual agreements.
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2024 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.