130 likes | 222 Views
Summer Project Marama2008 By Robert and Johnson. What is Marama?. Marama is an Eclipses based toolset permits rapid specification of notational elements, meta-models, view editors and view-model mappings. A tool generates other tools Eclipses Plug-in (JAVA)
E N D
Summer Project Marama2008 By Robert and Johnson
What is Marama? • Marama is an Eclipses based toolset permits rapid specification of notational elements, meta-models, view editors and view-model mappings. • A tool generates other tools • Eclipses Plug-in (JAVA) • Usage: construct basic visual modellers fast • more accessible approach to domain specific visual language specification than other meta-tools
How is Marama working Modelling Steps: View mapping Meta-Model-designer ShapeType Designer View Mapping Designer Connector.xml Association.xml Generate Shape.xml Entity.xml Is used for End Tool Diagrams View Type
Any Diagrams! • Marama could generate any diagram you want to have, in a few hours, amazingly! • Proof? • Download: https://wiki.auckland.ac.nz/display/csidst/Downloads
Project Objective • Part1: Extend existing example tools that were available for Marama. • Part2: enhancing meta-tool capabilities by introducing new visual notations and user interactions.
Main Work • Programming • Debugging • Designing • Testing • Documentations
Challenges • Training on Marama • Both of us have limited experience in Java • No UML diagrams to analysis • Eclipses Libraries • Uncommented code • Bugs • pre-existing • Our own creation
Part1: Improving existing tools • Marama Sudden • Used for Supply Chain Management Tool • Marama FB • Function Block Designer Tool Both tools are developed by other research students. Both with a few bugs. Some of the features were not working.
Outcomes • Fixed lots of Layout bugs • Added some event handlers to improve the interaction • These tools are much better than before • Training on Marama and Eclipse IDE • Transformation to new version of Marama
New features on Meta-tool • We introduced some new features in the newest version of Marama • Association creation process • Mapping creation process • One step view mapping • Naming shape in shape definer • Setting defaults • API for duplicate shape • Button shape in shapes
Default settings • Give shapes unique key names when created • Make sure 2 shapes don’t share a same key value • Implemented by adding a new event handler to the Diagram • Unit Test
Button Shape in the shapes • Create a button in the Shape Definer • A property value Link to an event handler • Each time the button is pressed, run the event handler • Some new API added to constrain the event handler