Structure Editor : JSP Overview

 

The following is a brief overview of the Jackson Structured Programming (JSP) and in particular JSP Structure Diagrams. Note this only intended to provide a brief reminder of JSP concepts. For details on JSP and/or JSD training courses contact Keywood.

JSP works on the assumption that there are three fundamental program structure constructs. The notation for each (as displayed by the Structure Editor) is displayed below. Note that the Structure Editor colour-codes different box types :-

SEQUENCE

(unmarked box)

Example pseudo-code :-

begin
do A;
do B;
do C;
end

SELECTION

(box with circle)

Example pseudo-code :-

if <cond1>
do A;
elsif <cond2>
do B;
else
do C;
end if

ITERATION

(box with asterisk)

Example pseudo-code :-

while <cond1>
do A;
end

The conditional structures require a condition to determine which path to take, while terminal nodes contain the actual operations to be performed.

In addition there are a number of constructs to support "backtracking".

POSIT This is one half of a special type of selection
ADMIT This is one half of a special type of selection
POSITER This is a special type of iteration
QUIT This is the fundamental backtracking construct, if encountered it returns control to the posit or positer with the same name. It can be associated with a condition in the same way as a selection or iteration.

Finally there are the concepts of side-effects with are either beneficent or intolerable.

Beneficent side effect This is a side-effect that does no harm and therefore need not be reversed if backtracking occurs.
Intolerable side effect This is a side-effect that causes adverse effects and therefore must be reversed if backtracking occurs.