Fakultät für Informatik

TU München - Fakultät für Informatik
Software- and Systems Engineering Research Group

TUM

Vorlesung | Wintersemester 2013/14
Grundlagen der Programm- und Systementwicklung
Prof. Dr. Manfred Broy

 

Vorlesung

Bereich: I Praktische Informatik, Vorlesung: 3V+2Ü Std., 6 ECTS Credits
Zeit und Ort: Mittwochs, von 12:25 bis 13:55 Uhr, MI Hörsaal 2 (00.04.011)
Ausnahme: Am Mittwoch, den 4. Dezember 2013, findet die Vorlesung im Willy-Messerschmitt-Zeichensaal MW 1450 des Maschinenwesengebäudes statt.
Donnerstags, von 11 Uhr c. t. bis 12:00 Uhr, MI Medienraum (00.13.009A)
Beginn Vorlesung: Mittwoch, 16. Oktober 2014
Sprechstunde: aktuelle Termine auf http://www4.in.tum.de/~broy
Zentralübung: Montags, von 08:30 bis 10:00 Uhr, MI Hörsaal 2 (00.04.011)
Beginn Zentralübung: Montag, 28. Oktober 2014
Übungsleitung: Dr. Alexander Malkis, Veronika Bauer, Diego Marmsoler
Klausur: Voraussetzungen: Besuch der Vorlesungen und der Übung.
Klausurtermin: am Donnerstag, dem 13.02.2014, 10:30–12:00, im Raum 5602.EG.001 (MI Hörsaal 1).
Es sind keine elektronischen Hilfsmittel zugelassen! Die Mitschrift aus Vorlesung und Übung, sowie jegliche andere Literatur in Papierform sind jedoch erlaubt.
Klausureinsicht: am 26.02.2014, 16:30–17:30, im Tutorraum 00.13.008 (5613.EG.008).
Repetitorium:Donnerstag, 13:00–14:30, im MI Hörsaal 2 (5604.EG.011, 00.04.011).
Wiederholungsklausur: Freitag, 11.04.2014, 16:30–18:00, im MI Hörsaal 1 (00.02.001, 5602.EG.001).
Einsicht in die Wiederholungsklausur: Mittwoch, 23.04.2014, 11:00–11:30, im Seminarraum 01.13.007 (5613.01.007).
Folien: pdf Vorbemerkungen
pdf Einführung
pdf Datenmodellierung und Rechenstrukturen
pdf Algebraische Datenmodellierung (1)
pdf Algebraische Datenmodellierung (2)
pdf Algebraische Datenmodellierung (3)
pdf Funktionale Programmierung (1)
pdf Funktionale Programmierung (Teil 2)
pdf Anweisungen: Zustandsorientierte, sequentielle Programme
pdf Objektorientierung – Feinentwurf
pdf Verfeinerung und Abstraktion
pdf Referenzen, Zeiger und organisierter Speicher,    wlp-Semantik der Zuweisungen für Zeiger

Es ist sinnvoll, sich mit den Übungsaufgaben auseinander zu setzen und die Übung zu besuchen, um sich den Vorlesungsstoff zu erarbeiten; dazu empfiehlt sich auch ein Blick in die Literatur. Für Fragen stehen die Übungsleiter nach der Zentralübung zur Verfügung.

Inhalt

Ziel der Vorlesung ist es, Methoden der Spezifikation, Modularisierung, Abstraktion, Verfeinerung und Verifikation sowohl in der funktionalen als auch der imperativen Programmierung zu vermitteln. Dabei spielen sowohl die formale Anforderungsdefinition (Spezifikation) als auch der Korrektheitsbeweis (Verifikation) von Implementierungen bezüglich ihrer Spezifikation eine zentrale Rolle.

  1. Grundlegende Begriffe
    1. Der Kern des Programmierproblems
    2. Strukturierung und Abstraktion in der Systementwicklung
    3. Modellierung in der Systementwicklung
    4. Der Einfluss der Notation und Formalität
    5. Deskriptive und operationelle Beschreibung
    6. Nutzungs- und Realisierungssicht
  2. Rechenstrukturen
    1. Zur Bedeutung von Rechenstrukturen
    2. Beschreibung von Daten- und Rechenstrukturen
  3. Daten als Rechenstrukturen
    1. Datenmodellierung im Software Engineering
    2. Algebraische Spezifikation
    3. Spezielle Rechenstrukturen
  4. Funktionale Programmierung
    1. Konzepte
    2. Fixpunkttheorie
    3. Beweisprinzipien für Rekursion
    4. Spezifikation funktionaler Programme
    5. Unterspezifikation und Nichtdeterminismus
    6. Techniken funktionaler Programmierung
  5. Zustandsorientierte, sequentielle Programme
    1. Zustände und Zustandsübergänge
    2. Logik zuweisungsorientierter Programme
  6. Referenzen und organisierte Speicher
    1. Referenzen
    2. Zyklische Referenzstrukturen
    3. Referenzen und Programmvariable
    4. Funktionen für organisierte Speicher
  7. Objektorientierung
    1. Objektorientierte Programmierung
    2. Objektorientierter Entwurf
    3. Objektorientierte Analyse
  8. Grundlagen der Methodik
    1. Schrittweise Verfeinerung
    2. Abstraktionsebenen
Hörerkreis: Studierende der Informatik nach dem Vordiplom/Bachelor

Voraussetzungen: Inhalte der Informatikvorlesungen bis zum Vordiplom

Empfehlenswert als Grundlage für Programmierung und Software Engineering.

Literatur

© Software & Systems Engineering Research Group
Sitemap |  Kontakt/Impressum
Letzte Änderung: 2014-10-27 18:30:41