Vorlesung Softwarequalität im Sommersemester 2021

6 minute read

Im Sommersemester 2021 gibt es wieder der Vorlesung Softwarequalität im Masterstudiengang Informatik an der Westsächsischen Hochschule Zwickau. Die Vorlesung findet jeden zweiten Freitag von 9-15 Uhr statt.

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

Wichtig: Prüfungsvorleistung

Am 18.06.2020 und am 02.07.2020 müssen Gruppen jeweils 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 (26.03.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

Vorlesung 2 (23.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 3 (07.05.2020): Die Architektur von Qualität

Inhalte

  • Einführung
  • Kommunikation & Kollaboration
  • Technische Schulden
  • Frameworks & Stile
  • Conway‘s Law
  • AIM42 & Pattern
  • ATAM – Architecture Tradeoff Analysis Method
  • Vorgehensmuster

Vorlesung 4 (21.05.2020): Qualität aus Anwenderperspektive

Inhalte

Vorlesung 5 (04.06.2020): tbd

Inhalte

Vorlesungen 6 (18.06.2020) & 7 (02.07.2020): 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.

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. ;-)

Beispiele zu den Prüfungsfragen

Hinweis: Qualität bezieht sich in diesem Kontext immer auf Software.

  • Nenne und erkläre eine Definition von Qualität für Software.
  • Welche Qualitätsmerkmale beschreibt die ISO 25010?
  • Welche Bereiche gehören zum Qualitätsmanagement?
  • Beschreibe das magische Dreieck der Qualität.
  • Was ist Messen?
  • Was ist eine Metrik und wie kann sie abgebildet werden?
  • Was gehört zur Vorbereitung einer Messung?
  • Warum sollte man Qualität messen?
  • Welche Dimensionen von Qualität beschreibt Sneed?
  • Welche Messobjekte beschreibt Sneed?
  • Beschreibe den E4 Measurement Process.
  • Welche Herausforderungen gibt es bei der Messung von Qualität?
  • Erkläre die zyklomatische Komplexität nach McCabe?
  • Erkläre die Martin-Metrik
  • Welche Perspektiven auf Software-Architektur müssen hinsichtlich der Qualität betrachtet werden?
  • Beschreibe den Prozess einer Architekturbewertung nach ATAM.
  • Nenne und erkläre zwei der Metriken von Chidamber und Kemerer.
  • Wie kann Prozessqualität gemessen werden?
  • Erkläre die Goal-Question-Metrik-Methode mit einem Beispiel.
  • Nenne und erkläre eine Definition für Software-Architektur.
  • Wo ordnet sich Software-Architektur in den anderen Architekturdisziplinen ein?
  • Welche Aufgaben mit Qualitätsbezug haben Software-Architekten?
  • Welche Kommunikationswerkzeuge stehen Architekten zur Verfügung?
  • Was sind technische Schulden?
  • Was besagen Lehman’s Laws?
  • Wie klassifiziert Fowler technische Schulden?
  • Erkläre die 5 Orders of Ignorance anhand eines Beispiels.
  • Erkläre das Technical Debt Balance Sheet.
  • Erkläre Conway’s Law.
  • Wie ist die häufigste Fehlinterpretation von Conways’s Law in der IT?
  • Erkläre Komponenten-Teams und Feature-Teams.
  • Wann solche welche Art von Team genutzt werden?
  • Aus welchen Elementen besteht ein Pattern?
  • Wie können projektspezifische Pattern erkannt werden?
  • Beschreibe die vier Kategorien von Vorgehensmustern für Architektur mit jeweils einem Beispiel.
  • Wie lautet die Definition von Usability?
  • Wie lautet die Definition von User Experience?
  • Beschreibe den menschenzentrierten Gestaltungsprozess.
  • Beschreibe drei wichtige Teile der ISO 9241.
  • Erkläre das ABC-Modell.
  • Erkläre den Prozess des Usability Engineering.
  • Was sind die 7 Grundsätze der Dialoggestaltung nach ISO 9241-110?
  • Erkläre drei Praktiken aus dem Usability Engineering.
  • Erkläre drei wichtige Entwurfsprinzipien.
  • Erkläre drei Beispiele für wichtige Kapitel einer Usability-Guideline.
  • Erkläre GOMS an einem Beispiel.
  • Welche zusätzlichen Aspekte beschreiben Sarodnick & Brau im Vergleich zur ISO 9241?
  • Was war die herausragende Erkenntnis von Landauer & Neilson zu Usability Tests?

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.