Software Verification and Validation

Lecturer (Coordinator):
Sira Vegas
svegas@fi.upm.es
Lecturer:
Natalia Juristo
natalia@fi.upm.es

Semester

First semester

Credits

4 ECTS

Outline

We have all suffered the consequences of a software system failure at some time. These failures are the result of software complexity which means that software defects are highly likely to persist after it has been built.

How can we guarantee that the software system under construction will work properly? What's more, how can we guarantee that this system will satisfy customer needs?

This subject tries to answer these questions. To do this, it focuses on one of the most important software development activities: verification and validation. It covers the basic aspects of this activity.

Learning Goals

  • Be acquainted with the basic concepts of validation and verification
  • Be acquainted with which products and aspects are validated and verified in software development
  • Be acquainted with the validation and verification process
  • Know how to apply the static and dynamic evaluation techniques covered by the subject
  • Be acquainted with the contents of a verification and validation plan

Syllabus

  1. Introduction
    1. Introduction to V&V
    2. V&V and the software development process
    3. V&Vand the software development products
  2. Dynamic evaluation: software testing
    1. Introduction to software testing
    2. Testing levels
    3. The testing process
    4. Software verification and validation plan
    5. Testing tools

Recommended Reading

Prerequisites

  • Students should have basic C and Java programming knowledge.

Tuition language

English

Lecture Theatre

A-6305

Subject-Specific Competences

Code, description and proficiency level for each subject-specific competence
Code Competence Proficiency Level
CEM1 Examination of the state of the art to identify research problems related to the design, construction, use and evaluation of complex software-intensive sociotechnical systems A
CEM4 Analysis and evaluation of several software-based systems construction and management engineering paradigms and approaches C
CEM5 Contribution of solutions to open problems related to software verification and validation applications and methods, techniques and tools A

Learning Outcomes

Code, description and proficiency level for each subject learning outcome
Code Learning Outcome Associated competences Proficiency level
RA-AV-41 Effective application of software verification and validation techniques CEM1, CEM5 A
RA-AV-42 Selection of the best software verification/validation technique for a particular project CEM1, CEM4, CEM5 C

Learning Guide

Learning Guide: Software Verification and Validation