SlideShare ist ein Scribd-Unternehmen logo
1 von 22
THE SOFTWARE QUALITY
DILEMMA
1. “Good Enough” Software: software
companies create software with known
bugs and deliver it to a broad
population of end users.
2. The Cost of Quality: The cost of
quality includes all costs incurred in the
pursuit of quality or in performing
quality-related activities and the
downstream costs of lack of quality.
3. Risks: low-quality software increases
risks for both the developer and the end
user.
4. Negligence and Liability: In most
cases, the customer claims that the
developer has been negligent. The
developer claims that the customer has
repeatedly changed its requirements.
5. Quality and Security: software that
does not exhibit high quality is easier to
hack, and as a consequence, low-quality
software can indirectly increase the
security risk with all of its attendant costs
6. The Impact of Management Actions:
Software quality is often influenced as
much by management decisions as it is
by technology decisions.
 Estimation decisions
 Scheduling decisions
 Risk-oriented decisions
ACHIEVING SOFTWARE
QUALITY
Management and practice are applied
within the context of four broad
activities that help a software team
achieve high software quality.
 Software Engineering Methods
 Project Management Techniques
 Quality Control
 Quality Assurance
A defect amplification model can be used
to illustrate the generation and
detection of errors during the design
and code generation actions of a
software process.
REVIEWS
Technical reviews should be applied with a level of
formality that is appropriate for the product to be
built, the project time line, and the people who are
doing the work.
INFORMAL REVIEWS
Informal reviews include a simple desk check of a
software engineering work product with a
colleague, a casual meeting (involving more than
two people) for the purpose of reviewing a work
product, or the review-oriented aspects of pair
programming.
FORMAL TECHNICAL
REVIEWS
A formal technical review (FTR) is a software
quality control activity performed by software
engineers.
The objectives of an FTR are:
(1) to uncover errors in function, logic, or
implementation for any representation of the
software;
(2) to verify that the software under review meets
its requirements;
(3) to ensure that the software has been
represented according to predefined
standards;
(4) to achieve software that is developed in a
uniform manner; and
 Standards: The job of SQA is to ensure that
standards that have been adopted are
followed and that all work products conform
to them.
 Reviews and audits: Technical reviews are a
quality control activity performed by software
engineers for software engineers. Audits are a
type of review performed by SQA personnel
with the intent of ensuring that quality
guidelines are being followed for software
engineering work.
 Testing. Software testing is a quality control
function that has one primary goal—to find
errors.
 Error/defect collection and analysis: SQA
collects and analyzes error and defect data to
better understand how errors are introduced
and what software engineering activities are
best suited to eliminating them.
 Change management: SQA ensures that
adequate change management practices have
been instituted.
 Education: . A key contributor to
improvement is education of software
engineers, their managers, and other
stakeholders.
 Vendor management: The job of the SQA
organization is to ensure that high-quality
software results by suggesting specific quality
practices that the vendor should follow and
incorporating quality mandates as part of any
contract with an external vendor.
 Security management: . SQA ensures that
appropriate process and technology are used to
achieve software security.
 Safety: SQA may be responsible for assessing the
impact of software failure and for initiating those
steps required to reduce risk.
 Risk management: SQA organization ensures that
risk management activities are properly
conducted and that risk-related contingency
plans have been established.
 Prepares an SQA plan for a project
 Participates in the development of the project’s
software process description
 Reviews software engineering activities to verify
compliance with the defined software process
 Audits designated software work products to
verify compliance with those defined as part of
the software process
 Ensures that deviations in software work and
work products are documented and handled
according to a documented procedure
 Records any noncompliance and reports to
senior management
Requirements quality
Design quality
Code quality
Quality control effectiveness
SOFTWARE RELIABILITY
Software reliability is defined in statistical
terms as “the probability of failure-free
operation of a computer program in a
specified environment for a specified
time”.
“A strategy for software testing provides a road
map that describes the steps to be conducted
as part of testing, when these steps are
planned and then undertaken, and how much
effort, time, and resources will be required.”
 Verification refers to the set of tasks that
ensure that software correctly implements a
specific function.
 Validation refers to a different set of tasks
that ensure that the software that has been
built is traceable to customer requirements.
 The software developer is always responsible
for testing the individual units (components)
of the program, ensuring that each performs
the function or exhibits the behavior for
which it was designed.
 In many cases, the developer also conducts
integration testing—a testing step that leads
to the construction (and test) of the complete
software architecture.
VALIDATION TESTING
Validation testing begins at the
culmination of integration testing,
when individual components have been
exercised, the software is completely
assembled as a package, and interfacing
errors have been uncovered and
corrected.
1. Validation-Test Criteria
 A test plan outlines the classes of tests to be
conducted, and a test procedure defines specific test
cases that are designed to ensure that all functional
requirements are satisfied, all behavioral
characteristics are achieved, all content is accurate
and properly presented, all performance
requirements are attained, documentation is correct,
and usability and other requirements are met.
2. Configuration Review
 The intent of the review is to ensure
that all elements of the software
configuration have been properly
developed, are cataloged, and have the
necessary detail.
3. Alpha and Beta Testing
 The alpha test records errors and usage problems. Alpha
tests are conducted in a controlled environment. The
alpha test is conducted at the developer’s site by a
representative group of end users.
 The beta test is conducted at one or more end-user sites.
The beta test is a “live” application of the software in an
environment that cannot be controlled by the developer.
The customer records all problems (real or imagined)
that are encountered during beta testing and reports
these to the developer at regular intervals.

Weitere ähnliche Inhalte

Was ist angesagt?

Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24
koolkampus
 

Was ist angesagt? (20)

Slides chapter 2
Slides chapter 2Slides chapter 2
Slides chapter 2
 
Software Configuration Management (SCM)
Software Configuration Management (SCM)Software Configuration Management (SCM)
Software Configuration Management (SCM)
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specification
 
Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24Quality Management in Software Engineering SE24
Quality Management in Software Engineering SE24
 
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
Software Testing - Part 1 (Techniques, Types, Levels, Methods, STLC, Bug Life...
 
Software metrics
Software metricsSoftware metrics
Software metrics
 
Formal Approaches to SQA.pptx
Formal Approaches to SQA.pptxFormal Approaches to SQA.pptx
Formal Approaches to SQA.pptx
 
Slides chapters 26-27
Slides chapters 26-27Slides chapters 26-27
Slides chapters 26-27
 
Agile Methodology - Software Engineering
Agile Methodology - Software EngineeringAgile Methodology - Software Engineering
Agile Methodology - Software Engineering
 
Software Testing
Software TestingSoftware Testing
Software Testing
 
Software quality
Software qualitySoftware quality
Software quality
 
The Art of Debugging.pptx
The Art of Debugging.pptxThe Art of Debugging.pptx
The Art of Debugging.pptx
 
5. scm
5. scm5. scm
5. scm
 
V model Over View (Software Engineering)
V model Over View (Software Engineering) V model Over View (Software Engineering)
V model Over View (Software Engineering)
 
Types of software testing
Types of software testingTypes of software testing
Types of software testing
 
Software coding and testing
Software coding and testingSoftware coding and testing
Software coding and testing
 
Static Testing
Static TestingStatic Testing
Static Testing
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
 
Software Verification & Validation
Software Verification & ValidationSoftware Verification & Validation
Software Verification & Validation
 
Software configuration management
Software configuration managementSoftware configuration management
Software configuration management
 

Ähnlich wie software quality

1 Quality Assurance Presentation
1 Quality Assurance Presentation1 Quality Assurance Presentation
1 Quality Assurance Presentation
guest337c19
 
1) Now we consider that the product is lawnmower. Validation tests i.pdf
1) Now we consider that the product is lawnmower. Validation tests i.pdf1) Now we consider that the product is lawnmower. Validation tests i.pdf
1) Now we consider that the product is lawnmower. Validation tests i.pdf
annaielectronicsvill
 
Sqa unit1
Sqa unit1Sqa unit1
Sqa unit1
kannaki
 
16103271 software-testing-ppt
16103271 software-testing-ppt16103271 software-testing-ppt
16103271 software-testing-ppt
atish90
 

Ähnlich wie software quality (20)

Software Quality Assurance in software engineering
Software Quality Assurance in software engineeringSoftware Quality Assurance in software engineering
Software Quality Assurance in software engineering
 
Quality Assurance in Software Ind.
Quality Assurance in Software Ind.Quality Assurance in Software Ind.
Quality Assurance in Software Ind.
 
Lecture 08 (SQE, Testing, PM, RM, ME).pptx
Lecture 08 (SQE, Testing, PM, RM, ME).pptxLecture 08 (SQE, Testing, PM, RM, ME).pptx
Lecture 08 (SQE, Testing, PM, RM, ME).pptx
 
1 Quality Assurance Presentation
1 Quality Assurance Presentation1 Quality Assurance Presentation
1 Quality Assurance Presentation
 
Software Testing Strategy - Unit4.pptx
Software Testing Strategy - Unit4.pptxSoftware Testing Strategy - Unit4.pptx
Software Testing Strategy - Unit4.pptx
 
1) Now we consider that the product is lawnmower. Validation tests i.pdf
1) Now we consider that the product is lawnmower. Validation tests i.pdf1) Now we consider that the product is lawnmower. Validation tests i.pdf
1) Now we consider that the product is lawnmower. Validation tests i.pdf
 
Software testing.pdf
Software testing.pdfSoftware testing.pdf
Software testing.pdf
 
Sqa unit1
Sqa unit1Sqa unit1
Sqa unit1
 
Software engineering 15 software quality assurance practices
Software engineering 15 software quality assurance practicesSoftware engineering 15 software quality assurance practices
Software engineering 15 software quality assurance practices
 
Software Quality assurance Introduction & Software process models
Software Quality assurance Introduction & Software process modelsSoftware Quality assurance Introduction & Software process models
Software Quality assurance Introduction & Software process models
 
Software Development
Software DevelopmentSoftware Development
Software Development
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
SQA-Lecture-4.pptx
SQA-Lecture-4.pptxSQA-Lecture-4.pptx
SQA-Lecture-4.pptx
 
Software testing
Software testingSoftware testing
Software testing
 
Software Quality Assurance.docx
Software Quality Assurance.docxSoftware Quality Assurance.docx
Software Quality Assurance.docx
 
Software_Verification_and_Validation.ppt
Software_Verification_and_Validation.pptSoftware_Verification_and_Validation.ppt
Software_Verification_and_Validation.ppt
 
Testing strategies in Software Engineering
Testing strategies in Software EngineeringTesting strategies in Software Engineering
Testing strategies in Software Engineering
 
16103271 software-testing-ppt
16103271 software-testing-ppt16103271 software-testing-ppt
16103271 software-testing-ppt
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Software verification & validation
Software verification & validationSoftware verification & validation
Software verification & validation
 

Mehr von preetikapri1

Mehr von preetikapri1 (20)

Forces
ForcesForces
Forces
 
UML model
UML model UML model
UML model
 
Er diagrams
Er diagramsEr diagrams
Er diagrams
 
Data flow diagram
Data flow diagramData flow diagram
Data flow diagram
 
types of testing in software engineering
types of testing in software engineering types of testing in software engineering
types of testing in software engineering
 
structures in C and Union in C, enumerated datatype
structures in C and Union in C, enumerated datatypestructures in C and Union in C, enumerated datatype
structures in C and Union in C, enumerated datatype
 
bit wise operators and I/O operations in C
bit wise operators and I/O operations in Cbit wise operators and I/O operations in C
bit wise operators and I/O operations in C
 
Ms access
Ms access Ms access
Ms access
 
Functions
FunctionsFunctions
Functions
 
C programming
C programmingC programming
C programming
 
C preprocesor
C preprocesorC preprocesor
C preprocesor
 
Window object
Window objectWindow object
Window object
 
DTD elements
DTD elementsDTD elements
DTD elements
 
Html
HtmlHtml
Html
 
Css font
Css fontCss font
Css font
 
consumer oriented applications
consumer oriented applicationsconsumer oriented applications
consumer oriented applications
 
architecture framework for ecommerce
architecture framework for ecommercearchitecture framework for ecommerce
architecture framework for ecommerce
 
impact of ecommerce on traditional means
impact of ecommerce on traditional means impact of ecommerce on traditional means
impact of ecommerce on traditional means
 
electronic data interchange
electronic data interchange electronic data interchange
electronic data interchange
 
consumer oriented applications
consumer oriented applicationsconsumer oriented applications
consumer oriented applications
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Kürzlich hochgeladen (20)

ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 

software quality

  • 1. THE SOFTWARE QUALITY DILEMMA 1. “Good Enough” Software: software companies create software with known bugs and deliver it to a broad population of end users. 2. The Cost of Quality: The cost of quality includes all costs incurred in the pursuit of quality or in performing quality-related activities and the downstream costs of lack of quality.
  • 2. 3. Risks: low-quality software increases risks for both the developer and the end user. 4. Negligence and Liability: In most cases, the customer claims that the developer has been negligent. The developer claims that the customer has repeatedly changed its requirements. 5. Quality and Security: software that does not exhibit high quality is easier to hack, and as a consequence, low-quality software can indirectly increase the security risk with all of its attendant costs
  • 3. 6. The Impact of Management Actions: Software quality is often influenced as much by management decisions as it is by technology decisions.  Estimation decisions  Scheduling decisions  Risk-oriented decisions
  • 4. ACHIEVING SOFTWARE QUALITY Management and practice are applied within the context of four broad activities that help a software team achieve high software quality.  Software Engineering Methods  Project Management Techniques  Quality Control  Quality Assurance
  • 5. A defect amplification model can be used to illustrate the generation and detection of errors during the design and code generation actions of a software process.
  • 6. REVIEWS Technical reviews should be applied with a level of formality that is appropriate for the product to be built, the project time line, and the people who are doing the work. INFORMAL REVIEWS Informal reviews include a simple desk check of a software engineering work product with a colleague, a casual meeting (involving more than two people) for the purpose of reviewing a work product, or the review-oriented aspects of pair programming.
  • 7. FORMAL TECHNICAL REVIEWS A formal technical review (FTR) is a software quality control activity performed by software engineers. The objectives of an FTR are: (1) to uncover errors in function, logic, or implementation for any representation of the software; (2) to verify that the software under review meets its requirements; (3) to ensure that the software has been represented according to predefined standards; (4) to achieve software that is developed in a uniform manner; and
  • 8.  Standards: The job of SQA is to ensure that standards that have been adopted are followed and that all work products conform to them.  Reviews and audits: Technical reviews are a quality control activity performed by software engineers for software engineers. Audits are a type of review performed by SQA personnel with the intent of ensuring that quality guidelines are being followed for software engineering work.
  • 9.  Testing. Software testing is a quality control function that has one primary goal—to find errors.  Error/defect collection and analysis: SQA collects and analyzes error and defect data to better understand how errors are introduced and what software engineering activities are best suited to eliminating them.  Change management: SQA ensures that adequate change management practices have been instituted.  Education: . A key contributor to improvement is education of software engineers, their managers, and other stakeholders.
  • 10.  Vendor management: The job of the SQA organization is to ensure that high-quality software results by suggesting specific quality practices that the vendor should follow and incorporating quality mandates as part of any contract with an external vendor.  Security management: . SQA ensures that appropriate process and technology are used to achieve software security.  Safety: SQA may be responsible for assessing the impact of software failure and for initiating those steps required to reduce risk.  Risk management: SQA organization ensures that risk management activities are properly conducted and that risk-related contingency plans have been established.
  • 11.  Prepares an SQA plan for a project  Participates in the development of the project’s software process description  Reviews software engineering activities to verify compliance with the defined software process  Audits designated software work products to verify compliance with those defined as part of the software process  Ensures that deviations in software work and work products are documented and handled according to a documented procedure  Records any noncompliance and reports to senior management
  • 12. Requirements quality Design quality Code quality Quality control effectiveness
  • 13. SOFTWARE RELIABILITY Software reliability is defined in statistical terms as “the probability of failure-free operation of a computer program in a specified environment for a specified time”.
  • 14. “A strategy for software testing provides a road map that describes the steps to be conducted as part of testing, when these steps are planned and then undertaken, and how much effort, time, and resources will be required.”
  • 15.  Verification refers to the set of tasks that ensure that software correctly implements a specific function.  Validation refers to a different set of tasks that ensure that the software that has been built is traceable to customer requirements.
  • 16.  The software developer is always responsible for testing the individual units (components) of the program, ensuring that each performs the function or exhibits the behavior for which it was designed.  In many cases, the developer also conducts integration testing—a testing step that leads to the construction (and test) of the complete software architecture.
  • 17.
  • 18.
  • 19. VALIDATION TESTING Validation testing begins at the culmination of integration testing, when individual components have been exercised, the software is completely assembled as a package, and interfacing errors have been uncovered and corrected.
  • 20. 1. Validation-Test Criteria  A test plan outlines the classes of tests to be conducted, and a test procedure defines specific test cases that are designed to ensure that all functional requirements are satisfied, all behavioral characteristics are achieved, all content is accurate and properly presented, all performance requirements are attained, documentation is correct, and usability and other requirements are met.
  • 21. 2. Configuration Review  The intent of the review is to ensure that all elements of the software configuration have been properly developed, are cataloged, and have the necessary detail.
  • 22. 3. Alpha and Beta Testing  The alpha test records errors and usage problems. Alpha tests are conducted in a controlled environment. The alpha test is conducted at the developer’s site by a representative group of end users.  The beta test is conducted at one or more end-user sites. The beta test is a “live” application of the software in an environment that cannot be controlled by the developer. The customer records all problems (real or imagined) that are encountered during beta testing and reports these to the developer at regular intervals.