DebugWare Patterns (Part 12)

Support tools can be packaged for delivery as (not counting optional separate readme and EULA files):

  • - A raw collection of modules
  • - A single installation package
  • - A single archived file
  • - A single self-extractable component

The latter common packaging choice is a pattern itself that I call Self Extractor. Typical examples include sysinternals tools like Process Monitor. Here is a simple unorthodox UML diagram for a single platform tool combining elements from static and component diagrams to illustrate component embedding (not sharing):

SM is a supporting module, for example, a driver, to carry out some task or receive notifications.

Some tools even extract different components depending on the processor architecture, for example, x86 and x64. This is illustrated on a more elaborate UML diagram:

The typical example would be a backward compatible x86 Extractor that extracts an x64 driver (Extractee) for an x64 OS kernel that doesn’t load x86 drivers.

- Dmitry Vostokov @ -

2 Responses to “DebugWare Patterns (Part 12)”

  1. Software Generalist » Blog Archive » Reading Notebook: 28-October-09 Says:

    […] Process Monitor internals (p. 262) - rather short section but inspired yet another DebugWare pattern: […]

  2. Crash Dump Analysis » Blog Archive » DebugWare Patterns: A Case Study (Part 1) Says:

    […] it is not always desirable to change configuration on production servers and we plan for optional Self Extractor […]

Leave a Reply

You must be logged in to post a comment.