What is Quality
2 perspectives:
What is Software Quality
Measurement of how close is actual software product to the expected(intended)product customer satisfaction
Quality software (not to be confused with Software Quality): reasonably bug-free, delivered on time and within budget, meets requirements and/or expectations, and is maintainable
What is Software Qualify Assurance?
The process of monitoring and improving all activities associated with software development
Development: Requirement (gathering ->Design->Development->Testing->Implementation
What is the difference between Software Testing and Software QA?
Software Testing : “error detection” - improving the source code.
Software QA: “preventive” - ensure quality in the methods & processes at all the stages of SDLC (QA measures the quality of processes used to create a quality product)
What is Software Testing ? Part 1
The process of analyzing the software in order to detect the differences between existing and required conditions and to evaluate the features of the software.
What is Software Testing? Part 2
It involves the entire software development process:
What is Software Testing? Part 3
The purpose of testing is verification, validation and error detection (in order to find and fix the problems)
1 . Verification - checking for conformance and consistency by evaluating the results against pre-specified requirements (Are we building the system right?)
What is the Software Development Life Cycle (SDLC)
A conceptual model used in project management that describes the stages involved in development of an application
From an initial feasibility study through maintenance of the completed application
Is it possible to find/fix all the bugs in a software product before it goes to the customers? Why test?
Not possible. Software will be shipped with some bugs.
Goal for QA: to establish and to enforce business systems of the QA organization (Test planning, bug tracking, bug reporting, test automation, release certification, and others) which will assure the quality of the software product.
SDLC environment types
Development Model - Waterfall
is a sequential software development process, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of Conception, Initiation, Analysis, Design (validation), Construction, Testing and Maintenance.
Discourage revisit of previous phrase
Development Model - Agile
is known as extreme or “test-driven” software development model.
In this process, unit tests are written first by developers in the extreme programming methodology. These tests fail initially, as expected. Then as code is written it passes incrementally larger portions of the test suites, etc.