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 Lehrveranstaltungen | SEKM_Kreiser |
---|---|
Gültig ab | Wintersemester 2020/21 |
Fachsemester | 1 |
Modul ist Bestandteil des Studienschwerpunkts | AU - 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 |
PLET -Projektleitung |
oder aus einem (naturwissenschaftlich-technischen) Bachelorstudium: - grundlegende Kenntnisse in (agilem) Projektmanagement |
---|
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. |
Benotet | Ja | |
---|---|---|
Konzept | 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. |
|
Frequenz | Jedes Semester | |
ID | Learning Outcome | |
---|---|---|
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. |
Kompetenz | Ausprägung |
---|---|
Komplexe technische Systeme entwickeln | diese Kompetenz wird vermittelt |
Nachhaltigkeit und gesellschaftliche Vertretbarkeit technischer Lösungen bewerten | diese Kompetenz wird vermittelt |
MINT Fachwissen erweitern und vertiefen | diese Kompetenz wird vermittelt |
Komplexe technische Systeme prüfen | diese Kompetenz wird vermittelt |
Studienrichtungsspezifisches Fachwissen erweitern und vertiefen | diese Kompetenz wird vermittelt |
Komplexe Systeme analysieren | diese Kompetenz wird vermittelt |
Komplexe Systeme abstrahieren | diese Kompetenz wird vermittelt |
Modelle komplexer Systeme bewerten | diese Kompetenz wird vermittelt |
Anerkannte Methoden für wissenschaftliches Arbeiten beherrschen | diese Kompetenz wird vermittelt |
Forschungs- und Entwicklungs-Ergebnisse darstellen | diese Kompetenz wird vermittelt |
Situations- und sachgerecht argumentieren | diese Kompetenz wird vermittelt |
Projekte organisieren | diese Kompetenz wird vermittelt |
Gesellschaftliche und ethische Grundwerte anwenden | diese Kompetenz wird vermittelt |
Sprachliche und interkulturelle Fähigkeiten anwenden | diese Kompetenz wird vermittelt |
PLET -Projektleitung |
oder aus einem (naturwissenschaftlich-technischen) Bachelorstudium: - grundlegende Kenntnisse in (agilem) Projektmanagement |
---|
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. |
ID | Learning Outcome | |
---|---|---|
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. |
Kompetenz | Ausprägung |
---|---|
Komplexe technische Systeme entwickeln | diese Kompetenz wird vermittelt |
Nachhaltigkeit und gesellschaftliche Vertretbarkeit technischer Lösungen bewerten | diese Kompetenz wird vermittelt |
MINT Fachwissen erweitern und vertiefen | diese Kompetenz wird vermittelt |
Komplexe technische Systeme prüfen | diese Kompetenz wird vermittelt |
Studienrichtungsspezifisches Fachwissen erweitern und vertiefen | diese Kompetenz wird vermittelt |
Komplexe Systeme analysieren | diese Kompetenz wird vermittelt |
Komplexe Systeme abstrahieren | diese Kompetenz wird vermittelt |
Modelle komplexer Systeme bewerten | diese Kompetenz wird vermittelt |
Anerkannte Methoden für wissenschaftliches Arbeiten beherrschen | diese Kompetenz wird vermittelt |
Forschungs- und Entwicklungs-Ergebnisse darstellen | diese Kompetenz wird vermittelt |
Situations- und sachgerecht argumentieren | diese Kompetenz wird vermittelt |
Projekte organisieren | diese Kompetenz wird vermittelt |
Gesellschaftliche und ethische Grundwerte anwenden | diese Kompetenz wird vermittelt |
Sprachliche und interkulturelle Fähigkeiten anwenden | diese Kompetenz wird vermittelt |
Typ | Vorlesung / Übungen | |
---|---|---|
Separate Prüfung | Nein | |
Exemplarische inhaltliche Operationalisierung | 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. |
Typ | Seminar | |
---|---|---|
Separate Prüfung | Ja | |
Exemplarische inhaltliche Operationalisierung | 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. |
Benotet | Ja | |
---|---|---|
Frequenz | Einmal im Jahr | |
Gewicht | 50 | |
Bestehen notwendig | Ja | |
Voraussetzung für Teilnahme an Modulprüfung | Ja | |
Konzept | 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. |
Typ | Projekt | |
---|---|---|
Separate Prüfung | Ja | |
Exemplarische inhaltliche Operationalisierung | 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). |
Benotet | Nein | |
---|---|---|
Frequenz | Einmal im Jahr | |
Voraussetzung für Teilnahme an Modulprüfung | Ja | |
Konzept | Entwicklung eines wiederverwendbaren Softwareartefakts für verteilte automatisierungstechnische Softwaresysteme. Ergebnisvorstellung und wissenschaftlicher Diskurs in der Gesamtgruppe. |
© 2022 Technische Hochschule Köln