Technische Universität Braunschweig
  • Studium & Lehre
    • Vor dem Studium
      • Informationen für Studieninteressierte
      • Studiengänge von A-Z
      • Bewerbung
      • Fit4TU - Self-Assessment
      • Beratungsangebote für Studieninteressierte
      • Warum Braunschweig?
    • Im Studium
      • Erstsemester-Hub
      • Semestertermine
      • Lehrveranstaltungen
      • Studien-ABC
      • Studienorganisation
      • Beratungsnavi
      • Zusatzqualifikationen
      • Finanzierung und Kosten
      • Besondere Studienbedingungen
      • Gesundheit & Wohlbefinden
      • Campusleben
    • Nach dem Studium
      • Exmatrikulation und Vorlegalisation
      • Nach dem Abschluss
      • Alumni*ae
    • Strategien und Qualitätsmanagement
      • Qualitätsmanagement
      • Systemakkreditierung
      • Studienqualitätsmittel
      • TU Lehrpreis
    • Für Lehrende
      • Informationen für Lehrende
      • Konzepte
      • Lernmanagementsystem Stud.IP
    • Kontakt
      • Studienservice-Center
      • Sag's uns - in Studium und Lehre
      • Zentrale Studienberatung
      • Immatrikulationsamt
      • Abteilung 16 - Studium und Lehre
      • Career Service
      • Projekthaus
  • Forschung
    • Forschungsprofil
      • Forschungsschwerpunkte
      • Exzellenzcluster der TU Braunschweig
      • Forschungsprojekte
      • Forschungszentren
      • Forschungsprofile der Professuren
    • Frühe Karrierephase
      • Förderung in den frühen Phasen der wissenschaftlichen Karriere
      • Promotion
      • Postdocs
      • Nachwuchsgruppenleitung
      • Junior Professur und Tenure-Track
      • Habilitation
      • Service-Angebote für Wissenschaftler*innen
    • Forschungsdaten & Transparenz
      • Transparenz in der Forschung
      • Forschungsdaten
      • Open Access Strategie
      • Digitale Forschungsanzeige
    • Forschungsförderung
      • Netzwerk Forschungsförderung
      • Datenbanken und Stiftungen
    • Kontakt
      • Forschungsservice
      • Graduiertenakademie
  • International
    • Internationale Studierende
      • Warum Braunschweig?
      • Studium mit Abschluss
      • Austauschstudium
      • TU Braunschweig Summer School
      • Geflüchtete
      • International Student Support
      • International Career Service
    • Wege ins Ausland
      • Studium im Ausland
      • Praktikum im Ausland
      • Lehren und Forschen im Ausland
      • Arbeiten im Ausland
    • Internationale Forschende
      • Welcome Support for International Researchers
      • Service für gastgebende Einrichtungen
    • Sprachen und interkulturelle Kompetenzvermittlung
      • Deutsch lernen
      • Fremdsprachen lernen
      • Interkulturelle Kompetenzvermittlung
    • Internationales Profil
      • Internationalisierung
      • Internationale Kooperationen
      • Strategische Partnerschaften
      • Internationale Netzwerke
    • International House
      • Wir über uns
      • Kontakt & Sprechstunden
      • Aktuelles und Termine
      • International Days
      • 5. Studentische Konferenz: Internationalisierung der Hochschulen
      • Newsletter, Podcast & Videos
      • Stellenausschreibungen
  • Die TU Braunschweig
    • Unser Profil
      • Ziele & Werte
      • Ordnungen und Leitlinien
      • Allianzen & Partner
      • Hochschulentwicklung 2030
      • Internationale Strategie
      • Fakten & Zahlen
      • Unsere Geschichte
    • Karriere
      • Arbeiten an der TU
      • Stellenmarkt
      • Berufsausbildung an der TU
    • Wirtschaft & Unternehmen
      • Unternehmensgründung
      • Freunde & Förderer
    • Öffentlichkeit
      • Veranstaltungskalender
      • Check-in für Schüler*innen
      • Hochschulinformationstag (HIT)
      • CampusXperience
      • Kinder-Uni
      • Das Studierendenhaus
      • Gasthörer*innen & Senior*innenstudium
      • Nutzung der Universitätsbibliothek
    • Presse & Kommunikation
      • Stabsstelle Presse und Kommunikation
      • Medienservice
      • Ansprechpartner*innen
      • Tipps für Wissenschaftler*innen
      • Themen und Stories
    • Kontakt
      • Allgemeiner Kontakt
      • Anreise
      • Für Hinweisgeber
  • Struktur
    • Leitung & Verwaltung
      • Das Präsidium
      • Stabsstellen
      • Verwaltung
      • Organe, Statusgruppen und Kommissionen
    • Fakultäten
      • Carl-Friedrich-Gauß-Fakultät
      • Fakultät für Lebenswissenschaften
      • Fakultät Architektur, Bauingenieurwesen und Umweltwissenschaften
      • Fakultät für Maschinenbau
      • Fakultät für Elektrotechnik, Informationstechnik, Physik
      • Fakultät für Geistes- und Erziehungswissenschaften
    • Institute
      • Institute von A-Z
    • Einrichtungen
      • Universitätsbibliothek
      • Gauß-IT-Zentrum
      • Zentrale Personalentwicklung
      • International House
      • Projekthaus
      • Transferservice
      • Hochschulsportzentrum
      • Einrichtungen von A-Z
    • Studierendenschaft
      • Studierendenparlament
      • Fachschaften
      • Studentische Wahlen
    • Lehrer*innenbildung
      • Lehrer*innenfortbildung
      • Forschung
    • Chancengleichheit
      • Gleichstellung
      • Familie
      • Diversität
    • Kontakt
      • Personensuche
  • Suche
  • Schnellzugriff
    • Personensuche
    • Webmail
    • cloud.TU Braunschweig
    • Messenger
    • Mensa
    • TUconnect (Studierendenportal)
    • Lehrveranstaltungen
    • Im Notfall
    • Stud.IP
    • UB Katalog
    • Status GITZ-Dienste
    • Störungsmeldung GB3
    • IT Dienste
    • Informationsportal (Beschäftigte)
    • Beratungsnavi
    • Linksammlung
    • DE
    • EN
    • Instagram
    • YouTube
    • LinkedIn
    • Mastodon
    • Bluesky
Menü
  • Struktur
  • Fakultäten
  • Carl-Friedrich-Gauß-Fakultät
  • Institute
  • Institut für Softwaretechnik und Fahrzeuginformatik
  • Lehre
Logo Institut für Softwaretechnik und Fahrzeuginformatik der TU Braunschweig

Softwarequalität 1

Please notice!

This lecture is the successor to the "Processes and methods for the testing of software" lecture. If you already have taken the exam in PMTS, you can not take the exam in SQ1. The topics of the lecture have been updated.

Dozent: Dr.-Ing. habil. Sandro Schulze

Modulnummer: INF-SSE-39

Inhalt & Lernziele

Die Vorlesung stellt den Aspekt von Softwarequalität im Softwareentwicklungsprozess in den Mittelpunkt und fokussiert dabei speziell auf das Thema des Softwaretestens. Dabei werden sowohl grundlegende als auch weiterführende Techniken und Konzepte des Testens und deren Anwendung eingeführt.

Inhalt

Im Einzelnen werden folgende Themen abgedeckt:

  • Testprozess (& dessen Beziehung zum Software-Entwicklungsprozess)
  • Grundlagen & Prinzipien des Software-Testens
  • dynamische Testtechniken (Whitebox & Black-Box Testen)
  • Modellbasiertes Testen
  • Design-by-contract
  • Testcodequalität & Testgetriebene Entwicklung
  • Praktisches Testen mit JUnit & Mockito

Lernziele

  • Die Studierenden sind in der Lage, Unit-, Integrations- und Systemtests mit aktuell vorhandenen Tools (z. B. JUnit, Mockito und JaCoCo) zu erstellen, die komplexe Softwaresysteme erfolgreich testen.
  • Die Studierenden sind in der Lage, Testfälle abzuleiten, die sich mit Ausnahme-, Grenz- und Schlechtwetterfällen befassen, indem sie verschiedene Techniken anwenden (z. B. Grenzanalyse, zustandsbasiertes Testen, Entscheidungstabellen).
  • Die Studierenden sind in der Lage, die Effizienz der entwickelten Testfälle anhand verschiedener Testadäquanzmetriken (z. B. Anweisungs-, Zweig-, Zustands- und MC/DC-Abdeckung) zu messen und zu reflektieren.
  • Die Studierenden sind in der Lage, über die Grenzen aktueller Testtechniken nachzudenken, wann sie in einem bestimmten Kontext angewendet werden sollten und wann nicht, und testbare Softwaresysteme zu entwerfen.
  • Die Teilnehmer sind in der Lage, wartbaren Testcode zu schreiben, indem sie bekannte Testcode Smells (z. B. Assertion Roulette, Slow oder Obscure Tests) vermeiden.

Die Unterrichtssprache ist Englisch.
Teile der Vorlesung enstprechen den Inhalten des ISTQB Certified Tester.

Termine

In der Regel finden die Übungen montags statt, also zu dem Termin, welcher eigentlich für die Vorlesung vorgesehen ist. Infos zu Zeit & Raum finden Sie im Stud.IP unter folgendem Link: SQ1 -- Stud.IP

In einigen wenigen Fällen weichen wir auf den Mittwoch (13.15 - 14.45 Uhr) aus (Details entnehmen Sie bitte dem Zeitplan).

Die Vorlesungen selbst werden online asynchron angeboten, mehr Details dazu im Abschnitt Ablauf & Material.

Ablauf und Vorlesungsmaterialien

Die Veranstaltung Softwarequalität besteht aus eine Vorlesung und einer Übung und wird nach der Methode des integrierten Lernens (Blended Learning) durchgeführt.

Konkret bedeutet das, dass es einen Selbstlernanteil (hier: die Vorlesung) gibt und einen Präsenzanteil (hier: die Übung). Details zum Ablauf der beiden Teile finden Sie nachstehend.

Vorlesung

Die Vorlesung ist als Selbstlernphase konzipiert. Das bedeutet, dass es jede Woche ein Thema gibt, welches über kurze Lehrvideos bereitgestellt wird. Ergänzend dazu gibt es gelegentlich auch noch Zusatzmaterial in Form von Artikeln, Blog-Einträgen aber auch Tutorials oder Hands-On Aufgaben im Stud.IP.

Übung

Die Übung findet in Präsenz statt und dient dazu, das jeweilige Thema zu vertiefen, das Gelernte anzuwenden und darüber hinaus offene Fragen zu dem jeweiligen Thema zu diskutieren.

Neben Hands-On Aufgaben, welche in der Übung gelöst werden besteht die Übung aus zwei integralen Bestandteilen: Quizzes und einem kleinen Projekt.

Quizzes

Zu jedem Thema gibt es ein Online-Quiz, welches vor der jeiweligen Übung gelöst werden muss. Diese Quizzes beziehen sich auf das aktuelle Thema der Vorlesung.
Quizzes werden zeitgelich mit den Lehrvideos zur Verfügung gestellt, so dass genügend Zeit bleibt, um jedes Quiz vor der Übung zu lösen (~4-5 Tage).
Die Ergebnisse der Tests werden dann in der Übung besprochen und diskutiert.
Neben der Vertiefung des jeweiligen Themas dienen die Quizzes auch als Vorbereitung auf die Prüfung.

Projekt (Labwork)

Ein wesentliches Ziel der Lehrveranstaltung ist es, die erlernten Techniken auch selbstständig in der Praxis anzuwenden. Dazu gibt es im Rahmen der Übung ein kleines Projekt, eine Java-Implementierung des bekannten Pacman-Spiels, welches im Laufe des Semesters Stück für Stück um unterschiedliche Testfällen erweitert werden soll.
Insgesamt gibt es vier Meilensteine, wobei innerhalb eines Meilensteines immer die gerade aktuell behandelten Techniken angewandt werden müssen.
Sie dürfen Gruppen von zwei Studierenden bilden, um an dem Projekt zu arbeiten und die Aufgaben gemeinsam zu lösen.
Für besonders gute Lösungen gibt es Bonuspunkte für die Klausur.

Vorlesungsmaterial

Jede Woche wird ein neues Thema behandelt (siehe Zeitplan). Dazu werden eine Woche vorher alle Materialien, also Lehrvideos, Quizzes und sonstige Materialien online im Stud.IP-Kurs zur Verfügung gestellt.

Darüber hinaus werden auch die Projektaufgaben für den jeweiligen Meilenstein in regelmäßigen Abständen in Stud.IP zur Verfügung gestellt. Heißt: nach Abschluss eines Meilensteins werden die Aufgaben für den nächsten Meilenstein bereitgestellt. Die Bearbeitungszeit beträgt jeweils ca. 3 Wochen.

Neben der Übung gibt es auch in Stud.IP ein Forum, in dem Fragen gestellt und über Themen und Aufgaben diskutiert werden kann.

Prüfung

Am Ende des Semesters gibt es eine Präsenzklausur von 90 Minuten.

Diese wir als Multiple-/Single-Choice Klausur konzipiert wobei die Art der Fragen an die Fragen in den Quizzes angelehnt ist.

 

Termin Wiederholungsklausur Wintersemester 2022/2023:

Datum: 27.02.2023
Uhrzeit: 9.30-11 Uhr
Raum SN 20.2

Termin Wiederholungsklausur Sommersemester 2023:

Datum: 17.08.2023
Uhrzeit: 8.30-10.00 Uhr
Raum: PK 11.2

Literatur

  • Andreas Spillner & Tilo Linz, Basiswissen Softwaretest - Aus und Weiterbildung zum Certified Tester, 5.Auflage, 2012. (Grundlage der ISTQB Zertifizierung, deckt große Teile der Vorlesung ab.)
  • Peter Liggesmeyer, Software-Qualität, 2.Auflage, 2009. (Standardwerk im Bereich Testen)
  • D. Graham, E. van Veenendaal, I.Evans, R.Black, Foundations of Software Testing -- ISTQB Certification
  • Andre Hunt, David Thomas, Pragmatic Unit Testing (in Java with JUnit)
  • Roy Osherove, The Art of Unit Testing
  • Mauricio Aniche, Effective Software Testing -- A developer's guide

Zeitplan

Die nachfolgende Tabelle enthält den Zeitplan für das Semester, zusammen mit den jeweiligen Themen und Informationen zur Vorbereitung bzw. zu Abgaben in der jeweiligen Woche.

Die Abgabefristen für das Projekt entnehmen Sie bitte dem Projekt-Leitfaden (Labwork).
Abgabefrist für die Quizzes ist immer 8 Uhr am Tag der Übung.

Bitte beachten Sie, dass sich der Zeitplan ändern kann.

Tag Datum Typ Thema Vorbereitung Abgabe
Mittwoch 20.04.22 0.Übung Einführung Tutorial "Getting Started with Git"  
Montag 25.04.22 1.Übung Grundlagen Software-Testen Paper: "Principles of Software Testing" Quiz 1
Montag 02.05.22 KEINE ÜBUNG --- --- ---
Montag 09.05.22 2.Übung Funktionales (Black-Box) Testen --- Projekt (Teil 0), Quiz 2
Mittwoch 18.05.22 3.Übung Strukturtest (White-Box) Blog: "Test Coverage -- Lessons learned from JUnit" Quiz3
Montag 23.05.22 4.Übung Teststufen & Mock-Objekte Paper: "Getting what you measure -- pitfalls in using metrics" Quiz 4
Montag 30.05.22 5.Übung Testcodequalität --- Projekt (Teil 1), Quiz 5
Montag 06.06.22 KEINE ÜBUNG ---    
Montag 13.06.22 6.Übung Modellbasiertes Testen I -- Entscheidungstabellen --- Quiz 6
Montag 20.06.22 7.Übung Modellbasiertes Testen II -- Zustandsdiagramme --- Quiz 7
Montag 27.06.22 8.Übung Design-by contract --- Projekt (Teil 2), Quiz 8
Montag 04.07.22 9.Übung Testprozess --- Quiz 9
Montag 11.07.22 10.Übung --- Guest Lecture, Warda Khan (IAV), "Software Testing -- Insights and Solutions from the Industry" ---
Montag 18.07.22 11.Übung KEINE ÜBUNG --- Projekt (Teil 3)
Mittwoch 27.07.22 12.Übung Zusammenfassung & Fragen --- ---
Bildnachweise dieser Seite

Für alle

Stellen der TU Braunschweig
Jobbörse des Career Service
Merchandising
Sponsoring- & Spendenleistungen
Drittmittelgeförderte Forschungsprojekte
Vertrauenspersonen für Hinweisgeber

Für Studierende

Semestertermine
Lehrveranstaltungen
Studiengänge von A-Z
Informationen für Erstsemester
TUCard

Interne Tools

Status GITZ-Dienste
Handbuch für TYPO3 (Intern)
Corporate Design-Toolbox (Intern)
Glossar (DE-EN)
Meine Daten ändern
Hochschulöffentliche Bekanntmachungen

Kontakt

Technische Universität Braunschweig
Universitätsplatz 2
38106 Braunschweig
Postfach: 38092 Braunschweig
Telefon: +49 (0) 531 391-0

Anreise

© Technische Universität Braunschweig
Impressum Datenschutz Barrierefreiheit

Zur anonymisierten Reichweitenmessung nutzt die TU Braunschweig die Software Matomo. Die Daten dienen dazu, das Webangebot zu optimieren.
Weitere Informationen finden Sie in unserer Datenschutzerklärung.