Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

1.2 Begriffe Qualitätssicherung von Software Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FOKUS.

Ähnliche Präsentationen


Präsentation zum Thema: "1.2 Begriffe Qualitätssicherung von Software Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FOKUS."—  Präsentation transkript:

1 1.2 Begriffe Qualitätssicherung von Software Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FOKUS

2 Folie 2 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Kapitel 1. Einleitung 1.1 Einleitungsbeispiel 1.2 Begriffe 1.3 Software-Qualitätskriterien

3 Folie 3 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe System, Komponente, Spezifikation System = etwas Zusammengesetztes; Einheit, die mit anderen Einheiten zusammengearbeitet hat, zusammenarbeitet, oder zusammenarbeiten kann. Menge von Komponenten, die miteinander verbunden sind, um zusammenzuarbeiten Komponente = etwas Zusammenzusetzendes; Bestandteil eines Systems Spezifikation = etwas Sichtbargemachtes; Beschreibung der Anforderungen, auf die man sich geeinigt hat

4 Folie 4 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Qualität offizielle Definitionen: DIN 55350, ISO 8402: die Gesamtheit von Merkmalen einer Einheit bezüglich ihrer Eignung, festgelegte und abgeleitete Erfordernisse (Qualitätsanforderungen) zu erfüllen EN ISO 9000:2005: Grad, in dem ein Satz inhärenter Merkmale (eines Objekts) (gegebene) Anforderungen erfüllt Balzert: die Gesamtheit der Merkmale und Merkmalswerte eines Softwareprodukts, die sich auf dessen Eignung beziehen, festgelegte oder vorausgesetzte Erfordernisse zu erfüllen Qualität = Übereinstimmung mit den Anforderungen

5 Folie 5 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Qualitätsanforderungen und -maße Der Begriff Qualität ist zunächst wertneutral Qualitätsanforderungen: die Gesamtheit der Einzelanforderungen an eine Einheit, die die Beschaffenheit dieser Einheit betreffen Anforderungen müssen beschrieben sein! Qualitätsmaße: stellen den Grad der Ausprägung eines Qualitätsmerkmals (numerisch) dar z.B. MTBF für Zuverlässigkeit

6 Folie 6 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Qualitätsmerkmale Eigenschaften einer Funktionseinheit, anhand derer die Qualität beschrieben und beurteilt wird Funktionalität, Zweckdienlichkeit, Robustheit, Zuverlässigkeit, Sicherheit, Effizienz, Benutzbarkeit, Verfügbarkeit, Geschwindigkeit, Änderbarkeit, Portierbarkeit, Prüfbarkeit, … kann aus Teilmerkmalen bestehen Hersteller- und Nutzersicht verschiedene Optimierungsfunktionen oft gegensätzliche Optimierungskriterien die beste Qualität gibt es nicht

7 Folie 7 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Mängel und Fehler nicht erwartungskonformes Verhalten oder Beschaffenheit eines Artefaktes wer hat die Erwartungen? (bug or feature?) nur bezüglich einer Spezifikation (explizit oder implizit) definierbar Abweichung zwischen Ist und Soll, zwischen Implementierung und Spezifikation Fehler: Nichterfüllung einer Anforderung Mangel: nur teilweise Erfüllung

8 Folie 8 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Fehler Übung: Ordnen Sie die folgenden Begriffe Irrtum, Fehler, Fehlerursache, Fehlverhalten, Fehlzustand, Defekt, Versagen, Ausfall error, failure, fault, bug, defect, mistake

9 Folie 9 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Ursache, Wirkung und Folge Standardwerk zur Terminologie: J.C. Laprie, A. Avizienis, H. Kopetz: Dependability: Basic Concepts and Terminology. Springer-Verlag (englisch, deutsch, französisch) Irrtum (error) Ursache Fehlzustand (fault) Wirkung Ausfall (failure)Folge Ausfall kann Fehlerursache für weiteren Fehler sein!

10 Folie 10 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Fehlerursachen Fehlerursache (cause): direkter oder indirekter Vorgänger in der Wirkfolge ein Fehler hat meist viele Ursachen Fehlerursache = Anerkannte oder angenommene Ursache für einen Fehler. Ereignis, das vermieden oder toleriert werden sollte. Auswirkung des Ausfalls eines anderen Systems, das mit dem betrachteten System zusammengewirkt hat oder zusammenwirkt, auf das betrachtete System letztlich ist jeder Fehler auf das menschliche Unvermögen zurückzuführen, die Gesamtheit aller Wirkzusammenhänge zu verstehen. Beispiel: Materialbruch Materialforschung Beispiel: Ariane 5 Flugbahneinfluss Irrtum (error), Fehlhandlung (mistake)

11 Folie 11 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Fehlzustände Fehlzustände treten auf, wenn ein System auf Grund äußerer Einflüsse oder selbsttätig in einen ungewollten Zustand übergeht Fehlzustand = Teil des Systemzustands, der dafür verantwortlich ist, dass ein Ausfall auftritt. Offenbarung einer Fehlerursache im System Möglichkeit des Fehlzustands ist immer schon im System vorhanden, der Fehlzustand wird durch den ausführenden Prozess nur aktiviert Beispiel: Division durch 0 in Zeile 739 Beispiel: Bit kippt auf Grund von alpha-Strahlung Fehlzustand (fault), Defekt (defect)

12 Folie 12 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Fehlerauswirkung Fehlverhalten ist die Konsequenz aus einem Fehlzustand. Wenn ein System einen Defekt enthält, führt das meist früher oder später zu einem teilweisen oder totalen Ausfall. Beispiel: kaputtes Zahnrad Getriebeschaden Beispiel: ungeschützte Gleitpunktkonversion … Ausfall = Abweichung der erbrachten Leistung von der in der Spezifikation geforderten Leistung. Übergang von korrekter Leistungserbringung zu fehlerhafter Leistungserbringung. Ausfall und Versagen sind weitgehend synonym (failure) Ausfall eher für Komponenten, Versagen eher für Gesamtsysteme Im Sinne der Hierarchie ist der Ausfall einer Komponente die Ursache für das Versagen des Systems

13 Folie 13 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Klassifikation von Fehlern (1) Intention (Art) zufälliger Fehler =zufällig auftretender oder erzeugter Fehler absichtlicher Fehler = in böswilliger Absicht erzeugter Fehler Idee, phänomenologischer Ursprung physikalischer Fehler = Fehler aufgrund eines physikalischen Phänomens logischer oder systematischer Fehler = auf menschlicher Unzulänglichkeit basierende Fehlerursache, Denkfehler

14 Folie 14 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Klassifikation von Fehlern (2) Raum externer Fehler = von der Beeinflussung des Systems durch seine physikalische Umgebung oder vom Zusammenwirken mit seiner menschlichen Umgebung hervorgerufene Fehlerursache interner Fehler = Teil des Systemzustandes, der bei Aufruf durch eine Rechenaktivität einen Fehler hervorruft Zeit, Entstehungsphase Betriebsfehler = während der Nutzung des Systems auftretender Fehler Entwurfsfehler, Konstruktionsfehler = während der Entwicklung oder der Modifikation oder der Erstellung der Betriebsprozeduren entstandener Fehler

15 Folie 15 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Klassifikation von Fehlern (3) Dauer permanente Fehler = Anwesenheit ist nicht von einer punktuellen Bedingung abhängig Temporäre oder transiente Fehler = nur während einer bestimmten Zeit vorhanden Unterscheidung reparierbar oder nicht! temporäre interne Fehler werden auch intermittierende Fehler genannt jeder Fehler kann als permanenter Entwurfsfehler verstanden werden

16 Folie 16 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Klassifikation von Ausfällen Wert- oder Zeitausfälle verfrüht oder verspätet konsistent oder inkonsistent kritisch oder unkritisch Stillstand oder Livelock Auslassungsausfälle, Totalausfälle

17 Folie 17 H. Schlingloff, Software-Qualitätssicherung Maßnahmen Definieren Sie: Test, Verifikation, Analyse, Review Test systematisches Experimentieren mit einem Objekt zur Bestimmung seiner Qualität (Testum = Schmelztiegel) Verifikation Nachweis der Richtigkeit einer Vermutung, Behauptung oder eines Umstandes (veritas facere) Analyse systematisches Auflösen eines Gegenstandes in Einzelbestandteile zur Untersuchung und Auswertung von Eigenschaften (griech. Auflösen) Review Prüfung und Beurteilung eines Schriftstücks durch Fachleute 1.2 Begriffe

18 Folie 18 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Prüfen = Testen einer Serie gleichartiger Objekte Experimentieren = Ausführen einzelner Versuche zur Erlangung einer neuen Erkenntnis Probieren = experimentelles Feststellen der Qualität eines Objekts Testen = systematisches Probieren nach verschiedenen Qualitätskriterien

19 Folie 19 H. Schlingloff, Software-Qualitätssicherung Testverfahren Verifikation: Die Software ist richtig! Debugging: Warum ist die Software nicht richtig? Validation: Ist es die richtige Software? Test: Ist die Software richtig? VVTD

20 Folie 20 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Bleibt noch eine Anekdote… It has now become a popular tradition that it was the legendary American Naval officer and mathematician Grace Murray Hopper who found the offending insect, but it's also said that she wasn't there when it happened. (Grace was a pioneer in data processing and is credited with developing the first compiler. In 1983, Grace became the first woman to achieve the rank of rear admiral in the United States Navy.)

21 Folie 21 H. Schlingloff, Software-Qualitätssicherung 1.3 Kriterien Kapitel 1. Einleitung 1.1 Einleitungsbeispiel 1.2 Begriffe 1.3 Software-Qualitätskriterien

22 Folie 22 H. Schlingloff, Software-Qualitätssicherung Qualitätskriterien Grad der Übereinstimmung mit den Anforderungen Für Software funktionale versus nichtfunktionale Anforderungen Wichtigstes Kriterium: Korrektheit Begriffe Funktionalität Zweckdienlichkeit Robustheit, Zuverlässigkeit, Sicherheit, Effizienz, Benutzbarkeit, Verfügbarkeit, Geschwindigkeit, Änderbarkeit, Portierbarkeit, Prüfbarkeit, …

23 Folie 23 H. Schlingloff, Software-Qualitätssicherung 1.3 Kriterien Korrektheit ANSI 72983: Grad der Übereinstimmung zwischen Spezifikation und Programm vgl. Definition von Qualität! ungeeignete Definition (ein wenig schwanger…) Korrektheit bedeutet Abwesenheit von Fehlern Software ist korrekt, wenn sie genau das in der Spezifikation festgelegte funktionale Verhalten zeigt also nicht: Wartbarkeit, Effizienz, Funktionalität, … als Qualitätsmaß schlecht geeignet Üblicherweise sind mehrere verschiedene korrekte Implementierungen einer Spezifikation möglich

24 Folie 24 H. Schlingloff, Software-Qualitätssicherung 1.3 Kriterien Sicherheit Sicher ist sicher ein vielstrapaziertes Wort… ISO 8402: Zustand, in dem das Risiko eines Personen- oder Sachschadens auf einen annehmbaren Wert begrenzt ist Ein System heißt sicherheitskritisch, wenn es beim Ausfall großen Schaden verursachen kann großer Schaden: Der Ausfallverlust übersteigt die regulären Betriebsgewinne um ein Vielfaches Sicherer Zustand ist nicht immer sicher… fail-safe, safe-stop, fail-silent, …

25 Folie 25 H. Schlingloff, Software-Qualitätssicherung 1.3 Kriterien Safety vs Security, vs Lifeness Security = Informationssicherheit / Geschütztheit Security = Schutz vor böswilligen Schäden Safety = Schutz vor unbeabsichtigten Schäden Formale Definitionen von Sicherheit existieren safety = nothing bad will ever happen liveness = something good will eventually happen

26 Folie 26 H. Schlingloff, Software-Qualitätssicherung 1.3 Kriterien Zuverlässigkeit Zuverlässigkeit (Reliability) ist ein Maß für die Fähigkeit des Systems, funktionstüchtig zu bleiben; Wahrscheinlichkeit, dass das System während einer bestimmten Zeitdauer t nicht versagt Verläßlichkeit: Grad der Vertrauenswürdigkeit in die vom System erbrachte Leistung MTTF: mean time to failure Überlebenswahrscheinlichkeit R(t): Wahrscheinlichkeit, dass das System nach t Zeiteinheiten noch nicht ausgefallen ist

27 Folie 27 H. Schlingloff, Software-Qualitätssicherung 1.3 Kriterien Verläßlichkeit Verläßlichkeit (Dependability) wird oft synonym oder als Erweiterung für Zuverlässigkeit verwendet DIN 40041: Zuverlässigkeit ist die Beschaffenheit bezüglich der Eignung, während oder nach vorgegebenen Zeitspannen bei vorgegebenen Arbeitsbedingungen die Zuverlässigkeits- anforderungen zu erfüllen Teile: Verfügbarkeit, Funktionsfähigkeit, Sicherheit Vertraulichkeit ist Teil der Informationssicherheit

28 Folie 28 H. Schlingloff, Software-Qualitätssicherung 1.3 Kriterien Verfügbarkeit MTBF: mean time between failures; MTTR: mean time to repair Verfügbarkeit (availability) misst die Wahrscheinlichkeit, mit der ein reparierbares System zu einem beliebigen Zeitpunkt funktioniert: MTBF / (MTBF + MTTR)

29 Folie 29 H. Schlingloff, Software-Qualitätssicherung 1.3 Kriterien Robustheit und Fehlertoleranz Robustheit = Eigenschaft des Systems, auch in ungewöhnlichen (unspezifizierten) Situationen bestmögliche Funktionalität zu erbringen Fehlertoleranz = Eigenschaft des Systems, auch beim Auftreten von bestimmten Fehlern (Fehlzuständen) die geforderte Funktionalität zu erbringen

30 Folie 30 H. Schlingloff, Software-Qualitätssicherung 1.2 Begriffe Kapitel 2. Testverfahren 2.1 Testen im SW-Lebenszyklus 2.2 Modultests 2.3 Integrations- und Systemtests...


Herunterladen ppt "1.2 Begriffe Qualitätssicherung von Software Prof. Dr. Holger Schlingloff Humboldt-Universität zu Berlin und Fraunhofer FOKUS."

Ähnliche Präsentationen


Google-Anzeigen