Skip to content

vitruv-tools/Methodologist-Template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

85 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Methodologist Template Project

This project is a template for the methodologists who are creating a V-SUM.

Getting Started

The Methodologist Template can be executed using the Maven build system. The project comes with a maven wrapper, so you can run it without installing Maven. To build the project you can run the following command:

./mvnw clean verify

Verify that all tests are passing. The tests are located in the vsum folder. Now you can start to modify the project to your needs. Or jump to the Tutorial section to get a quick start. First we will explain what tests are run and what they are testing.

Tests

The tests test the vsum and its reactions. The goal is to ensure that the reactions are keeping the model consistent. Consider the following example taken from the VSUMExampleTest.java file:

@Test
  void systemInsertionAndPropagationTest(@TempDir Path tempDir) {
    VirtualModel vsum = createDefaultVirtualModel(tempDir);
    addSystem(vsum, tempDir);
    // assert that the directly added System is present
    Assertions.assertEquals(1, getDefaultView(vsum, List.of(System.class)).getRootObjects().size());
    // as well as the Root that should be created by the Reactions, see templateReactions.reactions#14
    Assertions.assertEquals(1, getDefaultView(vsum, List.of(Root.class)).getRootObjects().size());
  }

In this testcase a system is added to the vsum. The test checks that the system is present in the view and that a root object is created by the reaction. The reaction is defined in the consistency folder.

Tutorial

To dive into the project, we recommend to follow the Tutorial that is provided in this repository. The tutorial will guide you through the process of creating a V-SUM, adding systems, and defining reactions. It will also explain how to use the provided tools and features effectively.

Model

The model folder contains the meta-model in the ecore format. Note that each ecore file is accompanied by a genmodel. The genmodel is used to generate the code. If you update the ecore model, you need to update the genmodel. You can easily edit ecore models with the Eclipse Modeling Framework (EMF) in Eclipse. There you can also automatically update the genmodel. For more information on how to do that please refer to this Tutorial by Lars Vogel on EMF and ecore.

Consistency

This folder contains the consistency specifications, like reactions.

ViewType

This folder contains the definition of the view types. These are necessary to create views of the vsum.

Vsum

This folder contains the VSUM

Useful Links

Details about the build process and configurations can be found in the readmes of the relevant projects.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5

Languages