BTW, the idea of using precondition/postcondition
processing comes from the world of Interactive
Electronic Technical Manuals (MIL-STD-87269)
which adopted techniques used for diagnostic
tests for fault isolation. We considered using
this in IrishSpace but decided that on a 3 month
schedule, it was too complicated. Given the
memory management problems of the browsers
at that time, I am awfully glad we did.
The MID language was created for writing
sequenced hypermedia using that model.
The NEXT button when pressed set off the
calculation and storage of the post-conditions,
and determined the next node. One problem that
came up was ensuring:
1. Local linearity: some steps must be followed
sequentially
2. Entry points: some sequences must always
be started from the beginning.
IOW, some rules for NEXT have to be authored
and enforced. In this application (repair), it is to
ensure that either the test produces unambiguous
results or the procedure can't produce a harmful
condition (eg, two players (technicians) working
at the same time create an anomaly). In the
case of IETMs, an example was "you can't power
up while the other guy has his hand in the boards
or you will kill him". The point of this is to say
that if you consider multi-interactor stories, the
problems of consistency are daunting.
Len