1.1 & 1.2 Basics of Software Testing & Quality Assurance
Software Testing: The systematic process of executing a software application with the intent of finding bugs, errors, and discrepancies between expected behavior and actual behavior, thereby verifying that the system satisfies specified requirements.
Fundamental Taxonomy of Software Flaws:
- Error (Mistake): A human action by a developer, analyst, or designer that produces an incorrect result (e.g., programming typo, logical misconception).
- Fault / Bug / Defect: A manifestation of an error in software source code, documentation, or design schema.
- Failure: The dynamic operational deviation of the software from its expected behavior during runtime execution visible to users.