Skip to content

University project focused on modeling network architectures using Eclipse Modeling Framework (EMF). Includes components like gateways, routers, switches, VLANs, and WiFi access points. The project emphasizes the use of formal modeling techniques and OCL constraints to ensure consistency and accuracy in network representations.

License

Notifications You must be signed in to change notification settings

Alemato/Network-Architecture-EMF

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Commit Activity Last Commit License


Logo

Network Architecture Modeling with EMF

University project focused on modeling and simulating network architectures using the Eclipse Modeling Framework (EMF). The model captures key components of a network, such as gateways, routers, switches, VLANs, and WiFi access points, along with their properties and constraints. It includes support for various technologies like NAT, routing protocols, and wireless standards. The project emphasizes the use of formal modeling techniques and OCL constraints to ensure consistency and accuracy in network representations.
Explore all docs »

Table of Contents
  1. Project Overview
  2. Exam Requirements
  3. License

Network Architecture Modeling with EMF

The project aims to demonstrate the application of EMF in network modeling and provide a framework for analyzing network design, validating configurations, and generating code or simulations for real-world scenarios.

Developed as part of a university coursework in Model Driven Engineering at University of L'Aquila, this project highlights the use of advanced modeling tools and techniques in the domain of network systems.

Exam Requirements

Two Homeworks must be completed for the examination (EMF and OCL and Transformations). The requirements for each Homework are listed below

Homework A4 - EMF and OCL

This homework is about the use of the EMF platforms for modeling the domain defined in the previous works. In particular, it requires the realization of a number of tasks by using the following tools/notations:

  • Eclipse modeling Framework and plugins development;
  • Ecore metamodel and genmodel;
  • OCL in ecore.

Have a look at the code developed during the course https://github.com/MDE-Course-23-24/EMF-OCL-example

Task 1

Define a metamodel in Emfatic or EMF for describing your domain (as illustrated during the course) satisfying the following:

  • 9 metaclasses if the group is made of two candidates;
  • 12 metaclasses if the group is made of three candidates;

The metamodel must contain

  • inheritance;
  • relations, i.e., containment, non-containment, opposite (optional);
  • enumeration types, attributes;

Each metaclass has at least one attribute or reference; Singleton or isolated metaclasses are not allowed For the evaluation, we will consider:

  • Metamodel completeness and coverage;
  • Model consistency and homogeneity;
  • Coverage of technological assets (containment and bi-directional references, inheritance, enumeration types, custom data types, etc.).

Task 2

Create the genmodel file, generate Java APIs, and edit and editor plugin projects.

Task 3

Create a plugin project to interact with the model APIs: Please implement the following functionalities:

  • Create,
  • Serialiaze,
  • Load, and
  • Validate

models.

Task 3

Instantiate the metamodel by two concrete instances and ensure each concept (represented as metaclasses) at the metamodel level can be instantiated in your models.

Task 4

Define metamodel constraints (and “critiques” in the case of EVL), operation, and derived fields in OCL or EVL/EOL:

  • 3 constraints (critique and constraints) to validate models
  • 2 operations
  • 2 derived fields (only for OCL).

Homework A5 - Transformations

This homework is about the use of model transformations. It requires the realization of several tasks by using the following languages/frameworks: ATL and Acceleo.

Task 1

Apply different refactory operations on the metamodel defined in the Homework 1 - EMF and OCL to create an updated version. Those refinements should include:

  • Deletion and addition of concepts,
  • Concept renaming,
  • Structural refinements, for instance:
    • Adding/removing hierarchies,
    • adding/removing structural features (i.e., attributes and references)
    • Change attribute

In our vision, the refining steps should make it easy for you to implement task 3. At this stage, we will evaluate the complexity of the refining steps.

Task 2

Define an M2M transformation that allows the migration of models conforming to the initial metamodel version to the one refined in task 1. For this task, use ATL.

Task 3

Define an M2T transformation that generates informative HTML pages for a given domain. By resembling the demo implemented during the lectures, the M2T should generate at least an index page summarizing the model elements linked to informative details pages for the modeled concepts.

For this task, use Acceleo.

About

University project focused on modeling network architectures using Eclipse Modeling Framework (EMF). Includes components like gateways, routers, switches, VLANs, and WiFi access points. The project emphasizes the use of formal modeling techniques and OCL constraints to ensure consistency and accuracy in network representations.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •