Thursday 8 December 2016

Elongated Systems Description

First, for purposes of this document, I define a complex (elongated) system as one that requires several discrete processes (often running but not necessarily concurrently)  to coordinate and produce a result.

For example, in the 90’s I developed a system marketed by IBM as Remote Operator that allowed an operator on a DOS based PC to connect to and ‘run’ a remote computer running a custom operating system (Flex OS) via SDLC protocols. In its most elongated configuration, the PC connected via 7 intermediaries for a total of 9 computers end to end.

In more a more recent example, I work on a system to analyse banking systems and derive the data flow (lineage) through static analysis of the source code.    This requires several layers of processing where each layer produces results processed by the next layer.

These systems never work first time.  In order to understand the points of failure it is necessary to see intermediate results in a side-by-side view or even a side-by-side-by-side view.  As such, abundant screen pixels make creating these views easier.

For these reasons I have devised methods to configure multiple screens with KVM (keyboard, video, mouse) switches that employs multiple CPUs (which isolates systems and reduces interference and disturbances). This is described in detail in KVM Configuration with multiple mice and displays


Once multiple systems are being used it is convenient, if not necessary, to be able to clipboard copy text from one system to another. The NetClip Utility implements such a facility.


Elongated systems typically involve many lines of code in various languages spread across many modules.  I found jEdit to be an editor that is up to the task.  In particular, with the Eclipse interface I was able to create, I ended up with the best of breed in both compilation and editor technologies. This is described in Entering the Best Editor Fray

No comments:

Post a Comment