COMP1531

3.4 - SDLC Testing - Verification & Validation

 

Verification

Verification in a system life cycle context is a set of activities that compares a product of the system life cycle against the required characteristics for that product. This may include, but is not limited to, specified requirements, design description and the system itself.

 

Validation

Validation in a system life cycle context is a set of activities ensuring and gaining confidence that a system is able to accomplish its intended use, goals and objectives.

*ISO/IEC/IEEE 29148:2018 

*by intuition

System has been built right

 

The right system has been built

Verification

Validation

Formal Verification

  • Proving (via Mathematics) that a piece of software has certain desirable properties
  • Treats the software, or the algorithms implemented in the software, as a mathematical object that can be reasoned about.
  • Typically involves tools like proof assistants, model checkers or automatic theorem provers.
  • Not something we cover in this course

Formal Verification

  • Tends to have a high cost in terms of effort
  • E.g. to verify a microkernel
    • it took ~20 person years
    • and ~480,000 lines of proof script
    • for ~10,000 of C

What is testing anyway?

“Testing shows the presence, not the absence of
bugs” — Edsger W. Dijkstra

Unit testing

ISTQB definition:

The testing of individual software components

Method:

White-box

Who:

Software Engineers

Integration Testing

ISTQB definition:

Testing performed to expose defects in the interfaces and in the interactions between integrated components or systems.

Method:

White-box or Black-box

Who:

Software Engineers or independent testers

System Testing

ISTQB definition:

The process of testing an integrated system to verify that it meets specified requirements.

Method:

Black-box

Who:

Normally, independent testers

Acceptance Testing

ISTQB definition:

Formal testing with respect to user needs, requirements, and business processes conducted to determine whether or not a system satisfies the acceptance criteria and to enable the user, customers or other authorized entity to determine whether or not to accept the system.

Method:

Black-box

Who:

User or Customer

COMP1531 21T1 - 3.4 - SDLC Testing - Verification & Validation

By haydensmith

COMP1531 21T1 - 3.4 - SDLC Testing - Verification & Validation

  • 423