Testing of Reactive Systems, Summer Term 2007
Type | Time | Place | Start | Lecturer |
V2 | Wed 10--11:30 | AH VI | 4. April 2007 | |
Ü1 | Tue 10--11:30 (bi-weekly) | 6019 | 24. April 2007 |
News
16 Aug 2007 | A mistake in the script: P. 32, box before Section 3.4: we are of course strongly convergent processes, not strongly divergent ones! |
13 Aug. 2007 | The complete script in one PDF file is now available. |
11 July 2007 | Slides of todays lecture are now available. So is yesterdays exercise sheet. |
4 July 2007 |
|
27 June 2007 | Participants of the course: please fill out this questionnaire about the quality of the lecture (RWTH internal access only). Hand it in in the lecture or give it to our secretary, Fr Ohlenforst, Room 4213. |
25 June 2007 | The mistake in Definition 4.2.2 (amended in the lecture) is now also fixed in the script. script 07 is a new version. |
11 June 2007 | An updates exercise sheet is now available (also now with the points to score). |
11 June 2007 | A type on exercise sheet 4, exercise 4.2.a): Process P is of course defined as a?.P + b?.P + c?.P, i.e. the | must be a +. |
4 June 2007 | There will be no lecture on June 13! |
4 June 2007 | The next exercise class is on June 12. The new exercise sheet will come out on June 6. |
17 May 2007 | The third exercise sheet is now on-line. Sorry again for the delay. |
16 May 2007 | Due to the usual 24 hour per day restriction the new exercise sheet might be online not before tomorrow. Sorry for that. |
16 May 2007 | Definition 3.3.1 as presented in todays lecture was faulty. Make sure to compare it to the script version. |
15 May 2007 | A new version of the 3rd part is online. Note that the pagination of parts 5 and 6 is out of sync. |
14 May 2007 | There is a mistake in Example 2.2.4. This will be discussed in the Exercise class on May 15. |
6 May 2007 | On May 8 is a DIES, i.e. there will be no classes from between 10:00 and 14:00. The exercise class of TRS will be postponed to next week, May 15. Please deliver the homework due on May 8 to my office (Room 4210), or our secretary (Room 4213). |
10 April 2007 | Contrary to the first announcements will the exercise classes start on April 24, not April 17. |
Material
Despite all care taken to prepare the script, there is no way that there are no mistakes in it. I would be very grateful if you could inform me of any obvious or subtle mistake that you find, or if you would point out any passage that you find unacceptably unclear. Thanks in advance. HB.
Lecture | Slides | Script | Exercises | Due |
1 | - | - | ||
2 | ||||
3 | 24 April 07 | |||
4 | ||||
5 | 8 May 07 | |||
6 | ||||
7 | 22 May 07 | |||
8 | ||||
9 | 12 June 07 | |||
10 | 26 June 07 | |||
11 | ||||
12 | ||||
13 |
The complete script in one PDF file is now also available.
Extra Material
- A method to eliminate tau-transitions (= epsilon transitions) from LTS (= finite automata) Note that finite LTS are basically finite automata where every state can be seen as accepting state. The trace set is thus the language of the LTS. The method comes from "Lawson: Finte Automata. Chapman & Hall, 2004". Note that the pdf file is only accessible from within the rwth-aachen.de domain.
- The powerset construction mentioned in the exercise class of May 22 is described in "J.E. Hopcroft, R. Motwani, J.D. Ullmann: Introduction to Automata Theory, Languages, and Computation, 2nd ed., Addison-Wesley, 2001". Also minimization of deterministic finite automata is explained, which also applicable to minimize LTS.
Errata
Mistakes in the script. Updated as they come (the error reports).
Contents
Testing is one of the most natural approaches to find out about the
behavior of systems, be it Java classes, UNIX processes, or protocol
components. It is the primary tool to find bugs in implemented
systems, and it is used by everybody who is concerned with software
development.
However, manual, ad-hoc testing is time-consuming, error-prone, and
most of all, boring. In industrial settings, test-automation goes only
as far as automatic test-execution (if that), however, test-cases are
written mostly manually. Therefore, obtaining large test-suits is a
time consuming and expensive task, which has to be repeated and
repeated as the system-under-test develops and mutates. Automatic
test-case generation is thus most desirable.
The primary target of this lecture is to introduce into the
specification-based approach of testing. In this approach, a system to
be tested is described as a formal model, and this model is used to
derive test-cases automatically. In order to come to this point, the
necessary theoretical groundwork is laid.
The approach is a formal one, rooted in automata theory.
The following issues are addressed:
behavior of systems, be it Java classes, UNIX processes, or protocol
components. It is the primary tool to find bugs in implemented
systems, and it is used by everybody who is concerned with software
development.
However, manual, ad-hoc testing is time-consuming, error-prone, and
most of all, boring. In industrial settings, test-automation goes only
as far as automatic test-execution (if that), however, test-cases are
written mostly manually. Therefore, obtaining large test-suits is a
time consuming and expensive task, which has to be repeated and
repeated as the system-under-test develops and mutates. Automatic
test-case generation is thus most desirable.
The primary target of this lecture is to introduce into the
specification-based approach of testing. In this approach, a system to
be tested is described as a formal model, and this model is used to
derive test-cases automatically. In order to come to this point, the
necessary theoretical groundwork is laid.
The approach is a formal one, rooted in automata theory.
The following issues are addressed:
- Groundwork: Automata, Labelled Transitions systems, specification of processes.
- How to identify and distinguish processes by observation?
- What is conformance in our framework?
- how to derive test cases from a transition system?
- How far can we get with the derived test-cases?
- how to incorporated the quantitative notion of time into test cases?
A more detailed overview over the structure of the lecture will be available at the end of the semester. :-)
Language
The lecture will be given in english.
Literature
In General
Manfred Broy, Bengt Jonsson, Joost-Pieter Katoen, Martin Leucker, and
Alexander Pretschner, editors, Model-Based Testing of Reactive Systems
(Advanced Lectures), Volume 3472 of Lecture Notes in Computer
Science. Springer-Verlag, 2005.
Alexander Pretschner, editors, Model-Based Testing of Reactive Systems
(Advanced Lectures), Volume 3472 of Lecture Notes in Computer
Science. Springer-Verlag, 2005.
First Part
Chapter 5 of the Broy... book.
Second Part
coming soon
Third part
Prerequisites
Automata Theory (e.g. ATFS)

