34
Markus Rentschler, Hirschmann Automation & Control Berlin, 27.09.2012 Design for Testability: Effizienzsteigerung für den gesamten Produktlebenszyklus

Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

Markus Rentschler, Hirschmann Automation & Control

Berlin, 27.09.2012

Design for Testability: Effizienzsteigerung für den gesamten

Produktlebenszyklus

Page 2: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

2ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

1. Motivation2. Design for Testability3. Produktlebenszyklus4. Testaktivitäten im Produktlebenszyklus5. Testarten im Produktlebenszyklus6. Quantifizierung der Testkosten7. ROI-Ermittlung8. Lösungsansatz „Design for System Testability“

• Methodik• Prozess

9. Fazit

Agenda

Rentschler, Markus: "Design for Testability - The Holistic Future of Testing?". In: Testing Experience (2011), 12, Nr. 16

Page 3: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

3ATAMI 2012, © Markus Rentschler

Industrial Ethernet Produkte

FiberINTERFACES

Control Room Switches

RuggedizedSwitches

Wireless LAN Backbone Switches

Security IP67-Industrial Switches

Control Level Switches

Network Management

Field Level Switches

Page 4: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

4ATAMI 2012, © Markus Rentschler

In der Automatisierungspyramide

Page 5: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

5ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Definition

„DFT is a design characteristic that enables the diagnosis and/or test of a product to be accomplished easily, in a timely fashion, and costeffectively.“

Ziele

- Kosten und Aufwand für das Testen und die Diagnose senken (und zwar in allen Lebenszyklusphasen)

Vorgehensweise

- Technische Möglichkeiten aufzeigen � Methoden definieren- Umsetzung erzwingen � Prozesse definieren

Design for Testability

ALANEN, J. ; UNGAR, L.Y.: Comparing software design for testability to hardware DFTand BIST. In: AUTOTESTCON, 2011 IEEE, 2011. – ISSN 1088–7725, S. 272 –278

Page 6: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

6ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Produktlebenszyklus

Entstehungszyklus Produktionszyklus

Abnahmetest Anforderungs-

analyse

funktionaler Systementwurf

technischer Systementwurf

Komponenten-spezifikation

Systemtest

Integrationstest

Komponententest

Programmierung

Produktion

Betriebszyklus

Wartung/Support

Entwicklungszyklus Testzyklus

Weiterent-wicklung

Page 7: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

7ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Testaktivitäten im Produktlebenszyklus

Entstehungszyklus Produktionszyklus

Abnahmetest Anforderungs-

analyse

funktionaler Systementwurf

technischer Systementwurf

Komponenten-spezifikation

Systemtest

Integrationstest

Komponententest

Produktion

Betriebszyklus

Wartung/Support

Entwicklungszyklus Testzyklus

Weiterent-wicklung

Programmierung

Tests

Page 8: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

8ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Testarten Definitionen 1

KomponententestTest einer einzelnen Softwareeinheit

SystemtestTest eines integrierten Systems, um sicherzustellen, das es spezifizierte Anforderungen erfüllt.

RegressionstestErneuter Test eines bereits getesteten Programms bzw. einer Teilfunktionalität nach deren Modifikation mit dem Ziel, nachzuweisen, dass durch die vorgenommenen Änderungen keine Fehler eingebaut oder (bisher maskierte Fehler) freigelegt wurden. [Spillner]

Entstehungszyklus Produktionszyklus

Abnahmetest Anforderungs-

analyse

funktionaler Systementwurf

technischer Systementwurf

Komponenten-spezifikation

Systemtest

Integrationstest

Komponententest

Produktion

Betriebszyklus

Wartung/Support

Entwicklungszyklus Testzyklus

Weiterent-wicklung

Programmierung

Entstehungszyklus Produktionszyklus

Abnahmetest Anforderungs-

analyse

funktionaler Systementwurf

technischer Systementwurf

Komponenten-spezifikation

Systemtest

Integrationstest

Komponententest

Produktion

Betriebszyklus

Wartung/Support

Entwicklungszyklus Testzyklus

Weiterent-wicklung

Programmierung

Entstehungszyklus Produktionszyklus

Abnahmetest Anforderungs-

analyse

funktionaler Systementwurf

technischer Systementwurf

Komponenten-spezifikation

Systemtest

Integrationstest

Komponententest

Produktion

Betriebszyklus

Wartung/Support

Entwicklungszyklus Testzyklus

Weiterent-wicklung

Programmierung

Page 9: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

9ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Testarten Definitionen 2

ProduktionstestAm Ende der Serienproduktion wird im Rahmen der Qualitätssicherung an jedem produzierten Gerät die Basisfunktionalität mittels in der Gerätesoftware implementierter Testroutinen getestet.

WartungstestIn der Betriebsphase des Produkts werden aus folgenden Gründen Tests durchgeführt:-Im Rahmen einer Neuinstallation-Reguläre Wartungsarbeiten-Nach einer Betriebsstörung-Erneuter Test nach Fehlerbehebung (Nachtest)

Entstehungszyklus Produktionszyklus

Abnahmetest Anforderungs-

analyse

funktionaler Systementwurf

technischer Systementwurf

Komponenten-spezifikation

Systemtest

Integrationstest

Komponententest

Produktion

Betriebszyklus

Wartung/Support

Entwicklungszyklus Testzyklus

Weiterent-wicklung

Programmierung

Entstehungszyklus Produktionszyklus

Abnahmetest Anforderungs-

analyse

funktionaler Systementwurf

technischer Systementwurf

Komponenten-spezifikation

Systemtest

Integrationstest

Komponententest

Produktion

Betriebszyklus

Wartung/Support

Entwicklungszyklus Testzyklus

Weiterent-wicklung

Programmierung

Page 10: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

10ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Testkosten im Produktlebenszyklus

cGesamt = cKT + cST + cPT + cWTGesamtkosten für Tests(pro Feature)

Entstehungszyklus Produktionszyklus

Abnahmetest Anforderungs-

analyse

funktionaler Systementwurf

technischer Systementwurf

Komponenten-spezifikation

Systemtest

Integrationstest

Komponententest

Produktion

Betriebszyklus

Wartung/Support

Entwicklungszyklus Testzyklus

Weiterent-wicklung

Programmierung

Tests

Page 11: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

11ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Return on Investment (ROI)

Ziele• Testkosten über alle Lebenszyklusphasen hinweg ermitteln. • Maßnahmen für Einsparungen ermitteln.• Investitionskosten für die Einsparungen ermitteln.• Nachweis eines signifikanten ROI (>>1).

Wirtschaftlichkeitskennzahl

nskostenInvestitio

nskostenInvestitioenEinsparungROI

−=

Page 12: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

12ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Aufwand für einzelnen Test

Page 13: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

13ATAMI 2012, © Markus Rentschler

Kostenfaktoren

Testkostenbeeinflussende Faktoren

Arbeitskosten (Arbeitszeit x Personalkostensatz)

Infrastrukturkosten (Hardware, Software, ...)

www.hirschmann.com

Page 14: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

www.hirschmann.com 14ATAMI 2012, © Markus Rentschler

Wiederholungen im Lebenszyklus

End

of p

rodu

ctlif

e cy

cle

Entwicklungsphasen

Increment 1

j test cycles

Y varia

nts

Increment 2

Increment i

N = i * j * Y

Development

. . .

Wartungszklen

Maintenance

+ m * D

Maintenance

m maintenance cycles

D Dep

loym

ents

Page 15: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

15ATAMI 2012, © Markus Rentschler

Kostenfaktoren

Komponententest

cKT = cTE,KT + n⋅ cTD,KT + cMD,KT( )

cWT = cTE,WT + j ⋅ cTD,WT + cMD,WT( )

)( ,, PTTDPTTEPT ckcc +=

cST = cTE,ST + m⋅ cTD,ST + cMD,ST( )

cTE,xx – Kosten für TestentwicklungcTD,xx – Kosten für TestdurchführungcMD,xx – Kosten für manuelle Diagnosen – Anzahl der Komponententests(m-1) – Anzahl der Regressionstestsj – Anzahl der Wartungstests

System - & Regressionstest

Produktionstest

Wartungstest

www.hirschmann.com

Kosten für Testdurchführung

j || k || n || m >> 1� Automatisierung ist

lohnend!

Page 16: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

16ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet (nicht für Tests in der Produktions- und Betriebsphase)

- Leistungsmessung und Fehlerdiagnose wird in den unterschiedlichen Testphasen meist mit jeweils unterschiedlichen Werkzeugen durchgeführt

� Können hier Synergien geschaffen werden?

Lösungsanalyse

Page 17: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

17ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

- Das zu erahnende Einsparungspotenzial, das durch „einheitliche“ Tests entstehen könnte, aufzeigen und beschreiben.

- Aufbauend auf dem Entwurfsansatz „Design for Testability“ (DfT) die Entwicklung des Ansatzes „Design for System Testability“ (DfST)

- Entwurfsmethoden für „einheitliche“ Testansätze definieren

- Im Entwurfsprozess diese Entwurfsmethoden verpflichtend machen

Lösungsansatz

Page 18: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

18ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Einsparungspotenzial

Einsparungspotenzial durch den DfST Ansatz:

Die Testunterstützung muss nur noch einmal entwickelt werden � Einsparung von bis zu drei Testentwicklungen

• Produktionstests sind oft bereits BISTD-Ansätze , werden jedoch nur in einer Phase genutzt

� Für alle Phasen nutzbar machen !

Reduktion der Testzeiten � geringere Testdurchführungskosten

Bessere Diagnosefunktionen � Reduktion der Diagnosekosten

Reduktion der Durchführungszeiten erlaubt höhere Testrate �Steigerung der Produktqualität � weniger Wartungstests

cGesamt = cKT + cST + cPT + cWT

Page 19: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

19ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Einsparungspotenzial ?

ROI >> 1 ?

Investition

-Höhere Kosten für BISTD-Testentwicklung

Einsparungen

-Weniger Testentwicklungen-Geringere Testdurchführungskosten-Reduktion der Diagnosekosten-Reduktion der MTTR

ROI = Einsparungen− InvestitionskostenInvestitionskosten

Page 20: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

20ATAMI 2012, © Markus Rentschler

Technische Umsetzung von DfST?

Page 21: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

21ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Betrachtung der Systemarchitektur

Technisches System

Gerät 1 Input

Gerät 2 Output

Gerät 3

Feature n

Input Output

Technisches System � System- feature

Feature 1

Feature 2

Feature n

Input Output

Blackbox-Ebene

Whitebox-Ebene

System-Ebene

Gerät � Lokales Feature

Feature 1

Feature 2

Feature n

Testobjekt Testobjekt

Testobjekt

Page 22: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

22ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Testbarkeitsanforderungen

Technisches System oder Gerät

Feature 1

Feature 2

Feature n

Feature n

Testobjekt

PoC

PoO

Input Output

Blackbox-Ebene

Whitebox-Ebene

PoO

PoC

Point of Control (PoC) – Schnittstellen, über die das Testobjekt mit Testdaten versorgt wird

Point of Observation (PoO) – Schnittstelle, an der die Reaktionen und Ausgaben des Testobjekts beobachtet und aufgezeichnet werden

Page 23: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

23ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Testautomatisierung

„Normale“ Testautomatisierung

Testautomatisierung

Testobjekt

Feature 1

Feature 2

Feature n

Input Output

PoO

PoC

Nur in den Entwicklungsphasen anwendbar

Page 24: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

24ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Built In (Self) Test and Diagnosis (1)

Eingebaute „Testautomatisierung“

Page 25: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

25ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Built In (Self) Test and Diagnosis (2)

„Verteilt“ eingebaute „Testautomatisierung“

Technisches System

Gerät 1

Input Output

Gerät 3

BISTD 1

Feature 1

BISTD 3

Feature 3

Feature m Gerät 2

BISTD 1

Feature 1

Feature 2

BISTD n

Feature n

Page 26: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

www.hirschmann.com 26ATAMI 2012, © Markus Rentschler

SUTTA TA

Verteiltes System – Roundtrip Methode

Roundtrip Methode

Sub-feature n.1POC

Sub-feature n.2POO

POO

POC

Populäres Beispiel: PING

Page 27: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

27ATAMI 2012, © Markus Rentschler

Für welche Tests ist der DfST-Ansatz geeignet?

Validierung funktionaler Anforderungen

Test von (Hardware-)Teilkomponenten in Embedded Systems

Nicht funktionale Anforderungen (z.B. Performance)

Regressionstest funktionaler Anforderungen

www.hirschmann.com

Einsatzm öglichkeiten

Page 28: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

28ATAMI 2012, © Markus Rentschler

Einführung von DfST in den Entwicklungsprozess ?

Page 29: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

29ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Produktentstehungszyklus

Entstehungszyklus Produktionszyklus

Abnahmetest Anforderungs-

analyse

funktionaler Systementwurf

technischer Systementwurf

Komponenten-spezifikation

Systemtest

Integrationstest

Komponententest

Fertigung

Betriebszyklus

Wartung/Support

Entwicklungszyklus Testzyklus

Weiterent-wicklung

Programmierung

Design Phase

Page 30: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

30ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Entwicklungsprozesse

In der „Design Phase“ keine Testbarkeitsanalyse

PM

LE/ST

PL

CRS – Customer Requirement SpecificationPSS – Product Solution StudySAS – System Architecture Specification

PM – Project ManagerLE – Lead Engineer / Software ArchitectST – System Test ManagerPL – Project Leader

Page 31: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

31ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Neuer Produktentwicklungsprozess

PM

LE/ST

PL

PM

LE/ST

PL

Neue „Design Phase“

Page 32: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

www.hirschmann.com 32ATAMI 2012, © Markus Rentschler

DfST Elicitation & Management

Einfache Toolunterstützung:

Page 33: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

33ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

„Design for System Testability“

• …ist ein vielversprechender systematischer Ansatz vor al lem für mechatronische Systeme mit eingebetteter Software

• …erlaubt die Entwicklung von gemeinsamen Testlösunge n für Entwicklung, Systemtest, Wartung

• Umsetzung in bestehender „Entwicklungskultur“ schwier ig

• Management-Unterstützung notwendig

• Kompetenter System -/Software-Architekt als Treiber notwendig

Fazit

Page 34: Design for Testability: Effizienzsteigerung für den gesamten ...rentschler/Publications/...- Testautomatisierung-Lösungen meist nur auf den Ebenen des Modul-und Systemtests geeignet

34ATAMI 2012, © Markus Rentschlerwww.hirschmann.com

Vielen Dank für Ihre Aufmerksamkeit!

Fragen?