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.
Choose semester and course offering
Choose semester and course offering to see information from the correct course syllabus and course offering.
Content and learning outcomes
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 laboratory work to deepen the student's understanding of important concepts.
Intended learning outcomes
Having passed 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.
Literature and preparations
Completed courses in programming, equivalent to DD1337/DD1310/DD1311/DD1312/DD1314/DD1315/DD1316/DD100N/ID1018 and linear algebra equivalent to SF1624/SF1672.
Discrete mathematics corresponding to SF1630, SF1662, SF1679 or SF1688.
Examination and completion
If the course is discontinued, students may request to be examined during the following two academic years.
- LAB1 - Laboratory Work, 3.0 credits, grading scale: P, F
- TEN1 - Examination, 4.5 credits, grading scale: A, B, C, D, E, FX, F
Based on recommendation from KTH’s coordinator for disabilities, the examiner will decide how to adapt an examination for students with documented disability.
The examiner may apply another examination format when re-examining individual students.
Opportunity to complete the requirements via supplementary examination
Opportunity to raise an approved grade via renewed examination
- All members of a group are responsible for the group's work.
- In any assessment, every student shall honestly disclose any help received and sources used.
- In an oral assessment, every student shall be able to present and answer questions about the entire assignment and solution.
Further information about the course can be found on the Course web at the link below. Information on the Course web will later be moved to this site.Course web DD2459
Main field of study
In this course, the EECS code of honor applies, see: