Zur Seitennavigation oder mit Tastenkombination für den accesskey-Taste und Taste 1 
Zum Seiteninhalt oder mit Tastenkombination für den accesskey und Taste 2 
Switch to english language
Startseite    Anmelden     
Logout in [min] [minutetext]
SoSe 2024

Software Product Line Engineering - Einzelansicht

  • Funktionen:
Grunddaten
Veranstaltungsart Vorlesung SWS 3
Veranstaltungsnummer 418120019 Max. Teilnehmer/-innen
Semester SoSe 2019 Zugeordnetes Modul
Erwartete Teilnehmer/-innen
Rhythmus jedes 2. Semester
Hyperlink  
Weitere Links https://www.uni-weimar.de/de/medien/professuren/intelligente-softwaresysteme/
Sprache englisch
Termine Gruppe: [unbenannt]
  Tag Zeit Rhythmus Dauer Raum Raum-
plan
Lehrperson Bemerkung fällt aus am Max. Teilnehmer/-innen
Einzeltermine anzeigen
Mi. 09:15 bis 10:45 wöch. von 03.04.2019  Karl-Haußknecht-Straße 7 - Seminarraum (IT-AP) 001  

Lecture

 
Einzeltermine anzeigen
Fr. 11:00 bis 12:30 wöch. von 05.04.2019  Karl-Haußknecht-Straße 7 - Seminarraum (IT-AP) 001  

Lab class

 
Gruppe [unbenannt]:
 
 
Studiengänge
Abschluss Studiengang Semester Leistungspunkte
Master Medieninformatik (M.Sc.), PV 29 - 4,5
Master Computer Science and Media (M.Sc.), PV 11 - 4,5
Master Human-Computer Interaction (M.Sc.), PV14 - 4,5
Master MediaArchitecture (M.Sc.), PV14 2 - 2 3
Master Human-Computer Interaction (M.Sc.), PV17 - 4,5
Master Digital Engineering (M.Sc.), PV 17 - 6
Master Human-Computer Interaction (M.Sc.), PV15 - 4,5
Master MediaArchitecture (M.Sc.), PV18 - 3
Master Computer Science for Digital Media (M.Sc.), PV 18 - 4,5
Master Digital Engineering (M.Sc.), PV 19 - 4,5
Master Computer Science for Digital Media (M.Sc.), PV 17 - 4,5
Zuordnung zu Einrichtungen
Intelligente Softwaresysteme
Fakultät Medien
Inhalt
Beschreibung

Softwareproduktlinien und konfigurierbare Softwaresysteme bilden eine Schlüsseltechnologie für die Massenproduktion individuell angepasster Software. Ziel ist es bei der Entwicklung maßgeschneiderter Software, die Codebasis weiterhin wartbar zu halten sowie gleichzeitig die Produktionskosten zu reduzieren. Die Veranstaltung vermittelt die wichtigsten Kenntnisse und Fähigkeiten, um dieses Ziel zu erreichen:

  • Die Studierenden kennen die Vorteile und Nachteile des Produktlinienansatzes sowie klassischer und moderner Programmiermethoden wie z.B. Präprozessoren, Versionsverwaltungssysteme, Komponenten, Frameworks, Feature-Orientierung, Aspekt-Orientierung.
  • Die Studierenden haben die Befähigung zur Bewertung, Auswahl und Anwendung moderner Programmierparadigmen, Techniken, Methoden und Werkzeuge erlangt, insbesondere in Hinblick auf die Entwicklung von Kompetenzen im Bereich der Softwareproduktlinien.
  • Die Studierenden erwerben Urteilsvermögen über den Einsatz von Programmiermethoden für die Entwicklung von Softwareproduktlinien.

 

Folgender Inhalt wird bei der Lehrveranstaltung vermittelt:

  • Einführung in die Problematik der Entwicklung komplexer, maßgeschneiderter Softwaresysteme am Beispiel von eingebetteten Datenbankmanagementsystemen
  • Modellierung und Implementierung von Programmfamilien, Produktlinien und domänenspezifischen Generatoren
  • Wiederholung von Grundkonzepten der Software-Technik (Kohäsion, Scattering und Tangling, Information Hiding, Modularisierung)
  • Einführung in verschiedene klassische und moderne Sprachen und Werkzeuge zur Entwicklung von Softwareproduktlinien u.a. Präprozessoren, Frameworks, Komponenten, Feature-Module, Aspekte, Kollaborationen, Rollen, etc.
  • Vergleich grundlegender Konzepte, Methoden, Techniken und Werkzeuge der vorgestellten Ansätze
  • Kritische Diskussion von Vor- und Nachteilen der einzelnen Ansätze sowie ihrer Beziehung untereinander
  • Weiterführende Themen: Nicht-funktionale Eigenschaften, Analyse von Produktlinien, Featureinteraktionen,

Aktuelle Forschungsergebnisse des Lehrstuhls werden in der Veranstaltung besprochen, angewendet und diskutiert

engl. Beschreibung/ Kurzkommentar

Software Product Line Engineering

Software product lines and configurable software systems are the main driving factor for mass customization, tailor-made products, and product diversity while keeping a maintainable code base and saving development time. The lecture will teach about central elements of product line modelling and development.

 

Students should understand the following techniques and theories:

  • Configuration management and variability modeling
  • Classic and modern programming techniques, such as preprocessors, version control systems, components, frameworks, aspect-oriented programming, and feature-oriented programming
  • Feature interactions and virtual separation of concerns

 

Students should be able to apply the above theories and concepts to judge points in favour and against a certain technique depending on the application scenario at hand. Hence, the students will be able to decide which techniques, tools, and methods to use.

 

Students should master concepts and approaches such as

  • The exponential complexity of variability spaces
  • Modelling and implementation of program families, product lines, and domain specific generators
  • Basic concepts of software engineering (e.g., cohesion, scattering, tangling, information hiding)
  • Classic and modern concepts, such as preprocessors, plug-in systems, feature modules, collaborations, aspects, and roles
  • Critical discussion about pros and cons of the above techniques and concepts
  • Feature interactions, non-functional properties, product line analysis

 

Students will implement these concepts in Java.

 

Students should develop an understanding of the current state of research in software product lines. With appropriate supervision, students should be able to tackle new research problems, especially in the area of product line development and optimization.

Literatur

Script; Sven Apel, Don S. Batory, Christian Kästner, Gunter Saake: Feature-Oriented Software Product Lines - Concepts and Implementation. Springer 2013; Krysztof Czarnecki, Ulrich Eisenecker : Generative Programming. Methods, Tools and Applications. Addison Wesley 2000

Voraussetzungen

BSc in a relevant study field; Software Engineering course for Digital Engineering students

Leistungsnachweis

Written or oral examination. Participation requires the successful completion of the course labs. Digital Engineering students will be required to successfully complete an additional project / course lab

Zielgruppe

M.Sc. Digital Engineering

M.Sc. Medieninformatik / Computer Science and Media / Computer Science for Digital Media

M. Sc. Human-Computer Interaction

open for M.Sc. MediaArchitecture


Strukturbaum
Keine Einordnung ins Vorlesungsverzeichnis vorhanden. Veranstaltung ist aus dem Semester SoSe 2019 , Aktuelles Semester: SoSe 2024

BISON-Portal Startseite   Zurück Kontakt/Impressum Datenschutz