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
You are on page 1/ 7
SE
UNIT 7
Software Reliability & Quality Management
7.1 Introduction to reliability and metrics to reliability
measure
Software Reliability means Operational reliability. It is described
as the ability of a system or component to perform its required functions under static conditions for a specific period.it can also be described as the probability that a software system fulfils its assigned task in a given environment for a predefined number of input cases, assuming that the hardware and the input are free of error.
Software Reliability is a composite attribute composed of
Reliability metrics are used to quantitatively express the reliability
of the software product. The option of which parameter is to be used depends upon the type of system to which it applies & the requirements of the application domain.
The current methods of software reliability measurement can be
divided into four categories: 1. Product Metrics
Product metrics are characteristics of the product such as size,
complexity, design features, performance, efficiency, reliability, portability etc.
Software size is considered as measurement of complexity,
development effort, and reliability. It is calculated in terms of Lines of Code (LOC), or LOC in thousands (KLOC). It is used to determine of the functional complexity of the program and is independent of the programming language.
Function point (fp) is a method used to determine the
functionality of proposed software development based on the count of inputs, outputs, master files, inquires, and interfaces.
Quality metrics depicts the quality at different levels of
software development. An important quality metric is Defect Removal Efficiency (DRE).
2. Project Management Metrics
Project metrics are explained as different project characteristics
and its execution such as: Number of software developers, Staffing pattern over the life-cycle of the software, Cost and schedule, Productivity
3. Process Metrics Process metrics are defined as efficacy and quality of the processes that produce the software product. Examples are:
The effort required in the process
Time to produce the product Effectiveness of defect removal during development Number of defects found during testing Maturity of the process
4. Fault and Failure Metrics
A fault is a defect in a software which appears on execution
under some particular condition. These metrics determine whether the software is failure-free or not. Software testing is done to find faults or feedback of users are collected and analyzed to rectify the fault.
7.2 Reliability Metrics
Reliability metrics are used to express reliability of a software
product. Some reliability metrics:
Mean Time to Failure (MTTF) is described as the time interval
between the two successive failures. An MTTF of 200 mean that one failure can be expected each 200-time units Mean Time to Repair (MTTR) is the amount of average time taken to track the errors causing the failure and to fix them. Mean Time between Failure (MTBR) we can merge MTTF & MTTR metrics to get the MTBF metric. MTBF = MTTF + MTTR. Fundamentally an MTBF of 300 denotes once failure appears, the next failure is expected to appear only after 300 hours. Rate of occurrence of failure (ROCOF) It refers to the number of failures appearing in a unit time interval. The number of unexpected events over a specific time of operation. ROCOF is the frequency of occurrence with which unexpected role is likely to appear. A ROCOF of 0.02 mean that two failures are likely to occur in each 100 operational time unit steps. It is also called the failure intensity metric. Probability of Failure on Demand (POFOD) is described as the probability that the system will fail when a service is requested. It is the number of system deficiency given several systems inputs. Availability is the probability that the system is applicable for use at a given time. It takes into account the repair time & the restart time for the system. An availability of 0.995 means that in every 1000 time.
7.3 Overview of S/W Quality management System ISO
9000
Software quality product is defined in term of its fitness of
purpose. That is, a quality product does precisely what the users want it to do.
Example: assume a good working software product which
performs all tasks specified in the SRS document. But, has a typically hard user interface. Even after being functionally right, it cannot be considered as quality product.
Several methods to assess quality are:
Portability: A software device is said to be portable, if it can be
freely made to work in various operating system environments, in multiple machines, with other software products, etc.
Usability: A software product has better usability if various
categories of users can easily invoke the functions of the product.
Reusability: A software product has excellent reusability if
different modules of the product can quickly be reused to develop new products.
Correctness: A software product is correct if various
requirements as specified in the SRS document have been correctly implemented. Maintainability: A software product is maintainable if bugs can be easily corrected as and when they show up, new tasks can be easily added to the product, and the functionalities of the product can be easily modified, etc.
ISO (International Standards Organization) is a group or
consortium of 63 countries established to plan and fosters standardization. ISO declared its 9000 series of standards in 1987. It serves as a reference for the contract between independent parties. The ISO 9000 standard determines the guidelines for maintaining a quality system.
Types of industries to which the various ISO standards apply are
as follows.
ISO 9001: This standard applies to most software development
organizations working in design, development, production, and servicing of goods.
ISO 9002: This standard applies to Non software development
organizations.
Which do not design products but are only involved in the
production. Examples steel and car manufacturing industries
ISO 9003: This standard applies to organizations involved only in
the installation and testing of the products. For example, Gas companies.
7.4 Software Engineering Institute Capability Maturity
Model (SEICMM) The Capability Maturity Model (CMM) is a Method used to develop and improve an organization's software development process. CMM was developed and is promoted by the Software Engineering Institute (SEI), a research and development centre promote by the U.S. Department of Defence (DOD).
The model defines a five- evolutionary Maturity levels of