Softwareengineering

Inhalt

Ziel der Vorlesung ist es, Studierenden der Elektrotechnik einen Überblick über die Methoden der modernen Softwareentwicklung zu vermitteln. Als vorlesungsbegleitende Prüfungsleistung war von den Studierenden ein Softwareentwicklungsprojekt zu bearbeiten.

Die Vorlesung wurde im Rahmen eines Lehrauftrags an der 
Dualen Hochschule Baden-Württemberg in Lörrach (2020) im Studiengang Elektrotechnik gehalten.

Aufbau

  • Vorlesung 1: Agile Softwareentwicklungsprozesse (SCRUM, Kanban, eXtreme Programming)
  • Vorlesung 2: Techniken zur Anforderungsanalyse und Dokumentation
  • Vorlesung 3: Grundlagen objektorientierter Entwurf
  • Vorlesung 4: Softwarearchitekturen, Design Patterns (z.B. Publish-subscribe)
  • Vorlesung 5: Versionsverwaltung mit git
  • Vorlesung 6: Algorithmen und Datenstrukturen (Suchen und Sortieren, Listen,…)
  • Vorlesung 7: Grundlagen relationaler Datenbanken
  • Vorlesung 8: Usability Engineering (Grundlagen, Prototyping, Usability Tests)
  • Vorlesung 9: Softwarequalität (z.B. Unit-Tests, Testautomatisierung)

Prüfung

Die Vorlesung wurde mir einer Portfolioprüfung geprüft. Diese bestand aus allen Teilaufgaben eines Entwicklungsprojekts, wie diese in der Vorlesung gelehrt wurden (Anforderungsanalyse, Softwaredesign, Implementierung, Projektpräsentation).

Literatur

  • Helmut Balzert: Lehrbuch der Softwaretechnik: Basiskonzepte und Requirements Engineering, Spektrum Akademischer Verlag (2009).
  • Craig Larman: Applying UML and Patterns: An Introduction to Object- Oriented Analysis and Design and Iterative Development, Pearson Professional Education (2004).
  • Robert C. Martin: Clean Code, mitp Verlag (2009).
  • Dirk W. Hoffmann: Software-Qualität, Springer Vieweg (2013).