JTL is an EMF-based tool that allows you to design and manipulate models, maintain consistency and synchronize software artifacts, keep traceability during design.
The JTL framework is based on the JTL plugin for the Eclipse Platform.
The overall architecture mainly exploits the Eclipse Modelling Framework (EMF). Moreover, the implementation of the constraint-based JTL engine relies on the DLV system that has been wrapped and integrated in the overall environment.
- Bidirectional model transformations
Create and manipulate your models by means of bidirectional model transformations that can be specified in a declarative manner
- Consistency and synchronization
Mantain consistency between models and propagate changes in both forward and backward directions
Maintain links between your models artifacts by means of the JTL traceability facility
- Solution space management
Keep under control your JTL execution by generating all the possible solution models according to your design.
- Design uncertainty
Handle uncertainty occuring at design-time by maintainting all the modeling alternative in a model with uncertainty.
- Constraint-based design decision
Specify your design decision in a very declarative manner by means of logical constraints.
Benchmarks and Case Studies
JTL has been applied to several case studies, including benchmarks for bidirectional transformations, real software applications, collaborative modeling, software architectures, etc.
Complex and Embedded Systems
JTL has been exploited in the management of complex systems (e.g., vehicular systems, real-time embedded systems, ...) for supporting design decisions and integration between design and runtime levels.
Performance and Dependability
JTL has been used for supporting round-trip engineering processes involving performance and dependabily analysis (e.g, Petri Nets, Queueing Networks, ...) of software system models.