Software Engineering
Document Actions

Winter Term 2008/2009

Up one level

On this page you find all the courses offered by the chair of Software Engineering in the previous term as well as respective slides and accompanying exercises. In addition, all courses of the preceding and upcoming terms are listed here.

Business Processes

The management of Business Processes provides the opportunity to adjust an entire company towards its customers' needs. An efficient organization, a goal-oriented controlling and continuous enhancements form the elementary requirements. Business Processes itself are based on a series of single activities which can be performed by human beings and / or technical systems. The modeling of such workflows helps creating abstractions of complex Business Processes. This seminar covers a fundamental overview of methods for analyzing, designing, communicating, documenting and running real world Business Processes: How can they be mapped into computer systems? Read More…

Software Design, Modelling and Analysis in UML

The model-driven approach to software and systems development proposes to address quality and complexity issues in the development process. The usage of modelling languages not only for documentation, but, e.g., for automated analysis, test generation, and code generation is gaining momentum in particular in the context of (safety) critical software development. The necessary pre-requisites are a semantically founded modelling language and methods and tools for analysis. The lecture firstly examines the motivations and expectations behind today's and upcoming employments of model-based development procedures. Taking the Unified Modelling Language (UML) as an example, we consider the necessary prerequisites, first of all a precise syntax and semantics of a relevant sublanguage, which is sometimes referred to as executable core. Based on this foundation, recent and current research topics in analysis of UML models are discussed. Read More…

  • Instructors: Andreas Podelski | Bernd Westphal
  • Times & Locations: Mon, 11:00 - 13:00 c.t., HS 00 006 Geb. 082 | Wed, 11:00 - 13:00 c.t., HS 00 006 Geb. 082

Formal Techniques for Networked and Distributed Systems

Distributed systems, e.g. networks, are one of the most occurring subject in modern computer science. Every computer scientist should know this subject, especially the specific problematic of the underlying algorithms. The complexity of these algorithm makes a correct-development and analysis of them a time consuming task. Therefore, a computer scientist has to be familiar with the basic algorithm, including their history of development, in order to have a chance to develop new distributed algorithm in relative short time. The goal of the lecture is to present and to understand the most important distributed algorithms, including the fault tolerant ones, i.e. those that remains `correct' even if some hardware faults occur. Keywords: Algorithms for Leader Election, Distributed Search, Spanning Tree, and Distributed Consensus. Read More…

  • Instructors: Dr Harald Fecher
  • Times & Locations: Mon, 14:15 - 15:45, HS 02-017 Geb 052 | Don, 14:15 - 15:45, HS 02-017 Geb 052

Decision Procedures

Decision Procedures are the basis for program verification: The task of program verification is to give a formal proof that a program meets its specification. This amounts to determining the truth value of a logical formula. A decision procedure is an algorithm that can for a certain type of formulas decide whether the formula is true or false. We will investigate decision procedures for different logics. Starting with propositional logic we will investigate decision procedures for logics with integers, reals, recursive structures (lists and trees), arrays, etc. Read More…

Software Reliability

Formal methods for creating reliable software are constantly being developed and improved. Recently there has been a better understanding of the important ingredients of formal methods tools, and this manifests itself in the growing acceptance of reliability tools in the software and hardware development industry. Read More…

  • Instructors: Prof. Dr. Andreas Podelski | Martin Mehlmann
  • Times & Locations: Do, 11.00-13.00, HS-0033 Geb 051 | Fr, 11.00-13.00. HS-0033 Geb 051

Synthesis of Distributed Systems

Program synthesis comprises a range of technologies for the automatic generation of executable computer programs from high-level specifications of their behaviour. A distributed setting maks this task even harder, since open systems, i.e. those still reacting with the environment, have to be handled. In this seminar we look at state of the art papers concerning synthesis of distributed systems, based on the formal view. Read More…

  • Instructors: Andreas Podelski | Harald Fecher
  • Times & Locations: Block seminar at the end of the semetser or at the beginning of the next semester.