SlideShare a Scribd company logo
1 of 46
Software Engineering
Dr. Kamal Gulati
Part 8 : SOFTWARE RELIABILITY AND QUALITY
ASSURANCE
Contents for SOFTWARE RELIABILITY
AND QUALITY ASSURANCE
1. Reliability issues
2. Reliability metrics
3. Reliability growth modeling
4. Software quality
5. ISO 9000 certification for software industry
6. SEI capability maturity model
7. comparison between ISO and SEI CMM
SOFTWARE RELIABILITY AND
QUALITY ASSURANCE
Quality
Quality Refers to any measurable characteristics such as
• Correctness
• Maintainability
• Portability
• Testability
• Usability
• Reliability
• Efficiency
• Integrity
• Reusability and
• Interoperability.
Software Quality Assurance (SQA)
• Consists of a means of monitoring the
software engineering processes and methods
used to ensure quality.
• The methods by which this is accomplished
are many and varied, &
• May include ensuring conformance to one or
more standards, such as ISO 9000 or CMM.
SQA Encompasses
• Quality management
• Effective SE technology (methods and tools)
• Formal technical reviews.
• Multi-tier testing strategy.
• Ongoing documentation.
• A procedure to ensure compliance with
software development
• Standards.
• Measurement and reporting
Verification and Validation
• Verification and validation is the process of
checking that a product, service, or system
meets specifications and that it fulfills its
intended purpose.
• These are critical components of a quality
management system such as ISO 9000.
• Ensure the validation is performed by a
disinterested third party.
• Verification is a Quality control process that is
used to evaluate whether or not a product,
service, or system complies with regulations,
specifications, or conditions imposed at the start
of a development phase. Verification can be in
development, scale-up, or production. This is
often an internal process.
• Validation is Quality assurance process of
establishing evidence that provides a high degree
of assurance that a product, service, or system
accomplishes its intended requirements. This
often involves acceptance of fitness for purpose
with end users and other product stakeholders.
Software Quality Assurance
Software quality assurance (SQA) consists of a
means of monitoring the software
engineering processes and methods used to
ensure quality.
The methods by which this is accomplished
are many and varied, and may include
ensuring conformance to one or more
standards, such as ISO 9000 or a model such
as CMM.
ISO
• ISO is the International Organization for
Standards and produces international
standards.
• A network of standards institutes forms the
ISO, of which there currently are 163
countries represented by these institutes.
• Since the ISO is the world’s largest developer
of standards, it would be beneficial to follow
these standards.
What is ISO 9000?
• ISO 9000 is a group of standards from ISO for
quality management systems (QMS).
• This standard began as a standard specifically
for manufacturing but has been used in other
businesses.
• If a business wants to sell a product or do
business internationally, being ISO 9000
certified will mean that it adheres to a high
level of quality standards that are understood
the world over and will attract more clients.
• ISO 9000 certification means that a company can
meet requirements related to the quality of a
product and also customer service.
• It provides a set of rules that have been followed
time and again successfully to manage the
various processes of an organization to turn out a
successful product.
• The standard explains what requirements for
quality a company must meet to be effective.
• An organization can conduct self-audits or checks
on itself to ensure that ISO 9000’s steps to
success are working or it can obtain someone
from outside the organization to perform an
audit, or even a client.
• ISO 9000 is a family of standards for quality
management systems.
• ISO 9000 is maintained by ISO, the
International Organization for
Standardization and is administered by
accreditation and certification bodies. The
rules are updated, as the requirements
motivate changes over time.
Some of the requirements in ISO 9001:2008
(which is one of the standards in the ISO 9000
family) include
• a set of procedures that cover all key processes in
the business
• monitoring processes to ensure they are effective
• keeping adequate records
• checking output for defects, with appropriate and
corrective action where necessary
• regularly reviewing individual processes and the
quality system itself for effectiveness; and
• facilitating continual improvement
Benefits of ISO 9000 certification
• Focus on "how they do business”
• Documented processes
• Corrective and Preventative
• Employee morale
• Customer satisfaction
• Reduced problems
• Better products and services
• quality
• Improved profit levels
• Improved communications
• 1. ISO-9000 forces an organization to focus on
"how they do business". Each procedure and
work instruction must be documented and
thus, becomes the springboard for Continuous
Improvement.
•
2. Documented processes are the basis for
repetition and help eliminate variation within
the process. As variation is eliminated,
efficiency improves. As efficiency improves,
the cost of quality is reduced.
3. With the development of solid Corrective and
Preventative measures, permanent, company-wide
solutions to quality problems are found.
4. Employee morale is increased as they are asked to
take control of their processes and document their
work processes.
5. Customer satisfaction, and more importantly
customer loyalty, grows. As a company transforms
from a reactive organization to a pro-active,
preventative organization, it becomes a company
people want to do business with.
• 6. Reduced problems resulting from increased
employee participation, involvement,
awareness and systematic employee training.
7. Better products and services result from
Continuous Improvement processes.
8. Fosters the understanding that quality, in
and of itself, is not limited to a quality
department but is everyone's responsibility.
9. Improved profit levels result as productivity
improves and rework costs are reduced.
10. Improved communications both internally
and externally which improves quality,
efficiency, on time delivery and
customer/supplier relations.
ISO 9126
• Product quality is an international standard for
the evaluation of software quality.
• The fundamental objective of this standard is
to address some of the well known human
biases that can adversely affect the delivery
and perception of a software development
project.
• These biases include changing priorities after
the start of a project or not having any clear
definitions of "success".
• By clarifying, then agreeing on the project
priorities and subsequently converting
abstract priorities (compliance) to measurable
values (output data can be validated against
schema X with zero intervention), ISO/IEC
9126 tries to develop a common
understanding of the project's objectives and
goals.
International Organization for Standardization (ISO)
International Electrotechnical Commission (IEC)
• ISO/IEC 27002 is an information security
standard published by the International
Organization for Standardization (ISO) and by
the International Electrotechnical Commission
(IEC), titled Information technology – Security
techniques – Code of practice for information
security management.
The standard is divided into four parts:
• Quality Model
• External Metrics
• Internal Metrics
• Quality in Use Metrics.
http://www.cse.dcu.ie/essiscope/sm2/9126ref.html
CMM
• The Capability Maturity Model (CMM) is a service
mark owned by Carnegie Mellon
University (CMU) and refers to a development
model elicited from actual data.
• The data were collected from organizations that
contracted with the U.S. Department of Defense,
who funded the research, and they became the
foundation from which CMU created the
Software Engineering Institute (SEI).
• Like any model, it is an abstraction of an existing
system.
• When it is applied to an existing
organization's software development
processes, it allows an effective approach
toward improving them.
• Eventually it became clear that the
model could be applied to other
processes.
• This gave rise to a more general concept
that is applied to business processes and
to developing people.
CMM Levels
• Initial
• Managed
• Defined
• Quantitatively managed
• Optimizing
• Level 1 - Initial (Chaotic)
It is characteristic of processes at this level that they are
(typically) undocumented and in a state of dynamic change,
tending to be driven in an ad hoc, uncontrolled and reactive
manner by users or events. This provides a chaotic or
unstable environment for the processes.
• Level 2 - Repeatable
It is characteristic of processes at this level that some
processes are repeatable, possibly with consistent results.
Process discipline is unlikely to be rigorous, but where it
exists it may help to ensure that existing processes are
maintained during times of stress.
• Level 3 - Defined
It is characteristic of processes at this level that there are
sets of defined and documented standard processes
established and subject to some degree of improvement
over time. These standard processes are in place (i.e., they
are the AS-IS processes) and used to establish consistency
of process performance across the organization.
• Level 4 - Managed
It is characteristic of processes at this level that,
using process metrics, management can
effectively control the AS-IS process (e.g., for
software development ). In particular,
management can identify ways to adjust and
adapt the process to particular projects without
measurable losses of quality or deviations from
specifications. Process Capability is established
from this level.
• Level 5 - Optimizing
It is a characteristic of processes at this level that
the focus is on continually improving process
performance through both incremental and
innovative technological changes/improvements.
The Software Engineering Institute (SEI) constantly analyzes the
results of CMM usage by different companies and perfects the
model taking into account accumulated experience.
Software Reliability
• Software quality measures how well software
is designed (quality of design), and how well
the software conforms to that design (quality
of conformance).
• It is often described as the 'fitness for
purpose' of a piece of software.
Software Reliability
1. Software requirements are the foundations from which
quality is measured. Lack of conformance to requirement
is lack of quality.
2. Specified standards define a set of development criteria
that guide the manager is software engineering. If criteria
are not followed lack of quality will almost result.
3. A set of implicit requirements often goes unmentioned,
like for example ease of use, maintainability etc.
If software confirms to its explicit requirement but fails to
meet implicit requirements, software quality is suspected.
SOFTWARE RELIABILITY
• Defined as the probability of failure free
operation of a computer program in a specified
environment for a specified time period.
• Can be measured directly and estimated using
historical and developmental data (unlike many
other software quality factors)
• Software reliability problems can usually be
traced back to errors in design or
implementation.
Software Reliability Metrics
• Reliability metrics are units of measure for system
reliability.
• System reliability is measured by counting the
number of operational failures and relating these
to demands made on the system at the time of
failure.
• A long-term measurement program is required to
assess the reliability of critical systems.
Reliability Metrics - part 1
• Probability of Failure on Demand (POFOD)
– POFOD = 0.001
– For one in every 1000 requests the service fails per time
unit
• Rate of Fault Occurrence (ROCOF)
– ROCOF = 0.02
– Two failures for each 100 operational time units of
operation
Reliability Metrics - part 2
• Mean Time to Failure (MTTF)
– average time between observed failures (aka
MTBF)
• Availability = MTBF / (MTBF+MTTR)
– MTBF = Mean Time Between Failure
– MTTR = Mean Time to Repair
• Reliability = MTBF / (1+MTBF)
Time Units
• Raw Execution Time
– non-stop system
• Calendar Time
– If the system has regular usage patterns
• Number of Transactions
– demand type transaction systems
Classification of failures
A possible classification of failures of software
products into five different types is as follows:
1. Transient
2. Permanent
3. Recoverable
4. Unrecoverable
5. Cosmetic
• Transient. Transient failures occur only for
certain input values while invoking a function
of the system.
• Permanent. Permanent failures occur for all
input values while invoking a function of the
system.
• Recoverable. When recoverable failures occur,
the system recovers with or without operator
intervention.
• Unrecoverable. In unrecoverable failures, the
system may need to be restarted.
• Cosmetic These classes of failures cause only
minor irritations, and do not lead to incorrect
results. An example of a cosmetic failure is the
case where the mouse button has to be
clicked twice instead of once to invoke a given
function through the graphical user interface.
Reverse Software Engineering
• Reverse engineering is the process of
analyzing software with the objective of
recovering its design and specification.
• The program itself is unchanged by the
reverse engineering process.
• The software source code is usually available
as the input to the reverse engineering
process.
• Sometimes, however, even this has been lost
and the reverse engineering must start with
the executable code.
• Reverse engineering is not the same thing as
re-engineering.
• The objective of reverse engineering is to
derive the design or specification of a system
from its source code.
• Reverse engineering is used during the
software re-engineers process to recover the
program design which engineers use to help
them understand a program before
reorganizing its structure.
Re-Engineering Process
• The input to the process is a legacy program
and the output is a structured, modularized
version of the same program.
• At the time as program re-engineering, the
data for the system may also be re-
engineered.
The activities in this re-engineering
process are:
• Source code translation:
The program is converted from an old programming
language to a more modern version of the same
language or to a different language.
• Reverse Engineering:
The program is analyzed and information extracted
from it which helps to document its organization and
functionality.
• Program structure improvement:
The control structure of the program is analyzed and
modified to make it easier to read and understand.
• Program modularization:
Related parts of the program are grouped
together and, where appropriate, redundancy
is removed.
• Data re-engineering:
The data processed by the program is changed
to reflect program changes.
ThankYou&
KeepLearning!
?Follow us :
You can find me at
https://www.linkedin.com/in/drkamalgulati/
https://mybigdataanalytics.in/
https://www.facebook.com/DrKamalGulatiBig
DATA/

More Related Content

What's hot

Software myths | Software Engineering Notes
Software myths | Software Engineering NotesSoftware myths | Software Engineering Notes
Software myths | Software Engineering NotesNavjyotsinh Jadeja
 
1.10. pumping lemma for regular sets
1.10. pumping lemma for regular sets1.10. pumping lemma for regular sets
1.10. pumping lemma for regular setsSampath Kumar S
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptxubaidullah75790
 
Error Detection & Recovery
Error Detection & RecoveryError Detection & Recovery
Error Detection & RecoveryAkhil Kaushik
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software EngineeringFáber D. Giraldo
 
Requirement analysis and specification
Requirement analysis and specificationRequirement analysis and specification
Requirement analysis and specificationM.E. at GTU- PG School
 
Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5Mohammad Faizan
 
Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Bilal Hassan
 
Lefmost rightmost TOC.pptx
Lefmost rightmost TOC.pptxLefmost rightmost TOC.pptx
Lefmost rightmost TOC.pptxJisock
 
INTRODUCTION TO ALGORITHMS Third Edition
INTRODUCTION TO ALGORITHMS Third EditionINTRODUCTION TO ALGORITHMS Third Edition
INTRODUCTION TO ALGORITHMS Third EditionPHI Learning Pvt. Ltd.
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineeringMubashir Jutt
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling Benazir Fathima
 
Process model in SE
Process model in SEProcess model in SE
Process model in SEsuranisaunak
 
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelCHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelmohamed khalaf alla mohamedain
 
Code optimization in compiler design
Code optimization in compiler designCode optimization in compiler design
Code optimization in compiler designKuppusamy P
 

What's hot (20)

Parse Tree
Parse TreeParse Tree
Parse Tree
 
Software myths | Software Engineering Notes
Software myths | Software Engineering NotesSoftware myths | Software Engineering Notes
Software myths | Software Engineering Notes
 
1.10. pumping lemma for regular sets
1.10. pumping lemma for regular sets1.10. pumping lemma for regular sets
1.10. pumping lemma for regular sets
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptx
 
Error Detection & Recovery
Error Detection & RecoveryError Detection & Recovery
Error Detection & Recovery
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software Engineering
 
Peephole Optimization
Peephole OptimizationPeephole Optimization
Peephole Optimization
 
Requirement analysis and specification
Requirement analysis and specificationRequirement analysis and specification
Requirement analysis and specification
 
Software Maintenance
Software MaintenanceSoftware Maintenance
Software Maintenance
 
Phases of Compiler
Phases of CompilerPhases of Compiler
Phases of Compiler
 
Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5
 
Decomposition technique In Software Engineering
Decomposition technique In Software Engineering Decomposition technique In Software Engineering
Decomposition technique In Software Engineering
 
Lefmost rightmost TOC.pptx
Lefmost rightmost TOC.pptxLefmost rightmost TOC.pptx
Lefmost rightmost TOC.pptx
 
INTRODUCTION TO ALGORITHMS Third Edition
INTRODUCTION TO ALGORITHMS Third EditionINTRODUCTION TO ALGORITHMS Third Edition
INTRODUCTION TO ALGORITHMS Third Edition
 
Code Optimization
Code OptimizationCode Optimization
Code Optimization
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineering
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
 
Process model in SE
Process model in SEProcess model in SE
Process model in SE
 
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddelCHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
 
Code optimization in compiler design
Code optimization in compiler designCode optimization in compiler design
Code optimization in compiler design
 

Similar to SOFTWARE RELIABILITY AND QUALITY ASSURANCE

Total Quality Management-Samar.pptx
Total Quality Management-Samar.pptxTotal Quality Management-Samar.pptx
Total Quality Management-Samar.pptxSamar954063
 
Quality assurance and management, software engineering
Quality assurance and management, software engineeringQuality assurance and management, software engineering
Quality assurance and management, software engineeringRupesh Vaishnav
 
SWE 333 - ISQM ISO 9000-3.ppt
SWE 333 - ISQM ISO 9000-3.pptSWE 333 - ISQM ISO 9000-3.ppt
SWE 333 - ISQM ISO 9000-3.pptOswaldo Gonzales
 
A Review of the Concept of ISO Standard 9000 Family
A Review of the Concept of ISO Standard 9000 FamilyA Review of the Concept of ISO Standard 9000 Family
A Review of the Concept of ISO Standard 9000 FamilySonali Chawla
 
Iso9000 pvcgmp roll no. 01
Iso9000  pvcgmp roll no. 01Iso9000  pvcgmp roll no. 01
Iso9000 pvcgmp roll no. 01Hetal Hinglajia
 
International Organization for Standardization
International Organization for StandardizationInternational Organization for Standardization
International Organization for StandardizationAnwarrChaudary
 
7.quality management chapter 7
7.quality management chapter 77.quality management chapter 7
7.quality management chapter 7Warui Maina
 
Quality Management
Quality ManagementQuality Management
Quality ManagementBuchiri
 
Quality Mangt
Quality MangtQuality Mangt
Quality Mangtajithsrc
 
Iso awareness training
Iso awareness trainingIso awareness training
Iso awareness trainingmanojmridul
 
presentation quality awareness draft02.pptx
presentation quality awareness draft02.pptxpresentation quality awareness draft02.pptx
presentation quality awareness draft02.pptxAhmedAltantawi
 

Similar to SOFTWARE RELIABILITY AND QUALITY ASSURANCE (20)

Total Quality Management-Samar.pptx
Total Quality Management-Samar.pptxTotal Quality Management-Samar.pptx
Total Quality Management-Samar.pptx
 
Software Quality.pptx
Software Quality.pptxSoftware Quality.pptx
Software Quality.pptx
 
Quality assurance and management, software engineering
Quality assurance and management, software engineeringQuality assurance and management, software engineering
Quality assurance and management, software engineering
 
SWE 333 - ISQM ISO 9000-3.ppt
SWE 333 - ISQM ISO 9000-3.pptSWE 333 - ISQM ISO 9000-3.ppt
SWE 333 - ISQM ISO 9000-3.ppt
 
A Review of the Concept of ISO Standard 9000 Family
A Review of the Concept of ISO Standard 9000 FamilyA Review of the Concept of ISO Standard 9000 Family
A Review of the Concept of ISO Standard 9000 Family
 
Iso9000 pvcgmp roll no. 01
Iso9000  pvcgmp roll no. 01Iso9000  pvcgmp roll no. 01
Iso9000 pvcgmp roll no. 01
 
International Organization for Standardization
International Organization for StandardizationInternational Organization for Standardization
International Organization for Standardization
 
7.quality management chapter 7
7.quality management chapter 77.quality management chapter 7
7.quality management chapter 7
 
SQA
SQASQA
SQA
 
ISO Intro1.pptx
ISO Intro1.pptxISO Intro1.pptx
ISO Intro1.pptx
 
ISO 9000
ISO 9000ISO 9000
ISO 9000
 
Quality Management
Quality ManagementQuality Management
Quality Management
 
Ch27
Ch27Ch27
Ch27
 
Quality Mangt
Quality MangtQuality Mangt
Quality Mangt
 
STQA 1.pptx
STQA 1.pptxSTQA 1.pptx
STQA 1.pptx
 
Iso awareness training
Iso awareness trainingIso awareness training
Iso awareness training
 
presentation quality awareness draft02.pptx
presentation quality awareness draft02.pptxpresentation quality awareness draft02.pptx
presentation quality awareness draft02.pptx
 
unit-5-1.ppt
unit-5-1.pptunit-5-1.ppt
unit-5-1.ppt
 
unit-5-1.ppt
unit-5-1.pptunit-5-1.ppt
unit-5-1.ppt
 
Quality mgt.
Quality mgt.Quality mgt.
Quality mgt.
 

More from Amity University | FMS - DU | IMT | Stratford University | KKMI International Institute | AIMA | DTU

More from Amity University | FMS - DU | IMT | Stratford University | KKMI International Institute | AIMA | DTU (20)

All About DBMS - Interview Question and Answers
All About DBMS - Interview Question and AnswersAll About DBMS - Interview Question and Answers
All About DBMS - Interview Question and Answers
 
Concept of Governance - Management of Operational Risk for IT Officers/Execut...
Concept of Governance - Management of Operational Risk for IT Officers/Execut...Concept of Governance - Management of Operational Risk for IT Officers/Execut...
Concept of Governance - Management of Operational Risk for IT Officers/Execut...
 
Emerging Technologies in IT
Emerging Technologies in ITEmerging Technologies in IT
Emerging Technologies in IT
 
Introduction to DBMS - Notes in Layman...
Introduction to DBMS - Notes in Layman...Introduction to DBMS - Notes in Layman...
Introduction to DBMS - Notes in Layman...
 
Fundamentals of DBMS
Fundamentals of DBMSFundamentals of DBMS
Fundamentals of DBMS
 
CASE (Computer Aided Software Design)
CASE (Computer Aided Software Design)CASE (Computer Aided Software Design)
CASE (Computer Aided Software Design)
 
Software Testing (Contd..) SDLC Model
Software Testing (Contd..) SDLC ModelSoftware Testing (Contd..) SDLC Model
Software Testing (Contd..) SDLC Model
 
Software Testing - SDLC Model
Software Testing - SDLC ModelSoftware Testing - SDLC Model
Software Testing - SDLC Model
 
Coding - SDLC Model
Coding - SDLC ModelCoding - SDLC Model
Coding - SDLC Model
 
Software Design - SDLC Model
Software Design - SDLC ModelSoftware Design - SDLC Model
Software Design - SDLC Model
 
Models of SDLC (Contd..) & Feasibility Study
Models of SDLC (Contd..)  & Feasibility StudyModels of SDLC (Contd..)  & Feasibility Study
Models of SDLC (Contd..) & Feasibility Study
 
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
Models of SDLC (Software Development Life Cycle / Program Development Life Cy...
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
CLOUD SECURITY IN INSURANCE INDUSTRY WITH RESPECT TO INDIAN MARKET
CLOUD SECURITY IN INSURANCE INDUSTRY WITH RESPECT TO INDIAN MARKETCLOUD SECURITY IN INSURANCE INDUSTRY WITH RESPECT TO INDIAN MARKET
CLOUD SECURITY IN INSURANCE INDUSTRY WITH RESPECT TO INDIAN MARKET
 
Application Software
Application SoftwareApplication Software
Application Software
 
Application Software – Horizontal & Vertical Software
Application Software – Horizontal & Vertical SoftwareApplication Software – Horizontal & Vertical Software
Application Software – Horizontal & Vertical Software
 
Software: Systems and Application Software
Software:  Systems and Application SoftwareSoftware:  Systems and Application Software
Software: Systems and Application Software
 
Programming Languages
Programming LanguagesProgramming Languages
Programming Languages
 
Number Codes and Registers
Number Codes and RegistersNumber Codes and Registers
Number Codes and Registers
 
Introduction to Computer Programming
Introduction to Computer ProgrammingIntroduction to Computer Programming
Introduction to Computer Programming
 

Recently uploaded

Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaVirag Sontakke
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
AmericanHighSchoolsprezentacijaoskolama.
AmericanHighSchoolsprezentacijaoskolama.AmericanHighSchoolsprezentacijaoskolama.
AmericanHighSchoolsprezentacijaoskolama.arsicmarija21
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentInMediaRes1
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersSabitha Banu
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxpboyjonauth
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxEyham Joco
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfUjwalaBharambe
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxUnboundStockton
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfSumit Tiwari
 

Recently uploaded (20)

Painted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of IndiaPainted Grey Ware.pptx, PGW Culture of India
Painted Grey Ware.pptx, PGW Culture of India
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
AmericanHighSchoolsprezentacijaoskolama.
AmericanHighSchoolsprezentacijaoskolama.AmericanHighSchoolsprezentacijaoskolama.
AmericanHighSchoolsprezentacijaoskolama.
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
Meghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media ComponentMeghan Sutherland In Media Res Media Component
Meghan Sutherland In Media Res Media Component
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)ESSENTIAL of (CS/IT/IS) class 06 (database)
ESSENTIAL of (CS/IT/IS) class 06 (database)
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginners
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Introduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptxIntroduction to AI in Higher Education_draft.pptx
Introduction to AI in Higher Education_draft.pptx
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptx
 
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdfFraming an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
Framing an Appropriate Research Question 6b9b26d93da94caf993c038d9efcdedb.pdf
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docx
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
 

SOFTWARE RELIABILITY AND QUALITY ASSURANCE

  • 1. Software Engineering Dr. Kamal Gulati Part 8 : SOFTWARE RELIABILITY AND QUALITY ASSURANCE
  • 2. Contents for SOFTWARE RELIABILITY AND QUALITY ASSURANCE 1. Reliability issues 2. Reliability metrics 3. Reliability growth modeling 4. Software quality 5. ISO 9000 certification for software industry 6. SEI capability maturity model 7. comparison between ISO and SEI CMM
  • 4. Quality Quality Refers to any measurable characteristics such as • Correctness • Maintainability • Portability • Testability • Usability • Reliability • Efficiency • Integrity • Reusability and • Interoperability.
  • 5. Software Quality Assurance (SQA) • Consists of a means of monitoring the software engineering processes and methods used to ensure quality. • The methods by which this is accomplished are many and varied, & • May include ensuring conformance to one or more standards, such as ISO 9000 or CMM.
  • 6. SQA Encompasses • Quality management • Effective SE technology (methods and tools) • Formal technical reviews. • Multi-tier testing strategy. • Ongoing documentation. • A procedure to ensure compliance with software development • Standards. • Measurement and reporting
  • 7. Verification and Validation • Verification and validation is the process of checking that a product, service, or system meets specifications and that it fulfills its intended purpose. • These are critical components of a quality management system such as ISO 9000. • Ensure the validation is performed by a disinterested third party.
  • 8. • Verification is a Quality control process that is used to evaluate whether or not a product, service, or system complies with regulations, specifications, or conditions imposed at the start of a development phase. Verification can be in development, scale-up, or production. This is often an internal process. • Validation is Quality assurance process of establishing evidence that provides a high degree of assurance that a product, service, or system accomplishes its intended requirements. This often involves acceptance of fitness for purpose with end users and other product stakeholders.
  • 9. Software Quality Assurance Software quality assurance (SQA) consists of a means of monitoring the software engineering processes and methods used to ensure quality. The methods by which this is accomplished are many and varied, and may include ensuring conformance to one or more standards, such as ISO 9000 or a model such as CMM.
  • 10. ISO • ISO is the International Organization for Standards and produces international standards. • A network of standards institutes forms the ISO, of which there currently are 163 countries represented by these institutes. • Since the ISO is the world’s largest developer of standards, it would be beneficial to follow these standards.
  • 11. What is ISO 9000? • ISO 9000 is a group of standards from ISO for quality management systems (QMS). • This standard began as a standard specifically for manufacturing but has been used in other businesses. • If a business wants to sell a product or do business internationally, being ISO 9000 certified will mean that it adheres to a high level of quality standards that are understood the world over and will attract more clients.
  • 12. • ISO 9000 certification means that a company can meet requirements related to the quality of a product and also customer service. • It provides a set of rules that have been followed time and again successfully to manage the various processes of an organization to turn out a successful product. • The standard explains what requirements for quality a company must meet to be effective. • An organization can conduct self-audits or checks on itself to ensure that ISO 9000’s steps to success are working or it can obtain someone from outside the organization to perform an audit, or even a client.
  • 13. • ISO 9000 is a family of standards for quality management systems. • ISO 9000 is maintained by ISO, the International Organization for Standardization and is administered by accreditation and certification bodies. The rules are updated, as the requirements motivate changes over time.
  • 14. Some of the requirements in ISO 9001:2008 (which is one of the standards in the ISO 9000 family) include • a set of procedures that cover all key processes in the business • monitoring processes to ensure they are effective • keeping adequate records • checking output for defects, with appropriate and corrective action where necessary • regularly reviewing individual processes and the quality system itself for effectiveness; and • facilitating continual improvement
  • 15. Benefits of ISO 9000 certification • Focus on "how they do business” • Documented processes • Corrective and Preventative • Employee morale • Customer satisfaction • Reduced problems • Better products and services • quality • Improved profit levels • Improved communications
  • 16. • 1. ISO-9000 forces an organization to focus on "how they do business". Each procedure and work instruction must be documented and thus, becomes the springboard for Continuous Improvement. • 2. Documented processes are the basis for repetition and help eliminate variation within the process. As variation is eliminated, efficiency improves. As efficiency improves, the cost of quality is reduced.
  • 17. 3. With the development of solid Corrective and Preventative measures, permanent, company-wide solutions to quality problems are found. 4. Employee morale is increased as they are asked to take control of their processes and document their work processes. 5. Customer satisfaction, and more importantly customer loyalty, grows. As a company transforms from a reactive organization to a pro-active, preventative organization, it becomes a company people want to do business with.
  • 18. • 6. Reduced problems resulting from increased employee participation, involvement, awareness and systematic employee training. 7. Better products and services result from Continuous Improvement processes. 8. Fosters the understanding that quality, in and of itself, is not limited to a quality department but is everyone's responsibility.
  • 19. 9. Improved profit levels result as productivity improves and rework costs are reduced. 10. Improved communications both internally and externally which improves quality, efficiency, on time delivery and customer/supplier relations.
  • 20. ISO 9126 • Product quality is an international standard for the evaluation of software quality. • The fundamental objective of this standard is to address some of the well known human biases that can adversely affect the delivery and perception of a software development project.
  • 21. • These biases include changing priorities after the start of a project or not having any clear definitions of "success". • By clarifying, then agreeing on the project priorities and subsequently converting abstract priorities (compliance) to measurable values (output data can be validated against schema X with zero intervention), ISO/IEC 9126 tries to develop a common understanding of the project's objectives and goals. International Organization for Standardization (ISO) International Electrotechnical Commission (IEC)
  • 22. • ISO/IEC 27002 is an information security standard published by the International Organization for Standardization (ISO) and by the International Electrotechnical Commission (IEC), titled Information technology – Security techniques – Code of practice for information security management.
  • 23. The standard is divided into four parts: • Quality Model • External Metrics • Internal Metrics • Quality in Use Metrics. http://www.cse.dcu.ie/essiscope/sm2/9126ref.html
  • 24. CMM • The Capability Maturity Model (CMM) is a service mark owned by Carnegie Mellon University (CMU) and refers to a development model elicited from actual data. • The data were collected from organizations that contracted with the U.S. Department of Defense, who funded the research, and they became the foundation from which CMU created the Software Engineering Institute (SEI). • Like any model, it is an abstraction of an existing system.
  • 25. • When it is applied to an existing organization's software development processes, it allows an effective approach toward improving them. • Eventually it became clear that the model could be applied to other processes. • This gave rise to a more general concept that is applied to business processes and to developing people.
  • 26. CMM Levels • Initial • Managed • Defined • Quantitatively managed • Optimizing
  • 27. • Level 1 - Initial (Chaotic) It is characteristic of processes at this level that they are (typically) undocumented and in a state of dynamic change, tending to be driven in an ad hoc, uncontrolled and reactive manner by users or events. This provides a chaotic or unstable environment for the processes. • Level 2 - Repeatable It is characteristic of processes at this level that some processes are repeatable, possibly with consistent results. Process discipline is unlikely to be rigorous, but where it exists it may help to ensure that existing processes are maintained during times of stress. • Level 3 - Defined It is characteristic of processes at this level that there are sets of defined and documented standard processes established and subject to some degree of improvement over time. These standard processes are in place (i.e., they are the AS-IS processes) and used to establish consistency of process performance across the organization.
  • 28. • Level 4 - Managed It is characteristic of processes at this level that, using process metrics, management can effectively control the AS-IS process (e.g., for software development ). In particular, management can identify ways to adjust and adapt the process to particular projects without measurable losses of quality or deviations from specifications. Process Capability is established from this level. • Level 5 - Optimizing It is a characteristic of processes at this level that the focus is on continually improving process performance through both incremental and innovative technological changes/improvements.
  • 29. The Software Engineering Institute (SEI) constantly analyzes the results of CMM usage by different companies and perfects the model taking into account accumulated experience.
  • 30. Software Reliability • Software quality measures how well software is designed (quality of design), and how well the software conforms to that design (quality of conformance). • It is often described as the 'fitness for purpose' of a piece of software.
  • 31. Software Reliability 1. Software requirements are the foundations from which quality is measured. Lack of conformance to requirement is lack of quality. 2. Specified standards define a set of development criteria that guide the manager is software engineering. If criteria are not followed lack of quality will almost result. 3. A set of implicit requirements often goes unmentioned, like for example ease of use, maintainability etc. If software confirms to its explicit requirement but fails to meet implicit requirements, software quality is suspected.
  • 32. SOFTWARE RELIABILITY • Defined as the probability of failure free operation of a computer program in a specified environment for a specified time period. • Can be measured directly and estimated using historical and developmental data (unlike many other software quality factors) • Software reliability problems can usually be traced back to errors in design or implementation.
  • 33. Software Reliability Metrics • Reliability metrics are units of measure for system reliability. • System reliability is measured by counting the number of operational failures and relating these to demands made on the system at the time of failure. • A long-term measurement program is required to assess the reliability of critical systems.
  • 34. Reliability Metrics - part 1 • Probability of Failure on Demand (POFOD) – POFOD = 0.001 – For one in every 1000 requests the service fails per time unit • Rate of Fault Occurrence (ROCOF) – ROCOF = 0.02 – Two failures for each 100 operational time units of operation
  • 35. Reliability Metrics - part 2 • Mean Time to Failure (MTTF) – average time between observed failures (aka MTBF) • Availability = MTBF / (MTBF+MTTR) – MTBF = Mean Time Between Failure – MTTR = Mean Time to Repair • Reliability = MTBF / (1+MTBF)
  • 36. Time Units • Raw Execution Time – non-stop system • Calendar Time – If the system has regular usage patterns • Number of Transactions – demand type transaction systems
  • 37. Classification of failures A possible classification of failures of software products into five different types is as follows: 1. Transient 2. Permanent 3. Recoverable 4. Unrecoverable 5. Cosmetic
  • 38. • Transient. Transient failures occur only for certain input values while invoking a function of the system. • Permanent. Permanent failures occur for all input values while invoking a function of the system. • Recoverable. When recoverable failures occur, the system recovers with or without operator intervention.
  • 39. • Unrecoverable. In unrecoverable failures, the system may need to be restarted. • Cosmetic These classes of failures cause only minor irritations, and do not lead to incorrect results. An example of a cosmetic failure is the case where the mouse button has to be clicked twice instead of once to invoke a given function through the graphical user interface.
  • 40. Reverse Software Engineering • Reverse engineering is the process of analyzing software with the objective of recovering its design and specification. • The program itself is unchanged by the reverse engineering process. • The software source code is usually available as the input to the reverse engineering process. • Sometimes, however, even this has been lost and the reverse engineering must start with the executable code.
  • 41. • Reverse engineering is not the same thing as re-engineering. • The objective of reverse engineering is to derive the design or specification of a system from its source code. • Reverse engineering is used during the software re-engineers process to recover the program design which engineers use to help them understand a program before reorganizing its structure.
  • 42. Re-Engineering Process • The input to the process is a legacy program and the output is a structured, modularized version of the same program. • At the time as program re-engineering, the data for the system may also be re- engineered.
  • 43. The activities in this re-engineering process are: • Source code translation: The program is converted from an old programming language to a more modern version of the same language or to a different language. • Reverse Engineering: The program is analyzed and information extracted from it which helps to document its organization and functionality. • Program structure improvement: The control structure of the program is analyzed and modified to make it easier to read and understand.
  • 44. • Program modularization: Related parts of the program are grouped together and, where appropriate, redundancy is removed. • Data re-engineering: The data processed by the program is changed to reflect program changes.
  • 45.
  • 46. ThankYou& KeepLearning! ?Follow us : You can find me at https://www.linkedin.com/in/drkamalgulati/ https://mybigdataanalytics.in/ https://www.facebook.com/DrKamalGulatiBig DATA/