Motivation - Ziel. Software Engineering Vorlesung Einheit 5-2 Qualitätsmanagement. Prinzipien und Anleitungen. Begriffsdefinitionen

Ähnliche Dokumente
ISO 9001 und CMM im Vergleich

Begleitvorlesung zum Softwaretechnikpraktikum SS 2003

ISO SPICE Erste Eindrücke

CMMI, BOOTSTRAP, SPICE, AutomotiveSPICE... was wollen die wirklich? - Werkzeuge richtig eingesetzt! Bernd.Hindel@methodpark.de

CMMI und SPICE im Automotive Umfeld

CMM Mythos und Realität. Forum Forschungsförderung BITKOM / ViSEK Oktober Tilman Seifert, TU München

Software-Prozess-Assessments

Software Engineering. Prozessqualität CMM, CMMI und SPICE

SPiCE und Test: Was hat das denn miteinander zu tun?

E DIN EN ISO 9001: (D/E)

Softwareentwicklung nach der ISO9001?

Software-Qualität Ausgewählte Kapitel

BidBox Das Unternehmen

SPI-Seminar : Interview mit einem Softwaremanager

Was kennzeichnet qualitativ hochwertige Software Systeme? Wie kann hohe Software Qualität erreicht werden?

ISO Reference Model

13. Qualitätsmanagement Software Engineering

Informationssystemanalyse Das Capability Maturity Model 5 1

Inhaltsverzeichnis. 1 Wie ist dieses Buch zu lesen? 1. 2 Erläuterung im Buch referenzierter Konzepte 5. 3 Verstehen der Capability Level 0 bis 5 15

Projektmanagement und Softwareentwicklung. Nina Stodolka, WS2017/2018

Software Engineering

Georg Erwin Thaller. Qualitatsoptimierung der Software-Entwicklung. Das Capability Maturity Model (CMM) 3vieweg

ÄNDERUNGEN UND SCHWERPUNKTE

CMMI und Vorgehensmodelle Wie unterstützen sich CMMI und Vorgehensmodelle gegenseitig? Dr. Ralf Kneuper

Inhaltsverzeichnis. Teil I Grundlagen 1

Darstellung und Anwendung der Assessmentergebnisse

Jochen Ludewig Horst Lichter. Software Engineering. Grundlagen, Menschen, Prozesse, Techniken. dpunkt.verlag

CMMI - Unterschiede und Gemeinsamkeiten zu CMM. 10/16/03 CMMI - Unterschiede und Gemeinsamkeiten zu CMM

3. GI-Workshop EPK 2004 Geschäftsprozessmanagement mit Ereignisgesteuerten Prozessketten Luxemburg. ARIS meets RUP

E-Business. Fr. Hauser, WS 2018/

Software Qualität Was ist das? Ansätze zur Beurteilung / Verbesserung der Produkt- und Prozessqualität. Erzeugung von Software Quality?

CeBIT CARMAO GmbH

Erfüllung der CMMI-Anforderungen mit dem neuen V-Modell XT. Dr. Ralf Kneuper Beratung für Softwarequalitätssicherung und Prozessverbesserung

TAV Arbeitskreis Testmanagement. Einführung von Testprozessen. Bedeutung von Reifegradmodellen für das Testmanagement

Automotive SPiCE und IEC Synergie oder Widerspruch?

Inhaltsübersicht. Teil I Überblick 25. Teil II Service-Strategie 87. Teil III Service Design 183. Teil IV Service Transition 323

on Software Development Design

AUF DEM PRÜFSTAND: IST QUALITÄT NUR FREUNDLICHE ZUGABE? MIT ROUNDTABLE-DISKUSSION

ISO Reference Model

Der agile Software Architekt

Inhaltsverzeichnis. 1 Einführung Warum dieses Buch? Struktur und Aufbau Dankeschön Feedback 5

Testers Architects Enterprise Dev Consultants Professionals VB6 Devs Part-Timers Hobbyists Students Enthusiasts Novices

Inhaltsverzeichnis. Ernest Wallmüller. Software Quality Engineering. Ein Leitfaden für bessere Software-Qualität ISBN:

Effiziente Qualitätssicherung in Prozessmodellen: GREME eine Review-Methode

Qualitätssicherung von Software

Verbesserung von Softwareprozessen mit CMMI

CMM Level 5 Markus Mattes. Markus Mattes CMM Level 5 1

Inhaltsverzeichnis. Grundlagen und Begriffsbildung

Oliver Nössler. Lohnt sich Prozessverbesserung? Können Verbesserungen immer gemessen werden? IT M a t u r i t y. S e r v i c e s

Medical SPICE Von der Regulierung zur Praxis

Musterhandbuch Qualitätsmanagementplan

Empirische Strategien

Validierung von Software-Werkzeugen Medical Device Day, Dipl.-Phys. Matthias Hölzer-Klüpfel, M.Sc.

1.1 Historie von FitSM Der Aufbau von FitSM FitSM als leichtgewichtiger Ansatz... 6

Welche Testautomatisierungen sind möglich und sinnvoll?

ISO Zertifizierung

Semester: -- Workload: 150 h ECTS Punkte: 5

Wieso Prozesse? Ist das nicht einfach nur mühsam? A. Stucki, Solcept AG

IT-Service Management mit ITIL

Die Anforderungen der DIN EN ISO 9001:2015 Eine erste Einschätzung

Softwareprozesse systematisch verbessern ISO15504(SPICE) und Automotive SPICE. Heinrich Dreier Elmshorn

ORGANISATORISCHES. So#ware Technik Prof. Dr. Wolfgang Schramm

Abschlussbericht. Erstellung eines automatisierten Build-Prozesses für Eclipse-RCP- Anwendungen am Fallbeispiel Control System Studio.

Agile Development vs. Security Requirements

SPICE in der medizinischen Software-Entwicklung

2.2 Ansätze zur Qualitätssicherung

Verbesserung der Beschaffung von Produkten und Leistungen auf Basis des CMMI für Akquisition (CMMI-ACQ)

IATUL SIG-LOQUM Group

Was geht Qualitätsmanagement/ Qualitätsicherung die Physiotherapeutenan? Beispiel einer zertifizierten Abteilung

Software Engineering 1

ArGeZ-Forum 31. Januar 2017, Düsseldorf. IATF Wie ist die Abkehr von ISO zu bewerten?

Comparing Software Factories and Software Product Lines

ITIL Prozese in APEX am Beispiel des Vodafone FCH

Softwaremodellierung innerhalb eines SAP ABAP Projekts im agilen Umfeld

Mayr, H.: Project Engineering Ingenieurmäßige Softwareentwicklung in Projektgruppen, Fachbuchverlag Leipzig "

IT-Beratung: Vom Geschäftsprozess zur IT-Lösung

Security for Safety in der Industrieautomation Konzepte und Lösungsansätze des IEC 62443

Process Management Office Process Management as a Service

SPI - Software Process Improvement mit CMMI, PSP/TSP und ISO 15504

IV Software-Qualitätssicherung

QM-Handbuch. der. ReJo Personalberatung

Scrum for Management Praxis versus Theorie oder Praxis dank Theorie. ALM Day 26.Oktober 2011 Urs Böhm

Anforderungen gezielter umsetzen, Optimieren, Transparenz schaffen

Agenda. Überblick Qualitätsmanagement ISO 9000 CMM

INHALTSVERZEICHNIS. xxiii xxvü xxxiü xxxvii

Die Zertifizierungsstelle der TÜV Informationstechnik GmbH bescheinigt hiermit dem Unternehmen

Funktionale Sicherheit: Wie macht man das? Andreas Stucki, Solcept AG

Inhaltsverzeichnis. Martin Beims. IT-Service Management mit ITIL. ITIL Edition 2011, ISO 20000:2011 und PRINCE2 in der Praxis ISBN:

DGQ Regionalkreis Qualität in Projekten. QM/QS/PM bei QIAGEN Dr. Antje Lukas R&D QIAGEN Hamburg GmbH. Sample & Assay Technologies

Methoden und Mehrwerte der Prozessmodellierung

Zertifizierung nach DIN EN / ISO Norbert Kraus Energieeffizienz und Energiemanagement, Nürnberg, 13. Juli 2011

TFS Customzing. in der Praxis. Thomas Gugler. seit 2005 bei ANECON. .NET seit 2002 (happy bday!) Schwerpunkte: MCPD.Net 4.0, MCTS TFS, Scrum Master,

Agil lernen. 4. Projektmanagement Day Georg Götz

Quantifizierung nicht-funktionaler Anforderungen JURISTISCHES IT-PROJEKTMANAGEMENT WS1617 DOZENT: DR. FRANK SARRE LMU MÜ NCHEN ZHENHAO LI

Das neue Automotive SPICE Duo PAM VDA Guideline

Verbesserung der Beschaffung von Produkten und Leistungen auf Basis des CMMI für Akquisition (CMMI-ACQ)

Transkript:

Motivation - Ziel Software Engineering Vorlesung Einheit 5-2 Qualitätsmanagement Inst. f. Softwaretechnik und Interaktive Systeme Stefan.Biffl@tuwien.ac.at Inhalt: - Qualitätsdefinition - Kontrolle von Produkten und Prozessen - Verbesserung von Produkten und Prozessen - Qualitätsstandards - Größere Kundenzufriedenheit. Durch die bessere Berechenbarkeit eines QM- Systems, bleibt der Kunde eher von unerwünschten Überraschungen verschont als bei intuitiver Vorgehensweise. - Fehlerminderung. Den Aufwand durch Fehler reduziert man, weil von Projektbeginn an versucht wird Fehler zu verhindern bzw. zu eliminieren. - Bessere Informationsflüsse. Den Informationsaustausch zwischen Kunde, Betreiber und Entwickler verbessert man deutlich. - Wettbewerbsvorteile. Durch Zertifizierung erhält der Betrieb einen Vorteil gegenüber Mitbewerbern, deren Arbeit nicht auditiert wurde. 2 Begriffsdefinitionen Prinzipien und Anleitungen - Qualität ist die Eignung zur Erfüllung vordefinierter Anforderungen. - Qualität ist die Gesamtheit von Eigenschaften und Merkmalen eines Produkts oder einer Leistung, die sich auf die Eignung zur Erfüllung vordefinierter Anforderungen beziehen. [ISO 8402] - Qualität ist die Erfüllung von verabredeten Kundenanforderungen. Über die Erfüllung entscheidet nur der Kunde! [SQS-Skript] - Die Erzeugung von guten Produkten nach Gefühl basiert auf fähigen Leuten und auf Zufall. Die Einhaltung von Qualitätsstandards kann den Anteil von beidem am Gesamterfolg verringern. - Qualitative hochwertige Software-Produkte sind für den Anwender verwendbar. für den Professionisten verständlich und änderbar. für den Betreiber effizient und administrierbar. 3 4 Beispiele für Qualität Beispiel: Anforderungen (E-Katalog) - Gute Qualität Durch gute Planung wurde das Programm termingerecht fertig. Überprüfen kann man dies durch Führung und ständiger Bearbeitung/ Aktualisierung des Projektplans. Das Programm erweist sich in der Praxis als leicht wartbar. Überprüfen kann man dies durch verfolgen der Wartungsarbeiten und deren Kosten. - Schlechte Qualität Durch Fehlplanung hat sich der Fertigstellungstermin extrem verzögert. Dadurch hat man den Kunden verärgert und das Vertrauen für weitere Projekte zerstört. Hohe Wartungskosten. Das Programm erweist sich im laufe des 1. Betriebsjahres als sehr wartungsintensiv, was sich in der Kostenaufstellung extrem niederschlägt. - Situation: Für das Projekt e-katalog Otto sollen End-User-Anforderungen festgelegt - Ziel: Durch festlegen von auswertbaren Anforderungen, sollen alle Anforderungen und Wünsche festgelegt werden, um späteren Unklarheiten vorzubeugen. - Aufgabe: Überlegen Sie welche Anforderungen der Kunde, Betreiber und Entwickler an den E-Katalog haben könnte, erklären Sie die Begriffe und ordnen Sie die Prioritäten zu. - 1. Qualitätsanforderungen sammeln und nach Wichtigkeit ordnen. - 2. Die wichtigsten Anforderungen messbar und testbar definieren. 5 6

CMM Levels 1, 2, and 3 Kontrolle von Produkten und Prozessen Level 1 (initial) - ad-hoc es ( like it is ) Level 2 (repeatable basic project management ) - Configuration Management - Software Quality Assurance - Subcontract Management Level 3 (defined definition) - Peer Reviews - Intergroup Coordination - Software Product Engineering - Integrated Software Management - Training Programs - Organization Process Definition - Organization Process Focus Problem Ziele Möglichkeiten Risiken Qualitätssicherung Analyse Entwurf Implementierung Test Testvorbereitungen Projektmanagement Produkt Verwendbarkeit Betriebsaufwand Erweiterbarkeit - Project Tracking and Oversight - Project Planning - Kontrollierter und reproduzierbarer Entwicklungsprozess - Requirements Management - Frühzeitiges Erkennen von Problemen und Einleitung von Gegenmaßnahmen [BIFF02] 7 8 Produktkontrolle: Configuration Management Produktkontrolle: Reviews - Begriff Änderungsmanagement - Bedarf Ordnung und Übersicht in Projektabläufen - Ziel Ermöglicht kontrollierte und nachvollziehbare Änderungen - Leistung Konfigurations-/ Versionsbildung Identifikation von Elementen und Handhabung verschiedener Versionen Einige Tools und Entwicklungsumgebungen (SAP, VisualAge, CVS) unterstützen Versionisierung von Source Code A formal meeting at which a product or document is presented to the user, customer, or other interested parties for comment or approval. [IEEE Std 729-1983] - Ziele Früherkennen von Fehlern Fehlervermeidung - Review-Modelle Fagan Inspection - 6 Basis-Schritte im Inspection-Prozess - Design und Code Inspection Lesetechniken - Ermöglichen individuelle Fehlersuche Empirische Ergebnisse - Erfahrungswerte 9 10 Reviews-Ablauf Begriffsdefinitionen: Testen - Vorbereitungen einer Review Eingangs-Checkliste Verständigung von Treffen Produkt-Checkliste Rollen-Beschreibungen - Ablauf einer Review Produkt-Checkliste - Anhaltspunkte für die Begutachtung Liste der Diskussionspunkte Vorlage für den Review-Bericht - Nachbearbeitung einer Review Erstellung eines Review-Berichtes - Testen: Testen ist das Ausführen eines Programms, mit dem Ziel Fehler zu finden. [Myers, 1979] - Unter Testen versteht man den Prozess des Planens, der Vorbereitung und der Messung, mit dem Ziel, die Eigenschaften eines IT-Systems festzustellen und den Unterschied zwischen dem tatsächlichen und dem erforderlichen Zustand aufzuzeigen. [Pol et at., 2001] - A software error is present when a program does not do what an end user reasonably expects it to do. [Myers, 1979] - Fehler: Ein Fehler ist eine Abweichung zwischen dem Programm und der Spezifikation. [Kaner et al., 1999] - Ein Software-Fehler ist gegeben, wenn ein Programm nicht das tut, was der Benutzer vernünftigerweise erwartet. [Myers, 1979] 11 12

Test-Methoden Prozessverbesserung - Testebenen, im Rahmen des Software-Entwicklungsprozesses durchläuft der Test verschiedene Ebenen. Modultest, Systemtest Alpha-Test, Beta-Test - Test-Ziele, abhängig von der Testebene und dem aktuellen Anwendungsfall verfolgen Tests unterschiedliche Ziele. Funktionstest Lasttest - Test-Struktur, betrachtet die äußere bzw. innere Struktur der Software. Blackbox-Test Whitebox-Test - Um die ständige Verbesserung der Organisation sicher stellen zu können, müssen vorhandene Verbesserungspotenziale offengelegt und umgesetzt - Solche Potentiale können durch unterschiedliche Verfahren und Werkzeuge entdeckt und aufgezeigt - Eines dieser Werkzeuge ist der Plan-Do-Check-Act-Prozess. - Der Plan-Do-Check-Act-Prozess ist ein Plan- und Feedbackzyklus auf mehreren Ebenen, der konsequentes Lernen aus Erfahrung in einem Projekt bzw. Unternehmen darstellt. [BIFF02] 13 14 Prozessverbesserung: Plan-Do-Check-Act (Quality) Audits (1/2) company project work space An activity to determine through investigation the adequacy of, and adherence to, established procedures, instructions, specifications, codes, and standards or other applicable contractual and licensing requirements, and the effectiveness of implementation. [IEEE N45.2.10-1973] plan (framework) checklist do (production) tech. review check (product) - Warum Audits? Wettbewerbsvorteil Kontrolle/Prüfung des Systems/der Abläufe in der Firma project plan manag. review - Ziele: [BIFF96] QM-handbook handbook accordance act (feedback) Objektive Überprüfung (intern + extern) Überprüfung Praxis vs. Standards (QM-Handbuch) Dokumentation 15 16 (Quality) Audits (2/2) Audit Prozess ISO Zertifizierungsaudit type tasks subjects [PFEI96] purpose optimizing system-audit Investigation: QM-System (or fragments) structure organizational workflow QM-system (Judgement of Effectiveness) -audit (method) Investigation of: - personal skills - proceedings - course of events /proceeding workflow personal product-audit Investigation of (sub)products acc. to specific. (fragments of) products improvements according to the weak-points Auditvorbereitung / Projektgespräch Benennung der Auditoren Prüfung des QM-Handbuchs Info an Kunden Vor-Audit Vorinformation Kurzfragenliste Beurteilung anhand Kurzfragenliste Kundenwunsch QM-Handbuch evt. QMV Beurteilung QM Unterlagen Zertifizierungsaudit Erteilung Zertifikat Audit im Unternehmen und Auditbericht Beurteilung des QM-Systems Bedingungen für Zertifikaterteilung erfüllt? JA Zertifikat Info an Kunden NEIN Nachaudit 17 18

Qualitätsstandards Capability Maturity Model (CMM) - Bedarf Wettbewerbsvorteil - Standards ISO 9126 - Definition von Produktqualitäten ISO 900x - Regeln für den Herstellungsprozess von Produkten ISO 9001 - Modelle zur Darlegung der Qualitätssicherung in der Entwicklung, Produktion, Montage und dem Kundendienst CMM SPICE discipline definition inital metrics repeatable change management defined managed optimizing level 5 ( control) level 4 ( measurement) level 3 ( definition) level 2 (basic project management) level 1 (ad hoc es) 19 20 SPICE Terminologie SPICE Methode - Software Process ment and Capability Determination (ISO/IEC TR 15504) - 3 Elemente Process assessement Process improvement Process determination - 5 Hauptprozesse und geg. Subprozesse - Level 1 enthält bereits definierte Anforderungen "established" "managed" "performed" "Optimising" "Predictable" level 5 (continously improvement) Process Change Continuous ment level 4 (Quantitatively Controlled) Process Measurement Process Control level 3 (well defined) Process Definition and Tailoring Process Resource Availability level 2 (planned and tracked) Performance Management Work Product Management level 1 (performed informally) Process Performance "incomplete" level 0 (not performed) As it is 21 22 Empirische Softwaretechnik Beispiel: Qualitative Auswertung - Qualitative Auswertung Feedback, Kommunikation ( Stories ) Zusammenarbeit Post-Mortem Review - Quantitative Auswertung (CMM-level 4+) Managen auf Basis von Zahlen Prozesse messen Änderungen quantitativ beobachten Natürliche Streuung von besonderen Einflüssen unterscheiden - Situation: Zum Abschluss des Projektes e-katalog soll im Zuge der Prozessverbesserung ein Post-Mortem Review durchgeführt - Ziel: Durch kontinuierliche Verbesserung und Kontrolle der Qualität des Produktes und der Prozesse soll eine spätere Abweichung vermieden - Aufgabe: Überlegen Sie, welche Schritte in einer solchen Review durchlaufen werden und erklären Sie diese. 23 24

Beispiel: Quantitative Auswertung Zusammenfassung und Ausblick - Situation: Für das Projekt e-katalog sollen End-User-Anforderungen überprüft - Ziel: Durch überprüfen von auswertbaren Anforderungen, soll die Durchführung des Projektes kontrolliert und etwaige Abweichungen aufgedeckt und beseitigt - Aufgabe: 1) Überlegen Sie, welche quantitativen Auswertungen anhand des Projektplanes sinnvoll sind. 2) Erklären Sie die Begriffe. 3) Welche quantitativen Auswertungsmöglichkeiten interessieren Kunden, Entwickler und Betreiber und ordnen sie die jeweiligen Prioritäten zu. - Qualitätsdefinition - Kontrolle und Verbesserung von Produkten - Prozesskontrolle - Prozessverbesserung (PDCA, Reviews, Testen, Audits) - Qualitätsstandards (ISO 9126, ISO 900x, CMM, SPICE) 25 26 Referenzen und Web-Ressourcen 1/3 Referenzen und Web-Ressourcen 2/3 - Bücher [Balz98] Balzert, H.: Lehrbuch der Software-Technik: Software- Management, Software-Qualitätssicherung, Unternehmensmodellierung. Heidelberg: Spektrum Akademischer Verlag, 1998 [Biff96] Biffl, S.; Brem, C.;Horak,K.: Methoden der Software Qualitätssicherung, Skriptum zur Vorlesung, Technische Universität Wien, Institut für Softwaretechnik, 1996 [Biff02] Biffl, S.: Qualitätsmanagement von Software fortgeschrittene Aspekte, Technische Universität Wien, Institut für Softwaretechnik, 2002 [Evans et al., 1978] Evans and Marciniak, Software Quality Assurance and Management, John Wiley & Sons, 1987; ISBN: 0471809306 [Karner et al., 1999] Cem Karner, Jack Falk, Hung Quoc Nguyen: Testing Computer Software, Wiley, 1999, ISBN 0-471-35846-0 [Myers, 1979] Glenford J. Myers: The Art of Software Testing, Wiley, 1979, ISBN 0-471-04328-1 [Pfei96] Pfeiffer, T.: Qualitätsmanagement, Strategien, Methoden, Techniken. 2.Auflage, München, Wien, Hanser, 1996, ISBN 3-446- 18579-8 - Fachartikel [Fagan, 1986] Fagan, M.E. 1986. Advances in Software Inspections. IEEE Transactions on Software Engineering 12(7):744-751. [Gilb and Graham, 1993] Gilb, T., and D. Graham, Software Inspection; Addison-Wesley, 1993. 27 28 Referenzen und Web-Ressourcen 3/3 - Standards ISO 9000:2000, DIN EN ISO 9000; Qualitätsmanagementsysteme, Grundlagen und Begriffe (ISO 9000:2000), 2000. ISO 9126-1, International Organisation for Standardization: Software Engineering - Product Quality, Part 1: Quality model, www.iso.ch, 2001. ISO 12207 International Organisation for Standardization: ISO/IEC 12207:1998, Information Technology - Guide for ISO/IEC 12207 (Software life cycle es (SPICE), 1998. ISO 16326 International Organisation for Standardization: ISO/IEC TR 16326:1999, Guide for the application of ISO/IEC 12207 to project management, 1999. - Web http:// qse.ifs.tuwien.ac.at [IEEE] http://www. ieee.org 29