Category Archives: Software QA

Link: How to Write Effective Test Cases?

As QA Analysts our primary function is to find ways to break a given piece of software, but this is not something we do randomly, rather there is an efficient process to be followed. When we are given the requirements for the Software Under Test (SUT) we have to intimately study each requirement and ask ourselves, “How can we test this?” and then “Under what conditions can this test fail?”. Thus we plan out testing scenarios which wil then lead to us writing out a series of test cases which will help us validate whether the SUT does or does not meet the given requirements. Here is a good article that discusses how to write Test Cases in detail, including giving you a visual on how to structure the TC matrix.

Test Care Writing (Creation) 101

Hope you guys find it helpful.

What is the difference between “Verification” and “Validation”?

Verification answers the question “Am I building the product correctly?” i.e. Does the product do what the requirements said that it should do. Verification is a low-level activity, done by testers and developers mostly, and performed during development on key artifacts, like walkthroughs, reviews and inspections, mentor feedback, training, checklists and standards. It is a Demonstration of consistency, completeness, and correctness of the software at each stage and between each stage of the development life cycle.

According to the Capability Maturity Model(CMMI-SW v1.1) we can also define verification as the process of evaluating software to determine whether the products of a given development phase satisfy the conditions imposed at the start of that phase. [IEEE-STD-610].

Validation answers the question “Ami I building the right product?” i.e. Does the product being built actually fulfill its intended purpose and meet the client’s needs? Validation is done at the end of the development process and takes place after verifications are completed. It is a High level activity, performed after a work product is produced against established criteria ensuring that the product integrates correctly into the environment.

According to the Capability Maturity Model(CMMI-SW v1.1) we can also define validation as The process of evaluating software during or at the end of the development process to determine whether it satisfies specified requirements. [IEEE-STD-610].