Friedrich-Alexander-Universität DruckenUnivisDeutsch FAU-Logo
Techn. Fakultät Willkommen am Institut für Informatik FAU-Logo
cpn@work cpn@home alpha-Flow
Logo IMMD
Chair for Computer Science 6
Curriculum
Lectures
Exercises and Practice
Further Teaching
Unavailable
Dept. of Computer Science  >  CS 6  >  Teaching  >  Curriculum  >  Software Systems 2

Software Systems 2

Content

The lecture is to introduce complex software systems that require modularization and layers with abstraction. It does so using database systems as an example. The emphasis therefore is on technological aspects of database systems.

The storage of data on non-volatile storage serves as a starting point for a sequence of abstractions which are defined on top of each other. The first abstraction is the file. Then records are introduced and organized in blocks in different ways (sequentially, with direct access, index-sequentially). As a second major abstraction, data models are introduced, especially the relational data model. That includes structures as well as query languages like SQL.

In the second part of the lecture these structures are used to create database applications. To do that, a database schema must be defined, and this schema should have specific properties not to inhibit the later development of applications that work with it. Access to the database by the applications is also considered, using interfaces like ODBC and embedded SQL. The part concludes with the concept of transaction as a database service that simplifies programming. The programmer need not take into account neither the repair of data after failures nor concurrent accesses to data.

The third part deals with the implementation of all these services, using the previously discussed records and access paths. This includes query processing and optimization, but also mechanisms to log actions and to recover data after failures. A layered architecture for database management systems finally comprises all the tasks. The goal of the lecture thus is to create a fundamental understanding of the structure and functionality of a particular software system, namely a database system.

Literature

Heue03a HEUER, Andreas ; SAAKE, Gunter ; SATTLER, Kai-Uwe: Datenbanken kompakt. 2. Aufl. Bonn : mitp, 2003. - ISBN 3-8266-0987-5
Kemp06a KEMPER, Alfons ; EICKLER, André: Datenbanksysteme : Eine Einführung. 6., aktual. u. erw. Aufl. München ; Wien : Oldenbourg, 2006. - ISBN 3-486-57690-9
Kemp06b KEMPER, Alfons ; WIMMER, Martin: Übungsbuch Datenbanksysteme. München ; Wien : Oldenbourg, 2006. - ISBN 3-486-57967-3
Heue07a HEUER, Andreas ; SAAKE, Gunter: Datenbanken : Konzepte und Sprachen. 3., aktual. u. erw. Aufl. Bonn : mitp, 2007. - ISBN 3-8266-1664-2
Haer99a HÄRDER, Theo ; RAHM, Erhard: Datenbanksysteme : Konzepte und Techniken der Implementierung. Berlin : Springer, 1999 - ISBN 3-540-65040-7
This book and the associated lecture have been the prime source for SoS2. Thanks to Prof. Härder for the extensive suppport!
Saak05a SAAKE, Gunter ; HEUER, Andreas: Datenbanken : Implementierungstechniken. 2., aktual. u. erw. Aufl. Bonn : mitp, 2005. - ISBN 3-8266-1438-0

Target audience

Students of
  • Computer Science,
  • Business Computing,
  • Computational Engineering (Bachelor),
  • Computational Linguistics,
  • and other curriculae

Further information

  • Time: winter semester (WS)
  • Language: German
  • Hours per week (SWS): 3
  • Credit points (ECTS): 3.5
  • Examination: written
  • Contact: Prof. Dr. Klaus Meyer-Wegener

  Contact Last modified: 2007-12-06 16:21   KMW