pattern-driven software problem solving · pattern-driven software problem solving presenter:...
TRANSCRIPT
![Page 1: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/1.jpg)
Pattern-Driven
Software Problem Solving
Presenter: Dmitry Vostokov
Memory Dump Analysis Services
![Page 2: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/2.jpg)
Prerequisites
Experience in software troubleshooting
and/or debugging
© 2011 Memory Dump Analysis Services
![Page 3: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/3.jpg)
Agenda (Summary)
A Short History
Basic Definitions
Pattern Categories
Future Research Directions
© 2011 Memory Dump Analysis Services
![Page 4: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/4.jpg)
DumpAnalysis.org*
5 Years!
* Now Includes: TraceAnalysis.org, www.ForensicAnalysis.org, and Victimware.org
© 2011 Memory Dump Analysis Services
![Page 5: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/5.jpg)
Agenda (Basic Definitions)
Software Problems
Software Patterns
DA+TA
Pattern Hybridization
© 2011 Memory Dump Analysis Services
![Page 6: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/6.jpg)
Software Problems
Construction: Requirements, Architecture, Design,
and Implementation
Post-Construction: Maintenance and Support
© 2011 Memory Dump Analysis Services
Post-construction problem: any observed deviations in
structure and behavior between modeling expectations
and the actual built system.*
* What is a Software Defect?
![Page 7: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/7.jpg)
Software Patterns
Construction: Requirements, Architecture, Design,
and Implementation
Post-Construction: Maintenance and Support
© 2011 Memory Dump Analysis Services
Pattern: a common recurrent identifiable problem
together with a set of recommendations and possible
solutions to apply in a specific context
![Page 8: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/8.jpg)
DA+TA
DA: Dump Artifact / Dump Analysis
Memory snapshots: process, kernel, physical memory dumps
TA: Trace Artifact / Trace Analysis
Software traces: Event Tracing for Windows, logs
© 2011 Memory Dump Analysis Services
![Page 9: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/9.jpg)
Pattern Hybridization
A bit of Chemistry: Carbon SP3 orbital hybridization
© 2011 Memory Dump Analysis Services
System
+
Environment
DA+TA
Artifacts
DA+TA
Patterns
Debugware
Construction
Patterns
S P3
Software Patterns3
Software Patterns3
- Structural
- Behavioral
- Debugware
- Debugging
![Page 10: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/10.jpg)
Agenda (Pattern Categories)
Software Behavior
Debugware Tools
Problem Workaround
Unified Debugging
© 2011 Memory Dump Analysis Services
![Page 11: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/11.jpg)
Software Behavior
Memory dump and software trace
Examples: Spiking Thread, Discontinuity
+200 patterns (DA+TA)
DumpAnalysis.org
© 2011 Memory Dump Analysis Services
![Page 12: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/12.jpg)
DA: Software Behavior
Memory dump: a memory snapshot
Definition, partial classification and
historical list
Pattern identification case studies
© 2011 Memory Dump Analysis Services
![Page 13: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/13.jpg)
TA: Software Behavior
“Imagine you got a software trace from hundreds of modules
you haven’t written or haven’t seen source code of...”
Software trace: a sequence of memory
fragments ordered in time
Definition, and historical list
Pattern identification case studies
© 2011 Memory Dump Analysis Services
![Page 14: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/14.jpg)
Debugware Tools
Troubleshooting and Debugging
Example: Troubleshooting Unit of Work
13 patterns, case study
DumpAnalysis.org
© 2011 Memory Dump Analysis Services
![Page 15: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/15.jpg)
Problem Workaround
Troubleshooting when debugging is not
an option
Example: Frozen Process
Patterns
DumpAnalysis.org
© 2011 Memory Dump Analysis Services
![Page 16: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/16.jpg)
Unified Debugging
Systematic Pattern Language
Example:
Analysis Patterns Shared Buffer Overwrite
Architectural Patterns Debug Event Subscription / Notification
Design Patterns Punctuated Execution
Implementation Patterns Breakpoint (software and hardware)
Usage Patterns Kernel vs. user space breakpoints
© 2011 Memory Dump Analysis Services
![Page 17: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/17.jpg)
Agenda (Future Directions)
Structural Memory Patterns
Unified Debugging Pattern Language
Domain Pattern Hierarchy
Periodic Table of Software Defects
© 2011 Memory Dump Analysis Services
![Page 18: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/18.jpg)
Structural Memory Patterns
Examples: Memory Region and Region Boundary
DumpAnalysis.org
© 2011 Memory Dump Analysis Services
![Page 19: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/19.jpg)
Domain Pattern Hierarchy
Repeated patterns through the layers of software
© 2011 Memory Dump Analysis Services
![Page 20: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/20.jpg)
Resources DumpAnalysis.org
Pattern-Driven Memory Dump Analysis
Memory Dump and Trace Analysis: A Unified Pattern Approach
Advanced Software Debugging Reference:
Vol 6
November,
2011
© 2011 Memory Dump Analysis Services
Vol 5
April,
2011
![Page 21: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/21.jpg)
Q&A
Please send your feedback using the contact
form on DumpAnalysis.com
© 2011 Memory Dump Analysis Services
![Page 22: Pattern-Driven Software Problem Solving · Pattern-Driven Software Problem Solving Presenter: Dmitry Vostokov Memory Dump Analysis Services. Prerequisites Experience in software troubleshooting](https://reader036.vdocuments.net/reader036/viewer/2022081613/5fb3c847e770b048cd1ce5b8/html5/thumbnails/22.jpg)
Thank you for attendance!
© 2011 Memory Dump Analysis Services
Join DA+TA Facebook Group