Best Practices zur Standardisierung von Testmetriken als Teilaspekt

Transcription

Best Practices zur Standardisierung von Testmetriken als Teilaspekt
Best Practices zur Standardisierung von Testmetriken als Teilaspekt zur Erreichung
von Automotive SPICE® Reifegradstufe 3
Max Hefke, Horst Pohlmann
1
Lemförder Electronic GmbH
Von dem Bussche Münch Str. 12, 32339 Espelkamp
Max.Hefke@zf.com, Horst.Pohlmann@zf.com
Motivation
und
Abstract.
Die
rasante
Entwicklung im Automobilbereich und die
zunehmende Vernetzung neuer (Safety und
Security) Sicherheitssysteme innerhalb und
außerhalb des Fahrzeuges führen unweigerlich zu
einer steigenden Testkomplexität. Demzufolge
werden bereits heute aus den tausenden von
Anforderungen/Testfällen zukünftig zehntausende
von
Anforderungen
bzw.
Testfällen
im
anforderungsbasierten Testen. Der Einsatz von
standardisierten und automatisierten Testmetriken
stellt einen Ansatz dar, diese Komplexität zu
beherrschen.
Metriken, welche die Eigenschaft besitzen ein
Messobjekt in der Softwaretechnik zu vermessen
und in Zahlen auszudrücken, wie z.B. die Anzahl
der atomaren Anforderungen eines Subsystems,
sind von der Akquisition bis zur Freigabe ein
nützliches Werkzeug. Sie dienen sowohl zur
Überwachung und Steuerung der Entwicklungsund Testprozesse als auch für die Herleitung der
Kriterien für die Freigabe in den Integrationsstufen
bis zur Serie.
Zudem kann die formale Vollständigkeit bzgl.
der bidirektionalen Traceability nach ASPICE mit
einfachen Mitteln nachgewiesen werden [1]. Die
Traceability erstreckt sich z.B. von den Software
Anforderungen über die spezifizierten Software
Testfälle und nach ASPICE 3.0 zusätzlich bis hin
zu den Software Testergebnissen.
1 Einleitung
Dieser
Beitrag
dient
Testmanagern
und
Prozessverantwortlichen, als Hilfestellung bei der
Prozessoptimierung durch Standardisierung der
Testmetriken des Softwaretestprozesses im
Hinblick auf Automotive SPICE® Level 3. Durch
die Standardisierung von Testmetriken wird am
Beispiel
des
Softwaretestprozesses
ein
Grundstein gelegt, um Reifegradstufe 3 nach
Automotive SPICE® zu erreichen.
Auf Basis einer fundierten Ausbildung (z.B.
ISTQB® Advanced Level Testmanager) und einer
systematischen Analyse der Anforderungen der
Automotive Hersteller (OEM´s), Lieferanten,
Wettbewerbern und Veröffentlichungen wurden
die Best Practice Testmetriken in einem
Unternehmen
standardisiert.
Dabei
waren
zusätzlich
die
projektübergreifenden
1
Anforderungen der Reifegradstufe 3 hinsichtlich
der Effektivität mit zu berücksichtigen.
Ziel des Beitrages ist es eine Best Practice
Vorgehensweise darzustellen, die exemplarisch
für die Softwareteststufe definiert wurde und
analog auf andere Teststufen übertragen wurde.
2 Grundlagen
Abgeleitete (äußere) Metriken (z.B. AnforderungsTestabdeckung), setzen sich aus verschiedenen
Basis (inneren) Metriken zusammen; d.h. z.B.
werden
für
die
Ermittlung
der
Metrik
Anforderungs-Testabdeckung die Anzahl der
durch mindestens einen Testfall getesteten
Anforderungen und die Gesamtzahl der
Anforderungen benötigt.
Der Zusammenhang der inneren und äußeren
Metriken wird mittels des sog. „Eisbergmodells“
(siehe Abbildung 1) veranschaulicht.
Äußere Metriken
Innere Metriken
Abbildung 1: Eisbergmodell [2]
2.1 Automotive SPICE®
Durch den Zusammenschluss von führenden
Automobilherstellern, der SIG (Automotive Special
Interest Group) und dem „Procurement Forum“ ist
auf der Basis der ISO 15504, der Automotive
SPICE® Standard entstanden [1]. Der Standard
ist gegliedert in das PAM (Process Assessment
Model) und das PRM (Process Reference Model).
2.2 ISO 29119 - Softwaretestnorm
Die ISO 29119 besteht aus vier Teilen: Konzepte
und Definitionen, Testprozess, Testdokumentation
und Testtechniken [3]. In Teil 1 – Konzepte und
Definitionen ist bspw. die Metrik „Test Coverage“
definiert, welche in Kap. 3 des vorliegenden
Beitrages näher beschrieben wird.
Lemförder Elektronik GmbH mit Sitz in Ostwestfalen ist eine 100% Tochter der ZF Friedrichshafen AG
3 Best Practices zur Standardisierung
Das Ziel in diesem Abschnitt ist es Testmetriken
zu
ermitteln,
analysieren,
bewerten
und
abschließend zu standardisieren. In Abbildung 2
ist der Weg von Testmetriken zu standardisierten
und automatisierten Testmetriken dargestellt.
Einheitliche
Definitionen
festlegen
Existente Ansätze analysieren (unternehmensinterne Dokumentation, aktuelle
Projekte, Literatur, …)
OEM Anforderungen analysieren
Kategorisieren („optional“/„verpflichtend“)
Standardisierte Testmetriken
ASPICE
Prozessanwendung 3.2
Automatisieren
ASPICE Prozessdefinition 3.1
Testmetriken
ASPICE
Anforderungen
analysieren
Standardisierte und automatisierte Testmetriken
Tailoring auf Basis der Kategorisierung
Anwendung
Analysieren von zusätzlichen projektspezifischen /
standortspezifischen Anforderungen
Abbildung 2: Best
Vorgehensweise
Practices
–
„getailorte“
Projektmetriken
Übersicht
der
Im ersten Schritt wurden existente Ansätze wie
unternehmensinterne Dokumentationen, aktuell
laufende
Entwicklungsprojekte
oder
Veröffentlichungen zum Thema analysiert.
Auf dem Weg zu den standardisierten
Testmetriken ist es darüber hinaus relevant, die
Automotive SPICE und OEM Anforderungen zu
analysieren. Standardisierte Testmetriken müssen
einheitlich definiert werden, um ein ebenfalls
gleiches Verständnis im Unternehmen zu
schaffen.
Die Vereinheitlichung der Definition der
Testmetriken erfolgt auf der Basis der ISO 29119.
Dazu wurde die Metrik „Test Coverage: degree,
expressed as a percentage, to which specified
test coverage items have been exercised by a test
case or test cases“ [3] Wort für Wort auseinander
gezogen, um dann eine einheitliche Definition
festzulegen. Abbildung 3 veranschaulicht die
Herangehensweise.
Herleitung/Lösungsansatz
Im letzten Schritt (nach Abbildung 2) werden die
standardisierten Testmetriken kategorisiert; d.h.
hinsichtlich für eine Anwendung in jedem Projekt
und einer optionalen Verwendung definiert.
Sobald die Testmetriken automatisiert werden
können, steht der Anwendung im Projekt nichts
mehr im Weg.
Anwendungszenario:
Durch
die
definierten
standardisierten
Testmetriken
können
folgende
Fragen
beantwortet werden:
- Wie viele der akzeptierten Anforderungen sind
überhaupt testbar?
- Wie viele der akzeptierten und testbaren
Anforderungen besitzen bereits mindestens
einen spezifizierten Testfall?
- Wie viele spezifizierte Testfälle wurden (im
aktuellen Testzyklus bereits (vollständig)
durchgeführt?
- Sind alle spezifizierten und verlinkten Testfälle
zur
jeweiligen
Anforderung
vollständig
bestanden?
4 Zusammenfassung
Dieser hier vorgestellte Lösungsansatz dient zum
Nachweis der Traceability und (formalen)
Konsistenz nach ASPICE 3.0. Anhand der
automatisierten
und
standardisierten
Testmetriken,
wird
die
zukünftig
weiter
zunehmende Testkomplexität beherrschbar.
Keywords:
Testmetriken,
Testkomplexität,
Automotive
SPICE,
anforderungsbasiertes
Testen, ISO 29119
5 Literatur- und Quellverzeichnis
[1]
[2]
 Anlehnung an den neuen Standard ISO 29119-1, Beispiel „Test coverage“ [3]:
– degree, expressed as a percentage, to which specified test coverage items have been exercised by
a test case or test cases
Prozentuale
Darstellung
einem oder
mehreren Testfällen
SWAnforderungen
„Durchgeführte“
[3]
SW-Anforderungstestdurchführungsstatus* = Anzahl akzeptierter und testbarer SWAnforderungen mit mindestens einem eingehen Link von einem ausgeführten Testfall dargestellt
zu Gesamtzahl akzeptierter und testbarer SW-Anforderungen
* Im Rahmen der Diskussionen sind einige Testmetrik Bezeichnungen verändert worden.
Abbildung 3: Einheitliche Definitionen festlegen
®
Automotive
SPICE
Process
Assessment
Model;
VDA
QMC
Working Group 13 / Automotive SIG;
Version 3.0; 16.07.2015.
Djibang; Das Eisberg - Prinzip;
September
2015;
URL:
http://www.djibang.org/wp/wpcontent/uploads/eisberg.jpg;
Datum
des Abrufs: 03.09.2015. (hier lediglich
das Bild entnommen).
ISO/IEC/IEEE 29119; Software and
System engineering – Software
testing; 2013.