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
- Introduction
- Introduction to V&V
- V&V and the software development process
- V&Vand the software development products
- Dynamic evaluation: software testing
- Introduction to software testing
- Testing levels
- The testing process
- Software verification and validation plan
- Testing tools
Recommended Reading
- B. Beizer: "Software Testing Techniques", 2nd edition. 1990
- G. J. Myers: "The Art of Software Testing", 2nd edition. Wiley. 2004.
- P. C. Jorgensen: "Software Testing. A Craftsman’s Approach". CRC Press, 1995.
- C. Kaner, J. Falk, H. Q. Nguyen: "Testing Computer Software". Wiley, 1999.
- W. E. Perry: "Effective methods for software testing". 3rd edition. Wiley. 2006.
- S. L. Pfleeger: "Software Engineering: Theory and Practice". 4th edition. Pearson. 2013.
- IEEE standards: [IEEE-1012, 1998], [IEEE-1008, 1987] [IEEE-829, 1998] [IEEE-1044, 1993] [IEEE-1044.1, 1995]
Prerequisites
- Students should have basic C and Java programming knowledge.
Tuition language
English
Lecture Theatre
A-6305
Subject-Specific Competences
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 | 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 |