Inhalt
[ 921SOENFMSK13 ] KV Formal Methods in Software Development
|
|
|
|
![](https://studienhandbuch.jku.at/pics/pixel.gif) |
Workload |
Education level |
Study areas |
Responsible person |
Hours per week |
Coordinating university |
4,5 ECTS |
M - Master's programme |
Computer Science |
Wolfgang Schreiner |
3 hpw |
Johannes Kepler University Linz |
|
|
![](https://studienhandbuch.jku.at/pics/pixel.gif) |
Detailed information |
Original study plan |
Master's programme Computer Science 2024W |
Objectives |
Students understand the basic concepts of the formal specification of programs and systems and of the formal reasoning about the correctness of implementations with respect to the specification. They are able to formally specify programs and systems and to apply concrete software tools in order to ensure the correctness with respect to the specification.
|
Subject |
Role of formal methods in software development, specification and verification of imperative programs (Hoare calculus, Dijkstra's calculus of weakest preconditions and strongest postconditions, relational calculus), specification and verification of Java programs (Java Modeling Language JML), specification and verification of concurrent systems (transition systems, temporal logic); practical application of model checkers (RISCAL), runtime checkers (JML/OpenJML), extended static checkers (ESC/Java2), automatic verification systems (OpenJML), integrated verification environments (RISC ProgramExplorer, KeY), model checkers for concurrent systems (Spin).
|
Criteria for evaluation |
Running homework exercises (50%), final written exam at the end of the semester (50%).
|
Methods |
Integrated course that combines the theoretical presentation with the practical demonstration of the application of systems on concrete examples.
|
Language |
English |
Study material |
Supporting Literature:
- Schreiner, Wolfgang: Thinking Programs, Chapter "Programs", Springer, 2021.
- Apt, Krzysztof et al: Verification of Sequential and Concurrent Programs, 3rd edition, Springer, 2009.
- Beckert, B.; Hähnle, R.; Schmitt, P. H. (Eds.): Verification of Object-Oriented Software: The KeY Approach. Springer, Berlin, 2007.
- Huth, M.; Ryan, M.: Logic in Computer Science - Modelling and Reasoning about Systems. Cambridge University Press, Cambridge, 2nd edition, 2004.
- Schumann, J. M.: Automated Theorem Proving in Software Engineering. Springer, Berlin, 2001.
Special literature in the form of original papers.
|
Changing subject? |
No |
Further information |
https://risc.jku.at/courses/
|
Corresponding lecture |
INMSPKVFMSD: KV Formal Methods in Software Development (4,5 ECTS)
|
|
|
![](https://studienhandbuch.jku.at/pics/pixel.gif) |
On-site course |
Maximum number of participants |
- |
Assignment procedure |
Direct assignment |
|
|
|