ISGL Example

This example shall give the reader an insight about the specification language ISGL and the power of ISG by exercising a simple example.

Language design

The language was designed with two major goals in mind:

  • Users should be able to rapidly setup specifications without the need to take care of organisation details.
  • The resulting specifications should be easy to read and self-documenting, so that they could be added to project documentation without additional effort.

Both of the goals contradicted the use of XML as description form, although the data to be described could be easily organized in an XML-friendly hierarchy. The language design incorporates the use of syntactical fillwords so the specification can approximate natural English sentences.

The example setup

Message Sequence Chart (MSC)

The example consists of two processes - a master and a slave - which communicate to initialize the system and the slave instructing the master to execute prepared batch jobs. The specification can be downloaded here.

Results of the run

Compilation of the specification produces a complete system which is automatically distributed to the target and executed. When the run is completed, textual and graphical evaluation reports as well as automatically generated documentation are available to the engineer.

The evaluation report includes statistics about test coverage, CPU and memory usage and response times.

The automatically generated documentation is produced by integrating generated diagrams of system structure and behaviour with manually created documentation.

The graphical part includes display of dataflow in oscillograph-like fashion and in MSC fashion, which has been adopted from SDL. ISG can produce actual standards-complying MSC-files, which can be viewed using scope and MSC viewers included in ISG.