Home All Groups Group Topic Archive Search About

What is Instrumentation?

Author
27 Feb 2006 6:56 AM
Water Cooler v2
What does one mean by instrumentation when one talks in the context of
software development best practices?

<QUOTE
src="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_vstechart/html/AOPArticle.asp">
Contrary to popular belief, AOP can be useful to solve problems other
then Logging, Security, Instrumentation, and things of that nature.
</QUOTE>

Author
27 Feb 2006 6:59 AM
Water Cooler v2
ok! I think I got that from the google definitions. It is writing trace
information.
Author
27 Feb 2006 10:48 AM
Mario
Instrumentation is the complete set of tools to measure and write
performance counters, but also event loggin, trace information,
(structured) exception handling / logging etc. With other words,
instrumentation blocks are loggin all information necessary to review
the health of your application.
Author
27 Feb 2006 10:48 AM
Mario
Instrumentation is the complete set of tools to measure and write
performance counters, but also event loggin, trace information,
(structured) exception handling / logging etc. With other words,
instrumentation blocks are loggin all information necessary to review
the health of your application.
Author
27 Feb 2006 10:48 AM
Mario
Instrumentation is the complete set of tools to measure and write
performance counters, but also event loggin, trace information,
(structured) exception handling / logging etc. With other words,
instrumentation blocks are loggin all information necessary to review
the health of your application.
Author
27 Feb 2006 10:52 AM
Mario
Looks like something was goin wrong with this triple post at once.
Author
27 Feb 2006 5:12 PM
H. S. Lahman
Responding to Water...

> ok! I think I got that from the google definitions. It is writing trace
> information.

That's only one view of it, albeit a common one with many variations.
Any code that is added to the problem solution for purposes orthogonal
to just solving the problem is instrumentation.  For example, some
languages compile programs differently for use with a debugger than for
production mode.  So adding a HALT a the start of the program to allow
the debugger to take control is an example of instrumentation to assist
the debugger.

That theme is even more obvious for model-level debuggers (i.e.,
debuggers for UML models).  One common way of doing that is to generate
"vanilla" code and insert hooks into that code that go to the model
simulator UI.  That allows the model simulator to "walk" the code while
animating the UML model rather than showing the code as in a
conventional 3GL source debugger.  Those hooks inserted into the code
are commonly referred to as instrumentation of the code.

Another common use of instrumentation is for performance profilers that
insert similar hooks into the object code to trigger timers around
certain blocks of object code.  (One could argue this is a variation on
tracing, but the mechanics are typically quite different.)


*************
There is nothing wrong with me that could
not be cured by a capful of Drano.

H. S. Lahman
h**@pathfindermda.com
Pathfinder Solutions  -- Put MDA to Work
http://www.pathfindermda.com
blog: http://pathfinderpeople.blogs.com/hslahman
(888)OOA-PATH
Author
28 Feb 2006 12:20 PM
bart_deboeck@hotmail.com
do you have a link to an "UML debugger" ? is this
http://www.gentleware.com/debugger.0.html an example ?

Thanks,
Bart

H. S. Lahman wrote:
Show quoteHide quote
> Responding to Water...
>
> > ok! I think I got that from the google definitions. It is writing trace
> > information.
>
> That's only one view of it, albeit a common one with many variations.
> Any code that is added to the problem solution for purposes orthogonal
> to just solving the problem is instrumentation.  For example, some
> languages compile programs differently for use with a debugger than for
> production mode.  So adding a HALT a the start of the program to allow
> the debugger to take control is an example of instrumentation to assist
> the debugger.
>
> That theme is even more obvious for model-level debuggers (i.e.,
> debuggers for UML models).  One common way of doing that is to generate
> "vanilla" code and insert hooks into that code that go to the model
> simulator UI.  That allows the model simulator to "walk" the code while
> animating the UML model rather than showing the code as in a
> conventional 3GL source debugger.  Those hooks inserted into the code
> are commonly referred to as instrumentation of the code.
>
> Another common use of instrumentation is for performance profilers that
> insert similar hooks into the object code to trigger timers around
> certain blocks of object code.  (One could argue this is a variation on
> tracing, but the mechanics are typically quite different.)
>
>
> *************
> There is nothing wrong with me that could
> not be cured by a capful of Drano.
>
> H. S. Lahman
> h**@pathfindermda.com
> Pathfinder Solutions  -- Put MDA to Work
> http://www.pathfindermda.com
> blog: http://pathfinderpeople.blogs.com/hslahman
> (888)OOA-PATH
Author
28 Feb 2006 5:47 PM
H. S. Lahman
Responding to Bart_deboeck...

> do you have a link to an "UML debugger" ? is this
> http://www.gentleware.com/debugger.0.html an example ?

Yes, with some qualification.  I believe Poseidon employs a augmented
3GL (C++?) as the action language to describe dynamics (i.e., what goes
on inside object methods).  If so, that makes it a hybrid because one
still "walks" the 3GL code within methods for stepping and breakpoints.

For "pure" UML simulators/debuggers, one link you might try is mine.
B-)  Pathfinder builds translation rear ends for UML drawing tools and
part of the PathMATE tool set is a pure UML model simulator/debugger
using an abstract action language (AAL) for dynamics.  Other translation
tools that provide pure model simulators for UML w/ AAL are:

Bridgepoint  www.projtech.com
xtUML www.kc.com
Rose/RT  www.rational.com

[I /think/ Rose/RT uses an AAL, but I am not positive; it has been about
a decade since I saw a demo.  I am not sure of the Bridgepoint URL; they
recently got bought by Mentor and I don't know the new URL.  The old one
should still alias, though.  Same for Rose/RT since Rational got bought
by IBM.  (Rose/RT used to be Objectime, but they got bought by Rational
in the '90s.)  Establishing market share in translation has become a
popular strategic sport for Deep Pockets software companies.  B-)]

*************
There is nothing wrong with me that could
not be cured by a capful of Drano.

H. S. Lahman
h**@pathfindermda.com
Pathfinder Solutions  -- Put MDA to Work
http://www.pathfindermda.com
blog: http://pathfinderpeople.blogs.com/hslahman
(888)OOA-PATH