Skip to content
KnowledgeCity

Programming Foundations: Software QA

Finalize the development lifecycle with this software quality assurance course.
Preview the first lesson free — get full access to all 25 lessons.
Course: On-Demand
Beginner Provider Andrew Levin  7 chapters ·  25 Lessons ·  1h 44m  in Arabic, German, English, Spanish, French, Portuguese, Urdu, Chinese 

Course Description

This KnowledgeCity course provides an overview of the different concepts and components involved in Software Quality Assurance (SQA).

The SQA course, taught by instructor Andrew Levin, provides a comprehensive overview of the concepts and features that make up all areas of Software Quality Assurance. The course starts with a brief overview and history of the SQA’s origins and why it is needed. Next, we examine different methods and techniques pertaining to the Software Development Life Cycle (SDLC) within SQA. We examine the mechanics and steps of how each SDLC method works, along with the advantages and disadvantages of using that particular method in conjunction with different types of software. We then move on to Planning Guides and why we need one, as well as what components make up a Planning Guide. We also compare and contrast the differences between a basic Planning Guide and an official IEEE Planning Guide standard. We follow up with an analysis of various testing techniques you can use with your software. We also examine White Box and Black Box methods, with working examples that show both successful tests and emulated test failures. We conclude with learning about Bug Reports. We delve into what a Bug Report is as well as what a well-written report looks like. Learning these concepts and techniques will help you create better software and allow you to do more in-depth evaluations, producing better and more professional results.

What You'll Learn

  • Define what Software Quality Assurance (SQA) encompasses and why it is needed
  • Compare Software Development Life Cycle (SDLC) methodologies including Agile, V, Waterfall, Spiral, and Prototyping, along with their advantages and disadvantages
  • Build and use Planning Guides, including the components of a Basic guide versus an IEEE Standard guide
  • Apply testing techniques such as Black Box and White Box test cases, statement and branch coverage, boundary, equivalence, decision table, and state transition testing
  • Determine how, when, and why to use different testing techniques based on the errors you are checking for
  • Write effective Bug Reports and identify the elements that make up a well-written report

Key Takeaways

  • Software Quality Assurance covers the concepts and components across all areas of software quality, and the course explains the origins of SQA and why it is needed.
  • Different SDLC methods (Agile, V, Waterfall, Spiral, and Prototyping) each have advantages and disadvantages depending on the type of software being built.
  • A Planning Guide has defined components, and the course contrasts a basic Planning Guide with the official IEEE Planning Guide standard.
  • White Box and Black Box testing techniques are demonstrated with working examples that show both successful tests and emulated test failures.
  • A Bug Report is a necessary part of testing, and a well-written report contains specific elements that the course identifies.

Frequently Asked Questions

What does this Software QA course cover?

The course provides an overview of the concepts and components of Software Quality Assurance (SQA), including its history and purpose, Software Development Life Cycle (SDLC) methodologies (Agile, V, Waterfall, Spiral, and Prototyping), Planning Guides (basic and IEEE standard), testing techniques such as Black Box and White Box test cases, statement and branch coverage, boundary, equivalence, decision table and state transition testing, and Bug Reports.

Who teaches this course?

The course is taught by instructor Andrew Levin and is offered by KnowledgeCity.

What testing techniques will I learn?

You will learn White Box and Black Box methods with working examples, along with statement coverage, branch coverage, boundary testing, equivalence testing, decision table testing, state transition testing, and functional and non-functional testing, and how, when, and why to use them based on what you are checking for errors.

What will I learn about Bug Reports?

You will learn what a Bug Report is, why bug reports are necessary during testing, what a well-written report looks like, and the elements that make up a good Bug Report.

What skills does this course relate to?

It relates to Software Quality (SQA/SQC), Software Quality Management, and certifications including Certified Associate in Software Quality (CASQ), Certified Software Quality Engineer, Certified Software Quality Analyst, and Certified Software Quality Manager.