Jump to: navigation, search

ETrice/GSoC/2012/DiagramLayout Kieler

< ETrice‎ | GSoC/2012
Revision as of 01:13, 2 May 2012 by Gsoc.jayant.gmail.com (Talk | contribs) (Phases of Develoipment)

This project "Diagram Layout in eTrice with KIELER" aims at improving the Graphical User Interface of eTrice ( a project under the Eclipse Modelling Domain intended towards implementation of the ROOM modelling language) by providing automatic lay-outing of ROOM diagrams in it's graphical editors. The lay-outing algorithms being employed are available under the KIELER project, which provides a lot of infrastructure for configuration and execution of layouts in various graphical editors in eclipse (eg: GMF and Graphiti based editors).


The deliverables of the project would be :

  • Two fully-functional graphical editors for eTrice with automatic lay-outing features for diagrams using the KIELER framework :
    • one for modelling hierarchical Structures of actors
    • another for modelling hierarchical State Machine Diagram (behaviour) of actors.
  • User will be provided the following methods to use the feature:
    • A toolbar and menu action to trigger layout on the active diagram.
    • A "Layout" view for layout option configuration.
  • User Documentation for how to use these features in both the editors.
  • Developer's Documentation for explaining the current implementation ( to facilitate any changes to be made in future and re-usability of the present code )
  • Resources (proper interfaces) for further extending the features of the editors by using the KiVi, KSBasE and KLighD Frameworks (provided by KIELER).
  • Documentation for the above resources for facilitating the extension.
  • Tests for proving bug-freeness of the developed feature.

Project Implementaion

Phases of Develoipment

The project implementation will be divided into three major phases : 1* Integrating KIML with present graphical editors, which is the basis for all further improvisation and enhancements. 2* Designing of the interaction mechanisms such that the layout is performed automatically in certain situations, eg. making of a new actor and binding it with another in Structural Editor (or) defining a new state and connecting it to others in Behavioural Editor will automatically trigger lay-outing. 3* Investigating the other three KIELER sub-projects (namely KiVi, KSBasE and KLighD) and evaluating the specific requirements for integrating them into the editors(explained below).

Timeline and Schedule

Basic Tentaive schedule

A superficial schedule of the project would be as follow:

  • Before 2 May : Preparing the project Wiki and improving the understanding of the implementation process.
Before the beginning (Community Bonding Period)
  • 2 May - 13 May : Gathering the background knowledge as indicated by above sections(Background), Detailing of the schedule to make it more rigid and easily track-able.
I Phase (Integrating KIML with present graphical editors)
  • 14 May - 20 May : Implementing the transformation of Hierarchical State Machine Diagrams to KGraph meta-model instance.
  • 21 May - 27 May : Implementing the transformation of KGraph instance to Hierarchical State Machine Diagrams.
  • 28 May - 3 June : Implementing the transformation of Actor Structural Diagrams of ROOM models to KGraph instance.
  • 4 June - 10 June : Implementing the transformation of KGraph instance back to the Structural Actor Diagrams and combining the above implementations to complete phase I with tests.
II Phase (Designing of the interaction mechanisms)
  • 11 June - 17 June : Gathering information about the required situations for automatic layout triggering
  • 18 June - 24 June : Implementing layout triggering for the gathered situation
  • 25 June - 3 July : Implementing layout triggering for the gathered situation
  • 4 July - 8 July : Combining all implementations from Phase I and Phase II for preparing a stable version for mid-term evaluation.
  • 9 July - 13 July : Mid-Term Evaluation
  • 14 July - 15 July : Feedback reception and changes if required.
III Phase (Integrating KiVi, KSBasE and KLighD into the editors)
  • 16 July - 23 July : Investigation of KiVi project to adapt the present editors for its integration (improvisation of the code).

[ 24 July : Return back to the my institution (holidays end) ]

  • 25 July - 29 July : Investigation of KSBasE project and adapting the present code for its integration.
  • 30 July - 5 August : Investigation of KLighD project and adapting the present code for its integration.
  • 6 August - 12 August : A backup week(if something runs out of schedule). If everything on time, code and Documentation review starts
Review phase
  • 13 August - 19 August : Final Review of the Code and documentation for final submission.


The following calendar shows the details of the various tasks to be completed and the deadlines during the project tenure :-

Project Proposal

Click Here to see the project proposal at GSoC's website .

Useful Links

eTrice Project Links

KIELER Project Links

Graphiti Project Links

Plugin Development Links