lesson_5 Flashcards

(50 cards)

1
Q

Welche drei Hauptkategorien der Software-Qualitätssicherung gibt es laut Vorlesung?

A

Organisatorische konstruktive und analytische Qualitätssicherung.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was sind Beispiele für organisatorische Maßnahmen in der Software-QS?

A

Festlegung von Verantwortlichkeiten Richtlinien (Guidelines) und die Durchführung von Audits.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Nennen Sie Beispiele für konstruktive Maßnahmen der Qualitätssicherung.

A

Nutzung von Prozessmodellen Information Hiding und der Einsatz moderner Programmiersprachen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Welche Aktivitäten gehören zur analytischen Qualitätssicherung?

A

Tests Reviews und die Erhebung von Metriken.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Wie wird die Software-Inspektion innerhalb der Qualitätssicherungs-Aktivitäten klassifiziert?

A

Sie gehört zu den statischen manuellen Prüfmethoden der analytischen Qualitätssicherung.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Was ist die grundlegende Definition eines Reviews?

A

Ein strukturierter Prozess zur Analyse eines Objekts durch Personen mit vorab definiertem Ziel.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Warum gilt ein klassisches Review als schwergewichtig?

A

Weil es teuer zeitaufwendig und organisatorisch aufwendig ist sowie Potenzial für soziale Konflikte bietet.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Was sind die vier zentralen Erkenntnisziele bei der Analyse eines Review-Objekts?

A

Prüfung auf benötigte Eigenschaften Bestimmung der Qualität Einhaltung des State-of-the-Art und Verständlichkeit für Externe.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Welches Wissen generiert eine Organisation durch Reviews über das Produkt hinaus?

A

Erkenntnisse über die Prozessqualität die Fähigkeiten der Organisation und die Identifikation besserer Lösungsoptionen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Warum ist eine konstruktive Arbeitskultur bei Reviews essenziell?

A

Da Fehler von Personen öffentlich im Team identifiziert werden und das Ziel die Fehlerbehebung statt gegenseitiger Beschuldigung sein muss.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

In welche zwei Hauptphasen lässt sich der Software-Review-Prozess unterteilen?

A

In Pre-review activities (Vorbereitung) und Post-review activities (Nachbereitung).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Welche Schritte gehören zu den Pre-review activities?

A

Planung Gruppen-Vorbereitung und die individuelle Vorbereitung.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Welche Schritte folgen nach dem eigentlichen Review-Meeting?

A

Fehlerkorrektur Verbesserung und abschließende Follow-up-Prüfungen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Was sind die Hauptaufgaben des Moderators in einem Review?

A

Planung und Leitung des Reviews Auswahl der Teammitglieder sowie die Einnahme einer neutralen Expertenrolle.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Welche Verantwortung trägt der Autor während eines Reviews?

A

Er stellt das zu prüfende Objekt bereit und ist primär für dessen Grundqualität verantwortlich.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Was ist die Aufgabe des Scribes (Protokollanten)?

A

Dokumentation aller gefundenen Probleme und Erstellung des offiziellen Review-Berichts.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Wie viele Reviewer sollten idealerweise einem Review-Team angehören?

A

Mindestens zwei und maximal fünf Reviewer pro Team.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Welche Rolle spielt der Manager im Kontext von Reviews?

A

Er beauftragt das Review übernimmt die Ressourcenplanung und trifft die finale Entscheidung über weitere Maßnahmen.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Was müssen Reviewer während ihrer individuellen Vorbereitung tun?

A

Das Dokument prüfen spezifische Qualitätsaspekte analysieren Probleme identifizieren und Lösungsstrategien vorbereiten.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Welche Werkzeuge unterstützen moderne Reviews bei örtlicher Trennung?

A

Geteilter Zugriff auf Dokumente gemeinsame Annotationstools und interaktive Plattformen für zeitunabhängiges Arbeiten.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Wann sollten zusätzliche Experten zu einem Review eingeladen werden?

A

Wenn spezifische Fragen zu Software-Architektur Fachdomänen oder speziellen Technologien geklärt werden müssen.

22
Q

Wie läuft eine typische Review-Sitzung ab?

A

Der Moderator leitet die schrittweise Inspektion des Objekts während die Reviewer ihre Anmerkungen vortragen.

23
Q

Welche Dokumente für Endnutzer sollten einem Review unterzogen werden?

A

Anforderungen Akzeptanztests und Benutzerhandbücher.

24
Q

Welche Design-Dokumente sind typische Review-Gegenstände?

A

Systementwürfe Subsystem-Designs und Schnittstellenbeschreibungen.

25
Wann ist ein Review von Quellcode besonders kritisch?
Bei hohem Risiko Einsatz neuer Technologien Ergebnissen von Neulingen oder zentralen Artefakten wie Datenbank-Schnittstellen.
26
Welche Code-Teile erfordern aufgrund hoher Qualitätsanforderungen ein Review?
Performance-kritische Teile Code mit hohem Speicherverbrauch oder Segmente mit hohen Auswirkungen bei Fehlfunktionen.
27
Welche Voraussetzungen müssen für ein effizientes Code-Review erfüllt sein?
Verständlicher Code ausreichende Kommentierung sinnvolle Variablennamen und verfügbare Designdokumente.
28
Wie unterstützen Checklisten den Review-Prozess?
Sie dienen als Leitfaden um systematisch nach häufigen Fehlern wie Initialisierungsfehlern oder Logikfehlern zu suchen.
29
Nennen Sie drei Fragen einer Review-Checkliste zum Thema Datenhandhabung.
Wird eine Variable ohne Initialisierung genutzt liegen Array-Zugriffe innerhalb der Grenzen und gibt es hängende Referenzen?
30
Welche Berechnungsfehler sollten im Review mittels Checkliste geprüft werden?
Inkonsistente Datentypen Präzisionsverlust Variablen-Überläufe oder Division durch Null.
31
Was wird bei der Prüfung des Kontrollflusses in einem Review untersucht?
Terminierung von Schleifen Erreichbarkeit von Code-Abschnitten und korrekte Fehlerbehandlung (IO-Errors).
32
Was unterscheidet eine Programminspektion oder ein Peer-Review von einem formalen Review?
Sie sind weniger formal (der kleine Bruder des Reviews) erfordern aber dennoch eine Zeitallokation durch das Management.
33
Welche Objekte können Gegenstand eines Peer-Reviews sein?
Quellcode UML2-Diagramme und Testfälle.
34
Welche Arten von Fehlern werden primär in Programminspektionen gesucht?
Logische Fehler Anomalien fehlende Features und Designschwächen.
35
Warum kann eine Inspektion effektiver als dynamisches Testen sein?
Besonders in frühen Phasen können Fehler direkt im Keim entdeckt werden bevor sie in die Ausführung gelangen.
36
Erklären Sie das Prinzip des Rubber Ducking.
Der Entwickler erklärt seinen Code laut einer Gummiente wobei das Problem oft allein durch das Verbalisieren des Logikflusses erkannt wird.
37
Was ist das Grundkonzept des Peer Programming?
Zwei Personen entwickeln gemeinsam an einem Computer eine Lösung (Vier-Augen-Prinzip).
38
Beschreiben Sie den Prozess des Peer Programmings.
Eine Person schreibt Code und erklärt diesen während die andere Person aktiv zuhört bei Unklarheiten sofort unterbricht und mitdenkt.
39
Was ist das Hauptziel von Peer Programming?
Fehlervermeidung Erreichung einer höheren Code-Qualität und die Diskussion besserer Lösungsstrategien.
40
Welchen organisatorischen Vorteil bietet Peer Programming gegenüber Reviews?
Es kann spontan ohne Genehmigung des Managements und ohne Dokumentations-Overhead eingesetzt werden.
41
Wie rechtfertigt sich der Ressourcenverbrauch von zwei Programmierern beim Peer Programming?
Durch schnellere Lösungsfindung bei komplexen Problemen und Zeitersparnis bei der späteren Fehlersuche.
42
Für welche Art von Code ist Peer Programming besonders empfehlenswert?
Für riskante komplexe Code-Segmente oder bei unklaren Spezifikationen.
43
Wie trägt Peer Programming zum Wissenstransfer bei?
Durch den Austausch von Kenntnissen über das Produkt Schnittstellen Programmiersprachen und Tooling zwischen den Partnern.
44
Warum ist die Wirkung von Peer Programming schwer wissenschaftlich zu beweisen?
Da Effekte wie Wissenszuwachs und verbesserte soziale Interaktion schwer messbar sind und oft auf persönlicher Erfahrung basieren.
45
Welche Rolle spielt die Konsistenzprüfung bei statischen Checks?
Sie stellt sicher dass Dokumente und Code-Elemente widerspruchsfrei zueinander und zu den Guidelines passen.
46
Was ist das Ziel von sprachspezifischen Checklisten?
Die Prüfung auf sprachtypische Fallstricke wie Singleton-Patterns in Java oder Pointer-Typen in C.
47
Was versteht man unter dynamischen Checks im Gegensatz zu Reviews?
Dynamische Checks erfordern die Ausführung des Programms (z. B. Testing Profiling) während Reviews statisch sind.
48
Welche Bedeutung hat die Unabhängigkeit des Moderators?
Sie stellt sicher dass das Review-Ergebnis nicht durch persönliche Interessen des Autors oder hierarchischen Druck verfälscht wird.
49
Warum sollten Review-Teams heterogen zusammengestellt sein?
Unterschiedliche Hintergründe der Mitglieder erhöhen die Wahrscheinlichkeit verschiedene Arten von Fehlern und Schwachstellen zu entdecken.
50
Was ist ein Review-Report?
Ein vom Scribe erstelltes Dokument das alle im Review identifizierten Probleme konsolidiert und als Basis für die Nachbesserung dient.