Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[4diac-dev] GSoC Final report

Hi!

Here is the last update on my GSoC project. With this last update, I would like to give you an overview of everything that has been done during the summer. The documentation of the project can be found on the 4diac Wiki page

By the end of my GSoC project, I created a set of OCL constraints at the ECC and Application level. Altogether, 16 constraints have been created:

ECC: SelfCycleMustBeGatedByEvent, TransitionLowerThanOne, TransitionHigherThanOne, UnreachableState, TerminalState, DeadState, UnusedEventInput, UnusedEventOutput, NoneTransitionWithoutCondition, GuardOnlyCycle

Application: UnreachableFB, DataInputMustHaveValue, FBCommentFieldMustHaveValue, TimeFormat, BoolFormat, AssociatedDataMustBeConfigured

At the beginning of the project, I implemented a simple dialog window for displaying the results of the violated constraints. It was a preliminary prototype only for testing purposes. Later, we decided to improve the UI and use the Problems tab of Eclipse. The current implementation has several cool features:
  • Displaying description, resource, path, location and severity(Error, Warning, Info) of the problem 
  • Better Error Marker support: When the user double clicks on one of the lines in the Problems View, the framework automatically selects the corresponding model element on which the constraint is violated (at the ECC level)
  • The automatic invocation of the OCL validation: When the user saves the currently edited model, the validation is automatically invoked.
Screenshot.PNG

Unfortunately, I didn't have time to implement constraints on the Xtext side. Even though the project is finished with this month, I want to keep working with the Eclipse 4diac team. I would like to get familiar with the 4diac Xtext implementation and check whether it would be advantageous to use well-formedness rules there. 

Finally, I would like to summarize my experience with GSoC and the 4diac team. I learned a lot during the summer, it was a very nice experience to get to know the IEC 61499 standard and infrastructure of the 4diac IDE. But the most important thing was to get to know an open and kind community, that helped me with every problem and question I had. Even though we could only communicate online, I had a great time working on this project and I want to thank Alois, Bianca, and Martin for the assistance and help throughout the project.

Sándor

Back to the top