This is in some sense the stupid canonical ProblemFrame, since both the ProblemFrame and JacksonStructuredProgramming originated with MichaelJackson. This frame is a particularly well defined one. For JSP to be good approach to solving your problem, the problem must be a close fit to this frame. The frame fits problems where the required system will map an ''input stream'' to an ''output stream'' according to an ''input-output condition''. The '''principal parts''' are: *the input and output streams, they must each: *be a sequence of elements *that sequence must be described by some RegularExpression *the elements must correspond to individuals the input and output domains *the input-output condition, it must *relate subexpressions in the description of the input and output streams *be ''approximately'' one-one between subexpressions (the more many-many or asymmetric it becomes, the worse the fit) The '''problem task''' is to construct a software system to transform the ''input stream'' into the ''output stream'' in accordance with the ''input-output condition'' --KeithBraithwaite