Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory...

30
Pattern-Driven Software Diagnostics Dmitry Vostokov Memory Dump Analysis Services Version 1.0

Transcript of Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory...

Page 1: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Pattern-Driven Software Diagnostics

Dmitry Vostokov Memory Dump Analysis Services

Version 1.0

Page 2: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Prerequisites Interest in software diagnostics

© 2012 Memory Dump Analysis Services

Page 3: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

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 DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Goals Scientific: a comprehensive

methodology

Technological: limits and services

© 2012 Memory Dump Analysis Services

Page 5: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Diagnostics Based on pattern recognition:

symptoms and signs

Systems approach

© 2012 Memory Dump Analysis Services

Page 6: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Software Diagnostics Based on pattern recognition:

symptoms and signs

Systems approach

© 2012 Memory Dump Analysis Services

Page 7: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Symptoms User or system complaints Error message Slow system High CPU usage

Histories

© 2012 Memory Dump Analysis Services

Page 8: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Signs Traditional artifact patterns Situation dependent: memory or

handle leak Specific vs. non-specific: spike, leak

vs. access violation

Page 10: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Problem Solving Diagnosis treatment Software problem

Diagnosis resolution

© 2012 Memory Dump Analysis Services

Page 12: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Diagnostics Process

© 2012 Memory Dump Analysis Services

Diagnostic encounter Treatment

Monitoring

Postmortem

Checklists

Page 15: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Diagnosing Current State Multiple OS Multiple Platforms Multiple Products Multiple Artifacts Multiple Tools

© 2012 Memory Dump Analysis Services

Page 16: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Pattern Language Structural and behavioural patterns

(S,B)-systems Antipatterns

Example: Inquisitor Pattern Explanations

© 2012 Memory Dump Analysis Services

Page 18: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

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 21: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Monitoring Best Practices Example: artifact collection Software Tracing Best Practices

© 2012 Memory Dump Analysis Services

Page 22: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Certification Individual

Memory Dump Analysis Software Trace Analysis (forthcoming) Corporate

Software Diagnostics Maturity

© 2012 Memory Dump Analysis Services

Page 23: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

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 DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Human Side

Diagnostic load

Tiredness reduced efficiency

Shallow vs. deep diagnostics

© 2012 Memory Dump Analysis Services

Page 25: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

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 DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Systems and Diagnostics General Software Diagnostics Theory

Introduction to Systemic Software Diagnostics

© 2012 Memory Dump Analysis Services

Page 27: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Malware Analysis Malware + Victimware

Victimware: The Missing Part of the Equation

© 2012 Memory Dump Analysis Services

Page 28: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

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 DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Q&A

Please send your feedback using the contact form on DumpAnalysis.com

© 2012 Memory Dump Analysis Services

Page 30: Pattern-Driven Software DiagnosticsPattern-Driven Software Diagnostics . Dmitry Vostokov . Memory Dump Analysis Services . Version 1.0

Thank you for attendance!

© 2012 Memory Dump Analysis Services