Qualifikationsziele:

Die Studierenden werden für das Thema Software Engineering motiviert. Sie erlangen ein Verständnis für Softwarequalität und erhalten einen Überblick über alle Phasen der Softwareentwicklung. Die Studierenden kennen verschiedene Vorgehensmodelle bei der Softwareentwicklung und erlangen vertiefte Kenntnisse für den Softwareentwurf. Außerdem kennen die Studierenden Testen im Softwarelebenszyklus, Testmetriken, Testmanagement und Testautomatisierung durch Testwerkzeuge wie z.B. JUnit. In den Übungen werden gemeinsam konkrete Fragestellungen beantwortet und ausgesuchte Beispiele bearbeitet. Lehrinhalte: Motivation und Definition der Begriffe Softwaretechnik, Software Engineering, Softwarequalität usw., Planung (Projektplanung, Aufwandsschätzung, Machbarkeitsstudie, Lastenheft), Anforderungsanalyse (Modellierung, Pflichtenheft), Entwurf (Datenmodellierung, Zustandsmodellierung, Testmetriken, Testautomatisierung, Entity-Relationship Diagramme), Entscheidungstabellen, Softwarearchitektur, Programmierrichtlinien, elementare Grundlagen der analytischen Qualitätssicherung.

Qualifikationsziele:

Die Studierenden können differenzieren zwischen den verschiedenen Quantentechnologien. Sie verstehen die Aktualität, Chancen, Risiken und Einschränkungen der Quantentechnologien und können Anwendungsmöglichkeiten des Quantencomputing bewerten. Sie verstehen die relevanten physikalischen Grundprinzipien der Quantenmechanik und kennen den aktuellen Stand der physikalischen Realisierung, sowie die Wirkungsweise von Quantenprozessoren. Sie beherrschen die Grundbegriffe des Quantencomputing und der Quantenkommunikation und verstehen die wichtigsten Quantenalgorithmen. Am Ende können sie eigene Anwendungen unter Nutzung von Quantenalgorithmen mit Qiskit umsetzen.

Qualifikationsziele:

Die Studierenden kennen die Grundprinzipien komplexer Systeme und die Notwendigkeit der Strukturierung zur Beherrschung der Komplexität großer Systeme. Sie durchdringen die Bedeutung der Prozesse des Systems Engineering (ISO 15288). Die Studierenden abstrahieren die Herangehensweise der Systementwicklung auf unterschiedliche, industrieübergreifende Anwendungsszenarien. Sie kennen die Methoden zur Umsetzung einer erfolgreichen Systementwicklung entlang des Lebenszyklus und erfahren die Werte eines formalen und fundierten Entwicklungsvorgehens.