Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Prozessqualität und Produktqualität

Kopien: 2
Prozessqualität: Ansätze und Ziele

Universität Stuttgart Institut für Kernenergetik und Energiesysteme Attribute guter Software Software sollte dem Benutzer die geforderte Funktionalität.

Ähnliche Präsentationen


Präsentation zum Thema: "Prozessqualität und Produktqualität"—  Präsentation transkript:

1 Prozessqualität und Produktqualität
Inhalt Was ist Qualität bei der Software Entwicklung Prozessqualität und Produktqualität Durch Testen zur Produktqualität Durch Qualitätsmanagement zur Prozessqualität Verbesserung der Prozessqualität ISO 9000 (2000): Continuous Improvement of the Quality Management System Produktqualität im Rational Unified Process Capability Maturity Model: 5 Reifegradsstufen der Softwareentwicklung Auditierung oder wie baut man ein QM System auf Annäherung an Objekte von a. Erfahrung aus Technik b. Ansätze aus SE c. Ansätze aus Common Sense oder Philosophie Daraus ableiten: Basiseigenschaften von Objekten und Beschreibung durch UML

2 Vorbemerkung Software ist wie jedes Ingenieurprodukt fehlerbehaftet.
Fehler verursachen Kosten und müssen daher auf ein Minimum beschränkt werden. Dies erreicht man durch Qualitätssicherung beim Prozess der Softwareerstellung (Prozessqualität) und durch Prüfung der Software (Produktqualität). Bei der Prüfung großer Softwaresysteme ist nur das Auftreten von Fehlern festzustellen. Ein Nachweis der Fehlerfreiheit ist nicht möglich (Parnas).

3 Das sollten Sie heute lernen
Was bedeutet Qualität im Softwareengineering Kosten schlechter Softwarequalität Nachweis der Produktqualität durch Prüfen Erzeugung von Qualität durch Software Engineering Prozesse Prozessqualität und Produktqualität - wann muss man auf was achten

4 Was ist Qualität ? Qualität von Produkten oder Dienstleistungen ist das Gesamtergebnis aller Aktivitäten in jeder Phase des gesamten Leistungsprozesses. ( Weitere Informationen zur Def. des Begriffs „Qualität“) Qualität von Software bedeutet: Es wird ein Produkt geliefert, das den Vorstellungen des Kunden entspricht, das die von ihm geforderten Eingeschaften zeigt und auf sich ändernde Anforderungen angepasst werden kann. Formal durch Akzeptanztest nachgewiesen.

5 Wie erreicht man Qualität ?
Zur Erzielung von Qualität benötigt man eine systematische Steuerung aller Aktivitäten der Qualitätsverbesserung und –sicherung: Ein Qualitätsmanagement (QM) ( Weitere Informationen: Def. „Qualitätsmanagement“ ) Wirksames Qualitätsmanagement (QM) bedeutet Vorrang für planende und vorbeugende Aktivitäten zum Erkennen von Fehlern sowie für entsprechende Maßnahmen zur Fehlerverhütung. Ein gut funktionierendes QM-System, beschrieben im QM-Handbuch, ist für jedes Unternehmen eine Grundvoraussetzung,um zielsicher und wirtschaftlich die Qualitätsforderungen an Lieferungen und Leistungen zu erfüllen. Nur ein gut geplantes und zweckmäßig gewähltes QM-System vermittelt das notwendige Maß an Vertrauen zur Erfüllung der Qualitätsforderungen. Auszüge aus VDA 6 Teil 1 QM-Systemaudit

6 Leitsätze der Qualitätssicherung
QUALITÄT kann man nicht in ein Produkt hineinprüfen; sie muss hineinkonzipiert, -konstruiert und -produziert werden. Die QUALITÄT der Produkte eines Unternehmens bestimmt dessen Image und den für Kaufentschlüsse notwendigen Vertrauensvorschuss der Interessenten. Am QUALITÄTSGESCHEHEN sind alle Abteilungen beteiligt. Systematische QUALITÄTSPLANUNG ist die Voraussetzung erfolgreicher und wirtschaftlicher Verwirklichung der Qualitätsziele. Guter Informationsfluss zwischen allen am QUALITÄTSKREIS Beteiligten verhütet Fehlentscheidungen. Produktprüfung ist gut, Prozessüberwachung besser, BEHERRSCHTEFERTIGUNG am besten. Richtig verstandene SELBSTPRÜFUNG am Arbeitsplatz vermeidet Ausschuss und Fehlerfolgekosten. Um die Wirksamkeit qualitätsrelevanter Maßnahmen zu quantifizieren, müssen QUALITÄTSKOSTEN definiert, erfasst und analysiert werden.

7 Phasen der Entwicklung des Qualitätsgedankens
PHASE 1: KUNDE muss nehmen was er bekommt PHASE 2: KUNDE muss nehmen was vereinbart ist PHASE 3: KUNDE muss nichts,sondern der LIEFERANT muss fehlerfrei liefern PHASE 4: LIEFERANT muss die Erwartungen des Kunden erfüllen PHASE 5: LIEFERANT muss die Erwartungen des Kunden übertreffen.

8 Qualitätsentwicklung

9 Qualität von Software Qualität von Software ist nicht messbar, sondern nur über die Erfüllung von Anforderungen zu definieren. Die Erfüllung von Anforderungen ist oft nicht messbar. Deswegen müssen Metriken entwickelt werden und schon bei der Formulierung der Anforderungen Aussagen darüber gemacht werden, unter welchen Bedingungen die Anforderungen erfüllt sind. Beispiel Prozessmetrik Balkenplan Balkenplan gibt Anteil einer Aufgabe am Gesamtzeitbedarf eines Projektes an Projektfortschritt gleich Summe der bereits erledigten Anteile Vergleich geplanter und tatsächlicher Fortschritt erlaubt Aussagen zum Stand eines Projektes Bei groben Abweichungen Anpassung der geplanten Aufgaben und der dafür geplanten Ressourcen unter Berücksichtigung der Randbedingungen des Projektes

10 Ursachen schlechter Software-Qualität
– Organisation und Management · unklare Zielvorstellung · unklare Verantwortlichkeit · nicht adäquate Projektplanung und -steuerung · unzulängliche Projektkostenschätzung · Qualitätssicherung wird nicht unabhängig von der SW-Entwicklung und SW-Produktion durchgeführt – Methodik · fehlende/ ungenügende Anforderungserfassung · keine Nutzung von Entwicklungsmethoden · unvollständige Dokumentation · keine Standards oder keine Nutzung von Standards · keine Qualitätssicherung, unklare Verantwortlichkeit – Technologie · keine Entwicklungsmodelle · keine Strategie für Prozessverbesserungen · geringe Nutzung von CASE-Tools · keine Metrikanalysen, fehlende/ ungenügende Anforderungserfassung

11 Attribute guter Software
Software sollte dem Benutzer die geforderte Funktionalität (Korrektheit) effizient liefern, sowie wartbar, zuverlässig und benutzbar sein. Wartbarkeit Software muss gewartet werden können, um den Änderungsbedarf zu erfüllen. Zuverlässigkeit Software muss vertrauenswürdig sein, d.h. auch im Fehlerfall sinnvoll reagieren. Effizienz Software sollte keine Systemressourcen verschwenden. Benutzbarkeit Software sollte für den Benutzer, für den sie entworfen wurde, leicht einsetzbar sein. Das erfordert eine anwendungsspezifische Oberfläche, die ein Benutzer erlernen, bedienen und verstehen kann.

12 Korrektheit von Software
Ein Softwaresystem ist (funktional) korrekt, wenn es sich genauso verhält, wie es in der Anforderungsdefinition festgelegt wurde. Problem Anforderungsdefiniton erfüllt Softwaresystem „korrekt“ Großes Problem: Anforderungsdefinitionen sind häufig informal und eigentlich nie ganz widerspruchsfrei und vollständig.Dann kann nur ein iteratives Vorgehen auf Basis agiler Programmierung zum Erfolg führen.

13 Wartbarkeit von Software
Softwarewartung = Änderungen an der Software aufgrund von Fehlern oder geänderten Anforderungen. Gut wartbare Software ist leicht korrigierbar, modifizierbar und erweiterbar. Wartbarkeit wird unterstützt durch: gute Systemstruktur (Modularisierung der Software) gute Dokumentation kontrollierte Änderungsprozeduren Achtung: Jede Wartung reduziert die Wartbarkeit, solange bis die Software nicht mehr änderbar ist (Gesetz der zunehmenden Entropie).

14 Zuverlässigkeit von Software
Zuverlässige Software funktioniert meistens. Zuverlässigkeit ist also ein Maß für die Wahrscheinlichkeit, dass ein Softwaresystem sich in einem bestimmten Zeitraum so verhält, wie es von ihm erwartet wird. Korrekte Software = 100 % zuverlässige Software: Vertrauenswürdige Software = nahezu zuverlässige Software robuste Software funktioniert auch bei unvorhergesehener Eingabe Eingaben, die einen Fehler bewirken Eingabe Programm Ausgaben, die einen Fehler bewirken Eingabe

15 Metriken für Bewertung der Zuverlässigkeit
1. „rate of failure occurrence“ (ROFOC): Häufigkeit von nicht erwartetem Verhalten, z.B. 2 Fehler pro 100 operationellen Zeiteinheiten 2. „mean time to failure“ (MTTF): mittlerer Zeitabstand zwischen zwei Fehlern 3. „availability“: mittlere Verfügbarkeit der Software, z.B. 998 von 1000 Zeiteinheiten war das System benutzbar. Beispiele für (un-)zuverlässige Software: Zuverlässige Software: Ein Textverarbeitungssystem, das manchmal Schmierzeichen auf den Bildschirm schreibt (beim Erstellen der vorigen Folie passiert). Unzuverlässige Software: Textverarbeitung oder -System, das dateisystemzerstörenden Viren Tür und Tor öffnet.

16 Vertrauenswürdige Software
Vertrauenswürdige Software verursacht (auch) im Fehlerfall keine Katastrophen:  inkorrekte Software kann vertrauenswürdig sein (z.B. wenn die Software per se keinen wirklichen Schaden anrichten kann)  korrekte Software muss nicht vertrauenswürdig sein (Fehler in Anforderungsdefinition) Beispiele (nicht) vertrauenswürdiger Software: Joystick-Steuerung in Spielconsole: Von Natur aus vertrauenswürdig Joystick-Steuerung im Los Alamos National Laboratory: Am 26. Februar 1998 führte die Fehlfunktion einer Joystick-Steuerung dazu, dass sich zwei Uranstücke nicht langsam, sondern mit maximaler Geschwindigkeit aufeinander zubewegten. Der Operator drückte rechtzeitig einen Notausknopf (angeblich war die Summe der Massen unterkritisch). [ACM SIGSOFT Software Engineering Notes, vol. 23, no. 4 (1998), S. 21]

17 Robuste Software Programm
Ein Softwaresystem ist robust, wenn es auch unter unvorhergesehenen Umständen funktioniert bzw. vernünftig reagiert. Nicht erwartete Daten So wenige wie möglich Erwartete Eingabedaten Programm Anmerkung: Auch der Softwareentwicklungsprozess sollte robust sein, z.B. gegen Ausfall von Mitarbeitern unvermeidlicher Hardware-/Betriebssystemwechsel

18 Beispiele für unvorhergesehene Umstände
Falsche Benutzereingaben das Dateisystem ist voll die Platte gibt ihren Geist auf Stromausfall Maßnahmen zur Software-“Härtung“: Sicherheitsabfragen und Plausibilitätsprüfungen vernünftiges Exception-Handling-Konzept (für range checks etc.) Ansteuern sicherer Systemzustände bei entdeckten Fehlerfällen Backups von Daten, Undo-Möglichkeiten für Anwender Softwareredundanzen (verschiedene Realisierungen eines Teilsystems)

19 Effiziente Software Effiziente Software nutzt Hardware-Ressourcen (hinreichend) ökonomisch. Benötigte Ressourcen: Rechenzeit Speicherbedarf trade-off Wie ermittelt man Effizienz: theoretische Komplexitätsanalyse (0-von-Rechnungen) Simulationsmodelle Messungen am realen System (profiling, ...)

20 Effizienz des Software-Erstellungsprozesses
Effiziente Softwareherstellung = produktive Softwareherstellung, also mit möglichst wenig Mitarbeitern in möglichst kurzer Zeit möglichst gute Software herstellen. Problem: Produktionszeit Softwarequalität trade-off (Softwareeffizienz) Lösung:  Wiederverwendung von Softwarekomponenten, Vorgehensweise, ...  Einsatz von sehr hohen Programmiersprachen, Generatoren, ... Wie misst man Produktivität: in keinem Fall durch LOC = „Lines of Code“

21 Benutzerfreundlichkeit von Software
Benutzerfreundliche Software kann von Menschen leicht erlernt und leicht benutzt werden. Benutzerkategorien: Anfänger: Menüs, Tutorial, Online-Hilfe, ... Gelegenheitsbenutzer: Online-Hilfe, Control-Keys für häufige Kommandos, ... Experte: Control-Keys für alle Kommandos, Konfigurationsmöglichkeiten, ... Wichtige Aspekte: Standardisierung von Benutzeroberflächen (look-and-feel) Forschungsgebiet Softwareergonomie (Menü mit nicht mehr als 7 Einträgen) Software muss robust und effizient sein

22 Wiederverwendbarkeit
Wiederverwendbare Software kann leicht für neue Anwendungen verwendet werden: Man träumt vom „Zusammenstecken“ von Software aus vorgefertigten Komponenten. Klassische Beispiele: Softwarebibliotheken (für numerische Routinen, Fenstersysteme, ...) Standardsoftware (für Finanzbuchhaltung, Datenbanksysteme, ...) Software-Architekturrahmenwerke (für grafische Editoren, ...) Programmiersprachenkonzepte für Wiederverwendung: Funktionale Abstraktion, Modularisierung, ... Generik (Instantiierung von Paketen für verschiedene Zwecke) Vererbung (Wiederverwendung geerbten Codes) Polymorphie (Operation ist auf Daten unterschiedlicher Typen anwendbar)

23 Verbesserung der Softwarequalität
Grundannahmen Qualitätsziele werden während der Konzeptfindung vorgegeben. Der Entwicklungsprozess bestimmt Eigenschaften und Qualität des Produktes. Die Qualität des Entwicklungsprozesses kann definiert gemessen und verbessert werden. Produktqualität Nachweis durch Prüfung Anforderungen und/oder Erwartungen an das Produkt Merkmale und Eigenschaften des Produktes PROZESS Anweisungen Ausführung Prozessqualität Nachweis durch Zertifizierung Produktqualität wird durch gute Prozessqualität leichter erreicht

24 Prozess-Qualität in der Softwareentwicklung
Niedrige Prozessqualität Improvisierter, ad hoc-Prozess Reaktion bei Problemen Kosten- und Terminpläne werden im allgemeinen nicht eingehalten Qualitäts- und Funktionsreduktion bei Terminproblemen QS-Aktivitäten werden bei Terminproblemen nicht durchgeführt Hohe Prozessqualität Professionell durchgeführter Prozess Vermeiden von Problemen Bessere Planung durch geeignete Prozessverfahren Probleme werden frühzeitig erkannt und behoben Der Prozess wird kontinuierlich verbessert Die Verbesserung der Prozessqualität erfordert Bestimmung des Zieles und dazu die Wahl des Prozessmodelles, die Erhebung des Ist Zustandes (Audit oder Assessment) und die Auswahl von Schritten zur Annäherung des Ist Zustandes an das Ziel.

25 Software-Entwicklungsprozess - Ziele
Alle Elemente eines Systementwurfs sind in einem Repository erfasst und damit quantitativ definiert. Sie bilden die Grundlage für die Aufwandskalkulation, stehen über festgelegte Strukturen in Beziehung zueinander und können in mehreren Projekten verwendet werden. Alle Systementwürfe und -dokumente beziehen sich begrifflich auf diese Elemente mit einheitlichen Schreibweisen und konsistenten Begriffen - inklusive der an der Benutzeroberfläche (Masken, Listen, Belege) verwendeten Bezeichnungen. Es besteht jederzeit Transparenz darüber, wo welche Elemente auftreten beziehungsweise benutzt werden. Die Beschreibung referenzierter Objekte ist direkt abrufbar. Die Entwürfe werden automatisch formalen Plausibilitätsregeln unterworfen. Die Definitionen sind eins zu eins die Basis für Texte in Benutzerdokumenten und Online-Help-Systemen.

26 Software Entwicklungsprozess - häufige Fehler
Auf ein Datenmodell wird im fachlichen Entwurf verzichtet Systeme und ihre Funktionen werden nicht über ein Repository sondern direkt als Dokument beschrieben. Für Funktions- und Maskenabläufe werden, wenn überhaupt vorhanden, bunte Folien etwa über Powerpoint erstellt. Die zum System gehörenden Teile werden erst in der technischen Umsetzung eindeutig beschrieben und vielleicht bei Projektende nachdokumentiert. Dokumente werden in uneinheitlichen Formaten, Ablagemedien und -strukturen verwaltet. Es gibt kaum qualitätssichernde Prüfungen.

27 Prozessqualität: Ansätze und Ziele
Statische Ansätze zur Verbesserung der Prozessqualität QM-Systeme Assessment TQM Business Engineering Audit SPICE CMM ISO Erreichung der nächsten Reifegradstufe Prinzipien Forderungen an Prozesse Quelle: Banford, R.C., Deibler II W.J., Comparing, contrasting ISO 9001 and the SEI capability maturity model, in: Computer, Oct. 1993, pp

28 Die 4 ISO-Hauptnormen zum Qualitätsmanagement
Die Sicherstellung von Qualität bei technischen Produkten folgt allgemeinen Regeln, die in den ISO 9000 Normen festgeschrieben sind. In 2000 wurde eine neue Fassung veröffentlicht: ISO 9000 Grundlagen und Begriffe (in Englisch 8/00, in Deutsch 10/00) ISO 9001 Qualitätsmanagement-Systeme: Forderungen (in Englisch 8/00, in Deutsch 10/00) ISO 9004 Qualitätsmanagement-Systeme: Leitfaden zur Leistungsverbesserung (in Englisch 8/00, in Deutsch 10/00) ISO Leitfaden zum Auditieren von QM- Systemen (ISO-Norm 09/01, DIS 10/00, als CD 01/00 in Englisch)

29 ISO 9000 Im ISO 9000-Normenwerk werden allgemeingültige, branchenneutrale Minimal anforderungen an ein Qualitätsmanagementsystem (QM-System) aufgestellt. Ein QM-System soll vollständig, dokumentiert, bekannt, überprüfbar, evolutionär und eingehalten sein. Dies wird in der Regel nur in mehreren Schritten (Reifestufen) erreicht Beim Aufbau eines QM-Systems sind die betriebsinternen Prozesse zu erfassen und zu dokumentieren. Qualitätsrelevante Dokumente werden gesichert. Die Zuständigkeiten und Verantwortlichkeiten in der Aufbauorganisation werden erfasst. Anschließend erfolgt eine kritische Wertung des Istzustandes bezogen auf die Anforderungen der Qualitätssicherung. Meistens ist eine Anpassung der Ablauforganisation und eindeutige Festlegung von Zuständigkeiten und Befugnissen nötig. Die Qualitätsphilosophie des Unternehmens, die Dokumente und die Aktivitäten werden in einem Qualitätssicherungs-Handbuch dokumentiert. Nach der Einführung des QM-Systems erfolgt eine Funktions- und Wirksamkeits- kontrolle zunächst durch ein internes Audit, dann durch ein externes Audit.

30 8 Prinzipien des Qualitätsmanagements der ISO9000
Kundenorientiertes Handeln der Organisation Führungswille des Managements Vollständige Beteiligung der Mitarbeiter Prozessorientierung aller Abläufe Ganzheitliche Betrachtung der Abläufe Wille zur ständigen Verbesserung Entscheidungen nur auf der Basis von Daten und Fakten Lieferantenbeziehungen zum gegenseitigen Nutzen

31 Prozessstruktur des ISO 9001/9004 Prozessmodells
Die neuen Normen sind vor allem Kunden- und Prozess-orientiert Produkt Verantwortung Ressourcen Verwaltung QM zur Produkt Verbesserung Produktrealisierung Anforderung Aktivitäten Erfüllung

32 Ansätze zur Verbesserung des SE Prozesses
Total Quality Management - TQM Ganzheitliche, umfassende aber nicht klar abgegrenzte Unternehmensphilosophie, die das Ziel hat, die Prinzipien Primat der Qualität, Zuständigkeit aller Mitarbeiter, ständige Verbesserung, Kundenorientierung, internes Kunden-Lieferanten-Verhältnis und Prozessorientierung umzusetzen. Software Process Improvement and Capability Determination - SPICE Zweidimensionales Referenzmodell zur Bewertung und Verbesserung von Software-Prozessen, als ISO-Norm vorgesehen. Business Engineering Unternehmen und ihre Geschäftsprozesse werden in Abhängigkeit von ihren Zielen und Aufgaben ingenieurmäßig gestaltet, wobei alle Möglichkeiten der Informations- und Kommunikationstechnik genutzt werden.

33 Maßnahmen zur Qualitätssteigerung
Das Capability Maturity Modell (CMM) vorsucht dies in ein Schema zu bringen

34 Auditierung, Zertifizierung und Akkreditierung

35 Das Capability Maturity Modell (CMM)
1987 entwickelte das Software Engineering Institute (SEI) der Carnegie Mellon University im Auftrag des amerikanischen Verteidigungsministerium einen Fragebogen, mit dessen Hilfe die Leistungsfähigkeit von Software-Lieferanten bewertet werden sollte (Assessment). Der Fragebogen wurde zu einem Referenzmodell ausgebaut. Dieses Referenzmodell erhielt den Namen Capability Maturity Model (CMM). Den aktuellen Stand der Entwicklung findet man auf den Web-Seiten des SEI unter Publikationen. Das CMM gibt Hinweise, wie die Qualität der Software-Entwicklungsprozesse verbessert werden kann. Es werden fünf unterschiedliche Qualitätsstufen von Software-Entwicklungsprozessen unterschieden. Jede Qualitätsstufe beschreibt einen bestimmten Reifegrad (maturity) eines Entwicklungsprozesses. Die Stufen bauen aufeinander auf. Eine Stufe setzt voraus, dass die Anforderungen an die Prozesse, die die anderen Stufen erfordern, erfüllt sind.

36 Das Capacity Maturity (CMM) Grundkonzept

37 Zertifizierung Ablauf des Zertifizierungs- prozesses (nach Göhner)

38 Erhalt der Gültigkeit der Zertifizierung der der

39 Zertifizierte Software an der Materialprüfungsanstalt Stuttgart

40 Durch Softwareprüfung zu Produktqualität
statische dynamische ohne Hilfe des Rechners mit Hilfe Test Leistungsmessung : Prüfung gegen Regeln Konsistenzprüfung Quantitative Untersuchung Review :

41 Basis von Prüfungen: Vergleich Soll/Ist
VERIFICATION Customer needs Specs Draft standards Drafting process For the purpose of this presentation Verification: Comparison of revised standards with approved specification Validation: Comparison of revised standards with user needs (results of survey) Commit audience to participation in validation process through national standards bodies VALIDATION Anforderung Aktivitäten Erfüllung Soll auf Basis von Modellen Ist

42 Produktqualität – Prüfverfahren (Beispiele)
Komponenten Testende Verfahren Dynamisch (Kontrollfluss, Datenfluss, Funktional) Statisch (Inspektion, Review, Walk through) Verifizierende Verfahren Verifikation (Konsistenz Entwurf + Implementierung) Symbolisches Testen (statische Strukturtests) Systeme Integrationstest White Box-Test der Komponenten und ihrer Beziehungen Systemtest Black Box-Test des Systems als Ganzes Abnahmetest Black Box-Test des Systems als Ganzes nutzen Mitwirkung des Auftraggebers

43 Softwareprüfung und Fehlerbehebung
meint Erkennen von unerwartetem Verhalten stößt Prozess der Ursachenfindung an resultiert in Fehlerbehebung Fehlerbehebung führt zur Veränderung des Produktes kann unerwartetes Verhalten erzeugen Vergleich:

44 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 Erfodernisse bezieht.“ (Balzert S.257) zurück

45 Qualitätskreis Qualitätskreis : „Begriffsmodell, das die zusammenwirkenden Tätigkeiten enthält, welche die Qualität beeinflussen, und zwar von der Feststellung der Erfordernisse bis zur Feststellung, ob diese Erfordernisse erfüllt worden sind.“ aus: Schneider, Hans-Jochen (Hrsg.): Lexikon der Informatik und Datenverarbeitung, Version 4.0, R.Oldenbourg Verlag München Wien 1997 – S.692 zurück

46 Beherrschte Fertigung
siehe Timischl, Wolfgang; Qualitätssicherung Statistische Methoden, Hanser Verlag, München, Wien, S.178ff siehe Dutschke, Wolfgang: Fertigungsmeßtechnik; Teubner Stuttgart 1993 S.179f Beherrschte Fertigung wird durch die Firmenkultur getrieben. Ihre Stufen sind Total Quality Control (produktorientiert) und Total - Quality Management (prozesskundenorientiert). zurück

47 Qualitätsmanagement Qualitätsmanagement : „Alle Tätigkeiten des Gesamtmanagements, die im Rahmen des QM‑Systems die Qualitätspolitik die Ziele und Verantwortungen festlegen sowie diese durch Mittel wie Qualitätsplanung, Qualitätslenkung, Qualitätssicherung und Qualitätsverbesserung verwirklichen.“ Anmerkungen: 1 . Qualitätsmanagement ist die Verantwortung aller Ausführungs-ebenen, muss jedoch von der obersten Leitung angeführt werden. Ihre Verwirklichung bezieht alle Mitglieder der Organisation ein. 2. Beim Qualitätsmanagement werden Wirtschaftlichkeits-gesichtspunkte beachtet. aus: Schneider, Hans-Jochen (Hrsg.): Lexikon der Informatik und Datenverarbeitung, Version 4.0, R.Oldenbourg Verlag München Wien 1997 – S.692 zurück

48 Metrik-Analysen „Eine Software-Metrik definiert, wie eine Kenngröße eines Software-Produkts oder eines Software-Prozesses gemessen wird.“ (Balzert, S.225) „Eine Messung zu Kenngrössen der Software oder deren Entwicklung, die in der statistischen Auswertung eine quantitative Aussage erlaubt.“ (Thaller, S.350) zurück

49 Total Quality Management
„ Total Quality Management ist ein systematischer Ansatz zum Management eines Unternehmens, der darauf ausgerichtet ist, den Kunden immer bessere Produkte anzubieten und die Prozesse des Betriebs kontinuierlich zu optimieren.TQM schließt alle Angestellten und Arbeiter der Firma ein und bezieht sich auf Lieferanten und Kunden. TQM ist ein umfassender Ansatz, der nicht nur einzelne Abteilungen oder Subsysteme umfasst, sondern auf das Unternehmen als Ganzes zielt“ (Thaller, S.269) zurück

50 Qualitätssicherung „ Die geplanten und notwendigen Maßnahmen und Tätigkeiten, um sicherzustellen, dass ein Produkt oder eine Dienstleistung vorgegebene und dokumentierte Produktanforderungen einhalten wird.“ „ Die Erfüllung der dokumentierten Wünsche und Forderungen des Kunden“ (Thaller, S.351) zurück

51 Agile Programmierung Agile Prozesse sollen helfen, klassische Fehler bei der Softwareentwicklung wie überschrittene Termine und nichterfüllte Erwartungen zu vermeiden. Sie benutzen Methoden des Extreme Programming und tägliche Kurztreffen, um den Projektfortschritt zu kontrollieren. Der Einsatz agiler Prozesse verlangt Umstellungen bei Entwicklern und Auftraggeben. zurück

52 Akzeptanztest „ Der formelle Test im Beisein des Kunden oder Endbenutzers. Dabei muss die Software die in der Spezifikation dokumentierten Anforderungen erfüllen.“ (Thaller, S.348) zurück

53 Verifikation eines Softwareprodukten
„ Die Überprüfung eines Teilprodukts der Software - Entwicklung, also des Produkts, das am Ende der Phase vorliegt.“ „ Der formelle Beweis der Richtigkeit eines Programms im mathematischen Sinne.“ „ Die Bewertung und Überprüfung von Software Produkten oder des Erstellungsprozesses.“ (Thaller, S.352) zurück

54 Validierung von Software
„ Die Überprüfung der Software gegen vorgegebene Anforderungen, zum Beispiel beim Akzeptanztest.“ „ Man spricht von Independant Verification & Validation. Wenn die Qualitätsprüfung der Software durch eine Gruppe oder Firma erfolgt, die mit der mit der Erstellung der Software betrauten Firma wirtschaftlich und organisatorisch nicht verbunden ist.“ (Thaller, S.350) zurück

55 Links Normen und Standards zum Qualitätsmanagement
International Standard Organization (ISO) - DIN www2.din.de Britisch Standard Institute (BSI) USA - Normen

56 Literatur Schneider, Hans-Jochen (Hrsg.): Lexikon der Informatik und Datenverarbeitung, Version 4.0, R.Oldenbourg Verlag München Wien 1997) Balzert, Helmut: Lehrbuch der Software-Technik; Software-Management, Software-Qualitätssicherung, Unternehmensmodellierung. Spektrum Akademischer Verlag Heidelberg, Berlin. 1998 Meyer, Bertrand: Objektorientierte Software-Entwicklung Hanser Verlag; München, Wien. 1990 Thaller, Georg Erwin: Software- und Systementwicklung Heise Verlag, Hannover, 2002

57 Danksagung Aus folgenden Vorlesungen und Foliensammlungen aus dem Bereich Softwaretechnik konnten wir Anregungen zur Gestaltung dieses Lernmoduls gewinnen: P.Göhner IAS Vorgehensmodell IAS Universität Stuttgart


Herunterladen ppt "Prozessqualität und Produktqualität"

Ähnliche Präsentationen


Google-Anzeigen