Modul

QEKS - Qualitätsgesteuerter Entwurf komplexer Softwaresysteme

Master Elektrotechnik 2020


PDF Studiengangsverzeichnis Studienverlaufspläne Master Elektrotechnik

Version: 4 | Letzte Änderung: 06.10.2019 17:26 | Entwurf: 0 | Status: vom Modulverantwortlichen freigegeben | Verantwortlich: Kreiser

Anerkannte Lehrveran­staltungen SEKM_Kreiser
Fachsemester 1
Modul ist Bestandteil des StudienschwerpunktsAU - Automatisierungstechnik
Dauer 1 Semester
ECTS 5
Zeugnistext (de) Qualitätsgesteuerter Entwurf komplexer Softwaresysteme
Zeugnistext (en) Quality Controlled Development of Complex Software Systems
Unterrichtssprache deutsch oder englisch
abschließende Modulprüfung Ja
Inhaltliche Voraussetzungen
PLET
-Projektleitung
oder aus einem (naturwissenschaftlich-technischen) Bachelorstudium:
- grundlegende Kenntnisse in (agilem) Projektmanagement
Handlungsfelder
Forschung: Von der Grundlagenforschung bis hin zur Industrieforschung und der Qualifikation für ein Promotionsstudium. Entwicklung: Algorithmen, Software, Verfahren , Geräte, Komponenten und Anlagen.
Koordination und Leitung von Arbeitsgruppen, international verteilt arbeitender Teams, Koordination von Planungs- und Fertigungsprozessen, sowie Produktmanagement.
Modulprüfung
Benotet Ja
Frequenz Jedes Semester
Prüfungskonzept

Mündliche Prüfung nach schriftlicher Vorbereitung.
Anhand einer realitätsnahen Aufgabenstellung angemessener Komplexität entwickeln und modellieren die Studierenden eine geeignete Softwarearchitektur für ein verteiltes Automatisierungssystem unter angemessener Anwendung von Strategien zur Wiederwendung von Modell- und/oder Softwareartefakten. Sie begründen die essenziellen Strukturen ihrer Architektur unter Bezugnahme auf die spezifische Zielsetzung und die spezifischen Umgebungsbedigungen für den Einsatz des jeweiligen Automatisierungssystems sowie unter Bezugnahme auf grundlegende Qualitätskriterien für automatisierungstechnische Softwaresysteme (System-, Entwicklungs-, Betriebs-, Service- und Wartungsanforderungen). Sie erläutern, welche besonderen organisatorischen Rahmenbedingungen sich für die Entwicklung aus der Architektur ergeben, und bewerten die Qualität der Softwarearchitektur aus technischer und betriebswirtschaftlicher Sicht.

Learning Outcomes
LO1 - Studierende sind im Hinblick auf die Qualität eines Softwaresystems in der Lage:
- zur vorhersagbaren, effizienten Entwicklung eines Softwaresystems bzw. einer Softwarearchitektur zielgerichtet angemessene Wiederverwendungsstrategien und professionelle Modellierungs- und Entwicklungswerkzeuge sowie den Rahmenbedingungen insgesamt angemessene Projektstrukturen einzusetzen.
- die Softwarearchitektur für komplexe, verteilte Automatisierungssysteme unter Berücksichtigung der spezifischen Anforderungen hinsichtlich der besonderen Zielsetzung des jeweiligen Automatisierungssystems zu analysieren, zu konzipieren, zu entwerfen, zu implementieren, zu prüfen und zu bewerten.
- die besonderen Anforderungen an die Servicequalität, an die Einsatzumgebung und die organisatorischen Rahmenbedingungen für die Entwicklung, die sich aus dem Entwicklungsprozess und einem angemessenen Lebenszyklusmanagement ergeben, zu erkennen und im Hinblick auf ihre Relevanz für die Softwarearchitektur des Automatisierungssystems zu analysieren und zu bewerten.
Kompetenzen

Vermittelte Kompetenzen
Komplexe technische Systeme entwickeln
Nachhaltigkeit und gesellschaftliche Vertretbarkeit technischer Lösungen bewerten
MINT Fachwissen erweitern und vertiefen
Komplexe technische Systeme prüfen
Studienrichtungsspezifisches Fachwissen erweitern und vertiefen
Komplexe Systeme analysieren
Komplexe Systeme abstrahieren
Modelle komplexer Systeme bewerten
Anerkannte Methoden für wissenschaftliches Arbeiten beherrschen
Forschungs- und Entwicklungs-Ergebnisse darstellen
Situations- und sachgerecht argumentieren
Projekte organisieren
Gesellschaftliche und ethische Grundwerte anwenden
Sprachliche und interkulturelle Fähigkeiten anwenden

Inhaltliche Voraussetzungen
PLET
-Projektleitung
oder aus einem (naturwissenschaftlich-technischen) Bachelorstudium:
- grundlegende Kenntnisse in (agilem) Projektmanagement
Handlungsfelder
Forschung: Von der Grundlagenforschung bis hin zur Industrieforschung und der Qualifikation für ein Promotionsstudium. Entwicklung: Algorithmen, Software, Verfahren , Geräte, Komponenten und Anlagen.
Koordination und Leitung von Arbeitsgruppen, international verteilt arbeitender Teams, Koordination von Planungs- und Fertigungsprozessen, sowie Produktmanagement.
Learning Outcomes
LO1 - Studierende sind im Hinblick auf die Qualität eines Softwaresystems in der Lage:
- zur vorhersagbaren, effizienten Entwicklung eines Softwaresystems bzw. einer Softwarearchitektur zielgerichtet angemessene Wiederverwendungsstrategien und professionelle Modellierungs- und Entwicklungswerkzeuge sowie den Rahmenbedingungen insgesamt angemessene Projektstrukturen einzusetzen.
- die Softwarearchitektur für komplexe, verteilte Automatisierungssysteme unter Berücksichtigung der spezifischen Anforderungen hinsichtlich der besonderen Zielsetzung des jeweiligen Automatisierungssystems zu analysieren, zu konzipieren, zu entwerfen, zu implementieren, zu prüfen und zu bewerten.
- die besonderen Anforderungen an die Servicequalität, an die Einsatzumgebung und die organisatorischen Rahmenbedingungen für die Entwicklung, die sich aus dem Entwicklungsprozess und einem angemessenen Lebenszyklusmanagement ergeben, zu erkennen und im Hinblick auf ihre Relevanz für die Softwarearchitektur des Automatisierungssystems zu analysieren und zu bewerten.
Kompetenzen
Kompetenz Ausprägung
Komplexe technische Systeme entwickeln Vermittelte Kompetenzen
Nachhaltigkeit und gesellschaftliche Vertretbarkeit technischer Lösungen bewerten Vermittelte Kompetenzen
MINT Fachwissen erweitern und vertiefen Vermittelte Kompetenzen
Komplexe technische Systeme prüfen Vermittelte Kompetenzen
Studienrichtungsspezifisches Fachwissen erweitern und vertiefen Vermittelte Kompetenzen
Komplexe Systeme analysieren Vermittelte Kompetenzen
Komplexe Systeme abstrahieren Vermittelte Kompetenzen
Modelle komplexer Systeme bewerten Vermittelte Kompetenzen
Anerkannte Methoden für wissenschaftliches Arbeiten beherrschen Vermittelte Kompetenzen
Forschungs- und Entwicklungs-Ergebnisse darstellen Vermittelte Kompetenzen
Situations- und sachgerecht argumentieren Vermittelte Kompetenzen
Projekte organisieren Vermittelte Kompetenzen
Gesellschaftliche und ethische Grundwerte anwenden Vermittelte Kompetenzen
Sprachliche und interkulturelle Fähigkeiten anwenden Vermittelte Kompetenzen

Exempla­rische inhaltliche Operatio­nalisierung

Entscheidend für einen differenzierten Diskurs um die Qualität von und in Softwaresystemen sind eine allgemeine Definition des Qualitätsbegriffs bzw. der verschiedenen Qualitätsdimensionen für automatisierungstechnische Softwaresysteme sowie eine Diskussion um den betriebswirtschaftlichen Wert einer Software und den Komplexitätsbegriff. Darauf aufbauend können zweckmäßige Vorgehen zur additiven Entwicklung einer Softwarearchitektur am Beispiel wiederverwendbarer Softwareartefakte abgeleitet werden. Wiederverwendung kann am Beispiel von Mustern und Musterkatalogen (White-Box-Reuse) und Komponenten- bzw. Frameworkarchitekturen (Black-Box-Reuse) diskutiert werden. Als Beispiele professioneller Komponentenarchitekturen zum Aufbau verteilter technischer Softwaresysteme können Object Request Broker Architekturen wie CORBA bzw. das echtzeitfähige Open Source Derivat TAO (The ACE ORB), OPC/UA, die Funktionsbausteinarchitektur industrieller Leitsysteme (nach EN61499) aber auch integrierte Frameworks wie MS .NET herangezogen werden. Als weitere Abstraktionsstufe, also Architekturen mit begrenzter Intelligenz zur Verfolgung abstrahierter Zielvorgaben und zur Selbstrekonfiguration durch fortwährende Analyse des System- und Umgebungszustands, können Multiagentensysteme untersucht werden. Wesentlich für eine umfassende Beurteilung der Qualität von Softwarearchitekturen im Hinblick auf deren Einsatz unter spezifischen Bedingungen ist zudem ein grundlegender Diskurs über betriebswirtschaftlich, haftungsrechtlich und ethisch begründete Anforderungen.

Separate Prüfung

keine

Exempla­rische inhaltliche Operatio­nalisierung

anspruchsvolle Seminarthemen können z. B. aus den Themengebieten
- wiederverwendbare Artefakte zum Aufbau der Architektur verteilter Softwaresysteme,
- professionelle Verteilungsarchitekturen,
- Multiagentensysteme,
- besondere betriebswirtschaftliche, haftungsrechtliche und ethische Anforderungen bei Softwaresystemen mit (verteilter) künstlicher Intelligenz und deren Auswirkungen auf die Gestaltung von Softwarearchitekturen
oder fachlich angrenzenden Themengebieten definiert werden.

Separate Prüfung
Benotet Ja
Frequenz Einmal im Jahr
Gewicht 50
Bestehen notwendig Ja
Voraussetzung für Teilnahme an Modulprüfung Ja
Prüfungskonzept

Auswertung wissenschaftlicher Literatur und Bewertung der Qualität von Softwarearchitekturen für verteilte Automatisierungssysteme im Hinblick auf vorgegebene automatisierungstechnische Fragestellungen.
Ergebnisvorstellung und wissenschaftlicher Diskurs in der Gesamtgruppe.

Exempla­rische inhaltliche Operatio­nalisierung

Entwicklung einer Softwarekomponente für eine echtzeitfähige Verteilungsarchitektur in C++. Die Komplexität und der erwartete Arbeitsumfang zur Lösung der Aufgabenstellung richten sich nach dem verfügbaren Zeitkontingent des Projektteams (abh. von der Teamgröße).

Separate Prüfung
Benotet Nein
Frequenz Einmal im Jahr
Voraussetzung für Teilnahme an Modulprüfung Ja
Prüfungskonzept

Entwicklung eines wiederverwendbaren Softwareartefakts für verteilte automatisierungstechnische Softwaresysteme. Ergebnisvorstellung und wissenschaftlicher Diskurs in der Gesamtgruppe.


© 2022 Technische Hochschule Köln