BSc:SoftwareVerificationTesting

From IU
Jump to navigation Jump to search

Software Verification and Testing

  • Course name: Software Verification and Testing
  • Course number: XYZ
  • Knowledge area: Software Engineering and Programming Languages

Administrative details

  • Faculty: Computer Science and Engineering
  • Year of instruction: 4th year of BS
  • Semester of instruction: 2nd semester
  • No. of Credits: 4 ECTS
  • Total workload on average: 144 hours overall
  • Frontal lecture hours: 2 per week
  • Frontal tutorial hours: 2 per week
  • Lab hours: 2 per week
  • Individual lab hours: 0
  • Frequency: weekly throughout the semester
  • Grading mode: letters: A, B, C, D

Prerequisites

  • Discrete Math and Logic
  • Introduction to Compiler Construction
  • Introduction to Programming I
  • Introduction to Programming II
  • Theoretical Computer Science
  • Software Project

Course outline

Building high-quality software is utmost important. However, it is easier said than done. Building bug-free software is almost an impossible task, if there is no help from automated tools. In this course, students will learn techniques used in quality assurance tools. In particular, this course will be focused on static analysis and testing, both of which are widely used in industry.

Expected learning outcomes

  • Students will be able to understand and apply static analysis.
  • Students will be able to understand and apply diverse testing techniques.
  • Students will be able to understand and apply formal verification techniques.
  • Students will be able to understand and apply data-driven bug detection techniques.

Expected acquired core competences

  • Software Engineering
  • Software Verification and Validation
  • Static Analysis

Textbook

  • Anders Müller and Michael I. Schwartzbach, Static Program Analysis, Available at https://cs.au.dk/amoeller/spa/spa.pdf
  • Other reading materials and lecture slides will be provided every week.

Reference material

  • Reading materials and lecture slides will be provided every week.

Required computer resources

Students should have an access to computers.

Evaluation

  • Assignments (30%)
  • Midterm (30%)
  • Final Exam (40%)