SlideShare a Scribd company logo
1 of 33
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
TEXT & REFERENCE BOOKSTEXT & REFERENCE BOOKS
1.1. Galin, D. (2004).Galin, D. (2004). Software quality assuranceSoftware quality assurance. Great. Great
Britain: Pearson.Britain: Pearson.
2.2. Sommerville (2004),Sommerville (2004), Software EngineeringSoftware Engineering, 7/e,, 7/e,
Addison-Wesley.Addison-Wesley.
3.3. Pressman,Pressman, R. S. (2005).R. S. (2005). Software Engineering: ASoftware Engineering: A
Practitioner’s ApproachPractitioner’s Approach.. 66th editionth edition.. McGraw-Hill.McGraw-Hill.
4.4. Jarvis, AlkaJarvis, Alka,, && CrandalCrandal, V. (1997)., V. (1997). Inroads to SoftwareInroads to Software
QualityQuality.. Prentice HallPrentice Hall..
5.5. O’Regan (2002).O’Regan (2002). A Practical approach to SoftwareA Practical approach to Software
QualityQuality, Springer., Springer.
6. CMMI Standards6. CMMI Standards
7. ISO9000-3 Standards7. ISO9000-3 Standards
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
The objectives of this chapter are to:The objectives of this chapter are to:
1.1. Identify theIdentify the unique characteristics of softwareunique characteristics of software
2.2. Recognize theRecognize the characteristics of thecharacteristics of the
environmentenvironment
3.3. DefineDefine software quality assurance and itssoftware quality assurance and its
objectivesobjectives
4.4. The differences between OC & QAThe differences between OC & QA
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
• What is software?
• Software errors, faults and failures
• Classification of the causes of software errors
• Software quality – definition
• Software quality assurance – definition and
objectives
• Software quality assurance and software
engineering
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
Software is:
Computer programs, procedures,
and possibly associated
documentation and data related
to the operation of a computer
system.
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
The UniquenessThe Uniqueness between Software & Industrial Productbetween Software & Industrial Product
CharacteristicsCharacteristics SoftwareSoftware Industrial productIndustrial product
ComplexityComplexity High: Can be measured by the numberHigh: Can be measured by the number
of operational modesof operational modes
Low: Not allow for moreLow: Not allow for more
than a few thousandsthan a few thousands
modes of operationmodes of operation
VisibilityVisibility InvisibleInvisible VisibleVisible
ProductProduct
developmentdevelopment
Detecting inherent product defectsDetecting inherent product defects Check & test theCheck & test the
product prototype toproduct prototype to
detect its defectsdetect its defects
Product productionProduct production
planningplanning
This phase is not required for theThis phase is not required for the
software productsoftware product
Provides additionalProvides additional
opportunities to inspectopportunities to inspect
the productthe product
ManufacturingManufacturing Limited to copying the product & printingLimited to copying the product & printing
copies of the software manual;copies of the software manual;
expectations for detecting defects areexpectations for detecting defects are
quite limited during this phasequite limited during this phase
QA procedures areQA procedures are
applied to detectapplied to detect
failuresfailures
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
Software errors, faults & failure
• Software failure lies in a software errors
• Software errors are sections of the code that are partially or
totally incorrect
• Error can be grammatical error, logical error or caused by
other mistake
• Software error can cause improper functioning, i.e. software
fault
• Not all software faults lead to software failure.
• Failures occur when a user tries to apply the specific
software section that is faulty
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
The nine causes of software errors are:
1. Faulty requirements definition
2. Client-developer communication failures
3. Deliberate deviations from software requirements
4. Logical design errors
5. Coding errors
6. Non-compliance with documentation and coding
instructions
7. Shortcomings of the testing process
8. User interface and procedure errors
9. Documentation errors
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
Faulty definition of requirements:
Erroneous definition of requirements
Absence of vital requirements
Incomplete definition of requirements
Inclusion of unnecessary requirements
Client-developer communication failures:
Misunderstanding of the client’s instruction as stated in the requirement
document
Misunderstanding of the client’s requirements changes presented to the
developer in written form
Misunderstanding of the client’s requirements changes presented orally to the
developer
Misunderstanding of the client’s response to the design problems presented by
the developer
Lack of attention to client messages (requirement changes, client response on
the questions that raised by the developer)
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
Deliberate deviations from software requirements
Reuses software modules without sufficient analysis
Omit part of the required functions to cope with time and budget
constraint
Developer-initiated, unapproved improvements to the software
Logical design errors, for example:
Erroneous algorithm
Process definitions that contain sequencing errors
Erroneous definition of boundary conditions
Omission of required software systems states
Omission of definitions concerning reactions to illegal operation of the
software system
Coding error, for example:
Misunderstanding the design documentation
Linguistic(grammatically) errors in the programming languages
errors in the application of CASE and other development tools
errors in data selection etc.
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
Non-compliance with documentation and coding instructions
Cause difficulties to coordinate the code in the same team
Difficult to understand the coding when the team member resign, retire or
been promoted
Cause difficulties to design review team, test team and maintenance team
Shortcomings of the test process
Incomplete test plans
Failures to document and report detected errors and faults
Failure to promptly correct detected software faults
Incomplete correction of detected errors
Procedure errors
Documentation errors
Errors in the design documents and in the documentation integrated into
the body of the software.
Error in the user manuals and the help function
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
Software quality is:
(1) The degree to which a system, component, or
process meets specified requirements.
(2) The degree to which a system, component, or
process meets customer or user needs or
expectations.
Quality defines by various software quality specialists:Quality defines by various software quality specialists:
• Achieving high levels of user satisfaction, portability, maintainability,Achieving high levels of user satisfaction, portability, maintainability,
robustness, and fitness for use (Dr. Barry Boehm)robustness, and fitness for use (Dr. Barry Boehm)
• Conformance to user requirements (Phil Crosby)Conformance to user requirements (Phil Crosby)
• Striving for excellence in reliability & functions by continuousStriving for excellence in reliability & functions by continuous
improvement in the process of development, supported by statisticalimprovement in the process of development, supported by statistical
analysis of the causes of failure (Edwards Deming)analysis of the causes of failure (Edwards Deming)
• Achieving excellent levels of fitness for use, conformance toAchieving excellent levels of fitness for use, conformance to
requirements, reliability & maintainability (Watts Humphrey)requirements, reliability & maintainability (Watts Humphrey)
• Software quality means being on time, within budget and meeting userSoftware quality means being on time, within budget and meeting user
needs (James Martin)needs (James Martin)
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
• High levels of user satisfaction & low defect levels, often associatedHigh levels of user satisfaction & low defect levels, often associated
with low complexity (Tom McCabe)with low complexity (Tom McCabe)
• Quality means low defect levels, adherence of software functions toQuality means low defect levels, adherence of software functions to
users needs, & high reliability (John Musa)users needs, & high reliability (John Musa)
• High levels of user satisfaction & adherence requirements (Bill Perry)High levels of user satisfaction & adherence requirements (Bill Perry)
• Quality consists of freedom from deficiencies (Juran)Quality consists of freedom from deficiencies (Juran)
• Conformance to explicitly stated functional and performanceConformance to explicitly stated functional and performance
requirements, explicitly documented development standards, andrequirements, explicitly documented development standards, and
implicit characteristics that are expected of all professionallyimplicit characteristics that are expected of all professionally
developed software (Pressman)developed software (Pressman)
Quality defines by various software quality specialists:Quality defines by various software quality specialists:
Why is quality important?Why is quality important?
•A competitive issueA competitive issue
Differentiate your product from your competitorsDifferentiate your product from your competitors
Customer want to be assured of qualityCustomer want to be assured of quality
Businesses would give prime consideration toBusinesses would give prime consideration to
qualified developerqualified developer
•An issue for survivalAn issue for survival
•Quality is cost-effectiveQuality is cost-effective
Lead to increased productivityLead to increased productivity
Permanently reduced costsPermanently reduced costs
•Retaining customer & increasing profitsRetaining customer & increasing profits
•The sign of global businessThe sign of global business
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
Cost of
software
quality
Prevention
costs
(Evaluate)Appraisal
costs
Internal
failure costs
External
failure costs
Costs of
Control costs
Costs of
Failure of
control costs
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
a. Investments in development of SQA infrastructure components
* Procedures and work instructions
* Support devices: templates, checklists etc
* Software configuration management system
* Software quality metrics
b. Regular implementation of SQA preventive activities:
* Instruction of new employees in SQA subjects
* Certification of employees
* Consultations on SQA issues to team leaders and others
c. Control of the SQA system through performance of:
* Internal quality reviews
* External quality audits
* Management quality reviews
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
(a) Costs of reviews:
* Formal design reviews (DRs)
* Peer reviews (inspections and walkthroughs)
* Expert reviews
(b) Costs of software testing:
* Unit, integration and software system tests
* Acceptance tests (carried out by customers)
(c) Costs of assuring quality of external participants
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
* Costs of redesign or design corrections subsequent to
design review and test findings
* Costs of re-programming or correcting programs in
response to test findings
* Costs of repeated design review and re- testing
(regression tests)
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
Typical external failure costs cover:
* Resolution of customer complaints during the warranty period.
* Correction of software bugs detected during regular operation.
* Correction of software failures after the warranty period is over even if the
correction is not covered by the warranty.
* Damages paid to customers in case of a severe software failure.
* Reimbursement of customer's purchase costs.
* Insurance against customer's claims.
Typical examples of hidden external failure costs:
* Reduction of sales to customers that suffered from software failures.
* Severe reduction of sales motivated by the firm's damaged reputation.
* Increased investment in sales promotion to counter the effects of past software
failures.
* Reduced prospects to win a tender or, alternatively, the need to under-price to
prevent competitors from winning tenders.
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
Cost of
software
quality
Prevention costs
Appraisal costs
Internal failure
costs
External failure
costs
Costs of
Control costs
Costs of
Failure of
control costs
Managerial
preparations
and control costs
Managerial
failure costs
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
* Costs of carrying out contract reviews
* Costs of preparing project plans, including quality plans
* Costs of periodic updating of project and quality plans
* Costs of performing regular progress control
* Costs of performing regular progress control of external
participants’ contributions to projects
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
* Unplanned costs for professional and other resources,
resulting from underestimation of the resources in the
proposals stage.
* Damages paid to customers as compensation for late
project completion, a result of the unrealistic schedule in
the Company’s proposal.
* Damages paid to customers as compensation for late
completion of the project, a result of management’s
failure to recruit team members.
* Domino effect: Damages to other projects planned to be
performed by the same teams involved in the delayed
projects. The domino effect may induce considerable
hidden external failure costs.
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
Software quality assurance is:
1. A planned and systematic pattern of all actions
necessary to provide adequate confidence that an
item or product conforms to established technical
requirements.
2. A set of activities designed to evaluate the process
by which the products are developed or
manufactured. Contrast with: quality control.
Software Quality Control Vs. Software Quality AssuranceSoftware Quality Control Vs. Software Quality Assurance
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
Quality ControlQuality Control Quality AssuranceQuality Assurance
A set of activities to evaluate the quality of
a developed or manufactured product,
withholding(avoiding) of any product that
does not qualify
Minimize the cost of guaranteeing quality
by a variety of activities performed
throughout the development &
manufacturing processes
Corrective (Reactive) Prevention (Proactive)
Operational Strategic
Take place as the development or
manufacturing of the product is completed
Take place throughout the development &
manufacturing process
Confidence to producer Confidence to customer
Find defects (corrective) Prevent defects (preventive)
e.g.: walkthrough; inspection; checkpoint
review
e.g.: defining processes; quality audit;
selection of tools; training
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
(1) Assuring an acceptable level of confidence that the
software will conform to functional technical
requirements.
(2) Assuring an acceptable level of confidence that the
software will conform to managerial scheduling and
budgetary requirements.
(3) Initiation and management of activities for the
improvement and greater efficiency of software
development and SQA activities.
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
(1) Assuring an acceptable level of confidence that the
software maintenance activities will conform to the
functional technical requirements.
(2) Assuring an acceptable level of confidence that the
software maintenance activities will conform to
managerial scheduling and budgetary requirements.
(3) Initiate and manage activities to improve and increase
the efficiency of software maintenance and SQA
activities.
SQA & Software EngineeringSQA & Software Engineering
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
• Software engineering (by IEEE)
– The application of a systematic, disciplined,
quantifiable approach to the development, operation
& maintenance of software; that is, the application of
engineering to software
• SE, a good infrastructure for achieving SQA
activities
• Cooperation between SE & SQA allow the
achievement of efficient, economic development,
maintenance activities, & assure the quality of the
product
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
• Being contracted
• Subjection to customer-supplier relationship
• Requirement for teamwork
• Need for cooperation and coordination with other
development teams
• Need for interfaces with other software systems
• Need to continue carrying out a project while the team
changes
• Need to continue maintaining the software system for
years
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
1. Contractual Conditions: an agreement between software
developer and the customer, need to cope with customer’s
functional requirements; project budget & timetable
2. Subjection to Customer-supplier relationship: activities are
under the oversight of the customer, continuous cooperation
needed between software developer and customer
3. Required teamwork: Time table requirements, need for
variety of specializations, wish to benefit from professional
mutual support & review
4. Cooperation & coordination with other software teams:
cooperation with other teams especially for large-scale projects
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
5. Interfaces with other software systems: to allow data in
electronic form to flow between different software system
6. Need to continue carrying out a project despite team
member changes: the leader has to replace the leaving
members by another employee or new recruit even though
training needed for the new personnel
7. Need to continue carrying out software maintenance for an
extended period: maintenance needed for customer;
maintenance needed for software that has been developed in-
house as well
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
Reviews
1. Which SQA environment characteristic affect mainly the
professional (developers) side? Justify your answer(s).
2. Which SQA environment characteristic affect mainly the
managerial side? Justify your answer(s).
CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality
TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
Case Studies
The interfaces of a salary processing system are shown in the next slide.
1. Suggest what are the main benefits of applying computerized interfaces
of transferring printouts.
2. Give another example (system) where input interface is applied.
3. Give another example (system) where output interface is applied.
4. Would you advise all information transfers from one organization to
another be performed by computerized interface? Justify your answers.
Salary
processing
system
Attendance
control
system
Bank
information
systems
Money transfers to employees’
bank account accounts
Monthly attendance report,
including overtime calculations
Input interface
Output interface

More Related Content

What's hot

Software Quality Assurance
Software Quality Assurance Software Quality Assurance
Software Quality Assurance ShashankBajpai24
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceProf. Erwin Globio
 
Software quality assurance lecture 1
Software quality assurance lecture 1Software quality assurance lecture 1
Software quality assurance lecture 1Abdul Basit
 
Quality software management
Quality software managementQuality software management
Quality software managementArun Kumar
 
Term Paper - Quality Assurance in Software Development
Term Paper - Quality Assurance in Software DevelopmentTerm Paper - Quality Assurance in Software Development
Term Paper - Quality Assurance in Software DevelopmentSharad Srivastava
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceAman Adhikari
 
Software Quality Management
Software Quality ManagementSoftware Quality Management
Software Quality ManagementKrishna Sujeer
 
Software Quality Assurance class 1
Software Quality Assurance  class 1Software Quality Assurance  class 1
Software Quality Assurance class 1Santhiya Grace
 
Software Quality Plan
Software Quality PlanSoftware Quality Plan
Software Quality Planguy_davis
 
Software Quality Analyst and Software Quality Management
Software Quality Analyst and Software Quality ManagementSoftware Quality Analyst and Software Quality Management
Software Quality Analyst and Software Quality Managementنور شزننا
 
Software Quality Challenge
Software Quality ChallengeSoftware Quality Challenge
Software Quality ChallengeHelmy Satria
 
Rhonda Software Quality Assurance Services
Rhonda Software Quality Assurance ServicesRhonda Software Quality Assurance Services
Rhonda Software Quality Assurance ServicesRhonda Software
 
Software quality
Software qualitySoftware quality
Software qualityjagadeesan
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality AssuranceSiddhesh Palkar
 
Fundamentals of Software Quality Assurance & Testing
Fundamentals of Software Quality Assurance & TestingFundamentals of Software Quality Assurance & Testing
Fundamentals of Software Quality Assurance & Testingrongbaz
 
Chapter 8 software quality assurance and configuration audit
Chapter 8 software quality assurance and configuration auditChapter 8 software quality assurance and configuration audit
Chapter 8 software quality assurance and configuration auditCliftone Mullah
 
Software quality management standards
Software quality management standardsSoftware quality management standards
Software quality management standardsGen Aloys Ochola Badde
 
Software Quality Assurance and Testing at NIIT
Software Quality Assurance and Testing at NIITSoftware Quality Assurance and Testing at NIIT
Software Quality Assurance and Testing at NIITVikas Maheshwary
 

What's hot (20)

Software Quality Assurance
Software Quality Assurance Software Quality Assurance
Software Quality Assurance
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software quality assurance lecture 1
Software quality assurance lecture 1Software quality assurance lecture 1
Software quality assurance lecture 1
 
Quality software management
Quality software managementQuality software management
Quality software management
 
Term Paper - Quality Assurance in Software Development
Term Paper - Quality Assurance in Software DevelopmentTerm Paper - Quality Assurance in Software Development
Term Paper - Quality Assurance in Software Development
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software Quality Management
Software Quality ManagementSoftware Quality Management
Software Quality Management
 
Software Quality Assurance class 1
Software Quality Assurance  class 1Software Quality Assurance  class 1
Software Quality Assurance class 1
 
Software Quality Plan
Software Quality PlanSoftware Quality Plan
Software Quality Plan
 
Software Quality Analyst and Software Quality Management
Software Quality Analyst and Software Quality ManagementSoftware Quality Analyst and Software Quality Management
Software Quality Analyst and Software Quality Management
 
Software Quality Challenge
Software Quality ChallengeSoftware Quality Challenge
Software Quality Challenge
 
Rhonda Software Quality Assurance Services
Rhonda Software Quality Assurance ServicesRhonda Software Quality Assurance Services
Rhonda Software Quality Assurance Services
 
Software quality
Software qualitySoftware quality
Software quality
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Fundamentals of Software Quality Assurance & Testing
Fundamentals of Software Quality Assurance & TestingFundamentals of Software Quality Assurance & Testing
Fundamentals of Software Quality Assurance & Testing
 
Rangkuman part 1
Rangkuman part 1Rangkuman part 1
Rangkuman part 1
 
Chapter 8 software quality assurance and configuration audit
Chapter 8 software quality assurance and configuration auditChapter 8 software quality assurance and configuration audit
Chapter 8 software quality assurance and configuration audit
 
Software quality management standards
Software quality management standardsSoftware quality management standards
Software quality management standards
 
Software Quality Assurance and Testing at NIIT
Software Quality Assurance and Testing at NIITSoftware Quality Assurance and Testing at NIIT
Software Quality Assurance and Testing at NIIT
 

Similar to Lect1 fault+quality

Software Quality and Testing_Se lect18 btech
Software Quality and Testing_Se lect18 btechSoftware Quality and Testing_Se lect18 btech
Software Quality and Testing_Se lect18 btechIIITA
 
Software Testing - Software Quality
Software Testing - Software QualitySoftware Testing - Software Quality
Software Testing - Software QualityAjeng Savitri
 
12 Software Quality Assurance Chapter 21.pptx
12 Software Quality Assurance Chapter 21.pptx12 Software Quality Assurance Chapter 21.pptx
12 Software Quality Assurance Chapter 21.pptxkillerguy3
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAnuraj S.L
 
Why Software Testing is Crucial in Software Development_.pdf
Why Software Testing is Crucial in Software Development_.pdfWhy Software Testing is Crucial in Software Development_.pdf
Why Software Testing is Crucial in Software Development_.pdfXDuce Corporation
 
Software Quality Management
Software Quality ManagementSoftware Quality Management
Software Quality ManagementECC International
 
Lisa_DiFazio_SQA_Resume
Lisa_DiFazio_SQA_ResumeLisa_DiFazio_SQA_Resume
Lisa_DiFazio_SQA_ResumeLisa DiFazio
 
Software Testing Interview Questions For Experienced
Software Testing Interview Questions For ExperiencedSoftware Testing Interview Questions For Experienced
Software Testing Interview Questions For Experiencedzynofustechnology
 
Software Development Lifecycle Presentation
Software Development Lifecycle PresentationSoftware Development Lifecycle Presentation
Software Development Lifecycle Presentationssuser645e24
 
09 fse qualitymanagement
09 fse qualitymanagement09 fse qualitymanagement
09 fse qualitymanagementMohesh Chandran
 
CTFL Module 01
CTFL Module 01CTFL Module 01
CTFL Module 01Davis Thomas
 
Cen6070 chapter2
Cen6070 chapter2Cen6070 chapter2
Cen6070 chapter2CuongHoang80
 
Module 1_software engineering.pptx
Module 1_software engineering.pptxModule 1_software engineering.pptx
Module 1_software engineering.pptxadityab33
 
Software controlled electron mechanical systems reliability
Software controlled electron mechanical systems reliabilitySoftware controlled electron mechanical systems reliability
Software controlled electron mechanical systems reliabilityASQ Reliability Division
 
Slides chapters 26-27
Slides chapters 26-27Slides chapters 26-27
Slides chapters 26-27Priyanka Shetty
 
Quality Control for Medical Device Software - It Arena Lviv Presentation
Quality Control for Medical Device Software - It Arena Lviv PresentationQuality Control for Medical Device Software - It Arena Lviv Presentation
Quality Control for Medical Device Software - It Arena Lviv PresentationRoman Lavriv
 
Software reliability engineering
Software reliability engineeringSoftware reliability engineering
Software reliability engineeringMark Turner CRP
 

Similar to Lect1 fault+quality (20)

Software Quality and Testing_Se lect18 btech
Software Quality and Testing_Se lect18 btechSoftware Quality and Testing_Se lect18 btech
Software Quality and Testing_Se lect18 btech
 
Software Testing - Software Quality
Software Testing - Software QualitySoftware Testing - Software Quality
Software Testing - Software Quality
 
Manual testing ppt
Manual testing pptManual testing ppt
Manual testing ppt
 
12 Software Quality Assurance Chapter 21.pptx
12 Software Quality Assurance Chapter 21.pptx12 Software Quality Assurance Chapter 21.pptx
12 Software Quality Assurance Chapter 21.pptx
 
An introduction to Software Testing and Test Management
An introduction to Software Testing and Test ManagementAn introduction to Software Testing and Test Management
An introduction to Software Testing and Test Management
 
Why Software Testing is Crucial in Software Development_.pdf
Why Software Testing is Crucial in Software Development_.pdfWhy Software Testing is Crucial in Software Development_.pdf
Why Software Testing is Crucial in Software Development_.pdf
 
Intro
IntroIntro
Intro
 
Software Quality Management
Software Quality ManagementSoftware Quality Management
Software Quality Management
 
Lisa_DiFazio_SQA_Resume
Lisa_DiFazio_SQA_ResumeLisa_DiFazio_SQA_Resume
Lisa_DiFazio_SQA_Resume
 
Software Testing Interview Questions For Experienced
Software Testing Interview Questions For ExperiencedSoftware Testing Interview Questions For Experienced
Software Testing Interview Questions For Experienced
 
Software Development Lifecycle Presentation
Software Development Lifecycle PresentationSoftware Development Lifecycle Presentation
Software Development Lifecycle Presentation
 
09 fse qualitymanagement
09 fse qualitymanagement09 fse qualitymanagement
09 fse qualitymanagement
 
CTFL Module 01
CTFL Module 01CTFL Module 01
CTFL Module 01
 
Cen6070 chapter2
Cen6070 chapter2Cen6070 chapter2
Cen6070 chapter2
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Module 1_software engineering.pptx
Module 1_software engineering.pptxModule 1_software engineering.pptx
Module 1_software engineering.pptx
 
Software controlled electron mechanical systems reliability
Software controlled electron mechanical systems reliabilitySoftware controlled electron mechanical systems reliability
Software controlled electron mechanical systems reliability
 
Slides chapters 26-27
Slides chapters 26-27Slides chapters 26-27
Slides chapters 26-27
 
Quality Control for Medical Device Software - It Arena Lviv Presentation
Quality Control for Medical Device Software - It Arena Lviv PresentationQuality Control for Medical Device Software - It Arena Lviv Presentation
Quality Control for Medical Device Software - It Arena Lviv Presentation
 
Software reliability engineering
Software reliability engineeringSoftware reliability engineering
Software reliability engineering
 

Recently uploaded

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
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...Orbitshub
 
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 DiscoveryTrustArc
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaWSO2
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformWSO2
 
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 2024Victor Rentea
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....rightmanforbloodline
 
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...caitlingebhard1
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Christopher Logan Kennedy
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingWSO2
 
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.pdfOrbitshub
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
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 businesspanagenda
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseWSO2
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 

Recently uploaded (20)

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
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...
 
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
 
Modernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using BallerinaModernizing Legacy Systems Using Ballerina
Modernizing Legacy Systems Using Ballerina
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data PlatformLess Is More: Utilizing Ballerina to Architect a Cloud Data Platform
Less Is More: Utilizing Ballerina to Architect a Cloud Data Platform
 
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
 
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
TEST BANK For Principles of Anatomy and Physiology, 16th Edition by Gerard J....
 
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...Stronger Together: Developing an Organizational Strategy for Accessible Desig...
Stronger Together: Developing an Organizational Strategy for Accessible Desig...
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Quantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation ComputingQuantum Leap in Next-Generation Computing
Quantum Leap in Next-Generation Computing
 
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
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
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
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Navigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern EnterpriseNavigating Identity and Access Management in the Modern Enterprise
Navigating Identity and Access Management in the Modern Enterprise
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 

Lect1 fault+quality

  • 1. TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING TEXT & REFERENCE BOOKSTEXT & REFERENCE BOOKS 1.1. Galin, D. (2004).Galin, D. (2004). Software quality assuranceSoftware quality assurance. Great. Great Britain: Pearson.Britain: Pearson. 2.2. Sommerville (2004),Sommerville (2004), Software EngineeringSoftware Engineering, 7/e,, 7/e, Addison-Wesley.Addison-Wesley. 3.3. Pressman,Pressman, R. S. (2005).R. S. (2005). Software Engineering: ASoftware Engineering: A Practitioner’s ApproachPractitioner’s Approach.. 66th editionth edition.. McGraw-Hill.McGraw-Hill. 4.4. Jarvis, AlkaJarvis, Alka,, && CrandalCrandal, V. (1997)., V. (1997). Inroads to SoftwareInroads to Software QualityQuality.. Prentice HallPrentice Hall.. 5.5. O’Regan (2002).O’Regan (2002). A Practical approach to SoftwareA Practical approach to Software QualityQuality, Springer., Springer. 6. CMMI Standards6. CMMI Standards 7. ISO9000-3 Standards7. ISO9000-3 Standards
  • 2. TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality The objectives of this chapter are to:The objectives of this chapter are to: 1.1. Identify theIdentify the unique characteristics of softwareunique characteristics of software 2.2. Recognize theRecognize the characteristics of thecharacteristics of the environmentenvironment 3.3. DefineDefine software quality assurance and itssoftware quality assurance and its objectivesobjectives 4.4. The differences between OC & QAThe differences between OC & QA
  • 3. TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality • What is software? • Software errors, faults and failures • Classification of the causes of software errors • Software quality – definition • Software quality assurance – definition and objectives • Software quality assurance and software engineering
  • 4. TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality Software is: Computer programs, procedures, and possibly associated documentation and data related to the operation of a computer system.
  • 5. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING The UniquenessThe Uniqueness between Software & Industrial Productbetween Software & Industrial Product CharacteristicsCharacteristics SoftwareSoftware Industrial productIndustrial product ComplexityComplexity High: Can be measured by the numberHigh: Can be measured by the number of operational modesof operational modes Low: Not allow for moreLow: Not allow for more than a few thousandsthan a few thousands modes of operationmodes of operation VisibilityVisibility InvisibleInvisible VisibleVisible ProductProduct developmentdevelopment Detecting inherent product defectsDetecting inherent product defects Check & test theCheck & test the product prototype toproduct prototype to detect its defectsdetect its defects Product productionProduct production planningplanning This phase is not required for theThis phase is not required for the software productsoftware product Provides additionalProvides additional opportunities to inspectopportunities to inspect the productthe product ManufacturingManufacturing Limited to copying the product & printingLimited to copying the product & printing copies of the software manual;copies of the software manual; expectations for detecting defects areexpectations for detecting defects are quite limited during this phasequite limited during this phase QA procedures areQA procedures are applied to detectapplied to detect failuresfailures
  • 6. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING Software errors, faults & failure • Software failure lies in a software errors • Software errors are sections of the code that are partially or totally incorrect • Error can be grammatical error, logical error or caused by other mistake • Software error can cause improper functioning, i.e. software fault • Not all software faults lead to software failure. • Failures occur when a user tries to apply the specific software section that is faulty
  • 7. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING The nine causes of software errors are: 1. Faulty requirements definition 2. Client-developer communication failures 3. Deliberate deviations from software requirements 4. Logical design errors 5. Coding errors 6. Non-compliance with documentation and coding instructions 7. Shortcomings of the testing process 8. User interface and procedure errors 9. Documentation errors
  • 8. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING Faulty definition of requirements: Erroneous definition of requirements Absence of vital requirements Incomplete definition of requirements Inclusion of unnecessary requirements Client-developer communication failures: Misunderstanding of the client’s instruction as stated in the requirement document Misunderstanding of the client’s requirements changes presented to the developer in written form Misunderstanding of the client’s requirements changes presented orally to the developer Misunderstanding of the client’s response to the design problems presented by the developer Lack of attention to client messages (requirement changes, client response on the questions that raised by the developer)
  • 9. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING Deliberate deviations from software requirements Reuses software modules without sufficient analysis Omit part of the required functions to cope with time and budget constraint Developer-initiated, unapproved improvements to the software Logical design errors, for example: Erroneous algorithm Process definitions that contain sequencing errors Erroneous definition of boundary conditions Omission of required software systems states Omission of definitions concerning reactions to illegal operation of the software system Coding error, for example: Misunderstanding the design documentation Linguistic(grammatically) errors in the programming languages errors in the application of CASE and other development tools errors in data selection etc.
  • 10. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING Non-compliance with documentation and coding instructions Cause difficulties to coordinate the code in the same team Difficult to understand the coding when the team member resign, retire or been promoted Cause difficulties to design review team, test team and maintenance team Shortcomings of the test process Incomplete test plans Failures to document and report detected errors and faults Failure to promptly correct detected software faults Incomplete correction of detected errors Procedure errors Documentation errors Errors in the design documents and in the documentation integrated into the body of the software. Error in the user manuals and the help function
  • 11. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING Software quality is: (1) The degree to which a system, component, or process meets specified requirements. (2) The degree to which a system, component, or process meets customer or user needs or expectations.
  • 12. Quality defines by various software quality specialists:Quality defines by various software quality specialists: • Achieving high levels of user satisfaction, portability, maintainability,Achieving high levels of user satisfaction, portability, maintainability, robustness, and fitness for use (Dr. Barry Boehm)robustness, and fitness for use (Dr. Barry Boehm) • Conformance to user requirements (Phil Crosby)Conformance to user requirements (Phil Crosby) • Striving for excellence in reliability & functions by continuousStriving for excellence in reliability & functions by continuous improvement in the process of development, supported by statisticalimprovement in the process of development, supported by statistical analysis of the causes of failure (Edwards Deming)analysis of the causes of failure (Edwards Deming) • Achieving excellent levels of fitness for use, conformance toAchieving excellent levels of fitness for use, conformance to requirements, reliability & maintainability (Watts Humphrey)requirements, reliability & maintainability (Watts Humphrey) • Software quality means being on time, within budget and meeting userSoftware quality means being on time, within budget and meeting user needs (James Martin)needs (James Martin) CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
  • 13. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING • High levels of user satisfaction & low defect levels, often associatedHigh levels of user satisfaction & low defect levels, often associated with low complexity (Tom McCabe)with low complexity (Tom McCabe) • Quality means low defect levels, adherence of software functions toQuality means low defect levels, adherence of software functions to users needs, & high reliability (John Musa)users needs, & high reliability (John Musa) • High levels of user satisfaction & adherence requirements (Bill Perry)High levels of user satisfaction & adherence requirements (Bill Perry) • Quality consists of freedom from deficiencies (Juran)Quality consists of freedom from deficiencies (Juran) • Conformance to explicitly stated functional and performanceConformance to explicitly stated functional and performance requirements, explicitly documented development standards, andrequirements, explicitly documented development standards, and implicit characteristics that are expected of all professionallyimplicit characteristics that are expected of all professionally developed software (Pressman)developed software (Pressman) Quality defines by various software quality specialists:Quality defines by various software quality specialists:
  • 14. Why is quality important?Why is quality important? •A competitive issueA competitive issue Differentiate your product from your competitorsDifferentiate your product from your competitors Customer want to be assured of qualityCustomer want to be assured of quality Businesses would give prime consideration toBusinesses would give prime consideration to qualified developerqualified developer •An issue for survivalAn issue for survival •Quality is cost-effectiveQuality is cost-effective Lead to increased productivityLead to increased productivity Permanently reduced costsPermanently reduced costs •Retaining customer & increasing profitsRetaining customer & increasing profits •The sign of global businessThe sign of global business CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING
  • 15. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING Cost of software quality Prevention costs (Evaluate)Appraisal costs Internal failure costs External failure costs Costs of Control costs Costs of Failure of control costs
  • 16. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING a. Investments in development of SQA infrastructure components * Procedures and work instructions * Support devices: templates, checklists etc * Software configuration management system * Software quality metrics b. Regular implementation of SQA preventive activities: * Instruction of new employees in SQA subjects * Certification of employees * Consultations on SQA issues to team leaders and others c. Control of the SQA system through performance of: * Internal quality reviews * External quality audits * Management quality reviews
  • 17. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING (a) Costs of reviews: * Formal design reviews (DRs) * Peer reviews (inspections and walkthroughs) * Expert reviews (b) Costs of software testing: * Unit, integration and software system tests * Acceptance tests (carried out by customers) (c) Costs of assuring quality of external participants
  • 18. TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality * Costs of redesign or design corrections subsequent to design review and test findings * Costs of re-programming or correcting programs in response to test findings * Costs of repeated design review and re- testing (regression tests)
  • 19. TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality Typical external failure costs cover: * Resolution of customer complaints during the warranty period. * Correction of software bugs detected during regular operation. * Correction of software failures after the warranty period is over even if the correction is not covered by the warranty. * Damages paid to customers in case of a severe software failure. * Reimbursement of customer's purchase costs. * Insurance against customer's claims. Typical examples of hidden external failure costs: * Reduction of sales to customers that suffered from software failures. * Severe reduction of sales motivated by the firm's damaged reputation. * Increased investment in sales promotion to counter the effects of past software failures. * Reduced prospects to win a tender or, alternatively, the need to under-price to prevent competitors from winning tenders.
  • 20. TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality Cost of software quality Prevention costs Appraisal costs Internal failure costs External failure costs Costs of Control costs Costs of Failure of control costs Managerial preparations and control costs Managerial failure costs
  • 21. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING * Costs of carrying out contract reviews * Costs of preparing project plans, including quality plans * Costs of periodic updating of project and quality plans * Costs of performing regular progress control * Costs of performing regular progress control of external participants’ contributions to projects
  • 22. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING * Unplanned costs for professional and other resources, resulting from underestimation of the resources in the proposals stage. * Damages paid to customers as compensation for late project completion, a result of the unrealistic schedule in the Company’s proposal. * Damages paid to customers as compensation for late completion of the project, a result of management’s failure to recruit team members. * Domino effect: Damages to other projects planned to be performed by the same teams involved in the delayed projects. The domino effect may induce considerable hidden external failure costs.
  • 23. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING Software quality assurance is: 1. A planned and systematic pattern of all actions necessary to provide adequate confidence that an item or product conforms to established technical requirements. 2. A set of activities designed to evaluate the process by which the products are developed or manufactured. Contrast with: quality control.
  • 24. Software Quality Control Vs. Software Quality AssuranceSoftware Quality Control Vs. Software Quality Assurance CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING Quality ControlQuality Control Quality AssuranceQuality Assurance A set of activities to evaluate the quality of a developed or manufactured product, withholding(avoiding) of any product that does not qualify Minimize the cost of guaranteeing quality by a variety of activities performed throughout the development & manufacturing processes Corrective (Reactive) Prevention (Proactive) Operational Strategic Take place as the development or manufacturing of the product is completed Take place throughout the development & manufacturing process Confidence to producer Confidence to customer Find defects (corrective) Prevent defects (preventive) e.g.: walkthrough; inspection; checkpoint review e.g.: defining processes; quality audit; selection of tools; training
  • 25. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING (1) Assuring an acceptable level of confidence that the software will conform to functional technical requirements. (2) Assuring an acceptable level of confidence that the software will conform to managerial scheduling and budgetary requirements. (3) Initiation and management of activities for the improvement and greater efficiency of software development and SQA activities.
  • 26. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING (1) Assuring an acceptable level of confidence that the software maintenance activities will conform to the functional technical requirements. (2) Assuring an acceptable level of confidence that the software maintenance activities will conform to managerial scheduling and budgetary requirements. (3) Initiate and manage activities to improve and increase the efficiency of software maintenance and SQA activities.
  • 27. SQA & Software EngineeringSQA & Software Engineering CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING • Software engineering (by IEEE) – The application of a systematic, disciplined, quantifiable approach to the development, operation & maintenance of software; that is, the application of engineering to software • SE, a good infrastructure for achieving SQA activities • Cooperation between SE & SQA allow the achievement of efficient, economic development, maintenance activities, & assure the quality of the product
  • 28. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING • Being contracted • Subjection to customer-supplier relationship • Requirement for teamwork • Need for cooperation and coordination with other development teams • Need for interfaces with other software systems • Need to continue carrying out a project while the team changes • Need to continue maintaining the software system for years
  • 29. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING 1. Contractual Conditions: an agreement between software developer and the customer, need to cope with customer’s functional requirements; project budget & timetable 2. Subjection to Customer-supplier relationship: activities are under the oversight of the customer, continuous cooperation needed between software developer and customer 3. Required teamwork: Time table requirements, need for variety of specializations, wish to benefit from professional mutual support & review 4. Cooperation & coordination with other software teams: cooperation with other teams especially for large-scale projects
  • 30. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING 5. Interfaces with other software systems: to allow data in electronic form to flow between different software system 6. Need to continue carrying out a project despite team member changes: the leader has to replace the leaving members by another employee or new recruit even though training needed for the new personnel 7. Need to continue carrying out software maintenance for an extended period: maintenance needed for customer; maintenance needed for software that has been developed in- house as well
  • 31. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING Reviews 1. Which SQA environment characteristic affect mainly the professional (developers) side? Justify your answer(s). 2. Which SQA environment characteristic affect mainly the managerial side? Justify your answer(s).
  • 32. CHAPTER 1 The Software QualityCHAPTER 1 The Software Quality TQA 7011 SOFTWARE QUALITY ASSURANCE & TESTINGTQA 7011 SOFTWARE QUALITY ASSURANCE & TESTING Case Studies The interfaces of a salary processing system are shown in the next slide. 1. Suggest what are the main benefits of applying computerized interfaces of transferring printouts. 2. Give another example (system) where input interface is applied. 3. Give another example (system) where output interface is applied. 4. Would you advise all information transfers from one organization to another be performed by computerized interface? Justify your answers.
  • 33. Salary processing system Attendance control system Bank information systems Money transfers to employees’ bank account accounts Monthly attendance report, including overtime calculations Input interface Output interface