Software Quality Assurance
For
Software Engineering
&&
Architecture and Design
Software Quality Assurance
• What is “quality”?
Software Quality Assurance
• What is “quality”?
• IEEE Glossary: Degree to which a system,
component, or process meets (1) specified
requirements, and (2) customer or user needs
or expectations
Software Quality Assurance
• What is “quality”?
• IEEE Glossary: Degree to which a system,
component, or process meets (1) specified
requirements, and (2) customer or user needs
or expectations
• ISO: the totality of features and
characteristics of a product or service that
bear on its ability to satisfy specified or
implied needs
Software Quality Assurance
• An alternate view of Quality:
– is not absolute
– is multidimensional, can be difficult to quantify
– has aspects that are not easy to measure
– assessment is subject to constraints (e.g., cost)
– is about acceptable compromises
– criteria are not independent, can conflict
Software Quality Assurance
• Quality Criteria include:
– correctness
– efficiency
– flexibility
– integrity
– interoperability
– maintainability
– portability
– reliability
– reusability
– testability
– usability
What is Software Quality Assurance
(SQA)?
• “Set of systematic activities providing
evidence of the ability of the software
process to produce a software product that
is fit to use”
– G. Schulmeyer and J. McManus, Software
Quality Handbook, Prentice Hall, 1998.
What is SQA?
• Monitoring processes and products throughout
the software development lifecycle to ensure
the quality of the delivered product(s)
• Monitoring the processes
– Provides management with objective feedback
regarding process compliance to approved plans,
procedures, standards, and analyses
• Monitoring the products
– Focus on the quality of product within each phase
of the SDLC
• e.g., requirements, test plan, architecture, etc.
– Objective: identify and remove defects throughout
the lifecycle, as early as possible
Quality of Software developed in-house
& COTS components
• SQA processes apply when integrating
purchased or customer-supplied software
products into the developed product
• Question. How do you determine the
“quality” of COTS components?
– Current research problem
Process Assessment
• Use of standards and process models has a positive
impact on the quality of the software product
– Disciplined, controlled development process
• Examples include:
– ISO 9001
– CMM
• CMU SEI, 5 levels
– SPICE
• Developing a standard for software process assessment
• ISO joint committee, Europe, Australia
– IEEE 1074, IEEE 12207, …
Product Assessment
• Reviews, inspections, walkthroughs
– Specialized techniques available:
• How to review/assess requirements, architecture,
detailed designs, code
• …
• Testing
• Simulation
• Protoyping
• Formal verification
– Model checking, theorem proving
Product Assessment
• Reviews, inspections, walkthroughs of
Plans, reports, models, standards
– Project management, quality assurance,
training, test plan(s)
– Requirements, analysis, architecture, detailed
design model, test cases
– Issue or problem reports
– Metric reports
– Traceability reports
– Documentation, coding standards
– …
Software Reviews
• They may include managerial reviews, acquirer-supplier reviews,
technical reviews, inspections, walkthroughs, and audits.
• Inspection:
– A formal evaluation technique in which an artifact (e.g., software
requirements, design, or code) is examined in detail by a person or group
other than the originator
– detect faults, violations of development standards, and other problems.
– review members are peers (equals) of the designer or programmer.
– data is collected during inspections for later analysis and to assist in future
inspections.
Note
– Introduced by Fagan, 1976.
– Fagan, M., “Design and Code Inspections to Reduce Errors in Program
Development”, IBM Systems Journal, 15, 3 (1976), pp. 182-211
– Fagan, M., “Advances in Software Inspections”, IEEE Transactions on Software
Engineering, 12, 7(July 1986), pp. 744-751
Picture from “Inspections” presentation
http://www.math.uaa.alaska.edu/~afkjm/cs470/handouts/inspections.pdf
Defect Checklists
• Useful to support reviews, inspections, walkthroughs
• Expertise is captured in a list format
– Less experienced people can use
• Straightforward to use (each check should be clear, simple to assess/apply)
– Improve consistency of assessments
• Example architecture checklist used in undergrad./grad. courses
for OO
– spreadsheet in in the course materials subdirectory
• One or more architectural styles are selected.
• Capabilities and interfaces are defined for subsystems.
• Capabilities of and interfaces among subsystems support all of the use cases.
• Concurrency defined.
• Distribution defined.
• Error handling defined.
• Start up and shut down defined.
• Data persistency defined.
• Rationale for the model is provided.
• Other
Verifying Formal Specifications
• Formal specifications may be verified in a number of
different ways:
–Syntax, typechecking
• If the notation is typed
–Simulated
–Model checked (e.g., SPIN)
–Proven correct (e.g., HOL, PVS)
• More straightforward? Less assurance of correctness; fully
automated
• Less straightforward? Higher assurance of correctness; not
fully automated
More
straightforward
Less
straightforward
Problem Reporting, Tracking, and Resolving
• Describe the practices and procedures to be followed
for reporting, tracking, and resolving problems
– Who can report a problem?
– How is it reported?
– How is is tracked?
– Who determines if it is a problem that going to be resolved?
– How is it assigned for resolution?
– How does the person indicate it has been corrected?
– Who reviews it to determine if it can be closed?
• Problems can be product or process related
– e.g. incorrect requirement, incomplete class definition, code
defect, ambiguous description in user documentation,
process to review detailed design is not clearly defined, etc.
Metrics
• Metrics for each artifact
• e.g., Requirements
– Number of requirements
– Number of changes per requirement
• Called “churn” rate
– Characterization of defects
• Not testable, ambiguous, inconsistent, incorrect,
incomplete redundant, infeasible, …
• Major or minor defect
• Phase defect detected
• Cost to fix
Tools, techniques, training
• What tools?
– e.g., CVS for CM, excel spreadsheet for
problem reporting/tracking, ...
• What techniques?
– e.g., formal peer review for deliverables,
checklists for defect detection, ...
• What training is needed on tools,
techniques?
Media Control
• Identify the media for each intermediate and
deliverable artifact
• Documentation required to store the media, including
the backup and restore process
• Protect computer program physical media from:
– unauthorized access
– inadvertent damage
– degradation
Architecture Analysis Methods
• Why evaluate an architecture?
http://www.slideshare.net/kevinjew/evaluating-software-
architectures-presentation
• Specialized techniques available:
http://www.slideshare.net/timmenzies/architecture-
tradeoff-analysis-method-presentation
SEI presentation and technical report on ATAM are in the
course subdirectory

More Related Content

PDF
Software quality management standards
PPTX
Strategy of software design
PDF
Software Quality Management
PPT
Chapter 15 software product metrics
PPTX
Quality and Productivity Factors in Software Engineering
PPT
McCall's Quality Factors
PPTX
Software myths | Software Engineering Notes
PPT
Software Project Management chapter-1
Software quality management standards
Strategy of software design
Software Quality Management
Chapter 15 software product metrics
Quality and Productivity Factors in Software Engineering
McCall's Quality Factors
Software myths | Software Engineering Notes
Software Project Management chapter-1

What's hot (20)

PPTX
Algorithmic Software Cost Modeling
PPTX
software project management-activities covered
PPTX
Requirements engineering
PPT
Software quality
PPT
UNIT-4design-concepts-se-pressman-ppt.PPT
PDF
Test Process Maturity Measurement and Related Measurements
PPTX
Quality Concept
PPTX
software design
PPT
Software Quality Metrics
PPT
A generic view of software engineering
PPTX
Software requirement and specification
PPTX
Software project management- Software Engineering
PPT
Software Metrics
DOCX
Software engineering model
PPTX
Software quality assurance
PPTX
Design Concepts in Software Engineering-1.pptx
PDF
STLC (Software Testing Life Cycle)
PPTX
SPM_UNIT-1(1).pptx
PPTX
Software quality assurance
PPTX
Software Architecture Design Decisions
Algorithmic Software Cost Modeling
software project management-activities covered
Requirements engineering
Software quality
UNIT-4design-concepts-se-pressman-ppt.PPT
Test Process Maturity Measurement and Related Measurements
Quality Concept
software design
Software Quality Metrics
A generic view of software engineering
Software requirement and specification
Software project management- Software Engineering
Software Metrics
Software engineering model
Software quality assurance
Design Concepts in Software Engineering-1.pptx
STLC (Software Testing Life Cycle)
SPM_UNIT-1(1).pptx
Software quality assurance
Software Architecture Design Decisions
Ad

Viewers also liked (16)

PPS
1074
PPTX
SWISS BULLION
PDF
Deutsche GRI Wohnen 2015 Brochure
PPTX
SWISS BULLION TABLES
PDF
ARBI NL_Spring 2013
PDF
6. anexo-normas-apa-1
DOCX
The Role of Religious Institutions in Constructing Minorities
DOCX
Mech.pdf
PPTX
Gold1500 KADS TEAM
PDF
CVE_Mazuran1
PPTX
жуманов ерик+биос+население
PPTX
жуманов ерик+буратина+население
PDF
Lores BLANK Catalog
DOC
Ojk admin-wia
PDF
Nahha Course Catalog (2)
PDF
Surya_Iseries_Resume
1074
SWISS BULLION
Deutsche GRI Wohnen 2015 Brochure
SWISS BULLION TABLES
ARBI NL_Spring 2013
6. anexo-normas-apa-1
The Role of Religious Institutions in Constructing Minorities
Mech.pdf
Gold1500 KADS TEAM
CVE_Mazuran1
жуманов ерик+биос+население
жуманов ерик+буратина+население
Lores BLANK Catalog
Ojk admin-wia
Nahha Course Catalog (2)
Surya_Iseries_Resume
Ad

Similar to Sqa (20)

PPT
SQA aactivity in spmytreyredfedgytrturetryu
PPT
Software quality assurance
PDF
Softwarequalityassurance with Abu ul hassan Sahadvi
PPTX
Software quality assurance
PPT
PPT
PPT
PPT
Software Quality Assurance
PPTX
UNIT-1-INTRO.pptxsqa assurance testing sqa
PPT
05_SQA_Overview.ppt
PPTX
Lec 1-SOFTWARE QUALITY ENGINEERING introduction (1).pptx
PPT
software-quality-assurance.pptQuality assurance consists of those procedures,...
PPT
Software Engineering (Software Quality Assurance)
PDF
PPTX
Unit3 software review control software
PPT
1 sqa and testing concepts
PPT
Slides chapters 26-27
PPTX
Fault code for the whole thing is that you have a
SQA aactivity in spmytreyredfedgytrturetryu
Software quality assurance
Softwarequalityassurance with Abu ul hassan Sahadvi
Software quality assurance
Software Quality Assurance
UNIT-1-INTRO.pptxsqa assurance testing sqa
05_SQA_Overview.ppt
Lec 1-SOFTWARE QUALITY ENGINEERING introduction (1).pptx
software-quality-assurance.pptQuality assurance consists of those procedures,...
Software Engineering (Software Quality Assurance)
Unit3 software review control software
1 sqa and testing concepts
Slides chapters 26-27
Fault code for the whole thing is that you have a

Recently uploaded (20)

PDF
Controlled Drug Delivery System-NDDS UNIT-1 B.Pharm 7th sem
PPTX
CAPACITY BUILDING PROGRAMME IN ADOLESCENT EDUCATION
PPTX
Integrated Management of Neonatal and Childhood Illnesses (IMNCI) – Unit IV |...
PDF
0520_Scheme_of_Work_(for_examination_from_2021).pdf
PDF
Environmental Education MCQ BD2EE - Share Source.pdf
PDF
Everyday Spelling and Grammar by Kathi Wyldeck
PDF
fundamentals-of-heat-and-mass-transfer-6th-edition_incropera.pdf
PDF
faiz-khans about Radiotherapy Physics-02.pdf
PDF
Farming Based Livelihood Systems English Notes
PDF
African Communication Research: A review
PPTX
Thinking Routines and Learning Engagements.pptx
PDF
THE CHILD AND ADOLESCENT LEARNERS & LEARNING PRINCIPLES
PDF
Laparoscopic Colorectal Surgery at WLH Hospital
PDF
Skin Care and Cosmetic Ingredients Dictionary ( PDFDrive ).pdf
PPTX
Climate Change and Its Global Impact.pptx
PDF
LIFE & LIVING TRILOGY- PART (1) WHO ARE WE.pdf
PDF
Solved Past paper of Pediatric Health Nursing PHN BS Nursing 5th Semester
PDF
PUBH1000 - Module 6: Global Health Tute Slides
PDF
Literature_Review_methods_ BRACU_MKT426 course material
PDF
LIFE & LIVING TRILOGY - PART - (2) THE PURPOSE OF LIFE.pdf
Controlled Drug Delivery System-NDDS UNIT-1 B.Pharm 7th sem
CAPACITY BUILDING PROGRAMME IN ADOLESCENT EDUCATION
Integrated Management of Neonatal and Childhood Illnesses (IMNCI) – Unit IV |...
0520_Scheme_of_Work_(for_examination_from_2021).pdf
Environmental Education MCQ BD2EE - Share Source.pdf
Everyday Spelling and Grammar by Kathi Wyldeck
fundamentals-of-heat-and-mass-transfer-6th-edition_incropera.pdf
faiz-khans about Radiotherapy Physics-02.pdf
Farming Based Livelihood Systems English Notes
African Communication Research: A review
Thinking Routines and Learning Engagements.pptx
THE CHILD AND ADOLESCENT LEARNERS & LEARNING PRINCIPLES
Laparoscopic Colorectal Surgery at WLH Hospital
Skin Care and Cosmetic Ingredients Dictionary ( PDFDrive ).pdf
Climate Change and Its Global Impact.pptx
LIFE & LIVING TRILOGY- PART (1) WHO ARE WE.pdf
Solved Past paper of Pediatric Health Nursing PHN BS Nursing 5th Semester
PUBH1000 - Module 6: Global Health Tute Slides
Literature_Review_methods_ BRACU_MKT426 course material
LIFE & LIVING TRILOGY - PART - (2) THE PURPOSE OF LIFE.pdf

Sqa

  • 1. Software Quality Assurance For Software Engineering && Architecture and Design
  • 2. Software Quality Assurance • What is “quality”?
  • 3. Software Quality Assurance • What is “quality”? • IEEE Glossary: Degree to which a system, component, or process meets (1) specified requirements, and (2) customer or user needs or expectations
  • 4. Software Quality Assurance • What is “quality”? • IEEE Glossary: Degree to which a system, component, or process meets (1) specified requirements, and (2) customer or user needs or expectations • ISO: the totality of features and characteristics of a product or service that bear on its ability to satisfy specified or implied needs
  • 5. Software Quality Assurance • An alternate view of Quality: – is not absolute – is multidimensional, can be difficult to quantify – has aspects that are not easy to measure – assessment is subject to constraints (e.g., cost) – is about acceptable compromises – criteria are not independent, can conflict
  • 6. Software Quality Assurance • Quality Criteria include: – correctness – efficiency – flexibility – integrity – interoperability – maintainability – portability – reliability – reusability – testability – usability
  • 7. What is Software Quality Assurance (SQA)? • “Set of systematic activities providing evidence of the ability of the software process to produce a software product that is fit to use” – G. Schulmeyer and J. McManus, Software Quality Handbook, Prentice Hall, 1998.
  • 8. What is SQA? • Monitoring processes and products throughout the software development lifecycle to ensure the quality of the delivered product(s) • Monitoring the processes – Provides management with objective feedback regarding process compliance to approved plans, procedures, standards, and analyses • Monitoring the products – Focus on the quality of product within each phase of the SDLC • e.g., requirements, test plan, architecture, etc. – Objective: identify and remove defects throughout the lifecycle, as early as possible
  • 9. Quality of Software developed in-house & COTS components • SQA processes apply when integrating purchased or customer-supplied software products into the developed product • Question. How do you determine the “quality” of COTS components? – Current research problem
  • 10. Process Assessment • Use of standards and process models has a positive impact on the quality of the software product – Disciplined, controlled development process • Examples include: – ISO 9001 – CMM • CMU SEI, 5 levels – SPICE • Developing a standard for software process assessment • ISO joint committee, Europe, Australia – IEEE 1074, IEEE 12207, …
  • 11. Product Assessment • Reviews, inspections, walkthroughs – Specialized techniques available: • How to review/assess requirements, architecture, detailed designs, code • … • Testing • Simulation • Protoyping • Formal verification – Model checking, theorem proving
  • 12. Product Assessment • Reviews, inspections, walkthroughs of Plans, reports, models, standards – Project management, quality assurance, training, test plan(s) – Requirements, analysis, architecture, detailed design model, test cases – Issue or problem reports – Metric reports – Traceability reports – Documentation, coding standards – …
  • 13. Software Reviews • They may include managerial reviews, acquirer-supplier reviews, technical reviews, inspections, walkthroughs, and audits. • Inspection: – A formal evaluation technique in which an artifact (e.g., software requirements, design, or code) is examined in detail by a person or group other than the originator – detect faults, violations of development standards, and other problems. – review members are peers (equals) of the designer or programmer. – data is collected during inspections for later analysis and to assist in future inspections. Note – Introduced by Fagan, 1976. – Fagan, M., “Design and Code Inspections to Reduce Errors in Program Development”, IBM Systems Journal, 15, 3 (1976), pp. 182-211 – Fagan, M., “Advances in Software Inspections”, IEEE Transactions on Software Engineering, 12, 7(July 1986), pp. 744-751
  • 14. Picture from “Inspections” presentation http://www.math.uaa.alaska.edu/~afkjm/cs470/handouts/inspections.pdf
  • 15. Defect Checklists • Useful to support reviews, inspections, walkthroughs • Expertise is captured in a list format – Less experienced people can use • Straightforward to use (each check should be clear, simple to assess/apply) – Improve consistency of assessments • Example architecture checklist used in undergrad./grad. courses for OO – spreadsheet in in the course materials subdirectory • One or more architectural styles are selected. • Capabilities and interfaces are defined for subsystems. • Capabilities of and interfaces among subsystems support all of the use cases. • Concurrency defined. • Distribution defined. • Error handling defined. • Start up and shut down defined. • Data persistency defined. • Rationale for the model is provided. • Other
  • 16. Verifying Formal Specifications • Formal specifications may be verified in a number of different ways: –Syntax, typechecking • If the notation is typed –Simulated –Model checked (e.g., SPIN) –Proven correct (e.g., HOL, PVS) • More straightforward? Less assurance of correctness; fully automated • Less straightforward? Higher assurance of correctness; not fully automated More straightforward Less straightforward
  • 17. Problem Reporting, Tracking, and Resolving • Describe the practices and procedures to be followed for reporting, tracking, and resolving problems – Who can report a problem? – How is it reported? – How is is tracked? – Who determines if it is a problem that going to be resolved? – How is it assigned for resolution? – How does the person indicate it has been corrected? – Who reviews it to determine if it can be closed? • Problems can be product or process related – e.g. incorrect requirement, incomplete class definition, code defect, ambiguous description in user documentation, process to review detailed design is not clearly defined, etc.
  • 18. Metrics • Metrics for each artifact • e.g., Requirements – Number of requirements – Number of changes per requirement • Called “churn” rate – Characterization of defects • Not testable, ambiguous, inconsistent, incorrect, incomplete redundant, infeasible, … • Major or minor defect • Phase defect detected • Cost to fix
  • 19. Tools, techniques, training • What tools? – e.g., CVS for CM, excel spreadsheet for problem reporting/tracking, ... • What techniques? – e.g., formal peer review for deliverables, checklists for defect detection, ... • What training is needed on tools, techniques?
  • 20. Media Control • Identify the media for each intermediate and deliverable artifact • Documentation required to store the media, including the backup and restore process • Protect computer program physical media from: – unauthorized access – inadvertent damage – degradation
  • 21. Architecture Analysis Methods • Why evaluate an architecture? http://www.slideshare.net/kevinjew/evaluating-software- architectures-presentation • Specialized techniques available: http://www.slideshare.net/timmenzies/architecture- tradeoff-analysis-method-presentation SEI presentation and technical report on ATAM are in the course subdirectory