Technische Universität Ilmenau

Software Safety - Modultafeln der TU Ilmenau

Die Modultafeln sind ein Informationsangebot zu den Studiengängen der TU Ilmenau.

Die rechtsverbindlichen Studienpläne entnehmen Sie bitte den jeweiligen Studien- und Prüfungsordnungen (Anlage Studienplan).

Alle Angaben zu geplanten Lehrveranstaltungen finden Sie im elektronischen Vorlesungsverzeichnis.

Informationen und Handreichungen zur Pflege von Modulbeschreibungen durch die Modulverantwortlichen finden Sie unter Modulpflege.

Hinweise zu fehlenden oder fehlerhaften Modulbeschreibungen senden Sie bitte direkt an modulkatalog@tu-ilmenau.de.

Modulinformationen zu Software Safety im Studiengang Master Informatik 2013
Modulnummer200002
Prüfungsnummer220423
FakultätFakultät für Informatik und Automatisierung
Fachgebietsnummer 2252 (Data-intensive Systems and Visualization)
Modulverantwortliche(r)Prof. Dr. Patrick Mäder
TurnusWintersemester
SpracheDeutsch/Englisch
Leistungspunkte5
Präsenzstudium (h)45
Selbststudium (h)105
VerpflichtungWahlmodul
AbschlussPrüfungsleistung mit mehreren Teilleistungen
Details zum Abschluss

Das Modul Software Safety mit der Prüfungsnummer 220423 schließt mit folgenden Leistungen ab:

  • alternative semesterbegleitende Prüfungsleistung mit einer Wichtung von 50% (Prüfungsnummer: 2200628)
  • alternative semesterbegleitende Prüfungsleistung mit einer Wichtung von 50% (Prüfungsnummer: 2200629)


Details zum Abschluss Teilleistung 1:


Details zum Abschluss Teilleistung 2:

Anmeldemodalitäten für alternative PL oder SL

Verbindliche Registrierung für die aPL bis 31.10.2021 via Thoska oder per Formular im Prüfungsamt. 

max. Teilnehmerzahl
Vorkenntnisse
  • Grundkenntnisse in Softwaretechnik (Software Engineering) vorteilhaft
Lernergebnisse und erworbene KompetenzenFachkompetenzen hauptsächlich erlangt in Vorlesungen und geprüft durch die abschließende mPl:
  • Die Studierenden kennen die Konzepte und Terminologie abhängiger und sicherheitskritischer Systeme (dependability und safety).
  • Die Studierenden verfügen über Kentnisse wesentlicher Entwicklungsstandards sicherheitskritischer Systeme und deren Anforderungen an den Entwicklungsprozess von Systemen.
  • Die Studierenden wissen, welche zusätzlichen Maßnahmen in allen wesentlichen Phasen eines Software- und Systementwicklungsprozesses im Kontext sicherheitskritischer Entwicklungen, je nach Kritikalität der Anwendung, ergriffen werden sollten und wie diese umzusetzen sind.
  • Die Studierenden verfügen über Kenntnis zur qualifizierten Auswahl von Programmiersprachen, Werkzeugen, Code Analyse Techniken für sicherheitskritische Systeme.
Methodenkompetenzen haupsächlich erlangt in den Seminaren und geprüft durch die begleitende aPl (Assignements):
  • Die Studirenden sind in der Lage Spezifikationen für sicherheitskritische Systeme zu erstellen.
  • Die Studierenden sind in der Lage Sicherheitsanalysen und Safety Cases zu erstellen.
  • Die Studierenden sind in der Lage Architekturen und Entwürfe für sicherheitskritische Systeme zu erstellen.
  • Die Studierenden sind in der Lage ausgewählte Programmiersprachen für sicherheitskritische Systeme anzuwenden.

Sozialkompetenzen erlangt in Seminaren und Vorlesungen:

  • Die Studierenden sind in den Seminaren fähig, die in der Vorlesung gelehrten Methodiken in Gruppenarbeit anzuwenden (z.B. gemeinsam eine FMEA durchzuführen), Lösungstrategien zu diskutieren und Lösungen zu entwickeln.
  • Studierende können die Risiken und Risikoerwägungen sicherheitskritischer Entwicklungen (z.B. tollerierbares Risiko) und die damit verbundene Veranwortung der Entwicklungsbeteiligten zum Beispiel anhand schwerer Unfälle mit ihren Lehrenden diskutieren. Sie kennen moralische Erwägungen und länderspezifische Ansätze zum Umgang mit Restrisiko. 
Inhalt

Sicherheitskritische Systeme sind solche, deren Versagen oder unzureichende Funktionalität katastrophale Folgen für Menschen, die Umwelt und die Wirtschaft haben kann. Diese Systeme werden kontinuierlich komplexer in ihren Funktionalitäten, aber auch in ihren Interaktionen mit der Umgebung. Die Veranstaltung widmet sich dem Thema Softwareentwicklung für sicherheitskritische Systeme und stellt Techniken von den eingehenden Sicherheitsanalysen, über Spezifikation und Entwicklung bis zur Verifikation vor. In umfangreichen Übungen werden diese Techniken an Beispielen erlernt und unterstützende Applikationen vorgestellt.

Schwerpunkte:

  • System Safety
  • Safety Standards und Safety Case
  • Requirements Engineering und Modellierung*
  • Requirements Management, Verifikation und Validierung*
  • Architektur und Design Entwicklung, Verifikation und Validierung*
  • Safety und Risiko Analyse
  • Programmiersprachen, Programmierung, Metriken*
  • Testen, Verifikation und Validierung auf Code-Ebene*
  • Qualitätssicherung und -management*

*) im Kontext sicherheitskritischer Software- und Systementwicklungen

Medienformen
  • Vorlesungsfolien
  • aufgezeichnete Screencasts und ggf. Videos
  • Tutorials, White-Paper und wissenschaftliche Beiträge
  • Entwicklungswerkzeuge
  • Auszüge aus Entwicklungsprojekten
  • Aufgaben und Aufgabenblätter

 

Literatur
  • C. Hobbs: Embedded Software Development for Safety-critical Systems. CRC Press (2019)
  • K. E. Wiegers and J. Beatty: Software Requirements. Mircosoft Press (2013)
  • C. Carlson: Effective FMEAs: Achieving safe, reliable, and economical products and processes using failure mode and effects analysis. John Wiley & Sons (2012)
  • B. P. Douglass: Real-Time Design Patterns: Robust Scalable Architecture for Real-Time Systems. Addison Wesley (2002)
  • E. Hull and K. Jackson and J. Dick: Requirements engineering. Springer (2011)
  •  Van Lamsweerde: Requirements engineering: from system goals to UML models to software specifications. Wiley Publishing (2009)
  • J. Barnes: Safe and secure software: An invitation to Ada 2012. AdaCore (2013)
  • J. W. Vincoli: Basic guide to system safety. John Wiley & Sons (2006)
  • J.-L. Boulanger: Static analysis of software: The abstract interpretation. John Wiley & Sons (2013)
  • J. Schäuffele and T. Zurawka: Automotive software engineering-principles, processes, methods and tools. SAE International (2005)
Lehrevaluation