Design for Testability (MedConf 2012)

1.158 Aufrufe

Veröffentlicht am

Das Konzept vom "Design for Testability" stammt ursprünglich aus dem Hardware-Entwurf und bezeichnet die Auslegung elektronischer Produkte auf Prüfbarkeit. Mittlerweile ist dieser Begriff aber auch in der Welt der Software-Technik geläufig, wo er im Zusammenhang mit Methoden wie Testautomatisierung und Test-Driven Development eine zunehmende Rolle spielt.
Der zentrale Gegenstand dieses Vortrags ist die Frage, wie sich eine gute Testbarkeit auf den verschiedenen Ebenen -- Module, Integration, System -- erreichen lässt. Dabei werden verschiedene Entwurfstechniken und Architekturstile vorgestellt, mit konkreten Erfahrungen aus der Praxis untermalt und in Bezug auf ihre Dienlichkeit bewertet. Was lernen die Zuhörer in dem Vortrag: Es werden sowohl theoretische Grundlagen zum "Design for Testability" als auch spezifische Fallbeispiele behandelt. Dabei sollen nicht nur hilfreiche Ansätze besprochen, sondern auch populäre Trugschlüsse zur Testbarkeit von Software-Systemen beleuchtet werden.
Vortrag von Daniel Mölle
Zielgruppe: Softwareentwickler, Softwarearchitekten, Projektleiter

Veröffentlicht in: Technologie
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
1.158
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
421
Aktionen
Geteilt
0
Downloads
5
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Design for Testability (MedConf 2012)

  1. 1. Design for Testability Folie 1 27. September 2012 Dr. Daniel Mölle © Zühlke 2012
  2. 2. Design for TestabilityDesign for Testability | Dr. Daniel Mölle 27. September 2012 Folie 2 © Zühlke 2012
  3. 3. RückblickInformatik und Ingenieurwesen Design for Testability Folie 3 27. September 2012 Dr. Daniel Mölle © Zühlke 2012
  4. 4. 1968: Software Engineering ConferenceDesign for Testability | Dr. Daniel Mölle 27. September 2012 Folie 4 © Zühlke 2012
  5. 5. 1972: The Humble ProgrammerDesign for Testability | Dr. Daniel Mölle 27. September 2012 Folie 5 © Zühlke 2012
  6. 6. 1986: Computer Science?Design for Testability | Dr. Daniel Mölle 27. September 2012 Folie 6 © Zühlke 2012
  7. 7. TestbarkeitVon Hardware zu Software Design for Testability Folie 7 27. September 2012 Dr. Daniel Mölle © Zühlke 2012
  8. 8. Testbarkeit bei Hardware Korrekt bestückt? Bauteile intakt? Lötstellen okay?Design for Testability | Dr. Daniel Mölle 27. September 2012 Folie 8 © Zühlke 2012
  9. 9. Übertragung auf Software Korrektes Deployment? Komponentenlogik intakt? Verbindungen okay?Design for Testability | Dr. Daniel Mölle 27. September 2012 Folie 9 © Zühlke 2012
  10. 10. Anforderungen Systemtests Architektur Integrationstests Design Unittests Implementierung
  11. 11. Königsdisziplin: Automatisierte SystemtestsDesign for Testability | Dr. Daniel Mölle 27. September 2012 Folie 11 © Zühlke 2012
  12. 12. Unittests Design for Testability Folie 12 27. September 2012 Dr. Daniel Mölle © Zühlke 2012
  13. 13. InputController WorkflowEngine UIController Translator DisplayDriver
  14. 14. InputController WorkflowEngineKeyHandling.h UIControllerKeyHandling.c ViewStack.h ViewStack.c Presenter.h Presenter.c Translator DisplayDriver
  15. 15. UIController TestSuite KeyHandling.h UIController KeyHandling.c ViewStack.h ViewStack.c Presenter.h Presenter.cTranslator DisplayDriver Mock Mock
  16. 16. Testbarkeit auf Modulebene Architektur Buildsystem Design TestumgebungDesign for Testability | Dr. Daniel Mölle 27. September 2012 Folie 17 © Zühlke 2012
  17. 17. Integrationstests Design for Testability Folie 18 27. September 2012 Dr. Daniel Mölle © Zühlke 2012
  18. 18. InputController WorkflowEngine UIController Translator DisplayDriver
  19. 19. InputController WorkflowEngine UIController Translator DisplayDriver
  20. 20. ? Integration Test WorkflowEngine UIController Translator DisplayDriver Mock Mock
  21. 21. Testbarkeit auf Integrationsebene Architektur Buildsystem Design TestumgebungDesign for Testability | Dr. Daniel Mölle 27. September 2012 Folie 23 © Zühlke 2012
  22. 22. Systemtests Design for Testability Folie 24 27. September 2012 Dr. Daniel Mölle © Zühlke 2012
  23. 23. InputController WorkflowEngine UIController Translator DisplayDriver
  24. 24. InputController WorkflowEngine Testcode Testcode UIControllerTestschnittstelle Testcode Translator DisplayDriver Testcode
  25. 25. InputController UIControllerHartverdrahteter Funktionsaufruf Rücksprung
  26. 26. System Client Server Client Test Network
  27. 27. Testbarkeit auf Systemebene Architektur Buildsystem Design TestumgebungDesign for Testability | Dr. Daniel Mölle 27. September 2012 Folie 30 © Zühlke 2012
  28. 28. Und die Kosten? Folie 31 27. September 2012 Dr. Daniel MölleDesign for Testability | Dr. Daniel Mölle © Zühlke 2012
  29. 29. Der Trade-Off Aufwand Verständlichkeit Testabdeckung Qualität (und Zeit)Design for Testability | Dr. Daniel Mölle 27. September 2012 Folie 32 © Zühlke 2012
  30. 30. Fazit Design for Testability Folie 33 27. September 2012 Dr. Daniel Mölle © Zühlke 2012
  31. 31. Take-Away Messages Testbarkeit als nicht- funktionale Anforderung Von Anfang an in allen Disziplinen berücksichtigen Alle drei Ebenen beachten Wenn man es richtig macht: Gewinn an Qualität und ZeitDesign for Testability | Dr. Daniel Mölle 27. September 2012 Folie 34 © Zühlke 2012
  32. 32. Erfolgsindikator #1 Umfassende Automatisierung der TestsDesign for Testability | Dr. Daniel Mölle 27. September 2012 Folie 35 © Zühlke 2012
  33. 33. Bildnachweis:Die Fotos auf den Folien 5 (Dijkstra), 13 (Testpads) und 19 (JTAG)sind den Wikimedia Commons entnommen.

×