Zur Webseite der Informatik


Selected Topics in Software Engineering: Software Quality Verification and Forecasting


  • 15.06.2016: Kick-off meeting will take place on Tuesday, 19.07.2016, 9:45 - 11:15, in Room 0.463.
  • 08.06.2016: The registration for the seminar will open on Wed, 15.06.2016.


Software quality is a term which describes how well a software conforms to its requirements and {users' expectation}, such as, performance, safety, security, reliability, availability, and usability. With the increasing pervasiveness of software in business- and safety-critical applications, ensuring the quality of a software is gaining considerable importance. Examples of its applications are online banking, e-commerce, online booking and reservation, car and airplane control systems, remote surgery, high availability systems, such as e-mail servers, or adaptive systems, such as cloud computing controllers.

Software quality verification and forecasting are branches of software engineering concerned with the assurance of requirements satisfaction during both development and production phases. A broad range of techniques is involved in verification and forecasting. This seminar will focus on:

  • Formal verification: software model-checking, probabilistic model-checking, theorem proving, assume-guarantee reasoning
  • Systematic testing: methodologies for automatic test case generation, including model-based testing, random testing, mutation testing, search-based techniques, non-functional testing
  • Software analysis: Floyd-Hoare axiomatic semantics, symbolic execution, abstract interpretation, anti-patterns detection
  • Model-based prediction: workload prediction, software performance monitoring and prediction
  • Statistical forecasting and machine learning: online failure prediction, proactive failure management

Bachelor students who want to attend this seminar should be interested in critical systems design, formal methods, software performance, statistical forecasting, machine learning, as well as basic notions on logics, probability, testing, and object-oriented programming.

Important dates

First meeting 19.07.2016, 9:45 - 11:15, Room 0.463
Structure and list of literature* 11.11.2016
Pre-submission* 16.12.2016
Final submission* 13.01.2017
Peer-Reviews* 27.01.2017
Camera-ready* 03.02.2017

See below for details

*= The document (in PDF format) needs to be submitted via the seminar submission site: https://easychair.org/conferences/?conf=rsssqvfws16. It is possible to submit supplementary materials (e.g., source code, data) as a zip file along with the paper submission.

List of topics

A complete list of topics will be presented on the first meeting. Students are required to attend for topic selection.

Please check the list of topics before registration to be sure that the seminar is interesting for you. If you are interested in specific topics, you can contact the supervisor directly before the first meeting.

(*=name omitted for privacy reasons)





1 Online Failure Prediction Techniques for Component-based Systems Teerat Pitakrat  
2 Fault Tolerance in Microservice Architectures Teerat Pitakrat *
3 Configuration Management: Infrastructure as Code Teerat Pitakrat *
4 Automatic Fixing of Performance Problems Using Code Repository Mining Dušan Okanović *
5 Automating Configuration Optimization Dušan Okanović  
6 Benchmarking Intrusion Detection Systems Dušan Okanović  
7 Online Testing in DevOps: Canaries, Randomized Control Trials, Feature Toggles, and More André van Hoorn *
8 Coping with uncertainty in the evaluation of non-functional properties for software systems André van Hoorn *
9 Resilience Assessment of Software Systems via Software Fault Injection André van Hoorn *

Presentation schedule

Room: 0.363
Time: 17:30-19:00




1 31.01.2017 Resilience Assessment of Software Systems via Software Fault Injection
 2 Configuration Management: Infrastructure as Code
 3  07.02.2017 Fault Tolerance in Microservice Architectures
 4 Automatic Fixing of Performance Problems Using Code Repository Mining
5 Online Testing in DevOps: Canaries, Randomized Control Trials, Feature Toggles, and More

Seminar Guideline

Paper structure
  • Seminar papers must not exceed 15 pages using the seminar LaTeX template format.
Review process
  • Each student reviews and writes reports for 2 seminar papers of other students.
  • The reports should comply with the review guideline (to be provided).
Revising paper
  • The students should revise their own paper based on the comments given by the supervisors and the reviewers.
  • A response to the review reports should be provided according to the response template (to be provided) and submitted along with the revised version of the paper.
  • The presentation should be 15 minutes long followed by 5 minutes for questions/discussion.
  • It is highly encouraged to give the presentation in English.

Seminar deregistration

If you would like to deregister from the seminar, please do so in person with Frau Ritzmann (Room 2.459) before 28.10.2016.

Additional information

M.Sc. Teerat Pitakrat, pitakrat@informatik.uni-stuttgart.de
Reliable Software Systems (RSS) Group
Institute for Software Technology (ISTE), University of Stuttgart