Model-Driven Integrated Development Environment (MIDE)
Project members: Barak Agiv, Itamar Ben-Zaken, Barak Nahum, Vladislav Smolensky.
Advisor: Prof. Mira Balaban
What is it? MIDE is an IDE for working with UML Class Diagram models. It extends the Eclipse UML Editor and provides
- powerful tools for carrying out complex tasks in one click
- a query engine for abstracting the UML model
- and a pattern-matching engine for detecting design errors as soon as they are made
Want to see more? Watch this short presentation.
HOW-TO Guides (User Manual)
General guides:
- HowTo_InstallMIDE - How to install MIDE
- HowTo_Samples - How to see what MIDE can do? (samples)
- HowTo_CompileMIDE - How to compile MIDE from source code
Model-Query related guides:
- MQ_Intro - What is a filter/sorter? How does the Model-Query feature work?
- MQ_HowTo_AddFilter - How to add a new filter to the Model-Query feature
- MQ_HowTo_AddSorter - How to add a new sorter to the Model-Query feature
Wizards related guides:
- WIZ_Intr - What is a wizard? How does it work?
- WIZ_HowTo_AddWizard - How to add a new wizard
Pattern-Matching related guides:
- PM_Intro - What is a pattern/schema? How does the Pattern-Matcher work?
- PM_HowTo_AddPattern - How to add a new pattern to the Pattern-Matching feature
- PM_HowTo_AddLabel - How to extend the schema-graph language with new labels
USE API guide:
- USE_API_Intro - What is the USE API? What does it provide? How to use it?
Specifications
- Schema-Graphs and Pattern Recognition Specification
- Application Requirements Document (ARD)
- Application Design Document (ADD)
- Testing Document
Under the Hood
- PM_LabeledGraphBuilder - How is the class-diagram converted to a labeled-graph?
- PM_MatchingProcess - How does the pattern-matching process work? (components involved)
- PM_Spec_AssociatingPathsToSchemaEdges - How to associate a schema-edge with the paths in the class-diagram it matched
Developer oriented
- MDT Javadoc (includes the UML2 javadoc)
- Calling Java code from Epsilon
- EOL Cheat-Sheet
- EOL-Java Types Mapping
- How to get the currently selected UML element in the diagram?
- UML2 Plug-in Tutorial (inc.: how to create a Class using Java)
