Vorlesung Softwarequalität im Sommersemster 2020

4 minute read

Im Sommersemester 2020 gibt es eine überarbeitete Version der Vorlesung Softwarequalität im Masterstudiengang Informatik an der Westsächsischen Hochschule Zwickau. Die Vorlesung findet jeden zweiten Montag von 9-15 Uhr statt.

Neuigkeiten zur Vorlesung wird es immer hier auf dieser Seite geben.

Wichtig: Prüfungsvorleistung

Am 15.06.2020 und am 29.06.2020 gibt es Projekte für sechs Gruppen. Jede der Gruppen muss ein Buch durcharbeiten und eine Vorlesung dazu gestalten. Die Vorlesung soll das jeweilige Buch in den Bezug zu Softwarequalität setzen. Die von euch gestalteten Vorlesungen sind die Prüfungsvorleistung und gehen in die Bewertung der Prüfung ein.

Die formalen Anforderungen an die Prüfungsvorleistung werden in der ersten Vorlesung bekannt gegeben und dann hier zur Verfügung gestellt. Die Links zu den Büchern sind jeweils im Abschnitt zur Vorlesung angegeben.

Vorlesung 1 (23.03.2020): Corona-Ferien

Vorlesung 2 (06.04.2020): Was bedeutet Qualität für Software?

Inhalte

  • Einführung in Microsoft Teams
  • Organisatorisches zur Remote-Arbeit und Prüfungsvorleistung
  • Einführung zu Software-Qualität
    • Perspektiven auf Software
    • Was ist Qualität?
    • Von der ISO 9126 zur ISO 25010
    • Prozess- und Produktqualität
    • Einordnung im Software-Engineering
    • Qualitätsmanagement
    • Softwarequalität in der Praxis
  • Nützliches für die Prüfungsvorleistung
    • Scientific Thinking
    • Economical Thinking
    • Critical Thinking

Vorlesung 3 (20.04.2020): Die Vermessung von Qualität

In der zweiten Vorlesung dreht sich alles um das Thema Messen und Metriken. Beginnen mit der Frage, was eigentlich eine Messung ist gehen wir über Code-Metriken zur Vermessung ganzer Software-Systeme.

Schlussendlich schauen wir uns natürlich, was das ganze Messen für die Anwender von Software bewirkt und wie wir anhand unserer Messungen sinnvolle Entscheidungen treffen können.

Inhalte

  • Messen und Metriken
  • Source-Code-Metriken
    • McCabes Zyklomatische Komplexität
    • Robert C. Martins Metriken zur Objektorientierung
  • Architekturmetriken
  • Metriken für die Prozessperspektive
  • Metriken für die Anwenderperspektive
  • Abstraktionsgrade
  • Entscheidungen treffen mit Metriken

Vorlesung 4 (04.05.2020): Die Architektur von Qualität

Inhalte

  • Bewertungen mit ATAM
  • Architektur verbessern mit AIM42
  • Technische Schulden

Vorlesung 5 (18.05.2020): Qualität aus Anwenderperspektive

Inhalte

  • Usability und User Experience
  • Das Dreieck User Experience-Architektur-Qualität

Vorlesungen 6 & 7: Prüfungsvorleistung

Soziale Systeme und die Qualität von Software

Agile Softwareentwicklung ist der de-facto Standard geworden, kaum ein Unternehmen arbeitet noch nach anderen Methoden. Damit agiles Arbeiten funktionieren kann, muss die Organisation gewisse Eigenschaften aufweisen.

In dieser Vorlesung erkunden wir diese Eigenschaften und die Frage, wie Aspekte, Eigenschaften und Verhaltensweisen der Organisation als sozialen Systems auf die Softwareentwicklung wirken.

Dazu habe ich zwei Bücher ausgewählt, die von zwei Gruppen in der Vorlesung vorgestellt werden.

Ethik und Verantwortung als Qualität von Software

Wir leben im Zeitalter von Big Data und künstlicher Intelligenz. Deshalb möchte ich mit euch darüber diskutieren, welche Auswirkungen Qualität in Algorithmen auf das Leben von Menschen haben kann.

Dazu habe ich zwei Bücher ausgewählt, die von zwei Gruppen vorgestellt werden. Im Anschluss daran besprechen wir noch einige grundlegende Fragen zu Relevanz von Qualitätsbetrachtungen in diesem Umfeld.

Source Code als Fundament von Software-Qualität

Source Code ist eher ein notwendiges Übel als die Essenz der Software-Entwicklung. Er bleibt jedoach das Medium in unserer Disziplin, über das wir uns am häufigsten austauschen, mit dem wir am häufigsten arbeiten und das am längsten erhalten bleibt.

Ich habe zwei Bücher ausgewählt, die sich mit der Frage beschäftigen, wie Source Code altert und wie er von Entwicklern verstanden werden kann.

Vorlesung 6 (15.06.2020):

Inhalte

  • Gruppe 1 - Einführung in Systemtheorie und Konstruktivismus
  • Gruppe 3 - Invisible Women: Exposing Data Bias in a World Designed for Men
  • Gruppe 5 - Working Effectively with Legacy Code

Vorlesung 7 (29.06.2020):

Inhalte

  • Gruppe 2 - Organisationen - Eine sehr kurze Einführung
  • Gruppe 4 - Weapons of Math Destruction: How Big Data Increases Inequality and Threatens Democracy
  • Gruppe 6 - xUnit Test Patterns: Refactoring Test Code

Prüfung

Termine, Beispielfragen und weitere Details zur Prüfung werden rechtzeitig hier bekannt gegeben.

FAQ zur Prüfung

  • Welche Inhalte sind Teil der Prüfung?
    A: Wir stellen Fragen zu allen 7 Vorlesungen. Auch zu den Inhalten, die aus den Gruppenarbeiten resultieren.
  • Wie lange dauert die Prüfung?
    A: Insgesamt 30 Minuten. Das Prüfungsgespräch dauert 20-25 Minuten, dann beraten wir uns noch 5 Minuten und geben das Resultat bekannt.
  • Wo wird die Prüfung stattfinden?
    A: Wird rechtzeitig bekanntgegeben.
  • Wann wird die Prüfung stattfinden?
    A: Wird rechtzeitig bekanntgegeben.
  • Haben die späteren Teilnehmer nicht einen Vorteil?
    A: Könnte man denken, passiert aber nicht. ;-)

Updates vom 05.04.2020

  • Die Termine für die Prüflungsvorleistung sind verschoben auf den 15.06.2020 und den 29.06.2020
  • Die Prüfungsvorleistung macht 50% der Note aus
  • Die Vorlesung ist wegen Corona entfallen
  • Die erste Vorlesung findet am 06.04.2020 statt
  • Die weiteren Vorlesungen verschieben sich um eine Woche
  • Für die Vorlesung wird Microsoft Teams benutzt, wer noch keine Einladung erhalten hat, meldet sich bitte bei mir

Sonstiges

Für alle weiteren Fragen zwischendurch bin ich über die links stehende Kanäle erreichbar.

Die Inhalte und Materialien, die ich für die Vorlesung erstellt habe, sind unter CC-BY-SA verfügbar. Anders formuliert: Ich freue mich, wenn ihr sie benutzt mindestens ebenso sehr, wie über die Quellenangabe.