DD2459 Software Reliability 7.5 credits

Programvarutillförlitlighet

The subject matter of this course concerns modern and practical techniques for software testing and reliability modeling, suitable for the working software engineer.

Software testing concerns the problem of analyzing and evaluating software products to reach some conclusion about their fitness for use. For safety critical, mission critical and enterprise critical systems development it is nowadays essential to have some form of software quality assurance measures in place within an IT project. Quality assurance measures may involve both managerial and technical procedures. However, the primary focus of this course will be on technical procedures to predict, discover and diagnose errors in software systems.

  • Educational level

    Second cycle
  • Academic level (A-D)

  • Subject area

    Computer Science and Engineering
  • Grade scale

    A, B, C, D, E, FX, F

Course offerings

Spring 17 sofrel17 for programme students

Spring 17 SAP for single courses students

  • Periods

    Spring 17 P3 (7.5 credits)

  • Application code

    61058

  • Start date

    2017 week: 3

  • End date

    2017 week: 11

  • Language of instruction

    English

  • Campus

    KTH Campus

  • Number of lectures

    8 (preliminary)

  • Number of exercises

    3 (preliminary)

  • Tutoring time

    Daytime

  • Form of study

    Normal

  • Number of places

    No limitation

  • Schedule

    Schedule (new window)

  • Course responsible

    Karl Meinke <karlm@kth.se>

  • Target group

    Single course students.

Spring 18 sofrel18 for programme students

Intended learning outcomes

After the course the student shall be able to: 

  • identify the basic activities needed for software testing, including requirements capture, test planning, test case generation, test case execution, fault diagnosis and fault correction,
  • construct requirements models for simple embedded, reactive and object-oriented systems,
  • construct a test suite for a simple requirements model,
  • assess the quality of a test suite according to a variety of coverage models.

Course main content

The course will cover the following topics:

  • software testing concepts according to the V-model
  • graphical requirements modeling, including use case modeling
  • logical requirements modeling, including preconditions, postconditions and class invariants
  • graph coverage models
  • logic coverage models
  • input space partitioning
  • syntax based testing
  • reliability models
  • advanced topics such as automated and model based testing.

The theoretical subjects are supported by laboratories that are intended to deepen the student’s understanding of important concepts.

Eligibility

Single course students:

SF1604 Linear algebra, SF1625 Calculus in one variable, DD1337 Programming, DD1338 Algorithms and Data Structures, or corresponding courses.

Recommended prerequisites

Discrete mathematics corresponding to SF1631.

Literature

Kurslitteratur meddelas senast 4 veckor innan kursstart på kursens hemsida.

Examination

  • LAB1 - Laboratory Work, 3.0, grade scale: P, F
  • TEN1 - Examination, 4.5, grade scale: A, B, C, D, E, FX, F

Offered by

CSC/Theoretical Computer Science

Contact

Karl Meinke, e-post: karlm@kth.se

Examiner

Karl Meinke <karlm@kth.se>

Version

Course syllabus valid from: Autumn 2016.
Examination information valid from: Spring 2012.