Giter Site home page Giter Site logo

dice-simulation's Introduction

DICE-Simulation

Simulation tool for DICE.

The Simulation Tool in action

A demonstration video can be found at https://www.youtube.com/watch?v=lZX6IoHgHc0

Requirements

In order to execute simulations, the DICE Simulation Tool requires an installation of GreatSPN running on a Linux server and accessible via SSH. Fortunately, we provide a Docker image to execute GreatSPN, which can be executed in any of the supported platforms (Linux, Windows and MacOSX).

See https://docs.docker.com/get-docker/ for the Docker installation instructions.

Once you have Docker up and running in your system, simply start a docker image by running:

docker run --publish 2222:22 --env SSH_USERNAME=user --env SSH_USERPASS=password abelgomez/greatspn

After that, GreatSPN will be accessible via SSH on localhost, on port 2222, using the user user and the password password. See https://github.com/abelgomez/greatspn.docker for more details.

Compatibility between Eclipse versions and the DICE Simulation Tools

DICE Simulation Tool version Eclipse version name Eclipse version number Minimum Java Version Supported platforms
v0.1.x Eclipse Mars 4.5 Java 7 Windows, Linux, MacOS X (all 32 bits & 64 bits)
v0.2.x Eclipse Mars 4.5 Java 7 Windows, Linux, MacOS X (all 32 bits & 64 bits)
v0.3.x Eclipse Neon 4.6 Java 8 Windows, Linux, MacOS X (all 32 bits & 64 bits)
v0.4.x Eclipse Neon 4.6 Java 8 Windows, Linux, MacOS X (all 32 bits & 64 bits)
v0.5.x Eclipse Neon 4.6 Java 8 Windows, Linux, MacOS X (all 32 bits & 64 bits)
v0.6.x Eclipse Neon 4.6 Java 8 Windows, Linux, MacOS X (all 32 bits & 64 bits)
v0.7.x Eclipse 2020-12 4.18 Java 11 Windows, Linux, MacOS X (64 bits only)

Installing the Simulation Tools

In Eclipse, go to Help -> Install New Software... and use http://dice-project.github.io/DICE-Simulation/updates as the URL for the update site.

Archived Updates Sites

Building the Simulation Tool

To build the plugins and create an update site, simply execute:

mvn clean verify

The build process also includes test. Some of them, however, require a running GreatSPN instance. Tests requiring GreatSPN are disabled by default. Remember that you can use Docker. In such a case, first launch the GreatSPN instance as explained above, and then you can directly ask for the execution of the integration tests by running:

mvn clean verify -Pintegration-tests

If you changed any of the above configuration to run GreatSPN, you can update the connection data used for the tests by editing the file tests/es.unizar.disco.simulation.tests/src/test/resources/config.properties.

In order to prepare a new release, it is necessary to change the version of all plugins, features, and pom.xml files at a time. To do this, simply execute (where x.x.x must be replaced by the desired version number):

mvn clean tycho-versions:set-version -DnewVersion=x.x.x-SNAPSHOT

Summary of contents

es.unizar.disco.core

This project contains the Core plug-in.

The Core plug-in provides some utility clases for I/O, together with the shared logging capabilities.

es.unizar.disco.core.ui

This project contains the Core UI plug-in.

The Core UI plug-in provides UI components that are shared across the different plug-ins contained in this repository, such as file selection dialogs.

es.unizar.disco.pnconfig

This project contains the implementation of the Configuration Model as an EMF plug-in.

es.unizar.disco.pnml.m2m

This project implements the M2M tranformation from UML to PNML using QVTo.

es.unizar.disco.pnextensions

This project provides some utilities to handle some extensions in PNML models.

The PNML standard does not provide support for timed and stochastic petri nets.

Thus, this plug-in provides the utility methods to handle this information by using the ToolSpecifics tags provided by the PNML standard.

es.unizar.disco.pnml.m2t

This project contains the Acceleo transformation to convert a DICE-annotated PNML file to a set GreatSPN files.

es.unizar.disco.simulation.greatspn.ssh

This project contains the OSGi component that controls a remote GreatSPN instance by using SSH commands.

es.unizar.disco.simulation

This project contains the core component that executes a simulation by orchestrating the interactions among all the previous components.

es.unizar.disco.simulation.ui

This project contains the UI contributions that allow the users to invoke a simulation within the Eclipse GUI.

es.unizar.disco.ssh

This project provides a simple extension point contribution to access a remote host by issuing the connection data using a local file.

com.hierynomus.sshj

This project contains the sshj - SSHv2 library for Java as an OSGi-friendly bundle.

This module is required by es.unizar.disco.simulation.greatspn.ssh to access a remote GreatSPN instance using SSH/SFTP.

dice-simulation's People

Contributors

abelgomez avatar perezp avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.