[I2 logo] [RWTH logo] MOVES: Software Modeling and Verification
(Informatik 2)
Computer Science / RWTH / I2 / Teaching / Seminar / OBS2005
Printer-friendly

Seminar: Modelling, Analysis, and Optimization of Object-Based Systems

Summer Semester 2005
Lehrstuhl für Informatik II

Diplomstudiengang Informatik (Theoretische Informatik, Vertiefungsfach "Theorie der Programmierung")
Master Programme Software Systems Engineering (Theoretical CS, Specialisation Subject "Theory of Programming")

Contents

The object-based paradigm has its roots in an analogy between physical systems and their modelling through software. It promises a more intuitive analysis and design process, a greater flexibility of the software model, and in particular an easier reuse of software components. Object-oriented programming languages such as C++ or Java are therefore widespread in many application areas.

The goal of this seminar is to study the formal foundations of object-based systems.

Prerequisites

It is possible to write the manuscript and to give the presentation in both German or English.

Introduction

The slides are available here (in PDF).

Topics

The following table gives an overview of the topics. All presentations will be given on
Thursday, 8:30am, at room 6019.

No. Date Topic Literature Speaker Supervisor
Foundations
1 14.04.05 Foundations of object-based and object-oriented systems [LG00, Poe00] Bingfeng Wang Noll
Formal Semantics
2 21.04.05 Operational semantics of sequential object-oriented programming languages [BCK93] Rene Bohne Noll
3 28.04.05 Trace semantics of object-oriented programming languages [JR05] Tobias Krämer Noll
4 12.05.05 Operational semantics of concurrent object-oriented programming languages [DE99, CKR99] Sven Kratz Noll
5 02.06.05 Denotational semantics of object-oriented programming languages [Hen93, Bru94] Denise Nimmerrichter Noll
Logics and Model Checking
6 09.06.05 Logics for sequential object-oriented languages [PM99, PB03] Stefan Schmitz Katoen
7 16.06.05 Model checking for deadlock detection [Kav01] Thorben Keller Weber
8 23.06.05 Logics for distributed object systems [DKR00] Daniel Neider Katoen
Formal Testing
9 30.06.05 Model-based testing of object-oriented systems [Rum03] Dominik Renzel Noll
Tools
10 07.07.05 Bogor: a model-checking framework for object-oriented software - Michael Schorn Katoen
11 14.07.05 Model checking Java programs with PathFinder [VHB03] Patrick Stalljohann Stolz
12 21.07.05 Model checking C++ programs with VeriSoft - Dominik Friedrich Stolz

Literature

[LG00]
B. Liskov, J.V. Guttag: Program Development in Java: Abstraction, Specification, and Object-Oriented Design, Addison-Wesley, 2000
[Poe00]
A. Poetzsch-Heffter: Konzepte objektorientierter Programmierung, Springer, 2000
[BCK93]
K.B. Bruce, J. Crabtree, G. Kanapathy: An Operational Semantics for TOOPLE: A Statically-Typed Object-Oriented Programming Language, Proceedings of the 9th International Conference on Mathematical Foundations of Programming Semantics, LNCS 802, 1993, 603-626
[JR05]
A. Jeffrey, J. Rathke: Java Jr: Fully abstract trace semantics for a core Java language, to be published at ESOP 2005
[DE99]
S. Drossopoulou, S. Eisenbach: Describing the Semantics of Java and Proving Type Soundness, Formal Syntax and Semantics of Java, LNCS 1523, 1999, 41-82
[CKR99]
P. Cenciarelli, A. Knapp, B. Reus, M. Wirsing: An Event-Based Structural Operational Semantics of Multi-Threaded Java, Formal Syntax and Semantics of Java, LNCS 1523, 1999, 157-200
[Hen93]
A. Hense: Denotational Semantics of an Object-Oriented Programming Language with Explicit Wrappers, Formal Aspects of Computing, 5(3), 1993, 181-207
[Bru94]
K.B. Bruce: A paradigmatic object-oriented programming language: Design, static typing and semantics, Journal of Functional Programming 4(2), 1994, 127-206
[PM99]
A. Poetzsch-Heffter, P. Müller: A Programming Logic for Sequential Java, Proceedings of the 8th European Symposium on Programming Languages and Systems, LNCS 1576, 1999, 162-176
[PB03]
C. Pierik and F.S. de Boer: A Syntax-Directed Hoare Logic for Object-Oriented Programming Concepts, Formal Methods for Open Object-Based Distributed Systems, LNCS 2884, 2003, 64-78
[Kav01]
N. Kaveh: Using Model Checking to Detect Deadlocks in Distributed Object Systems, Engineering Distributed Objects: Second International Workshop, EDO 2000, LNCS 1999, 2001, 116-128
[DKR00]
D. Distefano and J.P. Katoen and A. Rensink: On a Temporal Logic for Object-Based Systems, Formal Methods for Open Object-based Distributed Systems, Kluwer Academic Publishers, 2000, 305-326
[Rum03]
B. Rumpe: Model-Based Testing of Object-Oriented Systems, Formal Methods for Components and Objects 2002, LNCS 2852, 2003, 380-402
[VHB03]
W. Visser, K. Havelund, G. Brat, S. Park, F. Lerda: Model Checking Programs, Automated Software Engineering Journal, Vol. 10, No. 2 (April 2003), 203-232

Further Resources

Evaluation

The report of the student's evaluation of the seminar is available here.

Contact

For questions regarding the contents and the organization of this seminar, please contact Thomas Noll (noll@cs.rwth-aachen.de).

Valid HTML 4.01 Strict! Valid CSS!