Teststandardfamilie Einblick in den ISO 29119 „Software ... · PDF filebasis. Unter dem...

5
Teststandardfamilie Einblick in den ISO 29119 „Software Testing Standard“ Bereits seit Mitte 2013 sind die ersten Teile der neuen Software Testing-Standardfamilie ISO 29119 verfügbar. „Not yet another testing standard“, mag man im ersten Moment denken. In Anbetracht der Vielzahl verfügbarer testrelevanter Industriestandards ist dieser Gedanke durchaus nachvollziehbar. ISO 29119 ist jedoch eher integrativer Natur, der einige bis dato gültige nationale und internationale Standards zusammenführt und daher der Übersichtlichkeit der Standardlandschaft im Bereich des Softwaretestens dient. Dieser Artikel versteht sich als Einführung in ISO 29119 und bietet einen groben Überblick über seine Kernkonzepte. [CMBT]), die die Anwendung von mo- dellbasierten Techniken zu Testzwe- cken propagiert. n ISO 29119-2 „Testprozesse“: Dieser Teil beschreibt detailliert die Struk- turen, Kommunikationswege und Schnittstellen der verschiedenen Ebe- nen eines Testprozesses. Er ist das Herzstück von ISO 29119 und wird daher in diesem Artikel genauer unter- sucht. n ISO 29119-3 „Testdokumentation“: Dieser Teil setzt auf Teil 2 auf und beschreibt Struktur und Inhalte der dort erwähnten technischen Doku- mente und Fortschritts- und Ab- schlussreports. Der erst 2008 erneuerte Standard für die Dokumentation von Testkonzepten IEEE 829-2008 („IEEE Standard for Software and System Test Documentation“) ist vollständig in die- sem Teil aufgegangen. n ISO 29119-4 „Testentwurfsverfahren“: Teil 4 befasst sich mit allgemein aner- kannten Testentwurfsverfahren. Damit ist ISO 29119, neben dem ISTQB-Lehr- plan, ein zentraler Standard, der sich mit der Standardisierung von Testent- wurfsverfahren befasst. Im Gegensatz zu ISTQB geht ISO 29119 jedoch und hinsichtlich der Testprozessschritte und Testdokumentationsformate ähneln sich ISO 29119 und ISTQB jedoch sehr. Dies ist sicherlich eine wichtige Eigenschaft für eine breite Akzeptanz von ISO 29119, denn seit mehr als einem Jahrzehnt werden industrielle Softwaretester nach ISTQB ausgebildet. Ein radikaler Neuanfang sei- tens ISO wäre sicherlich nicht von Erfolg gekrönt. Die ISO 29119-Standardfamilie gliedert sich in fünf Teile: n ISO 29119-1 „Konzepte und Defini- tionen“: Dieser Teil behandelt die stan- dardweite Nomenklatur und einige ausgewählte Themen, die für das Testen von software-intensiven Systemen rele- vant sind, wie etwa die allgemeine Rolle, die ein Testprozess innerhalb der V&V-Prozesse eines Unternehmens/ Projekts innehat, risikobasiertes Testen oder auch Testautomation. Bemerkens- wert ist, dass ISO 29119 sich auch dem modellbasierten Testen widmet. Er steht damit in einer Reihe von kürzlich veröffentlichten oder aktualisierten Standards (etwa ISO/IEC 61508 [ISO61508], ISO 26262 [ISO26262], DO-178C [DO178C], iSQI CMBT Einführung Die von der Software Testing- Standardfamilie ISO 29119 1 ) abgelösten beziehungsweise integrierten Standards sind: n IEEE 829-2008 Test Documentation [IEEE829] n IEEE 1008 Unit Testing [IEEE1008] n BS 7925-1 Vocabulary of Terms in Software Testing [BS7925-1] n BS 7925-2 Software Component Testing Standard [BS7925-2] Interessant dabei ist, dass die beiden abge- lösten britischen Standards (BS 7925) auch maßgeblich in den ISTQB-Lehrplan [ISTQB] für „Certified Tester“-Aus- bildungsprogramme eingeflossen sind. Dadurch ist bis zu einem gewissen Grad sichergestellt, dass ISO 29119 und der ISTQB-Lehrplan sich inhaltlich überlap- pen, obgleich erwähnt werden muss, dass es vor allem in der Terminologie mitunter signifikante Unterschiede gibt. Methodisch der autor M. Sc. Marc-Florian Wendland ([email protected]) ist wissenschaftlicher Mitarbeiter im Fraunhofer Institut FOKUS, Kompetenzzentrum SQC (ehemals MOTION). Sein Forschungsschwerpunkt liegt vor allem im Bereich modell-/anforderungsbasiertes Testen unter Verwendung der Standards UML, UTP und TTCN-3. Marc-Florian Wendland ist in verschiedene Standardisierungsinitiativen rund um das modellbasierte Testen involviert. Er leitet die UTP-Arbeitsgruppe der OMG und ist maßgeblich am Entwurf des UTP 2 beteiligt. Bei der ETSI arbeitet er am Standard Test Description Language (TDL). 1 www.objektspektrum.de fachartikel 1 ) Mit vollem Namen ISO/IEC/IEEE 29119 Software Testing – The international testing standard. Weitere Informationen sowie Informationen zum Status des Standards auf [ISO29119].

Transcript of Teststandardfamilie Einblick in den ISO 29119 „Software ... · PDF filebasis. Unter dem...

Page 1: Teststandardfamilie Einblick in den ISO 29119 „Software ... · PDF filebasis. Unter dem Begriff Testbasis (test basis) werden alle Informationen zu-sammengefasst, die für den Testentwurf

TeststandardfamilieEinblick in den ISO 29119„Software Testing Standard“Bereits seit Mitte 2013 sind die ersten Teile der neuen Software Testing-Standardfamilie ISO 29119 verfügbar.„Not yet another testing standard“, mag man im ersten Moment denken. In Anbetracht der Vielzahl verfügbarer testrelevanterIndustriestandards ist dieser Gedanke durchaus nachvollziehbar. ISO 29119 ist jedoch eher integrativer Natur, der einige bis datogültige nationale und internationale Standards zusammenführt und daher der Übersichtlichkeit der Standardlandschaft imBereich des Softwaretestens dient. Dieser Artikel versteht sich als Einführung in ISO 29119 und bietet einen groben Überblicküber seine Kernkonzepte.

[CMBT]), die die Anwendung von mo -dellbasierten Techniken zu Test zwe -cken propagiert.

n ISO 29119-2 „Testprozesse“: DieserTeil beschreibt detailliert die Struk -turen, Kommunikationswege undSchnittstellen der verschiedenen Ebe -nen eines Testprozesses. Er ist dasHerzstück von ISO 29119 und wirddaher in diesem Artikel genauer unter-sucht.

n ISO 29119-3 „Testdokumentation“:Dieser Teil setzt auf Teil 2 auf undbeschreibt Struktur und Inhalte derdort erwähnten technischen Doku -mente und Fortschritts- und Ab -schlussreports. Der erst 2008 erneuerteStandard für die Dokumentation vonTestkonzepten IEEE 829-2008 („IEEEStandard for Software and System TestDocumentation“) ist vollständig in die-sem Teil aufgegangen.

n ISO 29119-4 „Testentwurfsverfahren“:Teil 4 befasst sich mit allgemein aner-kannten Testentwurfsverfahren. Damitist ISO 29119, neben dem ISTQB-Lehr -plan, ein zentraler Standard, der sichmit der Standardisierung von Testent -wurfsverfahren befasst. Im Gegensatzzu ISTQB geht ISO 29119 jedoch

und hinsichtlich der Testprozessschritteund Testdokumentationsformate ähnelnsich ISO 29119 und ISTQB jedoch sehr.Dies ist sicherlich eine wichtige Eigenschaftfür eine breite Akzeptanz von ISO 29119,denn seit mehr als einem Jahrzehnt werdenindustrielle Softwaretester nach ISTQBausgebildet. Ein radikaler Neuanfang sei-tens ISO wäre sicherlich nicht von Erfolggekrönt.

Die ISO 29119-Standardfamilie gliedertsich in fünf Teile:

n ISO 29119-1 „Konzepte und Defini -tionen“: Dieser Teil behandelt die stan-dardweite Nomenklatur und einigeausgewählte Themen, die für das Testenvon software-intensiven Systemen rele-vant sind, wie etwa die allgemeineRolle, die ein Testprozess innerhalb derV&V-Prozesse eines Unternehmens/Pro jekts innehat, risikobasiertes Testenoder auch Testautomation. Bemer kens -wert ist, dass ISO 29119 sich auch demmodellbasierten Testen widmet. Ersteht damit in einer Reihe von kürzlichveröffentlichten oder aktualisiertenStandards (etwa ISO/IEC 61508[ISO61508], ISO 26262 [ISO26262],DO-178C [DO178C], iSQI CMBT

EinführungDie von der Software Testing-Standardfamilie ISO 291191) abgelöstenbeziehungsweise integrierten Standardssind:

n IEEE 829-2008 Test Documentation[IEEE829]

n IEEE 1008 Unit Testing [IEEE1008]n BS 7925-1 Vocabulary of Terms in

Software Testing [BS7925-1]n BS 7925-2 Software Component

Testing Standard [BS7925-2]

Interessant dabei ist, dass die beiden abge-lösten britischen Standards (BS 7925) auchmaßgeblich in den ISTQB-Lehrplan[ISTQB] für „Certified Tester“-Aus -bildungsprogramme eingeflossen sind.Dadurch ist bis zu einem gewissen Gradsichergestellt, dass ISO 29119 und derISTQB-Lehrplan sich inhaltlich überlap-pen, obgleich erwähnt werden muss, dasses vor allem in der Terminologie mituntersignifikante Unterschiede gibt. Methodisch

der au tor

M. Sc. Marc-Florian Wendland

([email protected])ist wissenschaftlicher Mitarbeiter im Fraunhofer Institut FOKUS, Kompetenzzentrum SQC (ehemals MOTION). Sein Forschungsschwerpunkt liegt vor allem imBereich modell-/anforderungsbasiertes Testen unter Verwendung der Standards UML, UTP und TTCN-3. Marc-Florian Wendland ist in verschiedeneStandardisierungsinitiativen rund um das modellbasierte Testen involviert. Er leitet die UTP-Arbeitsgruppe der OMG und ist maßgeblich am Entwurf des UTP 2beteiligt. Bei der ETSI arbeitet er am Standard Test Description Language (TDL).

1 www.objektspektrum.de

fachartikel

1) Mit vollem Namen ISO/IEC/IEEE 29119 SoftwareTesting – The international testing standard. WeitereInformationen sowie Informationen zum Status desStandards auf [ISO29119].

Page 2: Teststandardfamilie Einblick in den ISO 29119 „Software ... · PDF filebasis. Unter dem Begriff Testbasis (test basis) werden alle Informationen zu-sammengefasst, die für den Testentwurf

soweit, dass er die Testentwurfs ver -fahren hinsichtlich ihrer Test abdeckungcharakterisiert. Wir werden diesenwichtigen Aspekt des Testentwurfs desTeils 4 in diesem Artikel genauerbeleuchtet. Für die Veröffentlichungvon Teil 4 steht noch kein Termin fest.

n ISO 29119-5 „Keyword-Driven Tes -ting“: Obgleich das schlüsselwortge-triebene Testen seit vielen Jahren in derIndustrie angekommen ist, seit vielenJahren in Büchern beschrieben ist([FeGr99], [SeBaBu11]), zahlreiche(kommerzielle und Open-Source-)Werkzeuge zur Verfügung stehen undsogar mit der von der ETSI standardi-sierten Testsprache Testing and TestControl Notation 3 [TTCN-3] bereitseinen technischen Standard vorweisenkann, nimmt sich ISO 29119 erstmalsdes schlüsselwortgetriebenen Testensauf konzeptueller Basis an und definierteine einheitliche Terminologie. AuchTeil 5 befindet sich noch in Arbeit.

Während die ersten drei Teile durch dieFokussierung auf Struktur und Schnitt -stellen der Testprozesse aufeinander auf-bauen und auch das Herzstück für diePlanung und Durchführung von Software -testprozessen bilden, sind die Teile 4 und 5autark und repräsentieren gewissermaßenZusatzinformationen zu allgemein aner-kannten Testverfahren beziehungsweiseTesttechnologien. Dies erklärt auch,warum die Teil 4 und 5 zu einem späterenZeitpunkt veröffentlicht werden.

ISO 29119 ist ein typischer konzeptuellerStandard, der sich auf Software Testing-relevante Konzepte und Prozesse konzen-triert, deren Umsetzung aber bewusst offenlässt. Dadurch ist sichergestellt, dass einmit Papier und Bleistift realisierterTestprozess – wenn man Aspekte wieKonsistenz und Effizienz außer Acht lässt –im Prinzip genauso konform ist wie einTestprozess, der mit einem soliden Test -managementwerkzeug realisiert wurde.Zudem ist ISO 29119 branchenunabhän-gig. Eine weitere wichtige Voraussetzungfür eine breite Akzeptanz. Obgleich dieOffenheit hinsichtlich Umsetzung undAnwendungsbranche bewusst gewählt ist,birgt sie auch Nachteile. Sowohl die pro-zessspezifische, technische Umsetzung alsauch die Integration mit etwaigen zuberücksichtigen branchenspezifischen Stan -dards (etwa Do-178 aus dem Luft -fahrtbereich oder EN 50128 [EN50128]

aus dem Bahnbereich) müssen gut geplantund konsistent realisiert werden. Eine nichttriviale Aufgabe. ISO 29119 leistet in dieserHinsicht keine große Hilfe – das ist aberauch nicht seine Aufgabe.

Im Folgenden werden zunächst dieStrukturen und Schnittstellen der ISO29119-Testprozesse diskutiert. DieserAbschnitt umfasst mehr oder weniger dieersten drei Teile der Standardfamilie. Dernachfolgende Abschnitt widmet sich denTestentwurfsverfahren. Relevante ISO29119-Begriffe werden in diesem Artikelkonsequent deutsch geschrieben, inKlammern folgt stets das englische Äquiva-lent.

Der „Standard“-TestprozessDer zentrale Bestandteil der ISO 29119-Familie ist Teil 2 „Test Processes“. Hier wirdder „Standard“-konforme Testprozess defi-niert. ISO 29119-2 beschreibt einen dreistu-figen Testprozess (siehe Abbildung 1), dersich in organisationseinheitsspezifische2),projektspezifische und dynamische Prozesseunterteilt. Diese hierarchische Struktur istbereits aus dem ISTQB-Lehrplan bekannt,

wenngleich ISTQB nur zwei Ebenen explizitunterscheidet. In Ergänzung definiert ISO29119-2 die Überwachung und Pflege derTeststrategie.

Ziel des organisationseinheitsspezifi-schen Testprozesses ist es, allgemein gültigeTestrichtlinien (test policy) und Test -strategien (test strategy) für denGültigkeitsbereich der Organisations -einheit (und ihrer potenziellen Unterein -heiten) festzulegen. Testrichtlinie undTeststrategie werden als technische Doku -mente verstanden, die festhalten, wieTestprozesse generell innerhalb der Organi -sationseinheit ausgeführt werden sollen. Esliegt im Aufgabenbereich des organisa-tionseinheitsspezifischen Test ma nagements(auch höheres Testmana ge ment genannt)zu überwachen, dass die Vorgaben vonTestrichtlinie und Teststrategie eingehaltenund gelebt werden. Feedback sollte, sofernkonstruktiv und zielführend, dazu führen,dass sowohl Testrichtlinie als auch -strate-gie stets aktuell gehalten und schrittweiseoptimiert werden.

Die zweite Stufe beschreibt das Manage -ment eines konkreten Testprojektes. Die inTestrichtlinie und Teststrategie allgemeindefinierten Grundsätze, Ziele, Methodenusw. müssen nun auf konkrete Methodenund Verfahren heruntergebrochen werden.Festgehalten werden diese Entscheidungenin dem sogenannten Testkonzept (testplan). Für ein konkretes Projekt muss das

2Online-Themenspecial Testing 2014

Online-Themenspecial Testing 2014 fachartikel

1) Auch wenn ISO 29119 explizit von nur einemmonolithischen Organizational Test Process spricht,so ist dieser Prozess eher rekursiv zu verstehen, daEntscheidungen in einer höheren Organisations -einheit von niederen Organisationseinheiten durch-aus verfeinert werden können.

Abb. 1: Der mehrstufige Testprozess nach ISO 29119

Page 3: Teststandardfamilie Einblick in den ISO 29119 „Software ... · PDF filebasis. Unter dem Begriff Testbasis (test basis) werden alle Informationen zu-sammengefasst, die für den Testentwurf

Grenzen des zu testenden Systems (testitem) bezeichnet. ISO 29119 definiertdie Teststufen Komponenten-, Inte -grations-, System- und Abnahmetest.Unter Testarten versteht man dieUnterteilung der Testaktivitäten nachQualitätsmerk malen. Eine gute und vonISO 29119 verwendete Referenz ist derStandard ISO 25010 [ISO25010]. Ab -bildung 2 weist jedoch zwei Schwächenauf: Zum einen lassen sich Stufen -testkonzepte nicht erneut dekomponie-ren, zum anderen muss ein Stufen -testkonzept zwingend entweder nachTeststufe oder nach Testart klassifiziertwerden. Eine Zerlegung in Form einesfunktionalen Systemtestkonzepts istsomit ausgeschlossen. Beide Einschrän -kungen sind nach Ansicht des Autors zurestriktiv.

n Testüberwachung und Teststeuerung:Im Wesentlichen wird hier die Ein -haltung der jeweils festgesetzten (Stu -fen-)Testkonzepte überwacht. Darüberhinaus wird regulierend in den Test -prozess eingegriffen. Eine effizienteRegulierung beziehungsweise Steu -erung benötigt jedoch ausreichendInformationen aus den dynamischenTestprozessen in Form von Messungen.

n Testabschluss: In dieser abschließendenPhase geht es vorrangig darum, dieTestarbeiten sauber zu beenden und der„Nachwelt“ eine strukturierte und gutdokumentierte Testware zu hinterlas-sen. Dazu zählt die Archivierung derTestspezifikationen und Testumge -bungen, aber auch die Konservierungvon „Best practices“ und „Lessonslearnt“, um eine stete Verbesserung derTestprozesse zu erreichen.

Die konstruktive Testarbeit (also der Test -entwurf, die Durchführung und dasKommunizieren von Abweichungen) wirdin ISO 29119 unter dem BegriffDynamischer Testprozess (dynamic testprocess) zusammengefasst. Hier spiegeltsich der Begriff des dynamischen Testenswider, welches die Ausführung des zutestenden Systems (test item) verlangt. Derdynamische Testprozess ähnelt stark demfundamentalen Testprozess des ISTQB undbesteht aus folgenden Phasen (sieheAbbildung 4):

n Testentwurf & -realisierung: Grund -legende Aufgabe für jeden dynamischenTestprozess ist die Analyse der Test -

zesses wie folgt zusammen (siehe Ab bil -dung 3):

n Testplanung: In der Testplanung geht esdarum, den Kontext der testrelevantenAktivitäten zu identifizieren und zu ana-lysieren. Basierend auf dieser Analysewerden dann wichtige Ent scheidungengetroffen, wie etwa die Beschaffung desnotwendigen Perso nals, die grobeZeitplanung, Umgang mit Risiko -informationen (hier wird deutlich, dassISO 29119 die Be rücksichtigung vonRisiko als dogmatisches Konzept ver-innerlicht) oder die konkrete Umsetzungder übergeordneten Teststrategie.Ergebnis dieser Überlegungen ist wiede-rum ein technisches Dokument: dasTestkonzept (test plan). Testkonzeptekönnen hierarchisch in sogenannteStufentestkonzepte (level test plan)dekomponiert werden, um denProblembereich in überschaubarereStücke zu zerlegen (siehe Abbildung 2).Nach welchen Kriterien diese Zer legungvorgenommen werden muss, ist nichtvorgeschrieben. ISO 29119 empfiehltjedoch die Zerlegung nach Teststufen(test level) und/oder Testarten (test type).Teststufen werden gemeinhin nach den

projektspezifische Testmanagement ent-scheiden, wie die Vorgaben der übergeord-neten Organisationseinheit umzusetzensind. Genauso wie Entwicklungsprojekteunterschiedlich verlaufen, ist es logisch,dass auch die Testkonzepte zu diesenProjekten variieren, obgleich sie konformzur selben Teststrategie sind. Beispiels -weise könnte die allgemeine Teststrategiefordern, dass der Testentwurf stets risiko-getrieben durchgeführt werden muss. Dasjeweilige Testmanagement muss nun aufBasis der Faktenlage festlegen, wie dieForderung nach einer risikogetriebenenTestvor gehens weise (test practice) konkretumgesetzt wird.

Das projektspezifische Testmanagementinteragiert sowohl mit dem übergeordnetenorganisationseinheitsspezifischen Test -management als auch mit den einzelnensogenannten dynamischen Testprozessendes projektspezifischen Testprozesses (sie-he Abbildung 1). Während nach oben vorallem Erfahrungswerte kommuniziert wer-den mit dem Ziel, die organisationsspezifi-schen Testrichtlinien und -strategie zu opti-mieren, wird nach unten insbesonderekontrollierend und steuernd eingegriffen.

ISO 29119 fasst die Aktivitäten einesprojektspezifischen Testmanagement pro -

fachartikel

3 www.objektspektrum.de

Abb. 2: Zerlegung eines projektspezifischen Testprozesses in Unterprozesse

Abb. 3: Aktivitäten des projektspezifischen Testmanagements nach ISO 29119

Page 4: Teststandardfamilie Einblick in den ISO 29119 „Software ... · PDF filebasis. Unter dem Begriff Testbasis (test basis) werden alle Informationen zu-sammengefasst, die für den Testentwurf

basis. Unter dem Begriff Testbasis (testbasis) werden alle Informationen zu -sammengefasst, die für den Testentwurfhilfreich sind. In ISTQB wird daher vordem Testentwurf noch eine Testana -lyse phase vorweggenommen, die aberin ISO 29119 fehlt beziehungsweise indie Phase Testentwurf integriert ist(kein Entwurf ohne Analyse). Diegewonnenen Erkenntnisse werden fürdas gewählte Testentwurfsverfahren(test design technique) aufbereitet, auswelchem dann die Testfälle abgeleitetund für die technische Zielplattformdes zu testenden Systems realisiert wer-den.

n Aufsetzen und Pflege der Testum -gebung: Es wird sichergestellt, dass diefür die Ausführung benötigte Test -umgebung (test environment) bereit-steht und für die Dauer des dynami-schen Testprozesses verfügbar undfunktional bleibt.

n Testausführung: Ausführung der Test -fälle gegen das zu testende System.

n Kommunizieren von Abweichungen:Abweichungen (Deviation), die wäh-rend der Testausführung aufgezeichnetwurden und sich nicht als Fehler imTestfall oder Testumgebung herausge-stellt haben, sind sowohl an das Test -management als auch die Entwickler zukommunizieren. Die initiale Analyse

einer möglichen Ursache (Testfall,Testumgebung, System) von Ab wei -chungen obliegt dem Tester.

Zwischen den jeweiligen Aktoren der dreiTestprozessstufen sollte ein kontinuier-licher Kommunikationsfluss herrschen.Formal definiert ISO 29119 für diesenZweck eine Menge von Reports undMessungen, deren Struktur und InhaltBestandteil von ISO 29119-3 sind. Auchwenn der direkte Informationsaustauschzwischen den Mitarbeiten nicht expliziterwähnt wird, so muss gesagt werden, dasszwischenmenschliche Kommunikationnatürlich unterstützt werden sollte. Geht esjedoch um den formalen Abschluss bezie-hungsweise das Kommunizieren handfesterFakten, ist es dringendst zu empfehlen, diesin Form von „geduldigen“ Dokumenten zuerledigen.

Die „Standard“-TestentwurfsverfahrenMit dem noch nicht veröffentlichten Teil 4„Testentwurfsverfahren“ standardisiert

ISO 29119 eine Menge allgemein bekann-ter Testentwurfsverfahren, die auch zu gro-ßen Teilen vom ISTQB-Lehrplan geschultwerden. ISO 29119 gliedert die Testent -wurfsverfahren in drei Kategorien: spezifi-kations-, struktur- und erfahrungsbasierteTestentwurfsverfahren. Zu den spezifika-tionsorientierten Entwurfsverfahren gehö-ren Äquivalenzklassen, Grenzwertanalyse,Entscheidungstabelle, Zustandsmaschinenusw. Die strukturbasierten Entwurfs -verfahren sind im Wesentlichen durch diebekannten kontrollfluss- und datenfluss -orientierten Verfahren beschrieben.

Wenngleich schon die Nennung dieserVerfahren in einem internationalenStandard ein echter Mehrwert ist, geht ISO29119 noch weiter und beschreibt sowohldie Vorgehensweise der Anwendung alsauch die Mächtigkeit der Verfahren bezüg-lich ihrer Abdeckung. Zu diesem Zweckwird das Konzept des Testabdeckungs -elements (test coverage item) explizit einge-führt, um das Ergebnis eines Testent -wurfsverfahrens unabhängig von demFormat des später resultierenden Testfallserfassen und auswerten zu können. EinTestabdeckungs element ist definiert alsMerkmal einer Testbedingung oderTestanforderung (test condition/test requi-rement), welches während eines Tests abge-deckt werden kann. Für die Ableitung vonTestabdeckungs elementen wird einTestmodell3) (test model) benötigt, auf wel-chem manuelle oder automatisierteTestentwurfsverfahren angewendet wer-den.

Das Zusammenspiel zwischen Testent -wurfsverfahren, Testmodell und Testabde -ckungselement ist in Abbildung 5 in Formeines konzeptuellen Modells zusammenge-fasst. Hier wird unter anderem ersichtlich,

4Online-Themenspecial Testing 2014

Online-Themenspecial Testing 2014 fachartikel

3) Hiermit ist nicht zwingend ein (semi-)formalesModell gemeint, wie es etwa im modellbasiertenTesten verwendet wird. Sowohl ISO 29119 als auchISTQB verstehen im Allgemeinen unter einemTestmodell eine Basis, auf der Testfälle entworfenwerden. Ist diese Basis eine Entscheidungstabelle aufeinem Blatt Papier, so spricht man hier dennoch voneinem Testmodell. Um Missverständnissen vorzubeu-gen, wurde beispielsweise im UML Testing Profile v2[UTP2] der Begriff des Testentwurfsmodells einge-führt, welches die Semantik des ISO 29119- oderISTQB-Konzeptes Testmodell innehat.

Abb. 4: Der dynamische Testprozess nach ISO 29119

Abb. 5: Konzeptuelles Modell für den Testentwurf gemäß ISO 29119

Page 5: Teststandardfamilie Einblick in den ISO 29119 „Software ... · PDF filebasis. Unter dem Begriff Testbasis (test basis) werden alle Informationen zu-sammengefasst, die für den Testentwurf

Andere Standardisierungsinitiativen, wieetwa die UML Testing Profile-Arbeits -gruppe (UTP) der OMG, haben ISO 29119mittlerweile adressiert. Im Rahmen derUTP 2-Standardisierungsarbeiten sind bei-spielsweise große Teile des konzeptuellenModells und der Terminologie von ISO29119 in die Modellierungssprache UTP 2[UTP2] eingeflossen. Dazu zählt vor allemdas hier vorgestellte konzeptuelle Modellder Testentwurfsverfahren. Es ist zu erwar-ten, dass ISO 29119 in Zukunft an Be deu -tung gewinnen wird und industrielleSoftware Testing-Prozesse sich mehr undmehr nach ISO 29119 richten werden. n

sichtlich der Testabdeckung. Dazu wurdedas Konzept des Testabdeckungselementseingeführt, welches durch Testentwurfs ver -fahren aus Test(entwurfs)modellen abgelei-tet wird und als ein Zwischenschritt für dieAbleitung von Testfällen dient. DiesesZwischenformat erlaubt die gesonderteBetrachtung und Verarbeitung von abgelei-teten Elementen unabhängig vom schluss -endlichen Format der Testfallspezifi ka -tionen. Als konzeptueller Standard schreibtISO 29119 nicht vor, wie diese Testab -deckungselemente dargestellt werden. Diesmuss von konkreten ISO 29119-konfor-men Testprozessen gemäß der involviertenWerkzeuglandschaft entschieden werden.

dass die Wahl des Testmodells zum Testent -wurfs ver fahren passen muss. Es wärewenig effizient, eine Entscheidungstabelleanzuwenden mit dem Ziel, eine bestimmteAnweisungsab deckung zu erreichen. Die zuverwendenden Testentwurfsverfahren sindgemeinhin jedoch von der projektspezifi-schen Teststrategie vorgegeben und diesewird wiederum von der jeweils geltendenTestbasis beeinflusst. Die wohl auffälligsteNeuerung in ISO 29119 ist, dass einTestentwurfsverfahren zunächst Testabde -ckungs elemente produziert. Um von einerMenge an Testabdeckungselementen (dieauf ihre Art wieder sehr abstrakt sein kön-nen) zu einem Testfall zu kommen, bedarfes meist noch weiterer Anpassungen oderErgänzungen, die jedoch von ISO 29119nicht beschrieben sind. Auch hier spiegeltsich die offene Natur des Standards wider.Um diese Lücke zu schließen, wurde bei-spielsweise das in Abbildung 5 gegebenekonzeptuelle Modell aus den Definitionenvon ISO 29119 im Rahmen des EU-MIDAS-Projekts [MIDAS] abgeleitet und unteranderem für die Erneuerung des UMLTesting Profils [UTP2] verwendet. Es istnicht Bestandteil von ISO 29119 per se.

FazitIn diesem Artikel haben wir uns der neuenSoftware Testing-Standardfamilie ISO29119 gewidmet, ihre einzelnen Teile her-vorgehoben und die Kernaspekte wie dievon ISO 29119 definierten Testprozesse undDokumentstrukturen ausführlicher behan-delt. Dabei ist deutlich geworden, dass ISO29119 eine gewisse Kompa tibilität zuTestprozessen anderer Standards wahrt –etwa zum fundamentalen Test prozess desISTQB-Lehrplans. Abweichun gen im Detailsind dabei nicht wegzudiskutieren. ImGroßen und Ganzen darf sich die Industriedarauf verlassen, dass eine Umstellung aufISO 29119 nicht allzu große Änderungen anden Prozessen verlangt, sofern dieserTestprozess sauber strukturiert ist und sichbestenfalls nach ISTQB richtet.

Eine signifikante Neuerung bringt ISO29119 bei der Definition von Testent -wurfsverfahren und ihrer Mächtigkeit hin-

fachartikel

5 www.objektspektrum.de

Literatur & Links

[BS7925-1] British Standards Institution: BS-7925-1, Vocabulary of terms in software testing

[BS7925-2] British Standards Institution: BS-7925-2, Software component testing

[CMBT] Certified Model-Based Tester, Mai 2014, siehe:

https://www.isqi.org/tl_files/data/documents/en/BoE_CMBT-FL_Syllabus_V2%203_ISQI_public.pdf

[DO178C] RTCA/DO-178C, Software Considerations in Airborne Systems and Equipment

Certification

[EN50128] CENELEC/EN 50128, Railway Applications – Software for railway control and pro-

tection systems

[FeGr99]M. Fewster, D. Graham, Software Test Automation, Addison-Wesley Pub Co Inc, 1999

[IEEE1008] IEEE Standards Association: 1008-1987 – IEEE Standard for Software Unit Testing,

1987

[IEEE829] IEEE Standards Association: 829-2008 – IEEE Recommended Practice for Software

Requirements Specifications, 2008

[ISO25010] International Organisation for Standardisation: ISO/IEC 25010, Systems and soft-

ware engineering – Systems and software Quality Requirements and Evaluation (SQuaRE) –

System and software quality models

[ISO26262] International Organisation for Standardisation: ISO/IEC 26262, Road vehicles -

Functional safety

[ISO29119] International Organisation for Standardisation: ISO/IEC 29119, Software Testing

Standard, siehe: http://www.softwaretestingstandard.org

[ISO61508] International Organisation for Standardisation: ISO/IEC 61508, Functional Safety of

Electrical/Electronic/Programmable Electronic Safety-related Systems

[ISTQB] International Software Testing Qualifications Board: ISTQB/GTB standard glossary for

testing terms, siehe: http://www.software-tester.ch/PDF-Files/CT_Glossar_DE_EN_V21.pdf

[MIDAS] EU-MIDAS-Projekt, siehe: http://www.midas-project.eu

[SeBaBu11] R. Seidl, M. Baumgarnter, Th. Bucsics, Basiswissen Testautomatisierung, Dpunkt

Verlag, 2011

[TTCN-3] Testing and Test Control Notation Version 3, siehe: http://www.ttcn3.org

[UTP2] Object Management Group (OMG): UML Testing Profile 2, Initial Submission, Doc#:

ad/2014-05-01, 2014