One of the current Software Diagnostics Institute projects is the development of Dia|gram graphical language for pattern-oriented software diagnostics, forensics, prognostics, root cause analysis and debugging. It combines the best features from:
- Visual Dump Objects: Graphical Notation for Memory Dumps;
- STDiagrams: Software Trace Diagrams;
- Visual compression of software traces and logs (including “bird’s eye view” of software traces), first introduced in Characteristic Message Block trace and log analysis pattern;
- Minimal Trace Graphs, first introduced in Activity Region trace and log analysis pattern. Numerous examples can be found in Accelerated Windows Software Trace Analysis training course reference and Software Trace and Log Analysis: A Pattern Reference book;
- Minimal Stack Trace Diagrams, first introduced in Constant Subtrace memory analysis pattern.
The purpose of Dia|gram language is twofold:
- To provide a succinct presentation and visualization of software execution state, artefacts, distribution of problem patterns, problem analysis patterns and their relationship;
- To communicate pattern-oriented software diagnostic analysis results.
Additionally, Dia|gram may be used for presentation and analysis of higher-order pattern narratives.
Software Diagnostics Institute also proposes the UML profile for Software Diagnostics with additional diagram types: artefact acquisition map, activity backtrace, and implementation internals. This work is only started, and more will be presented in subsequent articles.
Software Diagnostics Services plans to include Dia|gram in its forthcoming Advanced Software Trace and Log Analysis training course.