Nassi-Shneiderman Diagram and the UiPath Workflow

The design of a UiPath automation workflow bases on fundamentals that I will describe in this post. I will illustrate this with some comparisons. The look of the UiPath workflow is oriented to the Nassi-Shneiderman diagrams. This is a type of diagram for the representation of program designs of structured programming. It was developed in 1972/73 by Isaac Nassi and Ben Shneiderman and it is standardized in DIN 66261 (DIN = Deutsches Institut für Normung, German Institute for Standardization).

Process Block

Each instruction is written in a rectangular process block. The process blocks are traversed one after the other from top to bottom, in top-down design. Empty structure blocks are only allowed in branches.

image

Decision or Branching Block

If the condition is true, left statement block is executed, if the condition is false, right statement block is executed (if then else). A statement block can consist of one or more statements. Exit at the bottom after processing the respective statement block.

image
Source Wikipedia

Iteration or Testing Block

Repeating structure with preceding (While) or ...

image
Source Wikipedia

… subsequent (Do While) condition check for termination.

image
Source Wikipedia

Parallel Processing Block

Symbol for concurrent execution of several blocks.

image
Source Wikipedia

Conclusion

The logic presented in this kind of structure diagram is easy to understand. It does not contain any programming language specific command syntax, it is independently. As a coding it can be implemented in any programming language. This is a level of abstraction.

This interesting comparison shows us that this RPA design fundamentals go back 50 years. Originally these structure diagrams were developed for procedural programming languages.

As we can also see, designing an automation workflow is very comparable and similar to programming.

image

You can find an advanced post about automation duality here.

2 Likes

Hi @StefanSchnell,

This post reminded me of a quote

If you want to learn something new, read an old book.

Learnt something new today, thank you.

2 Likes

Great quote @jeevith :slightly_smiling_face:

1 Like

Interesting post. A lot of people often don’t realize that a lot of concepts go waaaay back.

It makes sense of course… the fundamentals of a process flow have not, and most likely will not change, especially for RPA. Where RPA mimics the user, and us poor humans are biologically incapable of multitasking with our concious mind. (if you think you can, you are actually task switching, not multitasking). So an RPA process based on a human process is almost by definition a procedual setup.

RPA is hardly cutting edge as a concept… it’s been around for decades already as well (I’m getting old!). The innovation lies in the improvement of the tools in our toolkit, such as UiPath delivers. Innovations in intelligent OCR and ML algorithms simply give us more powerfull tools to apply old and proven concepts.

In a few years historians will specilize in the cultural heritage of IT innovations :smiley:

4 Likes

A very interesting post. I’m a little bit surprised that we use solutions already known in the 1970s

2 Likes

You’d be even more amazed about the wheel then :stuck_out_tongue:

1 Like