Skip to content

ftsrg/viatra-archive

Repository files navigation

VIATRA Archive

This repository contains the historical SVN archive of the VIATRA (Visual Automated Transformations) model transformation framework, historically co-developed at the Fault Tolerant Systems Research Group (FTSRG), Budapest University of Technology and Economics. The archive preserves the early development results from approximately 2004-2014, before the project migrated to Git and became Eclipse VIATRA.

🚀 Looking for Modern VIATRA?

This is a historical archive. For current development and usage, visit:

Historical Context

This archive represents the outcome of approximately 10 years of intensive research and development (2004-2014) in model-driven engineering. The project evolved from VIATRA2 (an early graph transformation framework) to include EMF-IncQuery (incremental query engine), which later became a successful standalone Eclipse project. Finally, EMF-IncQuery was re-merged into Eclipse VIATRA, a modern event-driven incremental model transformation framework for EMF.

  • 2004-2012: early VIATRA2 development, leading to VIATRA2 becoming subproject of the Eclipse GMT project
  • 2012-2014: EMF-IncQuery emergence as a standalone project for model querying
  • 2014-2016: IncQuery-VIATRA unification at Eclipse
  • 2016-present: Eclipse VIATRA as unified platform

Components from this archive have contributed to 60+ academic publications and several industrial case studies (see FTSRG Publication Pages and the comprehensive publication list). Key research areas that emerged from this work include:


Contributors

The list below is ordered by the total number of contributions (commits) in the original SVN repository.

Active Period: March 2008 - December 2012
Main Areas of Work:

  • Build system and infrastructure (build definitions, repositories)
  • Update site management
  • Eclipse integration components
  • Framework maintenance and updates

Active Period: February 2012 - December 2013
Main Areas of Work:

  • R script development and analytics
  • Model path finding algorithms
  • TrainBenchmark infrastructure
  • Metrics calculation and benchmarking
  • Instance model generators
  • Performance testing and validation scenarios
  • General development and maintenance

Active Period: November 2006 - September 2013
Main Areas of Work:

  • Plugin customization and configuration
  • Eclipse IDE integration (Package Explorer, Project Explorer)
  • Batch mode operations
  • Concept models and debugging support
  • Core framework improvements
  • Early project infrastructure setup

Active Period: July 2007 - November 2013
Main Areas of Work:

  • OCL2IQ transformer implementation
  • ASE pattern implementations (paramcircle, locals, references, etc.)
  • Java validators for various patterns
  • TrainBenchmark query development
  • Core pattern matching algorithms

Active Period: July 2009 - May 2013
Main Areas of Work:

  • UML importer features
  • Cloud example projects
  • IncQuery DSE (Design Space Exploration) core development
  • Engine and trigger engine improvements
  • VTCL (VIATRA Textual Command Language) integration

Active Period: September 2006 - December 2012
Main Areas of Work:

  • Petri net generator development
  • Sample project generation
  • Multiple genmodel support
  • Bug fixes and refactoring
  • Eclipse.org integration preparations
  • GT pattern debugging and model manipulation operations
  • Early core development work

Active Period: September 2006 - later periods
Main Areas of Work:

  • Recursive runtime implementation
  • Runtime exception handling
  • Early core development
  • Core algorithm development

Active Period: June 2013 - January 2014
Main Areas of Work:

  • TrainBenchmark mavenization and directory reorganization
  • Neo4j generator implementation
  • Titan/Cassandra/Rexster integration
  • Graph database connectors
  • FourStore project development
  • Benchmarking infrastructure

Active Period: July 2006 - August 2009
Main Areas of Work:

  • VTCL Parse Controller
  • Framework Service implementation
  • Machine manipulation APIs
  • Core framework architecture
  • Extension point definitions

10. Zoltan Balogh

Active Period: December 2007 - June 2010
Main Areas of Work:

  • Optxware benchmark development
  • Instance creation and management
  • Bug fixes and synchronization improvements

Active Period: October 2011 - November 2012
Main Areas of Work:

  • EMF-IncQuery renaming and refactoring
  • Dependency updates and management
  • Framework maintenance

Active Period: September 2007 - May 2010
Main Areas of Work:

  • VIATRA CommitTransaction development
  • Core framework bug fixes
  • Transaction management improvements

Active Period: October 2006 - February 2007
Main Areas of Work:

  • Plus function string handling
  • PrintLn functionality
  • Forall and choose rule implementations
  • ASMFunction updates and cleanup

Active Period: April 2012 - May 2013
Main Areas of Work:

  • ASE pattern development
  • SPARQL query implementations
  • Local variable sequence patterns
  • Paramcircle query development

Active Period: September 2007 - May 2009
Main Areas of Work:

  • Multiplicity support (source and target)
  • Aggregation support
  • Native function invocation fixes

16. Daniel Horvath

Active Period: September 2009 - January 2011
Main Areas of Work:

  • Graph transformation to stored procedure mapping
  • Trigger development for delete operations
  • Database integration work

Active Period: July 2006 - August 2007
Main Areas of Work:

  • Early core development
  • Undefined term bug fixes
  • Containment constraint implementation
  • Model element and relationship annotations

Active Period: April 2010 - May 2010
Main Areas of Work:

  • XML import functionality
  • FMES (Framework Model Element Structure) development
  • Code cleanup and documentation
  • Type checking implementation

Active Period: March 2011 - May 2011
Main Areas of Work:

  • SWTBot test development
  • Automatic layout algorithm testing
  • UI testing framework

Active Period: November 2011 - January 2012
Main Areas of Work:

  • Model repair rules for stochastic simulation
  • Pattern connectivity improvements
  • Multiplicity and parameter modifications

Active Period: November 2010 - January 2011
Main Areas of Work:

  • UML Importer modifications for Ganymede
  • OCL and AGSL parsing extensions
  • Native date functionality (from DECOS project)

Active Period: April 2008 - February 2009
Main Areas of Work:

  • Core framework contributions

23. Balint Kasza

Active Period: February 2008
Main Areas of Work:

  • XML support GUI development
  • XML support for VIATRA R3

24. Denes Monostori

Active Period: November 2009
Main Areas of Work:

  • Initial project imports

25. viatraguest

Additionally, the repository contains work done using a shared viatraguest account, mainly used by various collaborating researchers from the University of Leicester for experimental work on stochastic simulation.

Active Period: September 2009 - October 2012
Main Areas of Work:

  • Stochastic simulation models and experiments
  • Rule-based model transformations and probes
  • Abstract and concrete model development
  • Parameter configuration and testing
  • Virus infection modeling and biological simulations
  • Performance measurement and optimization

26. Andras Schmidt, David Vago

Andras Schmidt and David Vago are among the earliest contributors of VIATRA2. Their work was preserved without commit history in the original SVN repository, under the (/archive) folder.


Repository Structure Overview

The archive is organized into 12 main directories, each containing specific components and features of the VIATRA ecosystem:

viatra-archive/
├── archive/        # Historical and legacy components
├── core/           # Core VIATRA2 framework
├── devtools/       # Development tools
├── dse/            # Design Space Exploration
├── dsm/            # Domain-Specific Modeling
├── experimental/   # Research prototypes
├── importers/      # Model importers
├── incquery/       # EMF-IncQuery incremental query engine
├── releng/         # Release engineering
├── stochsim/       # Stochastic simulation
├── testing/        # Testing frameworks
└── transformations/ # Example transformations

📁 Browse the complete archive

Main Components

1. Core Framework (/core)

The heart of the "old" (pre-2014) VIATRA2, containing the main transformation engine and infrastructure.

Branches Notable Features

2. EMF-IncQuery (/incquery)

Advanced incremental query engine for EMF models, later became a standalone Eclipse project.

3. Experimental Features (/experimental)

87 projects across 22 functional areas exploring advanced capabilities:

Major Research Areas

Design Space Exploration for EMF (DSE4EMF)
  • org.eclipse.viatra2.emf.incquery.dse - DSE integration with EMF
  • Cloud optimization example - Complete cloud deployment optimization case study
Advanced Visualization
  • org.eclipse.viatra2.visualisation2 - Extensible visualization framework
  • Petri net, BPEL, GraphML visualizers - Domain-specific visualizations
  • Simulated annealing layout - Advanced layout algorithms
Graph Mining
  • hu.bme.mit.viatra.graphmining - Graph pattern mining with ParSeMiS integration
Static Analysis
  • org.eclipse.viatra2.gtasm.staticcheck - Static checker with CSP solvers
  • Gecode/SICStus Prolog integration - Constraint solving backends
Program Slicing
  • org.eclipse.viatra2.gtasm.slicing - GTASM program slicing for debugging
Database Support
  • hu.mit.bme.viatra2.db - Database persistence with MySQL/iBATIS
Native Functions
  • hu.bme.mit.viatra2.natives - Native string/date functions (Maven/Tycho)

4. Domain-Specific Modeling (/dsm)

Framework for creating domain-specific modeling environments.

5. Model Importers (/importers)

Comprehensive import support for various model formats.

6. Design Space Exploration (/dse)

Framework for exploring design alternatives.

7. Stochastic Simulation (/stochsim)

Stochastic graph transformation and simulation.

8. Testing Framework (/testing)

Comprehensive testing infrastructure.

9. Example Transformations (/transformations)

Rich collection of transformation examples and case studies:

Benchmarks

  • Ant colony simulation
  • Mutex protocols
  • Petri net execution
  • Sierpinski triangles
  • UML to relational database

Competition Submissions

  • MODELS 2009 - Model transformation contest
  • TTC 2010/2011 - Transformation Tool Contest entries
  • GraBaTs 2009 - Graph-Based Tools contest

Tutorials

  • ViatraLabSession - Educational materials
  • change_driven_xform - Change-driven examples
  • emf-qualityimprovement-2011 - Quality improvement patterns

10. Release Engineering (/releng)

Build and release management.

11. Development Tools (/devtools)

  • hu.bme.mit.inf.sourcedecorator - Copyright header management

12. Archive (/archive)

Historical (2004-2006) components and legacy versions, including:

  • Early EMF support implementations
  • Legacy testing frameworks
  • School domain examples
  • Feature definitions

About

A historic archive early development of VIATRA, from the pre-Eclipse era.

Topics

Resources

Stars

Watchers

Forks