Qualitätssicherung Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013.

Slides:



Advertisements
Ähnliche Präsentationen
Lexikon der Qualität Begriffe in Verbindung mit Qualität und ISO9000 finden sie auch im Lexikon der Qualität erläutert (
Advertisements

Qualität „Qualität ist die Gesamtheit von Eigenschaften und Merkmalen eines Produkts oder einer Tätigkeit, die sich auf deren Eignung zur Erfüllung gegebener.
Integrations- und Funktionstests im Rahmen des V-Modelles
Submodell Softwareentwicklung (SE)
Das V - Modell - Überblick
Phasen und ihre Workflows
Programmieren im Großen von Markus Schmidt und Benno Kröger.
Vorgehensmodell - Wasserfallmodell
Das „Vorgehensmodell“
V-Modell XT - Ein Überblick
WS 04/05 wiss. Übung: Systemanalyse und Softwaredesign
Software-Lebenszyklus
LE LM 8 - LO 3 Prozessnormen und Normen zu QM-Systemen
LE LM 10 - LO3 Verfahren zur Qualitätssicherung
Prozessqualität: Ansätze und Ziele
Software „Unter Software versteht man die Gesamtheit oder auch einen Teil der Programme für Rechensysteme. Diese Programme ermöglichen zusammen mit den.
Prozessqualität: Ansätze und Ziele
Was ist und wie prüft man Qualität
Prozessqualität und Produktqualität
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Was ist Refactoring? Bevor man die Integration angeht, mag es angebracht sein, den.
Erfahrungen aus Tests komplexer Systeme
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Einzeltests im Rahmen des V-Modelles Aufgaben Überprüfung des Programmcodes mit Hilfe.
Prüfung von SW-Komponenten – Überblick
Schulung der Mitarbeiter
Was ist Qualität ? Qualität von Produkten oder Dienstleistungen ist das Gesamtergebnis aller Aktivitäten in jeder Phase des gesamten Leistungsprozesses.
Prozessmodelle als Teil des Management-Prozesses
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Aufgaben des Testens Vergleich des Verhaltens einer Software mit den an sie gestellten.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Regeln für Tester - best practice 1 Prüfe das eigene Programm nie als Einziger Testen.
Beispiel: Wasserfallmodell als einfaches Phasenmodell
Universität Stuttgart Institut für Kernenergetik und Energiesysteme System- und Abnahmetests Inhalt Testen des Systems unter Mitwirkung des Auftraggebers.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme Agile Software Entwicklung mit dem RUP Agile Softwareentwicklung Best Practice bei.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme LE P MuSofT Erkundungsumgebung Entwicklung eines komponentenbasierten Systems WS 03/04.
RUP-Elemente (Schlüsselkonzepte)
Prozessmodelle Inhalt Prozessmodell im Management Prozess
es gibt (fast) nichts, was nicht anders gemacht werden könnte
Zertifizierung von Software: CMM oder ISO 9000
Qualität von Software Qualität ist nicht messbar, sondern nur über die Erfüllung von Anforderungen zu definieren Die Erfüllung von Anforderungen ist oft.
Universität Stuttgart Institut für Kernenergetik und Energiesysteme MuSofT LE 3.1-4V - Modell Überblick V-Modell Regelungen, die die Gesamtheit aller Aktivitäten,
Testen, Analysieren und Verifizieren von Software
Dokumentationsanforderungen
Rational Unified Process (RUP) - Definitionen
eXtreme Programming (XP)
Reviews Definition Ziele Teilnehmer Ablauf Ergebnisse.
UML Begleitdokumentation des Projekts
Vorlesung Gestaltung von soziotechnischen Informationssystemen - RequirementsEngineering und Contextual Design- Thomas Herrmann, Lehrstuhl Informations-
Anpassung des RUP an ein konkretes Projekt - 1
Simulation komplexer technischer Anlagen
Vorgehensmodelle: Schwergewichtige Modelle
Spezifikation von Anforderungen
Das Wasserfallmodell - Überblick
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering SS 2009Folie 1 Weitere Vorgehensmodelle Der Rational Unified Process RUP –bei IBM.
Prof. Dr. Gerhard Schmidt pres. by H.-J. Steffens Software Engineering WS 2006 / 2007Folie 1 Agile Vorgehensweisen Hintergrund –in den letzten Jahren hat.
Software Engineering SS 2009
Zusammenfassung der Vorlesung
Zentralübung Automotive Software Engineering – Übungsblatt 8
Vorgehensmodell mit Scrum-Elementen
IT-Projektmanagement SS 2013 Prof. Dr. Herrad Schmidt
IT-Projektmanagement SS 2013 Prof. Dr. Herrad Schmidt
Software-Technik „Zielorientierte Bereitstellung und systematische Verwendung von Prinzipien, Methoden und Werkzeugen für die arbeitsteilige, ingenieurmäßige.
Eidgenössisches Finanzdepartement EFD Eidgenössische Finanzverwaltung EFV Vorhaben E-Rechnung Review-Unterstützung durch ffO EFV.
Publikation auf Knopfdruck Judith Riegelnig Michael Grüebler 19. Oktober 2010 / Statistiktage Neuenburg.
Wasserfallmodell und Einzelbegriffe
Spice Info-Point 2008 Urs Frei.
5 Software-Qualität 5.1 Qualität 5.2 Taxonomie der Software-Qualitäten.
Projektmanagement Ziel und Umfang eines Softwareprojektes definieren
Aufgaben und Ziele des Faches Qualitätsmanagement:
Qualität ? ? was ist das??? ? Kai - Uwe Güteklasse A
Unified Process Historisch-Kulturwissenschaftliche Informationsverarbeitung Übung: Planung von Softwareprojekten Dozent: Christoph Stollwerk WS 2014/2015.
Requirements Engineering Universität zu Köln Medienkulturwissenschaften/Medieninformatik Kurzreferat in Planung von Softwareprojekten bei Herrn Christoph.
 Präsentation transkript:

Qualitätssicherung Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Externe Qualitätsprobleme (1) Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Externe Qualitätsprobleme (1) Entwicklungskosten >300 Mio. € Erwartete Dauer: 1 Jahr (tatsächlich: 3 Jahre) Unterstützt 10 Nutzer gleichzeitig statt den geplanten 1.000 Zitat: „Hauptproblem sei das Design des Systems, das Servern den Zugriff auf brachliegende Kapazitäten anderer Rechner nicht ermögliche.“ Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Externe Qualitätsprobleme (2) Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Interne Qualitätsprobleme: Wartung Prozesskontrollsystem Charakteristika? Warum warten? Wo suchen? Doku- mentation Lange Lebenszeit (>30 Jahre) Probleme beheben Große Codebasis (>1 Mio. LOC) Software ändern Quell- code Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Interne Qualitätsprobleme: Wartung [Som12] Rebecca Tiarks: What Maintenance Programmers Really Do: An Observational Study Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Inhalte dieser Vorlesung Was ist Qualität? Begriffsdefinition Welche Qualitätseigenschaften gibt es? Qualitätsmodelle definieren diese Wie quantifiziert man Qualität? Messen & Schätzen Qualitätsmetriken Wo im Entwicklungsprozess spielt Qualität eine Rolle? Am Beispiel des V-Modells Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Qualität Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Qualität kann verschiedene Bedeutungen haben, bzw. hängt von der Perspektive ab produktbezogene Qualität („Wie gut ist das Produkt“) benutzerbezogene Qualität („Wie gut ist das Produkt für die Bedürfnisse eines bestimmten Benutzers“) prozessbezogene Qualität („Wie gut ist der Erstellungsprozess des Produkts“) Qualität möchte man erzielen Qualität sollte daher nachweisbar sein 8 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 8

Qualität Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Gesamtheit der Merkmale eines Produkts oder einer Tätigkeit, die die Erfüllung festgelegter oder vorausgesetzter Eigenschaften betreffen (nach DIN EN ISO 8402) Dazu gehören auch Dokumente des Entwicklungs-prozesses Qualitäts-anforderung Welche Qualitätseigenschaften gibt es?  Hierfür gibt es Qualitätsmodelle 9 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 9

Qualitätsmodelle Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Mit Hilfe eines Qualitätsmodells kann eine systematische und begründete Abschätzung der Qualität eines Produkts erfolgen Qualität wird in DIN EN ISO 8402 „Quality management and quality assurance” definiert Typischerweise werden Qualitätseigenschaften über mehrere Hierarchiestufen in Teileigenschaften zerlegt ISO/IEC 25010 ehemals ISO/IEC 9126 “Software engineering — Product quality” 10 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 10

ISO/IEC 25010 Software product quality model (interne und externe Qualitäten) Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Relevanz der Q-Eigenschaften Softwaretechnikpraktikum: Vorlesung 5 Relevanz der Q-Eigenschaften 19. Mai 2004 Anwendungsklasse Qualitätseigenschaften Menschliches Leben ist betroffen Zuverlässigkeit, Korrektheit, Testbarkeit Hohe Entwicklungskosten Zuverlässigkeit, Flexibilität Lange Einsatzdauer Wartbarkeit, Flexibilität, Portabilität Echtzeitanwendungen Effizienz Eingebettete Anwendungen Effizienz, Zuverlässigkeit Ähnlich zu McCall, Richards und Walters und nach Balzert 12 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 12

Qualitätsmetriken Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Qualität lässt sich durch Qualitätsmetriken nachweisen Eine Metrik M ist eine präzise definierte Methode, um ein Element einer (geordneten) Menge V einem System S zuzuordnen M ist zugleich auch die Einheit in der man die Qualität angibt Beispiel: S = Code eines Softwaresystems M = Lines of Code von S V = Natürliche Zahlen Methode: Zähle alle LOCs von S Weitere Beispiele für weitere Metriken: Anzahl der Methoden, Klassen, Codekommentarzeilen Antwortzeit Auslastung (z.B. der CPU) Durchsatz (z.B. in Netzwerken relevant) 13 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 13

Qualitätsmetriken Wie ermittelt man Metriken? Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Wie ermittelt man Metriken? Schätzen? – Ja, aber wenn dann möglichst genau, begründet und systematisch Messen Bestenfalls wiederholbare Messungen 14 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 14

Beispiel für ein Qualitätsmodell: Factor-Criteria-Metrics-Model Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Q-Eigenschaften Q-Teileigenschaften Q-Metriken Richtigkeit QM-Bericht Die Qualität beträgt: 0,4 Qualitätsstufe: gut 0,3 Funktionalität 0,1 Angemessenheit 0,7 Interoperabilität 0,2 Zuverlässigkeit 380k LOC 0,3 … 0,2 2,5 0,2 Verständlichkeit Bedienbarkeit Interactions /Use Case Angemessenheit Eignung der Funktionen für spezifizierte Aufgaben, z.B. aufgabenorientierte Zusammensetzung von Funktionen und Teilfunktionen. Bedienbarkeit Aufwand für den Benutzer, die Anwendung zu bedienen 0,2 Erlernbarkeit 0,01 0,5 … 0,5 Bedienbarkeit … 15 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 15

Arten des Qualitätsmanagements Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Produktorientiertes und prozessorientiertes Qualitätsmanagement Konstruktive und analytische Maßnahmen des Qualitätsmanagements Diskussion: Welche Maßnahmen können wir in der Gruppe zur Erhöhung der Softwarequalität treffen? 16 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 16

Produkt- und Prozessorientiertes QM Softwaretechnikpraktikum: Vorlesung 5 Produkt- und Prozessorientiertes QM 19. Mai 2004 Produktorientiertes Qualitätsmanagement Das Softwareprodukt und Zwischenergebnisse (Klassen, Methoden oder Komponenten wie GUI, Parser, Algorithmen, usw.) werden auf vorher festgelegte Q-Eigenschaften und Metriken überprüft Direkte Sicherstellung, dass das Produkt bestimmte Q-Eigenschaften besitzt Prozessorientiertes Qualitätsmanagement Bezieht sich auf den Entwicklungsprozess der Software, eingesetzte Werkzeuge, Richtlinien für Dokumente, etc. Wird der Prozess eingehalten, ergibt sich automatisch eine hohe Qualität Inspiriert durch die industrielle Serienfertigung die gibt es aber bei Software kaum, daher muss prozess-orientiertes QM typischerweise an Projekte angepasst werden Rein prozessorientiertes QM hat sich als unzweckmäßig erwiesen nach Balzert 17 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 17

Konstruktive und Analytische QM-Maßnahmen Softwaretechnikpraktikum: Vorlesung 5 Konstruktive und Analytische QM-Maßnahmen 19. Mai 2004 Konstruktive QM-Maßnahmen Sorgen während des Erstellungsprozesses dafür, dass am Ende Qualitätsmerkmale erfüllt werden Analytische QM-Maßnahmen Dienen nur der Diagnose Messen des Qualitätsniveaus Finden von Defekten Erhöhen nicht direkt die Qualität eines Produkts, bzw. Prozesses Analytische Verfahren: Sammeln von Informationen über das Produkt bzw. den Prozess durch statische Betrachtung Testenden Verfahren: Sammeln von Informationen über das Produkt bzw. den Prozess durch dynamische Ausführung nach Balzert 18 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 18

Konstruktive, produktorientierte QM-Maßnahmen (Beispiele) Softwaretechnikpraktikum: Vorlesung 5 Konstruktive, produktorientierte QM-Maßnahmen (Beispiele) 19. Mai 2004 sind Methoden, Sprachen, Standards, Richtlinien, etc., die für das erreichen bestimmter Q-Merkmale im Produkt sorgen, z.B. Richtlinien für Dokumente (z.B. Schema für das Pflichtenheft) Einsatz einer Programmiersprache mit statischer Typprüfung, z.B. Java (vermeidet viele Fehler) Objektorientierte Entwicklung (Vererbung und Polymorphie unterstützt die Wiederverwendbarkeit und Erweiterbarkeit) Einsatz von Design-Patterns (Plug-in-Mechanismus, MVC, etc. unterstützen das Erreichen verschiedene Q-Merkmale) Modellbasierte Entwicklung (z.B. mit UML, EMF; viele Fehler in automatisch generiertem Code werden vermieden) Einsatz von Werkzeugen wie z.B. Eclipse: automatische Code-Vervollständigung, Syntax-Highlighting, … nach Balzert 19 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 19

Konstruktive, prozessorientierte QM-Maßnahmen (Beispiele) Softwaretechnikpraktikum: Vorlesung 5 Konstruktive, prozessorientierte QM-Maßnahmen (Beispiele) 19. Mai 2004 sind Methoden, Sprachen, Standards, Richtlinien, etc., die für das erreichen bestimmter Q-Merkmale im Prozess sorgen, z.B. Richtlinien: Welche Teilergebnisse mit welchem Inhalt müssen wann und von wem erstellt werden Definition eines Prozessmodells (Transparenz, Planbarkeit) Unterstützung der Zusammenarbeit durch ein Versions- und Konfigurationsmanagementsystem (SVN) Automatische Überwachung des Entwicklungsprozesses Einsatz von Wikis, oder z.B. Mylyn, IBM Rational Jazz, … Regelmäßige Treffen mit standardisiertem Ablauf und schriftlichen Protokollen Pair-programming (prozess- oder produktorientierte Maßnahme?) nach Balzert 20 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 20

Analytische QM-Maßnahmen (Beispiele) Softwaretechnikpraktikum: Vorlesung 5 Analytische QM-Maßnahmen (Beispiele) 19. Mai 2004 Analytische Verfahren Statische Analyse Review Inspektion Walkthrough Audit (Erfassung von Prozessmerkmalen) Testende Verfahren Test Simulation Verifikation (vollständiger Beweis der Korrektheit eines Systems bzgl. bestimmter Eigenschaften, z.B. Model Checking) – analytisches oder testendes Verfahren? nach Balzert 21 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 21

Softwaretechnikpraktikum: Vorlesung 5 Prüfmethode Review 19. Mai 2004 Mehr oder weniger formale Prozess, in dem es darum geht, Fehler, Unklarheiten, Inkonsistenzen (allg. Schwächen) eines Dokumentes (oder Code-Abschnitts) aufzudecken. Dazu wird das Dokument systematisch in einem Team (von Gutachtern und unter Beteiligung der Autoren des Dokuments) angesehen und besprochen Das Ergebnis ist ein Prüfprotokoll oder die Freigabe des Dokumentes (ggf. nach Iteration) Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Psychologie des „Reviews“ Softwaretechnikpraktikum: Vorlesung 5 Psychologie des „Reviews“ 19. Mai 2004 Problem: Autoren „stehen in der Schusslinie“ bzw. werden „in die Mangel genommen“ Psychologische Aspekte müssen beim Ablauf berücksichtigt werden: z.B. Keine Vorgesetzen anwesend Keine Beurteilung anhand der Reviews … Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Prüfmethode Inspektion Softwaretechnikpraktikum: Vorlesung 5 Prüfmethode Inspektion 19. Mai 2004 Sehr formale Form des Reviews Beteiligte: Gutachter, Autor(en), Moderator, Protokollant Ablauf: Eingangsprüfung: Moderator prüft Eingangskriterien und kann Prüfung ablehnen Planung: Moderator plant den Prüfprozess (Rollen, Zeitplan, Unterlagen, Aufteilung des Prüfobjekts, Kriterien) Einführung: Aufgaben verteilen, Vorgehen abstimmen Individuelle Vorbereitung: Beteiligte bereiten sich auf die Inspektionssitzung vor Inspektionssitzung: Prüfobjekt wird auf Defekte untersucht Überarbeitung Nachprüfung Abgabe nach Balzert 24 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 24

Prüfmethode Walkthrough Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Informelle Form des Reviews Beteiligte: Autor(en), Gutachter Ablauf: Ggf. Individuelle Vorbereitung und Prüfung des Gutachters kann den Walkthrough-Prozess verkürzen Walkthrough-Sitzung: Autor stellt das Produkt Schritt für Schritt vor Gutachter stellt fragen und weist auf Probleme hin Probleme werden protokolliert Walkthroughs können während des Software(technik)praktikums gut in Gruppen-Sitzungen durchgeführt werden Tutor kann Rolle des Gutachter spielen 25 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 25

Softwaretechnikpraktikum: Vorlesung 5 Fehler und Tests 19. Mai 2004 „Testen ist das Ausführen eines Programms, mit der Absicht (möglichst viele) Fehler zu finden“ Ein Fehler ist eine Abweichung des Verhaltens eines Produkts/Programms (IST) vom erwarteten Verhalten (SOLL). Ein Test besteht aus einem Satz von Eingabedaten zusammen mit dem jeweils erwarteten Ergebnis (SOLL). Beim Durchführen eines Tests wird das Programm mit den Eingabedaten ausgeführt und das Ergebnis mit dem erwarteten Ergebnis verglichen. Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Testen zur Qualitätssicherung Softwaretechnikpraktikum: Vorlesung 5 Testen zur Qualitätssicherung 19. Mai 2004 Tests können Zutrauen in die Fehlerfreiheit vermitteln und liefern damit ein Maß für die Richtigkeit (Funktionalität) und die Fehlertoleranz und Reife (Zuverlässigkeit) des Programms Tests können meist automatisch durchgeführt werden; problematisch sind nur graphische Benutzeroberflächen Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Softwaretechnikpraktikum: Vorlesung 5 Stufen des Tests 19. Mai 2004 Tests können auf verschiedenen Stufen durchgeführt werden Abnahmetest (vom/mit Auftraggeber) Systemtest Integrationstest Unit-Test Test* Dekomposition Spezifikation Integration Implementierung * der vorher spezifizierten Eigenschaften Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Erinnerung: Bereits bekannt aus Vorlesung Softwareentwurf Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Softwaretechnikpraktikum: Vorlesung 5 Automatisierung Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Tests können meist automatisch durchgeführt werden; dazu sind evtl. Testtreiber nötig schwierig zu testen sind graphische Benutzeroberflächen Eingebettete Systeme … warum? JUnit Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Softwaretechnikpraktikum: Vorlesung 5 Grenzen des Testens 19. Mai 2004 Testen kann nur die Anwesenheit von Fehlern zeigen nicht deren Abwesenheit, also die Fehlerfreiheit der Software „der Fehler ist immer genau da, wo man nicht getestet hat“ Die Abwesenheit von Fehlern kann nur durch eine vollständige Verifikation überprüft werden z.B. Modelchecking: jeden möglichen erreichbaren Zustand eines Programms auf bestimmte Eigenschaften untersuchen „jeden Fall testen“ Aber auch hier gibt es Grenzen: man überprüft nur vorher spezifizierte Eigenschaften aber erfüllt die Software die Erwartungen? Ist die Software dann „sicher“? Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Prinzip: Frühzeitige Maßnahmen Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Je früher ein Fehler gefunden und beseitigt wird, desto weniger Folgekosten verursacht er. Extremform: „Test-Driven Development“ – Test-Cases werden vor der eigentlichen Implementierung geschrieben Frühzeitige Maßnahmen: Fehler sollten möglichst früh entdeckt werden! Podcast: http://www.se-radio.net/2010/09/episode-167-the-history-of-junit-and-the-future-of-testing-with-kent-beck/ Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Prinzip: Unabhängige Qualitätssicherung Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Niemand macht gern das eigene Produkt kaputt („Psychologie des Testens“)! Wer beim Entwickeln einen Fall vergisst, vergisst ihn auch beim Testen. Unabhängige Qualitätssicherung: QS-Maßnahmen sollten niemals vom Entwickler selbst durchgeführt werden! Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Prozessorientiertes QM Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Es gibt verschiedene Vorgehensmodelle bei der Softwareentwicklung Wasserfallmodell, V-Modell, Spiralmodell, … es sind nur grobe Beschreibungen für das Vorgehen bei der Entwicklung es ist nicht immer zweckmäßig, diese Modelle weiter zu detaillieren Daher wurden verschiedene Rahmenmodelle entwickelt, welche allgemeiner Kriterien für die Durchführung eines Entwicklungsprozesses definieren CMMI SPICE / ISO 15504 ISO-9000 TQM 34 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 34

ISO 9000-3 / ISO 9001 Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Das ISO 9000-Modell besteht aus einer Reihe von Normen für ein Qualitätsmanagementsystem ISO 9000 Rahmenwerk Auftraggeber - Lieferanten – Verhältnis ISO 9001 beschreibt ganz allgemein Modelle zur Darlegung der Qualitätssicherung in Entwicklung, Produktion, Montage und Kundendienst ISO 9000-3 ist eine Richtlinie für die Anwendung von ISO 9001 auf die Entwicklung und Wartung von Software (mit der hier üblichen Terminologie) 35 Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013 35

Softwaretechnikpraktikum: Vorlesung 5 Wichtig: Darlegung! Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 ISO 9000-1 legt kein Vorgehensmodell (Phasenmodell) fest; sie verlangt aber die Darlegung der Phasen, Ergebnisse und der jeweiligen Qualitätssicherungsmaßnahmen (Verifizierung) und sie legt einmalig oder periodisch im Unternehmen durchzuführende Maßnahmen und pro Projekt durchzuführende Maßnahmen fest Sie verlangt Maßnahmen zur Dokumentation der Projektabläufe ( Konfigurationsmanagement) Vorgeschriebene Tags im SVN Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Qualitätssichernde Maßnahmen Softwaretechnikpraktikum: Vorlesung 5 Qualitätssichernde Maßnahmen 19. Mai 2004 Festlegung der Qualitätspolitik Festlegung eines mit der Qualitätspolitik Beauftragten Regelmäßige Überprüfung Einplanung der Ressourcen für die Qualitätssicherung … Konfigurationsmanagement Schulung Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Softwaretechnikpraktikum: Vorlesung 5 Dokumente Softwaretechnikpraktikum: Vorlesung 5 19. Mai 2004 Dokumente laut Projektplanskizze Vertrag Spezifikation Entwicklungsplan Qualitätssicherungsplan Testplan Wartungsplan Konfigurationsmanagementplan Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013

Vor- und Nachteile von ISO 9000 Softwaretechnikpraktikum: Vorlesung 5 Vor- und Nachteile von ISO 9000 19. Mai 2004 Vorteile Nachteile Qualitätsbewusstsein (auf Geschäftsführungsebene und Mitarbeiterebene) Dokumentation der Qualitätspolitik und ihrer Umsetzung Anpassungszwang (jährliche Überwachung) Wettbewerbsvorteil Gefahr der Bürokratie (Dokumente um der Dokumente willen) Gefahr der Inflexibilität … Software(technik)praktikum - Vorlesung Qualitätssicherung 12.04.2013