Loading
     

Modulbeschreibung - Detailansicht

Wichtigste Meldungen anzeigenMeldungsfenster schließen
Moduldetails
Advanced Topics of Software Engineering
Fakultät für Informatik
TUINFIN
8
1
6
IN2309
2014W
Zuordnungen zu SPO-Versionen
Lehrveranstaltungen und Prüfungsveranstaltungen
Beschreibungen
14W
Export
Allgemeine Daten (Modulhandbuch)
Master
Einsemestrig
Wintersemester
Deutsch/Englisch
Arbeitsaufwand (Work Load)
240
90
150
Studien- und Prüfungsleistungen
Die Prüfungsleistung wird in Form einer Klausur erbracht (100 Minuten). In dieser soll nachgewiesen werden, dass die Studierenden die Domänenspezifizität von Software verstehen und ihre Konsequenzen benennen können. Zentrale Qualitätsattribute sollen benannt und bzgl. Zielkonflikten analysiert werden können. Beispielhafte Softwarearchitekturen und Verhaltensmodelle können erstellt, bewertet und kritisch reflektiert werden. Zielsetzung und Details der Bedienung typischer Entwicklungswerkzeuge können genannt werden.
N
J
Beschreibung
Einführung in die Softwaretechnik (IN0006)
Nach erfolgreicher Teilnahme an dem Modul verstehen die Studierenden die zentralen Aufgaben und Methoden des Requirements Engineering. Sie kennen alle relevanten Qualitätsattribute für Software. Sie wissen, wie entsprechende Anforderungen erhoben, spezifiziert und verwaltet werden; wie sie sich in Softwarearchitekturen wiederfinden und umgekehrt, welchen Einfluss eine Architektur auf diese Attribute hat; wie Anforderungen, Architekturen und Code bzgl. dieser Attribute bewertet werden können; welche Zielkonflikte zwischen Qualitätsattributen bestehen und welchen Einfluss der Entwicklungsprozess hat. Sie können dieses Wissen in der Praxis in kleineren Projekten anwenden.
Für die erfolgreiche Entwicklung großer Software-Systeme ist es erforderlich, dass sowohl die verschiedenen Aktivitäten im Prozess als auch die entstehenden Artefakte sehr eng miteinander verknüpft und aufeinander abgestimmt sind. Zentrale Erfolgsfaktoren sind:
- Iterative Ermittlung und Umsetzung der Anforderungen
- Architekturentwurf als Rückgrat der Entwicklung
- Beherrschung der Qualität in ihren unterschiedlichen Ausprägungen
Die Vorlesung Advanced Software Engineering legt dar, wie die Themengebiete Requirements Engineering, Spezifikation, Architektur, Feinentwurf, Codierung, Softwarequalität und Qualitätssicherung miteinander verwoben sind. Es wird diskutiert, wie insbesondere nichtfunktionale Anforderungen in der Architektur reflektiert sind; welche Zielkonflikte mit funktionalen Anforderungen und externen sowie internen Qualitätsattributen bestehen; und wie diese Anforderungen formuliert und durch Tests überprüft werden können.
Im Einzelnen werden betrachtet:
1.Requirements Engineering: Techniken für die Erhebung, Analyse, Priorisierung, Spezifikation, Validierung funktionaler und nicht-funktionaler Anforderungen; Anti-Requirements.
2.Software-Architektur: Prinzipen, Views&Styles, Architekturdokumentation, Muster, Frameworks, Referenzarchitekturen, Produktlinien, Analysen der Architekturqualität und von Zielkonflikten
3.Softwarequalität: Interne und externe Qualitätsattribute, u.a. Wartbarkeit, Testbarkeit, Verständlichkeit sowie Performanz, Sicherheit, Verfügbarkeit; Software-Metriken
4.Qualitätssicherung: Bewertung, Priorisierung, Konfliktauflösung und Reviews von Anforderungen; Messverfahren für Architekturqualität bzgl. externer und interner Qualitätsattribute; Test- und Reviewverfahren für funktionale und nicht-funktionale Anforderungen im Code; Fehlermodelle
5.Einfluss des Entwicklungsprozesses
Das Modul besteht aus einer Vorlesung und einer begleitenden Übung. Die Inhalte der Vorlesung werden im Vortrag und durch Präsentationen vermittelt. Studierende sollen zum Studium der Literatur und der inhaltlichen Auseinandersetzung mit den Themen angeregt werden. In den Übungen werden teilweise in Gruppenarbeit gemeinsam konkrete Fragestellungen beantwortet und ausgesuchte Beispiele bearbeitet.
Vortrag mit Folien
McConnell, Code Complete: A Practical Handbook of Software Construction, 2nd edition, Microsoft, 2004
Summerville, Software Engineering 9, Prentice Hall, 2010
Brooks, The Mythical Man Month, Addison-Wesley Longman, 1995
Rombach, Endres: A Handbook of Software and Systems Engineering, Addispn Wesley, 2003
Bass et al., Software Architecture in Practice, Addison Wesley, 3rd edition, Addison Wesley, 2012
Clements et al., Documenting Software Architectures, 2nd edition, Addison Wesley, 2010
Clements et al., Evaluating Software Architectures, Addison Wesley, 2001
Reussner, Hasselbring, Handbuch der Software-Architektur (in German), 2006
Jackson, Problem Frames, ACM Press, 2000
Sommerville, Sawyer: Requirements Engineering: A Good Practice Guide, John Wiley, 1997
Lamsweerde, Requirements Engineering: From System Goals to UML Models to Software Specifications, John Wiley, 2009
Goucher, Riley, Beautiful Testing, OReilly, 2009
Wagner, Software Product Quality Control, Springer, 2013

Weitere Literatur wird in der Vorlesung bekanntgegeben.
Modulverantwortliche*r
Alexander Pretschner, Prof. Dr. (alexander.pretschner@tum.de)