Software Engineering Group

Entropy-based Architecture and Model Analysis

Models play an important role in software development and system operation. They are used for many different purposes including architecture models, adaptation plans, and runtime models. Their size, complexity, coupling, and cohesion have an impact on many uses of runtime models and on the evolution and adaptation of design time models and software. Therefore, it is necessary to measure these attributes and assess the model quality. Many approaches try to identify these attributes based on counting measures applied to the original artifacts. This has two downsides:

  1. Measurements are not comparable between metamodels.
  2. The measurement does not reflect the cognitive and computation effort necessary to process models.

Allen et al. (2007) introduced a information theory approach focusing the entropy of systems as the central measure for models. We present an extensible analysis tool realizing this measure and support a wide variety of input models.

Our tool supports an ever growing number of models and supports analysis graph visualizations.

Palladio Component Model presented as Aggregated Hypergraph. Line thinkness express the number of edges between nodes.

Supported Models

  • EMF/Ecore metamodels
  • GECO megamodels
  • Configurable analysis of Java projects
  • Behavior models of the Palladio Component Model (PCM)

Metrics

  • Hypergraph & Graph Complexity
  • Hypergraph & Graph Coupling
  • Graph Cohesion
  • McCabe Complexity of Java functions
  • Hypergraph & Graph Size in Nodes and Edges

Resources

 

Upcoming Events

  • May 24, 2021 09:00 AM to May 28, 2021 04:00 PM Virtual ICSE 2021
  • Aug 23, 2021 09:00 AM to Aug 27, 2021 04:00 PM Athens, Greece ESEC/FSE 2021
  • Sep 27, 2021 09:00 AM to Sep 28, 2021 04:00 PM Luxembourg VISSOFT 2021
  • Oct 04, 2021 09:00 AM to Oct 08, 2021 04:00 PM San Francisco IC2E 2021
  • Nov 15, 2021 09:00 AM to Nov 19, 2021 04:00 PM Melbourne ASE 2021
Research Projects

Teaching