Checking date: 28/06/2021

Course: 2021/2022

Software verification techniques
Bachelor in Applied Mathematics and Computing (Plan: 433 - Estudio: 362)

Coordinating teacher: GENOVA FUSTER, GONZALO

Department assigned to the subject: Computer Science and Engineering Department

Type: Compulsory
ECTS Credits: 6.0 ECTS


Requirements (Subjects that are assumed to be known)
Programming (1st year / 1st semester) Programming Techniques (1st year / 2nd semester) Algorithms and Data Structures (2nd year / 2nd semester)
- To devise, design, build and verify programs that can be executed in a computer knowing the impact of different alternatives in software performance and maintainability. - To know software verification strategies and techniques, and to be able to define tests for a software component within different software development processes.
Skills and learning outcomes
Description of contents: programme
1.- Fundamentals of software verification. 2.- Testing throughout the software lifecycle development models. 3.- Structured based techniques. 4.- Analytic techniques. 5.- Code and design verification techniques. 6.- Agile testing methods
Learning activities and methodology
THEORETICAL-PRACTICAL CLASSES. [44 hours with 100% classroom instruction, 1.67 ECTS] Knowledge and concepts students must acquire. Students receive course notes and will have basic reference texts to facilitate following the classes and carrying out follow up work. Students partake in exercises to resolve practical problems and participate in workshops and evaluation tests, all geared towards acquiring the necessary capabilities. TUTORING SESSIONS. [4 hours of tutoring with 100% on-site attendance, 0.15 ECTS] Individualized attendance (individual tutoring) or in-group (group tutoring) for students with a teacher. STUDENT INDIVIDUAL WORK OR GROUP WORK [98 hours with 0 % on-site, 3.72 ECTS] WORKSHOPS AND LABORATORY SESSIONS [8 hours with 100% on site, 0.3 ECTS] FINAL EXAM. [4 hours with 100% on site, 0.15 ECTS] Global assessment of knowledge, skills and capacities acquired throughout the course. METHODOLOGIES THEORY CLASS. Classroom presentations by the teacher with IT and audiovisual support in which the subject's main concepts are developed, while providing material and bibliography to complement student learning. PRACTICAL CLASS. Resolution of practical cases and problem, posed by the teacher, and carried out individually or in a group. TUTORING SESSIONS. Individualized attendance (individual tutoring sessions) or in-group (group tutoring sessions) for students with a teacher as tutor. LABORATORY PRACTICAL SESSIONS. Applied/experimental learning/teaching in workshops and laboratories under the tutor's supervision.
Assessment System
  • % end-of-term-examination 30
  • % of continuous assessment (assigments, laboratory, practicals...) 70
Calendar of Continuous assessment
Basic Bibliography
  • Black, R.. Agile Testing Foundations. BCS Learning & Development Ltd: Swindon UK. 2017
  • Gregory, J. and Crispin, L.. More Agile Testing. Pearson Education: Boston MA. 2015
  • Myers, G.. The Art of Software Testing, (3e). John Wiley & Sons: New York NY. 2011

The course syllabus may change due academic events or other reasons.