Caution: JavaScript execution is disabled in your browser or for this website. You may not be able to answer all questions in this survey. Please, verify your browser parameters.

Complexity of Structured Text Function Blocks in IEC 61499

 

 

Thank you very much for your interest in this survey!


My name is Lisa Sonnleithner and I am a researcher at the CDL VaSiCS, LIT | Cyber-Physical Systems Lab lead by Prof. Rick Rabiser and Prof. Alois Zoitl. My research focuses on IEC 61499 software architecture and software metrics.

The questions in this survey aim to investigate the complexity of IEC 61131-3 Structured Text Function Blocks in IEC 61499.

The goal of this survey is to assess developers' perception of complexity of IEC 61131-3 Structured Text Function Blocks in IEC 61499, i.e., how hard it is to understand a Function Block. We will use this information to assess which metric best represents that perception. This metric can then be implemented in any IEC 61499 development tool to provide meaningful feedback during the development process and help improve software quality. Therefore, by participating in this survey you not only help us with our research but you will also benefit from better tool support in the future!

The Structured Text code used for the questions is mostly taken from real libraries.

 

Completing this survey will only take around 10-15 minutes.

 

----------------

You are coming from an IEC 61131-3 background and have no idea what an IEC 61499 Simple Function Block is?

A Simple Function Block encapsulates an algorithm. The standard would allow algorithms in any programming language, however, we will only consider Structured Text algorithms.

The interface of a Simple Function Block defines its input parameters on the left and output parameters on the right. Internal variables are also possible. The algorithm can be called via its input event and will send an output event once it is done.

As an example, this Simple Function Block with the name CONCAT has two input parameters IN1 and IN2 of type STRING. When an event arrives at the input REQ, the algorithm inside the block is started. As the name suggests, it combines the two input strings to a new string that is written to the output OUT. Once this is completed, an event on the output side is generated to indicate the algorithms completion.

 

We also aim to publish the results of this survey, of course in an abstracted, anonymized way.

If you have any questions about the survey please email us: lisa.sonnleithner@jku.at

There are 19 questions in this survey.