|
- Portable environment: fully written in Java
- Client Server architecture, using free Open Source components:
Apache server, MySQL database...
- Clients can be a Java application, or a Java applet
- Java RMI used by the Communication Layer
- A prototype of HTML wrapper for the communication layer
- Tools can communicate between different clients, or with components
on the server
|
Browser - Graphical manager |
|
- An Explorer to browse generically any model (any project)
- It can call Contextual Menus
- An Inspector to edit properties. With a specific inspector for graphical
properties
- An Edition Panel, which is a graphical editor
The physical graphical objects associated to each node can be customized, any
XML definition can be represented / edited graphically. One can associate different viewers to one frament of the model. Each viewer defines the associated graphical objects used to display the graphical view with the Browser.
|
Converters and Import Tools |
|
To import files into Mecasp, one can use a
converter to change
existing resources into an XML format, and then use a Mecasp generic import
tool to import this XML files into a Mecasp model.
Already built converters:
- Java to XML converter (can be used to convert a whole project hierarchy
with folders and files)
- NetBeans .form files to XML converter
- Oxygène++ files (4GL, screens, reports) to XML converters
Generic tools:
- An import tool, that can be used to import any XML file
- A database import tool, already tuned for MySQL database
|
Building Meta-Models and Models |
|
To build quickly new prototypes of meta-models, a tool has been written to
read any XML file and to generate the associated Mecasp Meta-model:
|
|
Source codes must be edited in a structured way, by reflecting all changes in
the associated model (the new state and the changes themselves are memorized). A
first source editor has been integrated into the Mecasp environment:
For databases, structures can be updated directly inside the Explorer, or by
using a graphical object:
Of course, as previously said, a generic tool can be used to edit models
graphically:
|
|
Mecasp models can be exported to regenerate physical resources:
- Regeneration of physical files: Java and NetBeans .form files are
regenerated, other files are today copied from their original version.
Generation of DDL definitions to update a physical database:
- Generation of DDL to rebuild a new database definition
- Generation of DDL to update an existing database structure
- Generation of DDL to update a database structure to an older state
|
Specific Models / Meta-Models |
|
Models used internally by Mecasp:
- The tree of versions
- Mecasp registry, containing definitions of users
Software related models:
- A Meta-Models to manage NetBeans projects is available
- Other definitions can already be imported: Oxygène++ files (4GL, screens,
reports), BML files, Thinlet ones...
|
Triggers / Actions / Scripting engines |
|
The behavior of Mecasp can be updated by coding triggers called when an
action is performed on a node. Triggers can be coded by using:
- Java language
- A scripting engine: BSF has been integrated, and Javascript is already
embedded.
Actions are coded in the same way, and can be added in a contextual menu of
the Explorer by adding only an XML statement in the model.
Actions can be called between clients, or between a client and a server.
|
Merger / Management of versions |
|
A tool can be used to track changes between versions, and to resolve
conflicts. Conflict resolution can be automated, or customized. The Merger can
merger any model, whatever are the represented data type (source code, database
structure a.s.o.).
This tool can be used for example to merge two different variants of a same
software to build a new variant, with all features of the two previous ones.
|
|
Used to associate access rights to users, for each action /
tools, to define
actions actions available for each node of the model.
|
|
- Search and Replace tool
- FTP client
- Configuration tools
- Look and Feel...
|