IUBH Qualitätssicherung im Softwareprozess IQSS
IUBH Qualitätssicherung im Softwareprozess IQSS
IUBH Qualitätssicherung im Softwareprozess IQSS
Kartei Details
Karten | 124 |
---|---|
Sprache | Deutsch |
Kategorie | Informatik |
Stufe | Universität |
Erstellt / Aktualisiert | 14.02.2025 / 17.02.2025 |
Weblink |
https://card2brain.ch/box/20250214_iubh_qualitaetssicherung_im_softwareprozess_iqss
|
Einbinden |
<iframe src="https://card2brain.ch/box/20250214_iubh_qualitaetssicherung_im_softwareprozess_iqss/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Was ist Softwarequalität?
Softwarequalität ist die Gesamtheit der Merkmale und Merkmalswerte eines Softwareprodukts, die sich auf dessen Eignung beziehen, festgelegte Erfordernisse zu erfüllen.
Was ist Softwarequalität nach DIN-‐ISO 9126 ?
- Kann die Qualität nur auf Basis der Spezifikation bestimmt werden
- Problem dabei häufig: tatsächliche Erfordernisse ≠ festgelegte Erfordernisse
Qualitätsmanagement (QM)?
- Alle organisierten Maßnahmen, die der Verbesserung der Qualität dienen
Aktivitäten im QM?
- QualitätsPlanung: Dokumentation der Qualitätsanforderungen
- QualitätsSicherung (kurz: QS): Sicherstellen, dass festgelegte Qualitätsanforderungen erfüllt werden
- QualitätsLenkung: Steuerung und Kontrolle von QS-Aktivitäten
- QualitätsVerbesserung: Änderungen an Produkten- und Prozessen zur Verbesserung des Qualitätsniveaus
Kategorien von QM-Maßnahmen?
- Konstruktives Qualitätsmanagement
- Analytisches Qualitätsmanagement
Konstruktives Qualitätsmanagement?
- A priori
- Fehler während Entwicklung vermeiden
- technische Maßnahmen
- organisatorische Maßnahmen
- zwischenmenschliche Maßnahmen
Analytisches Qualitätsmanagement?
- Prüfung des Qualitätsniveaus von im SW-Prozess erstellten Artefakten
- Systematisches Identifizieren von Fehlern nach der Erstellung
- Statische (analysierende) Verfahren
- Dynamische (testende) Verfahren
Prinzipien der SW-Qualitätssicherung (Balzert)?
- Produkt- und prozessabhängige Qualitätszielbestimmung
- Maximale konstruktive Qualitätssicherung
- Frühzeitige Fehlerentdeckung und behebung
- Entwicklungsbegleitende, integrierte Qualitätssicherung
Produkt- und prozessabhängige Qualitätszielbestimmung?
- Festlegen von konkreten Qualitätszielen als Richtlinien zur Gestaltung von Qualität
- Unterscheiden sich von Projekt zu Projekt
Maximale konstruktive Qualitätssicherung?
- Alle sinnvollen Maßnahmen zur Vermeidung von Fehlern sollten ergriffen werden
- Hohe Produktqualität durch hohe Prozessqualität
Frühzeitige Fehlerentdeckung und behebung?
- Früh erkannte Fehler sind einfacher zu beseitigen als später erkannte
- QS-Aktivitäten so früh wie möglich im Prozess beginnen
Entwicklungsbegleitende, integrierte Qualitätssicherung?
- QS-Aktivitäten begleitend zur Entwicklung, nicht erst am Ende
Grundsätze in Softwaretests (Grechenig)?
- Testen zeigt die Anwesenheit von Fehlern
- Vollständiges Testen ist nicht möglich
- Testen ist abhängig vom Umfeld
- Trugschluss: Keine Fehler = brauchbares System
Testen zeigt die Anwesenheit von Fehlern?
- Ausführliches Testen reduziert die Wahrscheinlichkeit von unentdeckten Fehlern
- Fehlerfreiheit kann jedoch nicht nachgewiesen werden
Vollständiges Testen ist nicht möglich?
- Praktische Durchführung von vollständigen Tests ist in der Regel nicht möglich
- Sofwaretests immer Stichproben
- Sorgfältige und bewusste Erstellung von Tespällen erforderlich
Häufung von Fehlern?
- Großteil der Fehler häufig nur in wenigen Komponenten
Testen ist abhängig vom Umfeld?
- QS-Aktivitäten werden spezifisch auf Grundlage der Anforderungen an das System bestimmt und umgesetzt
Was kann getestet werden?
- fachliche Anforderungen
- technische Spezifikationen
- Architekturbeschreibungen
- Testfälle
Dynamische Tests sind jedoch nur bei ausführbaren Artefakten möglich. Alle anderen Artefakte werden durch statische Testverfahren geprüft.
Quantitativen Qualitätssicherung?
- Aussagen über die Qualität eines Systems oder Prozesses anhand von Kennzahlen
- Die tatsächlich gemessenen Istwerte werden dazu mit den Sollwerten verglichen.
Unabhängigen Qualitätssicherung?
- Überprüfung ohne Abhängigkeiten von individuellen Interessen
- Soll Programmcode von dem Team getestet werden, das den Code erstellt, wird häufig die für die Qualitätssicherung vorgesehene Zeit nicht in dem Maße für QS genutzt, wie es erforderlich ist, sondern es werden eher weitere Funktionen implementiert.
- Wird die QS allerdings vollständig aus der Verantwortung des Entwicklungsteams genommen, lässt sich häufig eine nachlassende Sorgfalt bei der Entwicklung beobachten, denn für das Finden von Fehlern sind ja „die anderen“ zuständig.
Wiederholungen haben keine Wirksamkeit?
- Die mehrfache Ausführung der gleichen Testfälle mit den gleichen Eingabedaten im gleichen Systemzustand und auf Basis des gleichen Datenbestands sowie ohne Anpassungen am Programmcode erzielten keine Wirkung, die über eine einmalige Ausführung der Testfälle hinausgeht.
Prozessorientiertes Qualitätsmanagement?
- Steuerung der Qualität des Softwareprozesses.
- Im Fokus Durchführungsqualität, Einsatz der vorgesehenen Techniken und Methoden.
- Das prozessorientierte Qualitätsmanagement erfolgt begleitend zum Softwareprozess
- Kontinuierliche Bewertung und gegebenenfalls Verbesserung der Prozessqualität.
- Wichtige Voraussetzung ist das Qualitätsbewusstsein der Teammitglieder.
Produktorientiertes Softwarequalitätsmanagement?
- Überprüft das Softwareprodukte auf Qualitätsmerkmale
- Erfüllung von Güte bedingungen die von externen Zertifizierungsstellen geprüft und bestätigt werden.
- Umfassen sowohl konstruktive Maßnahmen, als auch analytische Maßnahmen
Qualitätsplanung und Qualitätsziele?
- Konkrete Qualitätsziele festlegen
- Vorgaben zur Organisation und Durchführung von Maßnahmen zur Qualitätssicherung.
- Möglichst kostenoptimal
- Die Qualitätsplanung erfolgt in frühen Phasen des Projekts.
- Qualitätsziele mit Hilfe eines Qualitätsmodells bestimmen und zu jedem Qualitätsziel entsprechende Qualitätsindikatoren ableiten.
Planung der organisatorischen Erreichung von Qualität?
Wer soll die Qualität sichern?
Was soll qualitätsgesichert werden?
Wann soll die Qualität gesichert werden?
Wie soll die Qualität gesichert werden?
Wer?
Welche Teammitglied welche Rollen in Bezug auf das Qualitätsmanagement und welche Aufgaben dem Zuständigkeitsbereich der einzelnen Rollen zugeordnet sind.
Was?
Zu jedem Ergebnistyp, muss festgelegt werden, welche Kriterien zu dem erzeugten Artefakt erfüllt sein müssen, damit der geforderte Qualitätsgrad vorliegt.
Messbare Qualitätsindikatoren müssen auf Grundlage der als relevant festgelegten Qualitätsziele bestimmt und dokumentiert werden.
Wann?
Die verschiedenen QS-Aktivitäten müssen in einen zeitlichen Bezug zu den konstruktiven Aktivitäten im Softwareprozess gesetzt werden.
Neben der gezielten Festlegung von Aktivitäten werden häufig auch sogenannte Quality Gates definiert.
Ein Quality Gate ist ein bestimmter Zeitpunkt im Softwareprozess, zu dem definierte Eigenschaften der vorliegenden Artefakte explizit geprüft werden müssen. Sind eine/mehrere geforderte Eigenschaften nicht erfüllt, können die Folgeaktivitäten nicht begonnen werden.
Wie?
- Konkrete Techniken und Methoden zur Qualitätssicherung bzw. Testfallerstellung bestimmen
- Techniken werden ausgewählt, mit denen nach aktuellem Kenntnisstand eine kostenoptimale Systemqualität erzielt werden kann. Im Verlauf Projektsituation anpassen.
Qualitätsziele und Qualitätsmodell?
- Qualitätsziele bilden den Orientierungspunkt, an dem sich die einzelnen QSAktivitäten orientieren müssen.
- Die Grundidee eines Qualitätsmodells ist die Zergliederung eines abstrakten Oberbegriffs „Qualität“ in verschiedene Unterbegriffe, bis eine konkrete messbare Qualitätseigenschaft formuliert werden kann.
SMART-Modell?
S = spezifisch: Qualitätsziele sollen deutlich beschrieben und definiert sein.
M = messbar (qualitativ, quantitativ): Die Umsetzung der Qualitätsziele muss geprüft werden können.
A = akzeptabel: Die Qualitätsziele müssen von den Stakeholdern des Projekts akzeptiert werden, dazu zählt auch die Akzeptanz der Prüfmethode.
R = realistisch: Qualitätsziele müssen unter Berücksichtigung der fachlichen und organisatorischen Rahmenbedingungen erreicht werden können.
T = terminiert: Qualitätsziele müssen innerhalb eines vorgesehenen Zeitrahmens, z. B. in einem bestimmten Release umgesetzt werden.
Qualitätssicherung und Qualitätsverbesserung?
Aktivitäten für die Qualitätssicherung und -verbesserung nach organisationsspezifischen Vorgaben, jedoch für jedes einzelne Projekt konkret durch die Projektleitung zusammen mit dem Qualitätsmanager festgelegt.
*K: Konstruktives Qualitätsmanagement
*1: Prüfen der fachlichen Anforderungen
*2: Quality Gates
*3: Prüfen der technischen Spezifikation
*4: Bewertung der geplanten Architektur
*5: Testfallerstellung
*6: Komponententests
*7: Integrationstest
*8: Systemtest
*9: Abnahmetest
*2: Prüfen der technischen Spezifikation
Quality Gates?
- Zu einem bestimmten Zeitpunkt im Softwareprozess sicherstellen, dass die erzeugten Artefakte vorher festgelegte Eigenschaften erfüllen.
- Häufig werden Quality Gates auch aus Gründen der Transparenz und Nachvollziehbarkeit der Qualitätsentwicklung eingesetzt.
- Ein Quality Gate kann passiert werden, wenn die vorher festgelegten Kriterien erfüllt wurden.
- Neben der Qualität der erzeugten Artefakte wird mit Quality Gates häufig auch die Einhaltung von Vorgaben und Richtlinien an den Softwareprozess geprüft.
Qualitätslenkung?
- Die Aktivitäten zu Qualitätslenkung dienen der Verbesserung der Qualität der QS-Aktivitäten.
- Die QS-Aktivitäten müssen aktiv gesteuert werden.
- Kontinuierliche Beobachtung der Prozess- und Produktqualität, Reaktion auf Änderungen des Qualitätsgrades in Form von Anpassungen der QS-Vorgaben sowie die Prüfung der tatsächlichen QS-Qualität.
- Die Erkenntnisse aus den Aktivitäten zur Qualitätslenkung beeinflussen die Vorgaben und Richtlinien der Qualitätsplanung
Total Quality Management (TQM)?
- Das TQM bezieht explizit alle Mitarbeiter einer Organisation bei der Qualitätslenkung mit ein.
- Die Erreichung einer hohen Produktqualität ist beim TQM das höchste Ziel aller Mitarbeiter einer Organisation.
- Allein der Kunde entscheidet über den erreichten Qualitätsgrad.
- Hohe Qualität = langfristigen Geschäftserfolg durch die Zufriedenheit der Kunden .
- Zum Total Quality Management gibt es keinen Standardprozess und eine Standardaktivitäten.
- Es handelt sich um ein Managementprinzip zur Gestaltung von Organisationen und Abläufen.
- Zum TQM lassen sich folgende Prinzipien beschreiben:
- Prinzip der Kundenorientierung
- Prinzip des Primats der Qualität
- Prinzip der Zuständigkeit aller Mitarbeiter
- Prinzip der ständigen Verbesserung
- Prinzip des internen Kunden-Lieferanten-Verhältnisses
- Prinzip der Prozessorientierung
Prinzip der Kundenorientierung?
- Zufriedene Kunden sind das oberste Ziel, die Wahrnehmung des Kunden entscheidet über die Qualität des Systems.
- Dem Entwicklungsteam müssen die tatsächlichen Anforderungen des Kunden und der Nutzen des Systems für den Kunden bekannt sein.
- Das erfordert in der Regel eine Unterstützung des Kunden bei der Formulierung der tatsächlichen Anforderungen.
Prinzip des Primats der Qualität?
- Alle Prozesse werden genauso durchgeführt, wie sie definiert sind.
- Jede Person, die an der Ausführung des Prozesses beteiligt ist, erledigt ihre Aufgaben von Beginn an richtig
- Nacharbeiten und Verschwendung von Ressourcen sollen vermieden werden.
- Werden Fehler identifiziert, muss deren Ursache ermittelt und beseitigt werden.
- Qualitätsverbesserungen werden durch die Optimierung des festgelegten Softwareprozesseserreicht.
Prinzip der Zuständigkeit aller Mitarbeiter?
- Jeder am Projekt beteiligte Mitarbeiter, ist für die Erreichung eines angemessenen Qualitätsgrades mitverantwortlich.
- Die Führungskräfte müssen den Mitarbeitern ein möglichst fehlerfreies Arbeiten ermöglichen
- Dafür kann die Verantwortung nicht beispielsweise an eine QS-Abteilung delegiert werden.
Prinzip der ständigen Verbesserung?
- Durch kleine aber kontinuierliche Schritte wird die Prozessqualität stetig verbessert
- Dazu können und müssen prozessbegleitend Schwachstellen und Verbesserungsvorschläge von allen Mitarbeitern identifiziert und kommuniziert werden.
Prinzip des internen Kunden-Lieferanten-Verhältnisses?
- Die interne Leistungserbringung wird vergleichbar organisiert wie ein externes Kunden-Lieferanten-Verhältnis.
- Erbrachte Leistungen werden abgenommen und übergeben, wie es für einen externen Kunden der Fall wäre.