pattern-driven software diagnostics: an introduction
TRANSCRIPT
![Page 1: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/1.jpg)
Pattern-Driven Software Diagnostics
Dmitry Vostokov Memory Dump Analysis Services
Version 1.0
![Page 2: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/2.jpg)
Prerequisites Interest in software diagnostics
© 2012 Memory Dump Analysis Services
![Page 3: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/3.jpg)
Why? No comprehensive systematic study of
software diagnostics
Ad hoc services
Traditionally associated with troubleshooting and debugging
© 2012 Memory Dump Analysis Services
![Page 4: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/4.jpg)
Goals Scientific: a comprehensive
methodology
Technological: limits and services
© 2012 Memory Dump Analysis Services
![Page 5: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/5.jpg)
Diagnostics Based on pattern recognition:
symptoms and signs
Systems approach
© 2012 Memory Dump Analysis Services
![Page 6: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/6.jpg)
Software Diagnostics Based on pattern recognition:
symptoms and signs
Systems approach
© 2012 Memory Dump Analysis Services
![Page 7: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/7.jpg)
Symptoms User or system complaints Error message Slow system High CPU usage
Histories
© 2012 Memory Dump Analysis Services
![Page 8: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/8.jpg)
Signs Traditional artifact patterns Situation dependent: memory or
handle leak Specific vs. non-specific: spike, leak
vs. access violation
![Page 9: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/9.jpg)
Pattern Groupings Syndromes
Pattern Interaction
Pattern Succession
![Page 10: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/10.jpg)
Problem Solving Diagnosis treatment Software problem
Diagnosis resolution
© 2012 Memory Dump Analysis Services
![Page 11: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/11.jpg)
Problem Solving
Workaround Patterns
Unified Debugging Patterns
© 2012 Memory Dump Analysis Services
![Page 12: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/12.jpg)
Diagnostics Process
© 2012 Memory Dump Analysis Services
Diagnostic encounter Treatment
Monitoring
Postmortem
Checklists
![Page 13: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/13.jpg)
Artifact Checklists
© 2012 Memory Dump Analysis Services
Memory Dump Analysis
Software Trace Analysis
![Page 14: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/14.jpg)
Artifact Baselines
© 2012 Memory Dump Analysis Services
Memory Dumps: Reference Stack
Traces Software Logs: Master Traces
![Page 15: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/15.jpg)
Diagnosing Current State Multiple OS Multiple Platforms Multiple Products Multiple Artifacts Multiple Tools
© 2012 Memory Dump Analysis Services
![Page 16: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/16.jpg)
Pattern Language Structural and behavioural patterns
(S,B)-systems Antipatterns
Example: Inquisitor Pattern Explanations
© 2012 Memory Dump Analysis Services
![Page 17: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/17.jpg)
Pattern Catalog Problem Description Analysis
UI Problem Analysis
Memory Dump Analysis
Software Trace Analysis
© 2012 Memory Dump Analysis Services
![Page 18: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/18.jpg)
Meta-patterns Patterns of Software Diagnostics
First Fault Multiple Patterns NULL Case NULL Diagnosis Second Opinion Dominant Subsystem Noise
© 2012 Memory Dump Analysis Services
![Page 19: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/19.jpg)
Pattern Isomorphism Multiple Exceptions Windows Mac OS X
Spiking Thread
Windows Mac OS X / Linux
© 2012 Memory Dump Analysis Services
![Page 20: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/20.jpg)
Performance Monitoring Trace Patterns: Counter Value Global Monotonicity Constant Value
© 2012 Memory Dump Analysis Services
![Page 21: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/21.jpg)
Monitoring Best Practices Example: artifact collection Software Tracing Best Practices
© 2012 Memory Dump Analysis Services
![Page 22: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/22.jpg)
Certification Individual
Memory Dump Analysis Software Trace Analysis (forthcoming) Corporate
Software Diagnostics Maturity
© 2012 Memory Dump Analysis Services
![Page 23: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/23.jpg)
Diagnostics Audit Catalog of Diagnostic Errors Audit Service from MDAS Checklists for checklists Diagnostics for diagnostics
© 2012 Memory Dump Analysis Services
![Page 24: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/24.jpg)
Human Side
Diagnostic load
Tiredness reduced efficiency
Shallow vs. deep diagnostics
© 2012 Memory Dump Analysis Services
![Page 25: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/25.jpg)
Is Automation Possible?
Growth of data Growth of complexity Impossibility of complete automation Only computer-assisted diagnostics
© 2012 Memory Dump Analysis Services
![Page 26: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/26.jpg)
Systems and Diagnostics General Software Diagnostics Theory
Introduction to Systemic Software Diagnostics
© 2012 Memory Dump Analysis Services
![Page 27: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/27.jpg)
Malware Analysis Malware + Victimware
Victimware: The Missing Part of the Equation
© 2012 Memory Dump Analysis Services
![Page 28: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/28.jpg)
Further Reading Diagnostics
Diagnosis: Philosophical and Medical Perspectives (by Agassi & Laor)
Software Diagnostics
Software Diagnostics Institute Memory Dump Analysis Anthology: Volumes 1, 2, 3, 4, 5, 6, 7, … Volume 6 is in preparation (June, 2012) Volume 7 is planned for the end of 2012 Software Trace and Memory Dump Analysis: Patterns, Tools, Processes and
Best Practices Introduction to Pattern-Driven Software Problem Solving Cloud Memory Dump Analysis Fundamentals of Complete Crash and Hang Memory Dump Analysis Introduction to Software Narratology
© 2012 Memory Dump Analysis Services
![Page 29: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/29.jpg)
Q&A
Please send your feedback using the contact form on DumpAnalysis.com
© 2012 Memory Dump Analysis Services
![Page 30: Pattern-Driven Software Diagnostics: An Introduction](https://reader038.vdocuments.mx/reader038/viewer/2022103105/58eebbe21a28abfa778b463d/html5/thumbnails/30.jpg)
Thank you for attendance!
© 2012 Memory Dump Analysis Services