<!DOCTYPE html>

<!--
 ! Copyright (c) 2017-2022 Robert Bosch GmbH and others.
 ! All rights reserved. This program and the accompanying materials 
 ! are made available under the terms of the Eclipse Public License 2.0
 ! which accompanies this distribution, and is available at
 ! https://www.eclipse.org/legal/epl-2.0/
 -->

<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>APP4MC 2.2.0 Documentation</title>
  <link rel="stylesheet" href="css/help.css" type="text/css">
  <link rel="stylesheet" href="css/frames.css" type="text/css">
  <link rel="stylesheet" href="css/toc-style.css" type="text/css">
</head>

<body>

  <div id="framecontent">
    <div class="innertube">

<!--  - - - - - - - -   Table of contents   - - - - - - - -  -->

<div class="toc-tree">
<ul>
<li><label class="leaf"><a href="#section1">Introduction to APP4MC</a></label></li>
<li><input type="checkbox" id="toc2" /><label for="toc2"><a href="#section2">User Guide</a></label>
<ul>
<li><input type="checkbox" id="toc2.1" /><label for="toc2.1"><a href="#section2.1">Introduction</a></label>
<ul>
<li><label class="leaf"><a href="#section2.1.1">Steps to create a new AMALTHEA model</a></label></li>
<li><input type="checkbox" id="toc2.1.2" /><label for="toc2.1.2"><a href="#section2.1.2">AMALTHEA Editor</a></label>
<ul>
<li><label class="leaf"><a href="#section2.1.2.1">Show types of model elements</a></label></li>
<li><label class="leaf"><a href="#section2.1.2.2">Search for model elements</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section2.1.3">Handling of multiple files (folder scope)</a></label></li>
<li><label class="leaf"><a href="#section2.1.4">AMALTHEA Examples</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.2" /><label for="toc2.2"><a href="#section2.2">Concepts</a></label>
<ul>
<li><input type="checkbox" id="toc2.2.1" /><label for="toc2.2.1"><a href="#section2.2.1">Timing in Amalthea Primer</a></label>
<ul>
<li><label class="leaf"><a href="#section2.2.1.1">Different Levels of Model Detail</a></label></li>
<li><label class="leaf"><a href="#section2.2.1.2">Discrete-Event Simulation</a></label></li>
<li><label class="leaf"><a href="#section2.2.1.3">Execution Time</a></label></li>
<li><label class="leaf"><a href="#section2.2.1.4">Data Accesses</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.2.2" /><label for="toc2.2.2"><a href="#section2.2.2">Hardware</a></label>
<ul>
<li><label class="leaf"><a href="#section2.2.2.1">Structural Modeling of Heterogeneous Platforms</a></label></li>
<li><label class="leaf"><a href="#section2.2.2.2">Recipe and Feature concept: An outlook of an upcoming approach</a></label></li>
<li><label class="leaf"><a href="#section2.2.2.3">General Hardware Model Overview</a></label></li>
<li><label class="leaf"><a href="#section2.2.2.4">Current implementation with features and the connection to the SW Model</a></label></li>
<li><label class="leaf"><a href="#section2.2.2.5">Interpretation of latencies in the model</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.2.3" /><label for="toc2.2.3"><a href="#section2.2.3">Software (development)</a></label>
<ul>
<li><label class="leaf"><a href="#section2.2.3.1">Runnables</a></label></li>
<li><label class="leaf"><a href="#section2.2.3.2">Process Prototypes</a></label></li>
<li><label class="leaf"><a href="#section2.2.3.3">Constraints</a></label></li>
<li><label class="leaf"><a href="#section2.2.3.4">Activations</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.2.4" /><label for="toc2.2.4"><a href="#section2.2.4">Software (runtime)</a></label>
<ul>
<li><input type="checkbox" id="toc2.2.4.1" /><label for="toc2.2.4.1"><a href="#section2.2.4.1">Processes (Tasks or ISRs)</a></label>
<ul>
<li><label class="leaf"><a href="#section2.2.4.1.1">Runnables</a></label></li>
<li><label class="leaf"><a href="#section2.2.4.1.2">Labels</a></label></li>
<li><label class="leaf"><a href="#section2.2.4.1.3">Semaphore</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section2.2.4.2">Stimulation</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.2.5" /><label for="toc2.2.5"><a href="#section2.2.5">General Concepts</a></label>
<ul>
<li><label class="leaf"><a href="#section2.2.5.1">Grouping of elements (Tags, Tag groups)</a></label></li>
<li><label class="leaf"><a href="#section2.2.5.2">Custom Properties</a></label></li>
<li><input type="checkbox" id="toc2.2.5.3" /><label for="toc2.2.5.3"><a href="#section2.2.5.3">Support of Packages  </a></label>
<ul>
<li><label class="leaf"><a href="#section2.2.5.3.1">Example of using Package</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.2.5.4" /><label for="toc2.2.5.4"><a href="#section2.2.5.4">Support of Namespaces   </a></label>
<ul>
<li><label class="leaf"><a href="#section2.2.5.4.1">Example of using Namespace</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc2.2.6" /><label for="toc2.2.6"><a href="#section2.2.6">Scheduling</a></label>
<ul>
<li><label class="leaf"><a href="#section2.2.6.1">Scheduler to Core assignment</a></label></li>
<li><label class="leaf"><a href="#section2.2.6.2">Task to Scheduler assignment</a></label></li>
<li><label class="leaf"><a href="#section2.2.6.3">Scheduler hierarchies</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.2.7" /><label for="toc2.2.7"><a href="#section2.2.7">Communication via channels</a></label>
<ul>
<li><label class="leaf"><a href="#section2.2.7.1">Channel</a></label></li>
<li><input type="checkbox" id="toc2.2.7.2" /><label for="toc2.2.7.2"><a href="#section2.2.7.2">Channel Access</a></label>
<ul>
<li><label class="leaf"><a href="#section2.2.7.2.1">Sending</a></label></li>
<li><label class="leaf"><a href="#section2.2.7.2.2">Receiving</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section2.2.7.3">Transmission Policy</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.2.8" /><label for="toc2.2.8"><a href="#section2.2.8">Data Dependencies</a></label>
<ul>
<li><label class="leaf"><a href="#section2.2.8.1">Overview</a></label></li>
<li><label class="leaf"><a href="#section2.2.8.2">Internal Dataflow</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.2.9" /><label for="toc2.2.9"><a href="#section2.2.9">Memory Sections</a></label>
<ul>
<li><label class="leaf"><a href="#section2.2.9.1">Virtual Memory Section</a></label></li>
<li><label class="leaf"><a href="#section2.2.9.2">Physical Memory Section</a></label></li>
<li><label class="leaf"><a href="#section2.2.9.3">Modeling Memory Section information in AMALTHEA</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc2.3" /><label for="toc2.3"><a href="#section2.3">Examples</a></label>
<ul>
<li><input type="checkbox" id="toc2.3.1" /><label for="toc2.3.1"><a href="#section2.3.1">Modeling Example 1</a></label>
<ul>
<li><label class="leaf"><a href="#section2.3.1.1">General information</a></label></li>
<li><label class="leaf"><a href="#section2.3.1.2">Hardware Model</a></label></li>
<li><label class="leaf"><a href="#section2.3.1.3">Operating System Model</a></label></li>
<li><input type="checkbox" id="toc2.3.1.4" /><label for="toc2.3.1.4"><a href="#section2.3.1.4">Mapping Model</a></label>
<ul>
<li><label class="leaf"><a href="#section2.3.1.4.1">Executable Allocation with Scheduling Parameters</a></label></li>
<li><label class="leaf"><a href="#section2.3.1.4.2">Core Allocation</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.3.1.5" /><label for="toc2.3.1.5"><a href="#section2.3.1.5">Software Model</a></label>
<ul>
<li><label class="leaf"><a href="#section2.3.1.5.1">Tasks</a></label></li>
<li><label class="leaf"><a href="#section2.3.1.5.2">Runnables</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section2.3.1.6">Stimuli Model</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.3.2" /><label for="toc2.3.2"><a href="#section2.3.2">Modeling Example 2</a></label>
<ul>
<li><label class="leaf"><a href="#section2.3.2.1">General information</a></label></li>
<li><label class="leaf"><a href="#section2.3.2.2">Hardware Model</a></label></li>
<li><label class="leaf"><a href="#section2.3.2.3">Operating System Model</a></label></li>
<li><input type="checkbox" id="toc2.3.2.4" /><label for="toc2.3.2.4"><a href="#section2.3.2.4">Mapping Model</a></label>
<ul>
<li><label class="leaf"><a href="#section2.3.2.4.1">Executable Allocation with Scheduling Parameters</a></label></li>
<li><label class="leaf"><a href="#section2.3.2.4.2">Core Allocation</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.3.2.5" /><label for="toc2.3.2.5"><a href="#section2.3.2.5">Software Model</a></label>
<ul>
<li><label class="leaf"><a href="#section2.3.2.5.1">Tasks</a></label></li>
<li><label class="leaf"><a href="#section2.3.2.5.2">Runnables</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section2.3.2.6">Stimulation Model</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section2.3.3">Modeling Example "Purely Periodic without Communication"</a></label></li>
<li><label class="leaf"><a href="#section2.3.4">Modeling Example "Client-Server without Reply"</a></label></li>
<li><label class="leaf"><a href="#section2.3.5">Modeling Example "State Machine"</a></label></li>
<li><label class="leaf"><a href="#section2.3.6">Modeling Example "Feedback Loop"</a></label></li>
<li><label class="leaf"><a href="#section2.3.7">Modeling Example "State Machine Feedback Loop"</a></label></li>
<li><input type="checkbox" id="toc2.3.8" /><label for="toc2.3.8"><a href="#section2.3.8">Democar Example</a></label>
<ul>
<li><label class="leaf"><a href="#section2.3.8.1">Origin</a></label></li>
<li><label class="leaf"><a href="#section2.3.8.2">Files</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section2.3.9">Hardware Examples</a></label></li>
<li><input type="checkbox" id="toc2.3.10" /><label for="toc2.3.10"><a href="#section2.3.10">Scheduler Examples</a></label>
<ul>
<li><label class="leaf"><a href="#section2.3.10.1">Hierarchical Scheduler</a></label></li>
<li><label class="leaf"><a href="#section2.3.10.2">Partitioned_FPP Scheduler</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.3.11" /><label for="toc2.3.11"><a href="#section2.3.11">Numeric Modes Example</a></label>
<ul>
<li><label class="leaf"><a href="#section2.3.11.1">Example description</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.3.12" /><label for="toc2.3.12"><a href="#section2.3.12">AMALTHEA Trace Database (ATDB) Example</a></label>
<ul>
<li><label class="leaf"><a href="#section2.3.12.1">Source BTF Trace</a></label></li>
<li><label class="leaf"><a href="#section2.3.12.2">Equivalent ATDB Contents</a></label></li>
<li><label class="leaf"><a href="#section2.3.12.3">Adding Event Chains</a></label></li>
<li><label class="leaf"><a href="#section2.3.12.4">Metrics on the Trace</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.3.13" /><label for="toc2.3.13"><a href="#section2.3.13">BTF Example (MultipleTaskActivationLimit 3)</a></label>
<ul>
<li><label class="leaf"><a href="#section2.3.13.1">State after timestamp 0</a></label></li>
<li><label class="leaf"><a href="#section2.3.13.2">State after timestamp 100</a></label></li>
<li><label class="leaf"><a href="#section2.3.13.3">State after timestamp 20000</a></label></li>
<li><label class="leaf"><a href="#section2.3.13.4">State after timestamp 40000</a></label></li>
<li><label class="leaf"><a href="#section2.3.13.5">State after timestamp 42000</a></label></li>
<li><label class="leaf"><a href="#section2.3.13.6">State after timestamp 42100</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc2.4" /><label for="toc2.4"><a href="#section2.4">Tutorials</a></label>
<ul>
<li><label class="leaf"><a href="#section2.4.1">BTF -> AMALTHEA Trace Database (ATDB) Import Example</a></label></li>
<li><label class="leaf"><a href="#section2.4.2">AMALTHEA Specification Parts to ATDB Import Example</a></label></li>
<li><label class="leaf"><a href="#section2.4.3">ATDB to AMALTHEA Model Transformation</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.5" /><label for="toc2.5"><a href="#section2.5">Editors / Viewers</a></label>
<ul>
<li><label class="leaf"><a href="#section2.5.1">AMALTHEA Trace Database Metrics Viewer</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.6" /><label for="toc2.6"><a href="#section2.6">Model Visualization</a></label>
<ul>
<li><label class="leaf"><a href="#section2.6.1">Usage of AMALTHEA Model Visualization</a></label></li>
<li><input type="checkbox" id="toc2.6.2" /><label for="toc2.6.2"><a href="#section2.6.2">Standard Visualizations</a></label>
<ul>
<li><label class="leaf"><a href="#section2.6.2.1">Hardware Model</a></label></li>
<li><label class="leaf"><a href="#section2.6.2.2">Software Model</a></label></li>
<li><label class="leaf"><a href="#section2.6.2.3">Runnable</a></label></li>
<li><label class="leaf"><a href="#section2.6.2.4">Deviation</a></label></li>
<li><label class="leaf"><a href="#section2.6.2.5">Mapping</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc2.7" /><label for="toc2.7"><a href="#section2.7">Model Validation</a></label>
<ul>
<li><label class="leaf"><a href="#section2.7.1">Usage of AMALTHEA Model Validation</a></label></li>
<li><input type="checkbox" id="toc2.7.2" /><label for="toc2.7.2"><a href="#section2.7.2">Included Validations</a></label>
<ul>
<li><label class="leaf"><a href="#section2.7.2.1">Amalthea Standard Validations</a></label></li>
<li><label class="leaf"><a href="#section2.7.2.2">APP4MC.sim Validations</a></label></li>
<li><label class="leaf"><a href="#section2.7.2.3">Timing Architects Validations</a></label></li>
<li><label class="leaf"><a href="#section2.7.2.4">Inchron Validations</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc2.8" /><label for="toc2.8"><a href="#section2.8">Model Migration</a></label>
<ul>
<li><input type="checkbox" id="toc2.8.1" /><label for="toc2.8.1"><a href="#section2.8.1">AMALTHEA Model Migration</a></label>
<ul>
<li><label class="leaf"><a href="#section2.8.1.1">Why model migration is required ?</a></label></li>
<li><label class="leaf"><a href="#section2.8.1.2">AMALTHEA model migration</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section2.8.2">Supported versions for model Migration</a></label></li>
<li><input type="checkbox" id="toc2.8.3" /><label for="toc2.8.3"><a href="#section2.8.3">Pre-requisites for AMALTHEA model migration</a></label>
<ul>
<li><label class="leaf"><a href="#section2.8.3.1">VM arguments</a></label></li>
<li><label class="leaf"><a href="#section2.8.3.2">Linked files in eclipse project (virtual files)</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc2.8.4" /><label for="toc2.8.4"><a href="#section2.8.4">How to invoke AMALTHEA model migration</a></label>
<ul>
<li><label class="leaf"><a href="#section2.8.4.1">Simple migration</a></label></li>
<li><label class="leaf"><a href="#section2.8.4.2">Migration dialog</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section2.8.5">Additional details</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc3" /><label for="toc3"><a href="#section3">Data Models</a></label>
<ul>
<li><input type="checkbox" id="toc3.1" /><label for="toc3.1"><a href="#section3.1">Model Overview</a></label>
<ul>
<li><label class="leaf"><a href="#section3.1.1">AMALTHEA System Model</a></label></li>
<li><label class="leaf"><a href="#section3.1.2">AMALTHEA Trace Model</a></label></li>
<li><label class="leaf"><a href="#section3.1.3">Structure of the model</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.2" /><label for="toc3.2"><a href="#section3.2">Model Basics</a></label>
<ul>
<li><label class="leaf"><a href="#section3.2.1">Custom Properties</a></label></li>
<li><label class="leaf"><a href="#section3.2.2">Time (and Time Unit)</a></label></li>
<li><label class="leaf"><a href="#section3.2.3">Frequency (and Frequency Unit)</a></label></li>
<li><label class="leaf"><a href="#section3.2.4">Data Size (and Data Size Unit)</a></label></li>
<li><label class="leaf"><a href="#section3.2.5">Data Rate (and Data Rate Unit)</a></label></li>
<li><input type="checkbox" id="toc3.2.6" /><label for="toc3.2.6"><a href="#section3.2.6">Deviation</a></label>
<ul>
<li><label class="leaf"><a href="#section3.2.6.1">Boundaries</a></label></li>
<li><label class="leaf"><a href="#section3.2.6.2">Uniform Distribution</a></label></li>
<li><label class="leaf"><a href="#section3.2.6.3">Gaussian/Normal Distribution</a></label></li>
<li><label class="leaf"><a href="#section3.2.6.4">Beta Distribution</a></label></li>
<li><label class="leaf"><a href="#section3.2.6.5">Weibull Distribution</a></label></li>
<li><label class="leaf"><a href="#section3.2.6.6">Histogram</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section3.2.7">Statistic Elements</a></label></li>
<li><label class="leaf"><a href="#section3.2.8">Ticks</a></label></li>
<li><label class="leaf"><a href="#section3.2.9">Counters</a></label></li>
<li><label class="leaf"><a href="#section3.2.10">Conditions</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.3" /><label for="toc3.3"><a href="#section3.3">Common Elements</a></label>
<ul>
<li><label class="leaf"><a href="#section3.3.1">Tags</a></label></li>
<li><label class="leaf"><a href="#section3.3.2">Classifiers</a></label></li>
<li><label class="leaf"><a href="#section3.3.3">Namespaces</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.4" /><label for="toc3.4"><a href="#section3.4">Components Model</a></label>
<ul>
<li><label class="leaf"><a href="#section3.4.1">Component Interfaces</a></label></li>
<li><label class="leaf"><a href="#section3.4.2">Architecture of Systems / Composites</a></label></li>
<li><input type="checkbox" id="toc3.4.3" /><label for="toc3.4.3"><a href="#section3.4.3">Components Model Elements</a></label>
<ul>
<li><label class="leaf"><a href="#section3.4.3.1">Component</a></label></li>
<li><label class="leaf"><a href="#section3.4.3.2">System and Composite</a></label></li>
<li><label class="leaf"><a href="#section3.4.3.3">ComponentInstance and Connector</a></label></li>
<li><label class="leaf"><a href="#section3.4.3.4">QualifiedPort</a></label></li>
<li><label class="leaf"><a href="#section3.4.3.5">ComponentPort</a></label></li>
<li><label class="leaf"><a href="#section3.4.3.6">Structures</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.4.4" /><label for="toc3.4.4"><a href="#section3.4.4">Example</a></label>
<ul>
<li><label class="leaf"><a href="#section3.4.4.1">Diagram</a></label></li>
<li><label class="leaf"><a href="#section3.4.4.2">Model Editor</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc3.5" /><label for="toc3.5"><a href="#section3.5">Configuration Model</a></label>
<ul>
<li><input type="checkbox" id="toc3.5.1" /><label for="toc3.5.1"><a href="#section3.5.1">Event Configuration</a></label>
<ul>
<li><label class="leaf"><a href="#section3.5.1.1">Sample</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc3.6" /><label for="toc3.6"><a href="#section3.6">Constraints Model</a></label>
<ul>
<li><label class="leaf"><a href="#section3.6.1">Requirements</a></label></li>
<li><label class="leaf"><a href="#section3.6.2">Runnable Sequencing Constraints</a></label></li>
<li><label class="leaf"><a href="#section3.6.3">Data Age Constraints</a></label></li>
<li><label class="leaf"><a href="#section3.6.4">Data Coherency Groups</a></label></li>
<li><label class="leaf"><a href="#section3.6.5">Data Stability Groups</a></label></li>
<li><label class="leaf"><a href="#section3.6.6">Event Chains</a></label></li>
<li><input type="checkbox" id="toc3.6.7" /><label for="toc3.6.7"><a href="#section3.6.7">Timing Constraints</a></label>
<ul>
<li><label class="leaf"><a href="#section3.6.7.1">Synchronization Constraints</a></label></li>
<li><label class="leaf"><a href="#section3.6.7.2">Repetition Constraint</a></label></li>
<li><label class="leaf"><a href="#section3.6.7.3">Delay Constraint</a></label></li>
<li><label class="leaf"><a href="#section3.6.7.4">Event Chain Latency Constraint</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.6.8" /><label for="toc3.6.8"><a href="#section3.6.8">Affinity Constraints</a></label>
<ul>
<li><label class="leaf"><a href="#section3.6.8.1">Data Affinity Constraints</a></label></li>
<li><label class="leaf"><a href="#section3.6.8.2">Process Affinity Constraints</a></label></li>
<li><label class="leaf"><a href="#section3.6.8.3">Runnable Affinity Constraints</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section3.6.9">Physical Section Constraints</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.7" /><label for="toc3.7"><a href="#section3.7">Event Model</a></label>
<ul>
<li><label class="leaf"><a href="#section3.7.1">Entity Events</a></label></li>
<li><label class="leaf"><a href="#section3.7.2">Trigger Events</a></label></li>
<li><label class="leaf"><a href="#section3.7.3">Process Events</a></label></li>
<li><label class="leaf"><a href="#section3.7.4">Details</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.8" /><label for="toc3.8"><a href="#section3.8">Hardware Model</a></label>
<ul>
<li><input type="checkbox" id="toc3.8.1" /><label for="toc3.8.1"><a href="#section3.8.1">Class Diagrams</a></label>
<ul>
<li><label class="leaf"><a href="#section3.8.1.1">Hardware model elements</a></label></li>
<li><label class="leaf"><a href="#section3.8.1.2">Hardware definitions and features</a></label></li>
<li><label class="leaf"><a href="#section3.8.1.3">Hardware modules and access elements</a></label></li>
<li><label class="leaf"><a href="#section3.8.1.4">Hardware paths and destinations</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.8.2" /><label for="toc3.8.2"><a href="#section3.8.2">Element description</a></label>
<ul>
<li><label class="leaf"><a href="#section3.8.2.1">HwModel</a></label></li>
<li><input type="checkbox" id="toc3.8.2.2" /><label for="toc3.8.2.2"><a href="#section3.8.2.2">HwDefinition</a></label>
<ul>
<li><label class="leaf"><a href="#section3.8.2.2.1">ProcessingUnitDefinition</a></label></li>
<li><label class="leaf"><a href="#section3.8.2.2.2">MemoryDefinition</a></label></li>
<li><label class="leaf"><a href="#section3.8.2.2.3">CacheDefinition</a></label></li>
<li><label class="leaf"><a href="#section3.8.2.2.4">ConnectionHandlerDefinition</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section3.8.2.3">HwStructure</a></label></li>
<li><input type="checkbox" id="toc3.8.2.4" /><label for="toc3.8.2.4"><a href="#section3.8.2.4">HwDomain</a></label>
<ul>
<li><label class="leaf"><a href="#section3.8.2.4.1">FrequencyDomain</a></label></li>
<li><label class="leaf"><a href="#section3.8.2.4.2">PowerDomain</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.8.2.5" /><label for="toc3.8.2.5"><a href="#section3.8.2.5">HwFeature</a></label>
<ul>
<li><label class="leaf"><a href="#section3.8.2.5.1">HwFeatureCategory</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.8.2.6" /><label for="toc3.8.2.6"><a href="#section3.8.2.6">HwModule</a></label>
<ul>
<li><label class="leaf"><a href="#section3.8.2.6.1">ProcessingUnit</a></label></li>
<li><label class="leaf"><a href="#section3.8.2.6.2">Memory</a></label></li>
<li><label class="leaf"><a href="#section3.8.2.6.3">Cache</a></label></li>
<li><label class="leaf"><a href="#section3.8.2.6.4">ConnectionHandler</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section3.8.2.7">HwAccessElement</a></label></li>
<li><label class="leaf"><a href="#section3.8.2.8">HwPort</a></label></li>
<li><label class="leaf"><a href="#section3.8.2.9">HwConnection</a></label></li>
<li><label class="leaf"><a href="#section3.8.2.10">HwAccessPath</a></label></li>
<li><label class="leaf"><a href="#section3.8.2.11">Enumerations</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc3.9" /><label for="toc3.9"><a href="#section3.9">Mapping Model</a></label>
<ul>
<li><input type="checkbox" id="toc3.9.1" /><label for="toc3.9.1"><a href="#section3.9.1">Overview</a></label>
<ul>
<li><label class="leaf"><a href="#section3.9.1.1">MappingModel</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.9.2" /><label for="toc3.9.2"><a href="#section3.9.2">Allocations</a></label>
<ul>
<li><label class="leaf"><a href="#section3.9.2.1">SchedulerAllocation</a></label></li>
<li><label class="leaf"><a href="#section3.9.2.2">RunnableAllocation</a></label></li>
<li><label class="leaf"><a href="#section3.9.2.3">TaskAllocation</a></label></li>
<li><label class="leaf"><a href="#section3.9.2.4">ISRAllocation</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.9.3" /><label for="toc3.9.3"><a href="#section3.9.3">Mappings</a></label>
<ul>
<li><label class="leaf"><a href="#section3.9.3.1">MemoryMapping</a></label></li>
<li><label class="leaf"><a href="#section3.9.3.2">PhysicalSectionMapping</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc3.10" /><label for="toc3.10"><a href="#section3.10">OS Model</a></label>
<ul>
<li><label class="leaf"><a href="#section3.10.1">Operating System</a></label></li>
<li><input type="checkbox" id="toc3.10.2" /><label for="toc3.10.2"><a href="#section3.10.2">Scheduler, Scheduler Definitions, and their Parameters</a></label>
<ul>
<li><label class="leaf"><a href="#section3.10.2.1">Scheduler Definition</a></label></li>
<li><label class="leaf"><a href="#section3.10.2.2">Scheduling Parameter Definition and Scheduling Parameter</a></label></li>
<li><input type="checkbox" id="toc3.10.2.3" /><label for="toc3.10.2.3"><a href="#section3.10.2.3">Standard Scheduler Definitions</a></label>
<ul>
<li><label class="leaf"><a href="#section3.10.2.3.1">Further information</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section3.10.2.4">Scheduler Association</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.10.3" /><label for="toc3.10.3"><a href="#section3.10.3">Os Overhead</a></label>
<ul>
<li><label class="leaf"><a href="#section3.10.3.1">ISR Overhead</a></label></li>
<li><label class="leaf"><a href="#section3.10.3.2">API Overhead</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section3.10.4">OS Data Consistency</a></label></li>
<li><label class="leaf"><a href="#section3.10.5">Semaphore</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.11" /><label for="toc3.11"><a href="#section3.11">PropertyConstraints Model</a></label>
<ul>
<li><label class="leaf"><a href="#section3.11.1">Structure</a></label></li>
<li><input type="checkbox" id="toc3.11.2" /><label for="toc3.11.2"><a href="#section3.11.2">CoreAllocationConstraint</a></label>
<ul>
<li><label class="leaf"><a href="#section3.11.2.1">RunnableAllocationConstraint</a></label></li>
<li><label class="leaf"><a href="#section3.11.2.2">ProcessAllocationConstraint</a></label></li>
<li><label class="leaf"><a href="#section3.11.2.3">ProcessPrototypeAllocationConstraint</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.11.3" /><label for="toc3.11.3"><a href="#section3.11.3">MemoryMappingConstraint</a></label>
<ul>
<li><label class="leaf"><a href="#section3.11.3.1">AbstractElementMappingConstraint</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section3.11.4">Classifications</a></label></li>
<li><label class="leaf"><a href="#section3.11.5">Example</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.12" /><label for="toc3.12"><a href="#section3.12">Stimuli Model</a></label>
<ul>
<li><input type="checkbox" id="toc3.12.1" /><label for="toc3.12.1"><a href="#section3.12.1">Stimuli</a></label>
<ul>
<li><label class="leaf"><a href="#section3.12.1.1">Single</a></label></li>
<li><label class="leaf"><a href="#section3.12.1.2">Arrival Curves</a></label></li>
<li><label class="leaf"><a href="#section3.12.1.3">Common properties of fixed periodic stimuli</a></label></li>
<li><label class="leaf"><a href="#section3.12.1.4">Periodic </a></label></li>
<li><label class="leaf"><a href="#section3.12.1.5">PeriodicSynthetic</a></label></li>
<li><label class="leaf"><a href="#section3.12.1.6">PeriodicBurst</a></label></li>
<li><label class="leaf"><a href="#section3.12.1.7">RelativePeriodic </a></label></li>
<li><label class="leaf"><a href="#section3.12.1.8">VariableRateStimulus</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.12.2" /><label for="toc3.12.2"><a href="#section3.12.2">Clocks</a></label>
<ul>
<li><label class="leaf"><a href="#section3.12.2.1">ClockFunction</a></label></li>
<li><label class="leaf"><a href="#section3.12.2.2">ClockStepList</a></label></li>
<li><label class="leaf"><a href="#section3.12.2.3">Example</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section3.12.3">Mode Value List and Execution Condition</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.13" /><label for="toc3.13"><a href="#section3.13">Software Model</a></label>
<ul>
<li><label class="leaf"><a href="#section3.13.1">Memory Information</a></label></li>
<li><label class="leaf"><a href="#section3.13.2">Labels</a></label></li>
<li><label class="leaf"><a href="#section3.13.3">Channels</a></label></li>
<li><input type="checkbox" id="toc3.13.4" /><label for="toc3.13.4"><a href="#section3.13.4">Data Types</a></label>
<ul>
<li><label class="leaf"><a href="#section3.13.4.1">General Information</a></label></li>
<li><label class="leaf"><a href="#section3.13.4.2">Sample</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section3.13.5">Activations</a></label></li>
<li><label class="leaf"><a href="#section3.13.6">Tasks / ISR</a></label></li>
<li><label class="leaf"><a href="#section3.13.7">Runnables and Services</a></label></li>
<li><label class="leaf"><a href="#section3.13.8">Runnables</a></label></li>
<li><label class="leaf"><a href="#section3.13.9">Activity Graph</a></label></li>
<li><input type="checkbox" id="toc3.13.10" /><label for="toc3.13.10"><a href="#section3.13.10">Activity Graph Items</a></label>
<ul>
<li><label class="leaf"><a href="#section3.13.10.1">Groups</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.2">While Loop</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.3">Switch</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.4">Probability Switch</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.5">Ticks</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.6">Execution Need</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.7">Calls and AUTOSAR communication</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.8">Label Access</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.9">Channel Access</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.10">Semaphore Access</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.11">Mode Label Access</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.12">Custom Event Trigger</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.13">Enforced Migration</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.14">Inter Process Trigger</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.15">Schedule Point</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.16">Terminate Process</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.17">Wait/Clear/Set Event</a></label></li>
<li><label class="leaf"><a href="#section3.13.10.18">Statistical Values</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section3.13.11">Modes</a></label></li>
<li><input type="checkbox" id="toc3.13.12" /><label for="toc3.13.12"><a href="#section3.13.12">Mode Labels</a></label>
<ul>
<li><label class="leaf"><a href="#section3.13.12.1">Mode Changes</a></label></li>
<li><label class="leaf"><a href="#section3.13.12.2">Mode Conditions</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc3.13.13" /><label for="toc3.13.13"><a href="#section3.13.13">Local Mode Labels</a></label>
<ul>
<li><label class="leaf"><a href="#section3.13.13.1">Local Mode Label Assignment</a></label></li>
<li><label class="leaf"><a href="#section3.13.13.2">Local Mode Conditions</a></label></li>
<li><label class="leaf"><a href="#section3.13.13.3">Local mode label examples</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section3.13.14">Process Prototypes</a></label></li>
<li><label class="leaf"><a href="#section3.13.15">Process Chains</a></label></li>
<li><label class="leaf"><a href="#section3.13.16">Custom Entities</a></label></li>
<li><label class="leaf"><a href="#section3.13.17">Section</a></label></li>
<li><input type="checkbox" id="toc3.13.18" /><label for="toc3.13.18"><a href="#section3.13.18">Data Dependencies and Runnable Parameters</a></label>
<ul>
<li><label class="leaf"><a href="#section3.13.18.1">Overview</a></label></li>
<li><label class="leaf"><a href="#section3.13.18.2">Elements with data dependency</a></label></li>
<li><label class="leaf"><a href="#section3.13.18.3">Data Dependency</a></label></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc4" /><label for="toc4"><a href="#section4">Developer Guide</a></label>
<ul>
<li><input type="checkbox" id="toc4.1" /><label for="toc4.1"><a href="#section4.1">Overview of Features and Plug-ins</a></label>
<ul>
<li><label class="leaf"><a href="#section4.1.1">Features</a></label></li>
<li><label class="leaf"><a href="#section4.1.2">Plug-ins</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc4.2" /><label for="toc4.2"><a href="#section4.2">Model Visualization</a></label>
<ul>
<li><label class="leaf"><a href="#section4.2.1">Visualization framework</a></label></li>
<li><label class="leaf"><a href="#section4.2.2">Contributing a new model visualization</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc4.3" /><label for="toc4.3"><a href="#section4.3">Model Validation</a></label>
<ul>
<li><label class="leaf"><a href="#section4.3.1">Validation framework</a></label></li>
<li><label class="leaf"><a href="#section4.3.2">Validations</a></label></li>
<li><label class="leaf"><a href="#section4.3.3">Profiles</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc4.4" /><label for="toc4.4"><a href="#section4.4">Model Workflow</a></label>
<ul>
<li><label class="leaf"><a href="#section4.4.1">Introduction</a></label></li>
<li><label class="leaf"><a href="#section4.4.2">General Structure</a></label></li>
<li><input type="checkbox" id="toc4.4.3" /><label for="toc4.4.3"><a href="#section4.4.3">Available Basic Components</a></label>
<ul>
<li><label class="leaf"><a href="#section4.4.3.1">Model Reader</a></label></li>
<li><label class="leaf"><a href="#section4.4.3.2">Model Writer</a></label></li>
<li><label class="leaf"><a href="#section4.4.3.3">Add Schedule Points</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc4.4.4" /><label for="toc4.4.4"><a href="#section4.4.4">EASE modules</a></label>
<ul>
<li><label class="leaf"><a href="#section4.4.4.1">Workflow Module</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc4.4.5" /><label for="toc4.4.5"><a href="#section4.4.5">MWE2 Workflow</a></label>
<ul>
<li><input type="checkbox" id="toc4.4.5.1" /><label for="toc4.4.5.1"><a href="#section4.4.5.1">MWE2 Components</a></label>
<ul>
<li><label class="leaf"><a href="#section4.4.5.1.1">Reader</a></label></li>
<li><label class="leaf"><a href="#section4.4.5.1.2">Writer</a></label></li>
<li><label class="leaf"><a href="#section4.4.5.1.3">Add Schedule Points</a></label></li>
</ul>
</li>
</ul>
</li>
<li><label class="leaf"><a href="#section4.4.6">Current Limitations / Open Points</a></label></li>
<li><label class="leaf"><a href="#section4.4.7">Adding a new workflow component</a></label></li>
<li><input type="checkbox" id="toc4.4.8" /><label for="toc4.4.8"><a href="#section4.4.8">Create project</a></label>
<ul>
<li><label class="leaf"><a href="#section4.4.8.1">Execute the new component in the available sample</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc4.5" /><label for="toc4.5"><a href="#section4.5">Model Migration</a></label>
<ul>
<li><label class="leaf"><a href="#section4.5.1">Technologies used</a></label></li>
<li><label class="leaf"><a href="#section4.5.2">Framework for model migration</a></label></li>
<li><input type="checkbox" id="toc4.5.3" /><label for="toc4.5.3"><a href="#section4.5.3">Components of Model Migration Framework</a></label>
<ul>
<li><label class="leaf"><a href="#section4.5.3.1">Model migration sequence</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc4.5.4" /><label for="toc4.5.4"><a href="#section4.5.4">AMALTHEA meta model changes</a></label>
<ul>
<li><label class="leaf"><a href="#section4.5.4.1">Version APP4MC 2.0.0 to APP4MC 2.1.0</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.2">Version APP4MC 1.2.0 to APP4MC 2.0.0</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.3">Version APP4MC 1.1.0 to APP4MC 1.2.0</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.4">Version APP4MC 1.0.0 to APP4MC 1.1.0</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.5">Version APP4MC 0.9.9 to APP4MC 1.0.0</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.6">Version APP4MC 0.9.8 to APP4MC 0.9.9</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.7">Version APP4MC 0.9.7 to APP4MC 0.9.8</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.8">Version APP4MC 0.9.6 to APP4MC 0.9.7</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.9">Version APP4MC 0.9.5 to APP4MC 0.9.6</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.10">Version APP4MC 0.9.4 to APP4MC 0.9.5</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.11">Version APP4MC 0.9.3 to APP4MC 0.9.4</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.12">Version APP4MC 0.9.2 to APP4MC 0.9.3</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.13">Version APP4MC 0.9.1 to APP4MC 0.9.2</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.14">Version APP4MC 0.9.0 to APP4MC 0.9.1</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.15">Version APP4MC 0.8.3 to APP4MC 0.9.0</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.16">Version APP4MC 0.8.2 to APP4MC 0.8.3</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.17">Version APP4MC 0.8.1 to APP4MC 0.8.2</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.18">Version APP4MC 0.8.0 to APP4MC 0.8.1</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.19">Version APP4MC 0.7.2 to APP4MC 0.8.0</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.20">Version APP4MC 0.7.1 to APP4MC 0.7.2</a></label></li>
<li><label class="leaf"><a href="#section4.5.4.21">Version APP4MC 0.7.0 to APP4MC 0.7.1</a></label></li>
</ul>
</li>
</ul>
</li>
<li><label class="leaf"><a href="#section4.6">Model Utilities</a></label></li>
<li><input type="checkbox" id="toc4.7" /><label for="toc4.7"><a href="#section4.7">Model Details</a></label>
<ul>
<li><label class="leaf"><a href="#section4.7.1">Qualified name</a></label></li>
<li><label class="leaf"><a href="#section4.7.2">Unique ID generation</a></label></li>
<li><label class="leaf"><a href="#section4.7.3">Interfaces and base objects</a></label></li>
<li><label class="leaf"><a href="#section4.7.4">Derived references</a></label></li>
<li><input type="checkbox" id="toc4.7.5" /><label for="toc4.7.5"><a href="#section4.7.5">Transient back pointers</a></label>
<ul>
<li><label class="leaf"><a href="#section4.7.5.1">Container references</a></label></li>
<li><label class="leaf"><a href="#section4.7.5.2">References (via inverse index)</a></label></li>
<li><label class="leaf"><a href="#section4.7.5.3">Implementation</a></label></li>
<li><label class="leaf"><a href="#section4.7.5.4">User Interface</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc4.8" /><label for="toc4.8"><a href="#section4.8">AMALTHEA Model Definition</a></label>
<ul>
<li><label class="leaf"><a href="#section4.8.1">Ecore</a></label></li>
<li><label class="leaf"><a href="#section4.8.2">XML Schema Definition (XSD)</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc4.9" /><label for="toc4.9"><a href="#section4.9">AMALTHEA Trace Database</a></label>
<ul>
<li><input type="checkbox" id="toc4.9.1" /><label for="toc4.9.1"><a href="#section4.9.1">Database Structure</a></label>
<ul>
<li><input type="checkbox" id="toc4.9.1.1" /><label for="toc4.9.1.1"><a href="#section4.9.1.1">Core Tables</a></label>
<ul>
<li><label class="leaf"><a href="#section4.9.1.1.1">MetaInformation</a></label></li>
<li><label class="leaf"><a href="#section4.9.1.1.2">Entity</a></label></li>
<li><label class="leaf"><a href="#section4.9.1.1.3">EntityType</a></label></li>
<li><label class="leaf"><a href="#section4.9.1.1.4">EntityInstance</a></label></li>
<li><label class="leaf"><a href="#section4.9.1.1.5">EventType</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc4.9.1.2" /><label for="toc4.9.1.2"><a href="#section4.9.1.2">Auxillary Data Tables</a></label>
<ul>
<li><label class="leaf"><a href="#section4.9.1.2.1">Property</a></label></li>
<li><label class="leaf"><a href="#section4.9.1.2.2">PropertyValue</a></label></li>
<li><label class="leaf"><a href="#section4.9.1.2.3">Event</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc4.9.1.3" /><label for="toc4.9.1.3"><a href="#section4.9.1.3">Metric Tables</a></label>
<ul>
<li><label class="leaf"><a href="#section4.9.1.3.1">Metric</a></label></li>
<li><label class="leaf"><a href="#section4.9.1.3.2">EntityMetricValue</a></label></li>
<li><label class="leaf"><a href="#section4.9.1.3.3">EntityInstaneMetricValue</a></label></li>
<li><label class="leaf"><a href="#section4.9.1.3.4">EntityMetricInstanceValue</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc4.9.1.4" /><label for="toc4.9.1.4"><a href="#section4.9.1.4">Optional Tables</a></label>
<ul>
<li><label class="leaf"><a href="#section4.9.1.4.1">TraceEvent</a></label></li>
<li><label class="leaf"><a href="#section4.9.1.4.2">RunnableInstanceTraceInfo</a></label></li>
<li><label class="leaf"><a href="#section4.9.1.4.3">ProcessInstanceTraceInfo</a></label></li>
<li><label class="leaf"><a href="#section4.9.1.4.4">EventChainInstanceInfo</a></label></li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc4.9.2" /><label for="toc4.9.2"><a href="#section4.9.2">Database Views</a></label>
<ul>
<li><label class="leaf"><a href="#section4.9.2.1">Core Views</a></label></li>
<li><input type="checkbox" id="toc4.9.2.2" /><label for="toc4.9.2.2"><a href="#section4.9.2.2">Auxillary Data Views</a></label>
<ul>
<li><label class="leaf"><a href="#section4.9.2.2.1">vProperty</a></label></li>
<li><label class="leaf"><a href="#section4.9.2.2.2">vEvent</a></label></li>
<li><label class="leaf"><a href="#section4.9.2.2.3">vEventChainEntity</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc4.9.2.3" /><label for="toc4.9.2.3"><a href="#section4.9.2.3">Metric Views</a></label>
<ul>
<li><label class="leaf"><a href="#section4.9.2.3.1">vEntityMetricValue</a></label></li>
<li><label class="leaf"><a href="#section4.9.2.3.2">vEntityInstanceMetricValue</a></label></li>
<li><label class="leaf"><a href="#section4.9.2.3.3">vEntityMetricInstanceValue</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc4.9.2.4" /><label for="toc4.9.2.4"><a href="#section4.9.2.4">Optional Views</a></label>
<ul>
<li><label class="leaf"><a href="#section4.9.2.4.1">vTraceEvent</a></label></li>
<li><label class="leaf"><a href="#section4.9.2.4.2">vRunnableInstanceRuntimeTraceEvent</a></label></li>
<li><label class="leaf"><a href="#section4.9.2.4.3">vProcessInstanceRuntimeTraceEvent</a></label></li>
<li><label class="leaf"><a href="#section4.9.2.4.4">vRunnableInstanceTraceInfo/vProcessInstanceTraceInfo</a></label></li>
<li><label class="leaf"><a href="#section4.9.2.4.5">vEventChainInstanceInfo</a></label></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" id="toc5" /><label for="toc5"><a href="#section5">Platform Extensions</a></label>
<ul>
<li><input type="checkbox" id="toc5.1" /><label for="toc5.1"><a href="#section5.1">Overview</a></label>
<ul>
<li><label class="leaf"><a href="#section5.1.1">Available Extensions</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc5.2" /><label for="toc5.2"><a href="#section5.2">EMF Model Viewers</a></label>
<ul>
<li><label class="leaf"><a href="#section5.2.1">Meta Model Explorer</a></label></li>
<li><label class="leaf"><a href="#section5.2.2">Graphical Viewer</a></label></li>
<li><label class="leaf"><a href="#section5.2.3">Installation via P2 update site</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc5.3" /><label for="toc5.3"><a href="#section5.3">Additional Examples</a></label>
<ul>
<li><label class="leaf"><a href="#section5.3.1">IDE Extensions</a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc5.4" /><label for="toc5.4"><a href="#section5.4">Model Transformation</a></label>
<ul>
<li><label class="leaf"><a href="#section5.4.1">Transformation Framework</a></label></li>
<li><label class="leaf"><a href="#section5.4.2">Generation of synthetic loads</a></label></li>
<li><label class="leaf"><a href="#section5.4.3">Generation of SystemC code for simulation</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section5.5">SystemC Timing Simulation  </a></label></li>
</ul>
</li>
<li><input type="checkbox" id="toc6" /><label for="toc6"><a href="#section6">Release Notes</a></label>
<ul>
<li><label class="leaf"><a href="#section6.1">Eclipse APP4MC 2.2.0 (Jul 2022)</a></label></li>
<li><label class="leaf"><a href="#section6.2">Eclipse APP4MC 2.1.0 (Apr 2022)</a></label></li>
<li><label class="leaf"><a href="#section6.3">Eclipse APP4MC 2.0.0 (Nov 2021)</a></label></li>
<li><label class="leaf"><a href="#section6.4">Eclipse APP4MC 1.2.0 (Jul 2021)</a></label></li>
<li><label class="leaf"><a href="#section6.5">Eclipse APP4MC 1.1.0 (Apr 2021)</a></label></li>
<li><label class="leaf"><a href="#section6.6">Eclipse APP4MC 1.0.0 (Nov 2020)</a></label></li>
<li><label class="leaf"><a href="#section6.7">Eclipse APP4MC 0.9.9 (Jul 2020)</a></label></li>
<li><label class="leaf"><a href="#section6.8">Eclipse APP4MC 0.9.8 (Apr 2020)</a></label></li>
<li><label class="leaf"><a href="#section6.9">Eclipse APP4MC 0.9.7 (Jan 2020)</a></label></li>
<li><label class="leaf"><a href="#section6.10">Eclipse APP4MC 0.9.6 (Oct 2019)</a></label></li>
<li><label class="leaf"><a href="#section6.11">Eclipse APP4MC 0.9.5 (Jul 2019)</a></label></li>
<li><label class="leaf"><a href="#section6.12">Eclipse APP4MC 0.9.4 (Apr 2019)</a></label></li>
<li><label class="leaf"><a href="#section6.13">Eclipse APP4MC 0.9.3 (Jan 2019)</a></label></li>
<li><label class="leaf"><a href="#section6.14">Eclipse APP4MC 0.9.2 (Oct 2018)</a></label></li>
<li><label class="leaf"><a href="#section6.15">Eclipse APP4MC 0.9.1 (Jul 2018)</a></label></li>
<li><label class="leaf"><a href="#section6.16">Eclipse APP4MC 0.9.0 (Apr 2018)</a></label></li>
<li><label class="leaf"><a href="#section6.17">Eclipse APP4MC 0.8.3 (Jan 2018)</a></label></li>
<li><label class="leaf"><a href="#section6.18">Eclipse APP4MC 0.8.2 (Oct 2017)</a></label></li>
<li><label class="leaf"><a href="#section6.19">Eclipse APP4MC 0.8.1 (Jul 2017)</a></label></li>
<li><label class="leaf"><a href="#section6.20">Eclipse APP4MC 0.8.0 (Apr 2017)</a></label></li>
<li><label class="leaf"><a href="#section6.21">Eclipse APP4MC 0.7.2 (Jan 2017)</a></label></li>
<li><label class="leaf"><a href="#section6.22">Eclipse APP4MC 0.7.1 (Oct 2016)</a></label></li>
<li><label class="leaf"><a href="#section6.23">Eclipse APP4MC 0.7.0 (Jul 2016)</a></label></li>
</ul>
</li>
<li><label class="leaf"><a href="#section7">Roadmap</a></label></li>
</ul>
</div>

<!--  - - - - - - - -   Table of contents   - - - - - - - -  -->

    </div>
  </div>

  <div id="maincontent">
    <div class="innertube">

<!--  - - - - - - - - - -   Articles    - - - - - - - - - -  -->

<article>
<h1><a id="section1">1 </a>Introduction to APP4MC</h1>
		<p>
			<img src="images/app4mc-logo-g.png"/>
		</p>
		<p>The goal of the project is the development of a consistent, open, expandable tool platform for embedded software engineering. It is based on the model driven approach as basic engineering methodology. The main focus is the optimization of embedded multi-core systems.</p>
		<p>Most functions in a modern car are controlled by embedded systems. Also more and more driver assistance functions are introduced. This implies a continuous increase of computing power accompanied by the request for reduction of energy and costs. To handle these requirements the multi-core technology permeates the control units in cars. This is today one of the biggest challenges for automotive systems. Existing applications can not realize immediate benefit from these multi-core ECUs because they are not designed to run on such architectures. In addition applications and systems have to be migrated into AUTOSAR compatible architectures. Both trends imply the necessity for new development environments which cater for these requirements.</p>
		<p>The tool platform shall be capable to support all aspects of the development cycle. This addresses predominantly the automotive domain but is also applicable to telecommunication by extensions which deal with such systems in their native environment and integrated in a car.</p>
		<p>Future extensions will add support for visualization tools, graphical editors. But not only design aspects will be supported but also verification and validation of the systems will be taken into account and support tools for optimal multi-core real-time scheduling and validation of timing requirements will be provided. In the course of this project not all of the above aspects will be addressed in the same depth. Some will be defined and some will be implemented on a prototype basis. But the basis platform and the overall architecture will be finalized as much as possible.</p>
		<p>The result of the project is an open tool platform in different aspects. On the one hand it is published under the Eclipse Public License (EPL) and on the other hand it is open to be integrated with existing or new tools either on a company individual basis or with commercially available tools.</p>
</article>


<article>
<h1><a id="section2">2 </a>User Guide</h1>


<h2><a id="section2.1">2.1 </a>Introduction</h2>
		<p>APP4MC comes with a predefined perspective available in the Eclipse menu under Window -&gt; Open Perspective -&gt; Other -&gt; APP4MC. This perspective consists of the following elements:</p>
		<ul>
			<li>Project Explorer</li>
			<li>Editor
				<ul>
					<li>Tree Editor showing the structure of the model content</li>
					<li>Standard Properties Tab is used to work on elements attributes</li>
				</ul>
			</li>
		</ul>
		<p>The following screenshot is showing this perspective and its contained elements.</p>
		<p>
			<img src="images/user_guide_editor_structure.png"/>
		</p>


<h3><a id="section2.1.1">2.1.1 </a>Steps to create a new AMALTHEA model</h3>
		<p>APP4MC provides a standard wizard to create a new AMALTHEA model from scratch.</p>
		<p>
			<strong>Step 1: Create a new general project</strong>
		</p>
		<blockquote>
			<p>The scope of an AMALTHEA model is defined by its enclosing container (project or folder).
				<br>      Therefore a project is required.
			</p>
			<p>      
				<img src="images/user_guide_step1_create-project.png"/>
			</p>
		</blockquote>
		<p>
			<strong>Step 2: Create a new folder inside of the created project</strong>
		</p>
		<blockquote>
			<p>It is recommended to create a folder ( 
				<i>although a project is also a possible container</i> ).
			</p>
			<p>      
				<img src="images/user_guide_step2_create-folder.png"/>
			</p>
		</blockquote>
		<p>
			<strong>Step 3: Create a new AMALTHEA model</strong>
		</p>
		<blockquote>
			<p>In the context menu (right mouse button) an entry for a new AMALTHEA model can be found.</p>
			<p>      
				<img src="images/user_guide_step3_create-model.png"/>
			</p>
			<p>      Another starting point is 
				<i>File</i> -&gt; 
				<i>New</i> -&gt; 
				<i>Other</i>
			</p>
			<p>      In the dialog you can select the parent folder and the file name.</p>
		</blockquote>


<h3><a id="section2.1.2">2.1.2 </a>AMALTHEA Editor</h3>
		<p>The AMALTHEA Editor shows the entire model that contains sub models.
			<br>The next screenshot shows the "New Child" menu with all its possibilities.  
		</p>
		<p>
			<img class="gray" src="images/user_editor_with_central_model.png"/>
		</p>
		<p>The AMALTHEA Editor has additional commands available in the editor toolbar.</p>
		<p>
			<img class="gray" src="images/user_guide_editor_commands.png"/>
		</p>


<h4><a id="section2.1.2.1"></a>Show types of model elements</h4>
		<p>The Show types of elements button triggers the editor to show the direct type of the element in the tree editor using [element_type]. The following screenshot shows the toggle and the types marked with an underline.</p>
		<p>
			<img class="gray" src="images/user_guide_editor_showtypes.png"/>
		</p>


<h4><a id="section2.1.2.2"></a>Search for model elements</h4>
		<p>The editor provides the possibility to search for model elements by using the available name attribute. For example this can be used to find all elements in the model with "ABS" at the beginning of their name. The result are shown in the Eclipse search result view.</p>
		<p>
			<img class="gray" src="images/user_guide_editor_search_input.png"/>
		</p>
		<p>A double click on a result selects the element in the editor view.</p>
		<p>
			<img class="gray" src="images/user_guide_editor_search_result1.png"/>
		</p>
		<p>An additional option is to toggle the search results to show them as a plain list instead of a tree grouped by type.</p>
		<p>
			<img class="gray" src="images/user_guide_editor_search_result2.png"/>
		</p>


<h3><a id="section2.1.3">2.1.3 </a>Handling of multiple files (folder scope)</h3>
		<p>Amalthea model</p>
		<ul>
			<li>Amalthea files have the extension ".amxmi".</li>
			<li>Amalthea models support references to other model files in the same folder.</li>
		</ul>
		<p>When the 
			<strong>first</strong> Amalthea file in a folder is opened in the Amalthea editor
		</p>
		<ul>
			<li>all valid model files are loaded</li>
			<li>a common editing environment is established</li>
			<li>files and folder are decorated with markers
				<ul>
					<li>loaded model files are decorated with a green dot</li>
					<li>model files that contain older versions are extended with the version</li>
					<li>the folder is marked as "is in use" and decorated with a construction barrier</li>
				</ul>
			</li>
		</ul>
		<p>
			<img src="images/user_guide_folder_scope.png"/>
		</p>
		<p>When the 
			<strong>last</strong> Amalthea editor of a folder is closed
		</p>
		<ul>
			<li>the common editing environment is released</li>
			<li>markers are removed</li>
		</ul>
		<p>
			<strong>Warning:</strong>
			<br>Do not modify the contents of a folder while editors are open.
			<br>If you want to add or remove model files then first close all editors.
		</p>


<h3><a id="section2.1.4">2.1.4 </a>AMALTHEA Examples</h3>
		<p>The AMALTHEA tool platform comes with several examples. This section will describe how a new project based on these examples can be created. </p>
		<p>
			<strong>Step 1</strong>
		</p>
		<blockquote>
			<p>Click the "new" icon in the top left corner and select "Example..." or use the right mouse button.</p>
			<p>      
				<img src="images/01-create-new-example.png"/>
			</p>
		</blockquote>
		<p>
			<strong>Step 2</strong>
		</p>
		<blockquote>
			<p>The "New Example" wizard will pop up and shows several examples.
				<br>      Select one examples and hit continue.
			</p>
			<p>      
				<img src="images/02-select-democar-example.png"/>
			</p>
		</blockquote>
		<p>
			<strong>Step 3</strong>
		</p>
		<blockquote>
			<p>You will see a summary of the example projects that will be created.
				<br>      Click "Finish" to exit this dialog.
			</p>
			<p>      
				<img src="images/03_democar-example-finish.png"/>
			</p>
			<p>      You can now open the editor to inspect the models.</p>
		</blockquote>


<h2><a id="section2.2">2.2 </a>Concepts</h2>


<h3><a id="section2.2.1">2.2.1 </a>Timing in Amalthea Primer</h3>
		<p>An Amalthea model per se is a static, structural model of a hardware/software system. The basic structural model consists of software model elements (tasks, runnables), hardware model elements (processing units, memories, connection handlers), stimuli that are used to activate execution, and mappings of software model elements to hardware model elements. Semantics of the model then allows for definite and clear interpretation of the static, structural model regarding its behavior over time.</p>


<h4><a id="section2.2.1.1"></a>Different Levels of Model Detail</h4>
		<p>Amalthea provides a meta-model suitable for many different purposes in the design of hardware/software systems. Consequently, there is not 
			<em>the</em> level of Amalthea model detail – modeling often is purpose driven. Regarding timing analysis, we exemplary discuss three different levels of detail to clarify this aspect of Amalthea. Note that we focus on level of detail of the hardware model and assume other parts of the model (software, mapping, etc.) fixed.
		</p>
		<p>Essential software model elements are runnables, tasks, and data elements (labels and channels). Runnable items of a runnable specifies its runtime behavior. You may specify the runnable items as a directed, acyclic graph (DAG). Amalthea has different categories of runnable items, we focus on the following four:</p>
		<ul>
			<li>Items that 
				<strong>branch paths</strong> of the DAG (runnable mode switch, runnable probability switch).
			</li>
			<li>Items that 
				<strong>signal</strong> or call other parts of the model (custom event trigger, runnable call, etc.).
			</li>
			<li>Items that specify 
				<strong>data access</strong> of data elements (channel receive/send, label access).
			</li>
			<li>Items that specify 
				<strong>execution time</strong> (ticks, execution needs).
			</li>
		</ul>
		<p>Tasks may call runnables in a activity graph. Note that a runnable can be called by several tasks. We then map tasks to task schedulers in the operating system model, and we map every task scheduler to one or more processing units of the hardware model. Further, we map data elements to memories of the hardware model.</p>
		<p>This coarse level of hardware model detail – the hardware model consists only of 
			<strong>mapping targets</strong>, without routing or timing for data accesses – may already be sufficient for analysis focusing on event-chains or scheduling.
		</p>
		<p>As the second example of model detail, we now add access elements to all processing units of the hardware model, 
			<strong>modeling data access latencies or data rates</strong> when accessing data in memories – still ignoring routing and contention. This level of detail is sufficient, for example, for optimizing data placement in microcontrollers using static timing analysis.
		</p>
		<p>A more detailed hardware model, our third and last example of model detail, will contain information about 
			<strong>data routing and congestion handling</strong>. Therefore, we add connection handlers to the hardware model for every possible contention point, we add ports to the hardware elements, and we add connections between ports. For every access element of the processing units, we add an access path, modeling the access route over different connections and connectionHandlers. The combination of all access elements are able to represent the full address space of a processing unit. This level of detail is well suited for dynamic timing simulation considering arbitration effects for data accesses.
		</p>
		<p>In the following, we discuss 'timing' of Amalthea in context of level of detail of the last example and discrete-event simulation.</p>


<h4><a id="section2.2.1.2"></a>Discrete-Event Simulation</h4>
		<p>For dynamic timing analysis, the 
			<em>initial</em> state of the static system model is the starting point, and a series of 
			<em>state changes</em> is subject to model analysis. The 
			<em>state</em> of a model mainly consist of states of HW elements (processing units and connection handlers). During analysis, a state change is then, for example, a processing unit changing from 
			<em>idle</em> to 
			<em>execute</em>.
		</p>
		<p>When we are interested in the 
			<em>timing</em> of a model, a common way is using discrete-event simulation. In discrete-event simulation, a series of 
			<em>events</em> changes the state of the system and a simulated clock. Such a simulation event is, for instance, a 
			<em>stimuli</em> event for a task to execute on a processing unit, what in turn may change the 
			<em>state</em> of this processing unit from 
			<em>idle</em> to 
			<em>execute</em>.
		</p>
		<p>Note that every event occurs at a specified point in simulated time; for instance, think of a new 
			<em>stimuli event</em> that shall activate a task in 10ms from the current value of the simulated clock. Unprocessed (future) events are stored in an event list. The simulator then continuously processes the event occurring next to the current simulated time, and forwards the simulated clock correspondingly, thereby removing the event from the event list. Note that this is a very simplified description. For instance, multiple events at the same point in simulated time are possible. Processing events may lead to generation of new events. For instance, processing an end 
			<em>task execution event</em> may lead to a new 
			<em>stimuli event</em> that shall occur 5ms from the current value of the simulation clock added to the event list.
		</p>
		<p>After sketching the basic idea of discrete-event simulation, we can be more precise with the term 
			<strong>Amalthea timing</strong>: we call the trace of state changes and events over time the 
			<em>dynamic behavior</em> or simply the 
			<em>timing</em> of the Amalthea model. This timing of the model than may be further analyzed, for instance, regarding timing constraints.
		</p>
		<p>Stimulation of task execution with corresponding stimuli events, and scheduling in general, is not further discussed here. In the following, we focus on timing of execution at processing units and data accesses.</p>


<h4><a id="section2.2.1.3"></a>Execution Time</h4>
		<p>The basic mechanism to specify execution time at a processing unit is the modeling element 
			<em>ticks</em>. 
			<em>Ticks</em> are a generic abstraction of time for software, independent of hardware. Regarding hardware, one may think of 
			<em>ticks</em> as clock ticks or cycles of a processing unit. You can specify 
			<em>ticks</em> at several places in the model, most prominently as a runnable item of a runnable. The 
			<em>ticks</em> value together with a mapping to a specific processing unit that has a defined frequency then allows computation of an 
			<em>execution time</em>. For instance, 100 ticks require 62.5ns simulated time at a processing unit with 1.6GHz, while 100 ticks require 41.6ns at a processing unit with 2.4GHz.
		</p>
		<p>When the discrete-event simulator simulates execution of a runnable at a processing unit, it actually processes runnable items and translates their semantics into simulation events. We already discussed the runnable item 
			<em>ticks</em>: when 
			<em>ticks</em> are processed, we compute a corresponding simulation time value based on the executing processing unit's frequency, and store a simulation event in the list of simulation events for when the execution will finish.
		</p>
		<p>In that sense, ticks translate into a fixed or 
			<strong>static timing behavior</strong> - when execution starts, it is always clear when this execution will end. Note that the current version of Amalthea (0.9.3) also prepares an additional concept for specification of execution timing besides using 
			<em>ticks</em>: 
			<em>execution needs</em>. Execution needs will allow sophisticated ways of execution time specification, as required for heterogeneous systems. 
			<em>Execution needs</em> define the number of usages of user-defined needs; a later version of Amalthea (&gt; 0.9.3) then will introduce 
			<em>recipes</em> that translate such execution needs into ticks, taking 
			<em>hardware features</em> of the executing processing unit into account. Note that, by definition, a sound model for timing simulation always allows to compute ticks from execution needs. Consequently, for timing analysis using discrete-event simulation as described above, we first translate execution needs into ticks, resulting in a model we call 
			<em>ticks-only model</em>. Thus, we can ignore 
			<em>execution needs</em> for timing analysis.
		</p>


<h4><a id="section2.2.1.4"></a>Data Accesses</h4>
		<p>For data accesses, in contrast to ticks, the duration in simulation time is not always clear. A single data access may result in series of simulation events. Occurrence of these events in simulation time depends on several other model elements, for example, access paths, mapping of data to memory, and state of connection handlers. Thus, a data access may result in 
			<strong>dynamic timing behavior</strong>. Note that there are plenty of options in Amalthea for hardware modeling; consequently, options for modeling and simulation of data accesses are manifold (see above 
			<em>Different Levels of Model Detail</em>). In the following, we discuss some modeling patterns for data accesses.
		</p>
		<p>Consider a hardware model consisting of two processing units, a connection handler, and a single memory. We add a read and a write latency to all connections and the connection handler. Additionally, we add an access latency to the memory. There are no read or write latency added to access elements of the processing units. Only access paths specify the routes from the specific processing unit to the memory across the connection handler, see the following screenshot.</p>
		<p>
			<img class="scale" src="images/user_timing_model_example.png"/>
		</p>
		<p>As described in the beginning of this section, a single data access may result in a series of events. Expected simulation behavior is as follows: When the discrete-event simulator encounters a runnable item for a data read access at CPU0, we add an event for one tick later to the event queue of the simulator, denoting passing the connection from CPU0 to the connection handler MyConnectionHandler. (For simplicity, we do not use time durations calculated from the CPU0's frequency here, what would be required to determine the correct point in simulated time for the event). After passing the connection, the state of MyConnectionHandler is relevant for the next event: Either MyConnectionHandler is occupied by a data access (from CPU1), a data access arrives at the same time, or MyConnectionHandler is available.</p>
		<ul>
			<li>If MyConnectionHandler is available, we add an event for three ticks later-this is the read latency of the connection handler.</li>
		</ul>
		<ul>
			<li>If a data access from CPU1 arrives at the same time, the connection handler handles this data access based on the selected arbitration mechanism (attribute not shown in the screen shot – we assume priority based with a higher priority for CPU1). We add an event for three ticks later, when MyConnectionHandler is available again. We then check again for data accesses from CPU1 at the same time and set a corresponding event.</li>
		</ul>
		<ul>
			<li>If MyConnectionHandler is occupied, we add an event for whenever the connection handler is not occupied anymore. We then check for data accesses from CPU1 at the same time and set a corresponding event.</li>
		</ul>
		<p>Eventually, MyConnectionHandler may handle the read access from CPU0, and when the simulator reacts on the corresponding event, we add an event for one tick later, as this is the read latency for the connection between the connection handler and the memory. The final event for this read data access from CPU0 results from the access latency of the memory (twelve ticks). When the simulator reacts on that final event, the read access from CPU0 is completed and the simulator can handle the next runnable item at CPU0, if available.</p>
		<p>Note that in the above example there is only one contention point. We thus could reduce the number of events for an optimized simulation. Further, note that we ignore size of data elements in this example. We could use 
			<strong>data rates</strong> instead of latencies at connections, the connection handler, and the memory to respect data sizes in timing simulation or work with the bit width of ports. Furthermore beside constant latency values it is also possible to use distributions, in this case the simulator role the dice regarding the distribution. At a last note, adding to the discussion of different detail levels: Depending on use-case, modeling purpose, and timing analysis tool, there may be best practice defined for modeling. For instance, one tool may rely on data rates, while other tools require latencies but only at memories and connection handlers, not connections. Tool specific model transformations and validation rules should handle and define such restrictions.
		</p>


<h3 id="user-hw"><a id="section2.2.2">2.2.2 </a>Hardware</h3>


<h4><a id="section2.2.2.1"></a>Structural Modeling of Heterogeneous Platforms</h4>
		<p>To master the rising demands of performance and power efficiency, hardware becomes more and more diverse with a wide spectrum of different cores and hardware accelerators. On the computation front, there is an emergence of specialized processing units that are designed to boost a specific kind of algorithm, like a cryptographic algorithm, or a specific math operation like "multiply and accumulate". As one result, the benefit of a given function from hardware units specialized in different kinds may lead to nonlinear effects between processing units in terms of execution performance of the algorithm: while one function may be processed twice as fast when changing the processing unit, another function may have no benefit at all from the same change. Furthermore the memory hierarchy in modern embedded microprocessor architectures becomes more complex due to multiple levels of caches, cache coherency support, and the extended use of DRAM. In addition to crossbars, modern SoCs connect different clusters of potentially different hardware components via a Network on Chip. Additionally, power and frequency scaling is supported by state of the art SoCs. All these characteristics of modern and performant SoCs (specialized processing units, complex memory hierarchy, network like interconnects and power and frequency scaling) were only partially supported by the former Amalthea hardware model. Therefore, to create models of modern heterogeneous systems, new concepts of representing hardware components in a flexible and easy way are necessary: Our approach supports modeling of manifold hierarchical structures and also domains for power and frequencies. Furthermore, explicit cache modules are available and the possibilities for modeling the whole memory subsystem are extended, the connection between hardware components can be modeled over different abstraction layers. Only with such an extended modeling approach, a more accurate estimation of the system performance of state of the art SoCs becomes feasible.</p>
		<p>Our intention is allowing to create a hardware model once at the beginning of a development process. Ideally, the hardware model will be provided by the vendor. All performance relevant attributes regarding the different features of hardware components like a floating point unit or how hardware components are interconnected should be explicitly represented in the model. The main challenge for a hardware/software performance model is then to determine certain costs, e.g. the net execution time of a software functionality mapped to a processing unit. Costs such as execution time, in contrast to the hardware structure, may change during development time – either because the implementation details evolve from initial guess to real-world measurements, the implementation is changed, or the tooling is changed. Therefore, the inherent attributes of the hardware, e.g. latency of an access path, should be decoupled from the mapping or implementation dependent costs of executing functions. We know from experience that it is necessary to refine these costs constantly in the development process to increase accuracy of performance estimation. Refinement denotes incorporation of increasing knowledge about the system. Therefore, such a refinement should be possible in an efficient way and also support re-use of the hardware model. The corresponding concepts are detailed in the following section.</p>


<h4><a id="section2.2.2.2"></a>Recipe and Feature concept: An outlook of an upcoming approach</h4>
		<p>
			<em>Disclaimer: Please note that the following describes work in progress – what we call "recipes" later is not yet part of the meta-model, and the concept of "features" is not final.</em>
		</p>
		<p>The main driver of the concept described here is separation of implementation dependent details from structural or somehow "solid" information about a hardware/software system. This follows the separation of concerns paradigm, mainly to reduce refinement effort, and foster model re-use: As knowledge about a system grows during development, e.g. by implementing or optimizing functionality as software, the system model should be updated and refined efficiently, while inherent details shall be kept constant and not modified depending on the implementation.</p>
		<p>An example should clarify this approach: For timing simulation, we require the net execution time of a software function executed on the processing unit it is mapped onto. This cost of the execution depends on the implementation of the algorithm, for instance, as C++ code, and the tool chain producing the binary code that eventually is executed. In that sense, the 
			<strong>execution needs</strong> of the algorithm (for instance, a certain number of "multiply and accumulate" operations for a matrix operation) are naturally fixed, as well as the 
			<strong>features</strong> provided by the processing unit (for instance, a dedicated MAC unit requiring one tick for one operation, and a generic integer unit requiring 0.5 ticks per operation). However is implementation- and tool-chain-dependent how the actual execution needs of the algorithm are served by the execution units. Without changing the algorithm or the hardware, optimization of the implementation may make better use of the hardware, resulting in reduced execution time. The above naturally draws the lines for our modeling approach: Execution needs (on an algorithmic level) are inherent, as well as features of the hardware. Keeping these information constant in the model is the key for re-use; implementation dependent change of costs, such as lower execution time by an optimized implementation in C++ or better compiler options, change during development and are modeled as 
			<strong>recipe</strong>. A "recipe" thus takes execution needs of software and features of the hardware as input and results in costs, such as the net execution time. Consequently, recipes are the main area of model refinement during development. The concept is illustrated below.
		</p>
		<p>
			<img class="scale" src="images/user_recipe_concept.png"/>
		</p>
		<p>Note that flexibility is part of the design of this approach. Execution needs and features are not limited to a given set, and recipes can be almost arbitrary prescripts of computation. This allows to introduce new execution needs when required to favorable detail an algorithm. For instance, the execution need "convolution-VGG16" can be introduced to model a specific need for a deep learning algorithm. The feature "MAC" of the executing processing unit provides costs in ticks corresponding to perform a MAC operation. The recipe valid for the mapping then uses these two attributes to compute the net execution time of "convolution-VGG16" in ticks, for instance, by multiplying the costs of xyz MAC operations with a penalty factor of 0.8. Note that with this approach execution needs may be translated very differently into costs, using different features.</p>
		<p>To further motivate this approach, we give some more benefits and examples of beneficial use of the model:</p>
		<ul>
			<li>Given execution needs of a software function that directly correspond the features of processing units, the optimal execution time may be computed (peak performance).</li>
			<li>While net execution time is the prime example of execution needs, features, and recipes, the concept is not limited to "net execution time recipes", recipes for other performance numbers such as power consumption are possible.</li>
			<li>Recipes can be attached at different "levels" in the model: At a processing unit and at a mapping. If present, the recipe at mapping level has precedence.</li>
		</ul>


<h4 id="user-hw-overview"><a id="section2.2.2.3"></a>General Hardware Model Overview</h4>
		<p>The design of the new hardware model is focusing on flexibility and variety to cover different kind of designs to cope with future extensions, and also to support different levels of abstraction. To reduce the complexity of the meta model for representing modern hardware architectures, as less elements as possible are introduced. For example, dependent of the abstraction level, a component called 
			<em>ConnectionHandler</em> can express different kind of connection elements, e.g. a crossbar within a SoC or a CAN bus within an E/E-architecture. A simplified overview of the meta model to specify hardware as a model is shown below. The components 
			<em>ConnectionHandler, ProcessingUnit, Memory</em> and 
			<em>Cache</em> are referred in the following as basic components.
		</p>
		<p>
			<img class="scale" src="images/user_hw_model_class_diagram.png"/>
			<br>Class diagram of the hardware model
		</p>
		<p>The root element of a hardware model is always the 
			<em>HwModel</em> class that contains all domains (power and frequency), definitions, and hardware features of the different component definitions. The hierarchy within the model is represented by the 
			<em>HwStructure</em> class, with the ability to contain further 
			<em>HwStructure</em> elements. Therewith arbitrary levels of hierarchy could be expressed. Red and blue classes in the figure are the definitions and the main components of a system like a memory or a core.
		</p>
		<p>The next figure shows the modeling of a processor. The 
			<em>ProcessingUnitDefiniton</em>, which is created once, specifies a processing unit with general information (which can be a CPU, GPU, DSP or any kind of hardware accelerator). Using a definition that may be re-used supports quick modeling for multiple homogeneous components within a heterogeneous architecture. 
			<em>ProcessingUnits</em> then represent the physical instances in the hardware model, referencing the 
			<em>ProcessingUnitDefiniton</em> for generic information, supplemented only with instance specific information like the 
			<em>FrequencyDomain</em>.
		</p>
		<p>
			<img class="scale" src="images/user_hw_definition_example.png"/>
			<br>Link between definitions and module instances (physical components)
		</p>
		<p>Yellow represents the power and frequency domains that are always created at the top level of the hardware model. It is possible to model different frequency or voltage values, e.g., when it is possible to set a systems into a power safe mode. All components that reference the domain are then supplied with the corresponding value of the domain.</p>
		<p>All the green elements in the figure are related to communication (together with the blue base component 
			<em>ConnectionHandler</em>). Green modeling elements represent ports, static connections, and the access elements for the 
			<em>ProcessingUnits</em>. These 
			<em>ProcessingUnits</em> are the master modules in the hardware model. The following example shows two 
			<em>ProcessingUnits</em> that are connected via a 
			<em>ConnectionHandler</em> to a 
			<em>Memory</em>. There are two different possibilities to specify the access paths for 
			<em>ProcessingUnits</em> like it is shown for ProcessingUnit_2 in the next figure. Every time a 
			<em>HwAccessElement</em> is necessary to assign the destination e.g. a 
			<em>Memory</em> component. This 
			<em>HwAccessElement</em> can contain a latency or a data rate dependent on the use case. The second possibility is to create a 
			<em>HwAccessPath</em> within the 
			<em>HwAccessElement</em> which describes the detailed path to the destination by referencing all the 
			<em>HwConnections</em> and 
			<em>ConnectionHandlers</em>. It is even possible to reference a cache component within the 
			<em>HwAccessPath</em> to express if the access is cached or non-cached. Furthermore it is possible to set addresses for these 
			<em>HwAccessPath</em> to represent the whole address space of a 
			<em>ProcessingUnit</em>. A typical approach would be starting with just latency or data rates for the communication between components and enhance the model over time to by switching to the 
			<em>HwAccessPaths</em>.
		</p>
		<p>
			<img class="scale" src="images/user_hw_access_paths.png"/>
			<br>Access elements in the hardware model
		</p>


<h4><a id="section2.2.2.4"></a>Current implementation with features and the connection to the SW Model</h4>
		<p>In the previous chapter the long time goal of the feature and recipe concept is explained. As an intermediate step before introducing the recipes we decided to connect the HwModel and SwModel by referencing to the name of the hardware 
			<em>FeatureCategories</em> from the 
			<em>ExecutionNeed</em> element in a Runnable. The following figure shows this connection between the grey Runnable item block and the white Features block. Due to the mapping (Task or Runnable to ProcessingUnit) the corresponding feature value can be extracted out of the ProcessingUnitDefinition.
		</p>
		<p>
			<img class="scale" src="images/user_hw_feature_runnable_connection.png"/>
		</p>
		<p>An example based on the old hardware model is the "instruction per cycle" value (IPC). To model an IPC with the new approach a 
			<em>HwFeatureCategory</em> is created with the name 
			<em>Instructions</em>. Inside this category multiple IPC values can be created for different 
			<em>ProcessingUnitDefinitions</em>.
		</p>
		<p>
			<em>Note: In version 0.9.0 to 0.9.2 exists a default ExecutionNeed Instructions together with a the HwFeatre IPC the cycles can be calculated by dividing the Instructions by the IPC value.</em> 
		</p>
		<p>
			<img class="scale" src="images/user_hw_feature_runnable_example.png"/>
			<br>Execution needs example
		</p>


<h4><a id="section2.2.2.5"></a>Interpretation of latencies in the model</h4>
		<p>In the model read and write access latencies are used. An alternative which is usually used in specifications or by measurements are request and response latencies. The following figure shows a typical communication between two components. The interpretation of a read and write latency for example at 
			<em>ConnectionHandlers</em> is the following:
		</p>
		<p>
			<img class="scale" src="images/user_hw_latencies.png"/>
		</p>
		<ul>
			<li>
				<strong>readLatency</strong> = requestLatency + response Latency
			</li>
		</ul>
		<ul>
			<li>
				<strong>writeLatency</strong> = requestLatency
			</li>
		</ul>
		<p>The access latency of a 
			<em>Memory</em> component is always added to the read or write latency from the communication elements, independent if its one latency from an 
			<em>HwAccessElement</em> or multiple latencies from a 
			<em>HwAccessPath</em>.
		</p>
		<p>As example in case of using only read and write latencies:</p>
		<ul>
			<li>
				<strong>totalReadLatency</strong> = readLatency (HwAccessElement) + accessLatency (Memory)
			</li>
		</ul>
		<ul>
			<li>
				<strong>totalWriteLatency</strong> = writeLatency (HwAccessElement) + accessLatency (Memory)
			</li>
		</ul>
		<p>An example in case of using an access element with a hardware access path:</p>
		<p>
			<em>n = Number of path elements</em>
		</p>
		<ul>
			<li>
				<strong>totalReadLatency</strong> =  Sum 1..n ( readLatency(p) ) + accessLatency (Memory)
			</li>
		</ul>
		<ul>
			<li>
				<strong>totalWriteLatency</strong> = Sum 1..n ( writeLatency(p) )  + accessLatency (Memory)
			</li>
		</ul>
		<p>PathElements could be 
			<em>Caches</em>, 
			<em>ConnectionHandlers</em> and 
			<em>HwConnections</em>. In very special cases also a 
			<em>ProcessingUnit</em> can be a 
			<em>PathElement</em> the 
			<em>ProcessingUnit</em> has no direct effect on the latency. In case the user want to express a latency it has to be annotated as 
			<em>HwFeature</em>.
		</p>


<h3><a id="section2.2.3">2.2.3 </a>Software (development)</h3>
		<p>The AMALTHEA System Model can also be used in early phases of the development process when only limited information about the resulting software is available.</p>


<h4><a id="section2.2.3.1"></a>Runnables</h4>
		<p>The 
			<i>Runnable</i> element is the basic software unit that defines the behavior of the software in terms of runtime and communication. It can be described on different levels of abstraction: 
		</p>
		<ol>
			<li>timing only (activation and runtime)</li>
			<li>including communication (in general)</li>
			<li>adding detailed activity graphs</li>
		</ol>
		<p>To allow a more detailed simulation a description can also include statistical values like deviations or probabilities. This requires additional information that is typically derived from an already implemented function. The modeling of observed behavior is described in more detail in chapter 
			<a href="#user-sw-runtime">Software (runtime)</a>.
		</p>


<h4><a id="section2.2.3.2"></a>Process Prototypes</h4>
		<p>Process Prototypes are used to define the basic data of a task. This is another possibility to describe that a set of Runnables has a similar characteristic (e.g. they have the same periodic activation).
			<br>A prototype can then be processed and checked by different algorithms. Finally a partitioning algorithm generates (one or more) tasks that are the runtime equivalents of the prototype.
		</p>
		<p>
			<img src="images/process_prototypes.png"/>
		</p>
		<p>This processing can be guided by specifications that are provided by the function developers:</p>
		<ul>
			<li>The 
				<strong>Order Specification</strong> is a predefined execution order that has to be guaranteed.
			</li>
			<li>An 
				<strong>Access Specification</strong> defines exceptions from the standard write-before-read semantics.
			</li>
		</ul>


<h4><a id="section2.2.3.3"></a>Constraints</h4>
		<p>In addition the partitioning and mapping can be restricted by 
			<i>Affinity Constraints</i> that enforce the pairing or separation of software elements and by 
			<i>Property Constraints</i> that connect hardware capabilities and the corresponding software requirements.
			<br>The 
			<i>Timing Constraints</i> will typically be used to check if the resulting system fulfills all the requirements.
		</p>


<h4><a id="section2.2.3.4"></a>Activations</h4>
		<p>Activations are used to specify the intended activation behavior of 
			<i>Runnables</i> and 
			<i>ProcessPrototypes</i>. Typically they are defined before the creation of tasks (and the runnable to task mappings). So this is a way to cluster runnables and to document when the runnables should be executed.
		</p>
		<p>
			<img src="images/model__activations.png"/>
		</p>
		<p>The following activation patterns can be distinguished:</p>
		<ul>
			<li>Single: single activation</li>
			<li>Periodic: periodic activation with a specific frequency</li>
			<li>Sporadic: recurring activation without following a specific pattern</li>
			<li>Event: activation triggered by a 
				<i>TriggerEvent</i>
			</li>
			<li>Custom: custom activation (free textual description)</li>
		</ul>
		<p>To describe a specific (observed) behavior at runtime there are 
			<i>Stimuli</i> in the AMALTHEA model. They can be created based on the information of the specified activations.
		</p>


<h3 id="user-sw-runtime"><a id="section2.2.4">2.2.4 </a>Software (runtime)</h3>
		<p>During runtime, the dynamic behavior of the software can be observed. The following Gantt chart shows an excerpt of such a dynamic behavior.</p>
		<p>
			<img src="images/user_sw_runtime_gantt.png" style="width: 1000px"/>
		</p>
		<p>To model the observed behavior in the AMALTHEA model there are schedulable units (Processes) that contain the basic software units (Runnables) and stimuli that describe when the processes are executed. Statistical elements like distributions (Gauss, Weibull, ...) are also available in the model. They allow describing the variation of values if there are multiple occurrences.  </p>
		<p>In the following sections, a high level description of the individual elements of a software description that define the dynamic behavior are presented.</p>


<h4><a id="section2.2.4.1"></a>Processes (Tasks or ISRs)</h4>
		<p>
			<img src="images/user_sw_runtime_gantt_task.png" style="width: 1000px"/>
		</p>
		<p>Processes represent executable units that are managed by an operating system scheduler. A process is thus the smallest schedulable unit managed by the operating system. Each process also has its own name space and resources (including memory) protected against use from other processes. In general, two different kinds of processes can be distinguished: task and Interrupt Service Routine (ISR). Latter is a software routine called in case of an interrupt. ISRs have normally higher priority than tasks and can only be suspended by another ISR which presents a higher priority than the one running. In the Gantt chart above, a task called 'TASK_InputProcessing' can be seen. All elements that run within the context of a process are described in the following sections.</p>


<h5><a id="section2.2.4.1.1"></a>Runnables</h5>
		<p>
			<img src="images/user_sw_runtime_gantt_runnable.png" style="width: 1000px"/>
		</p>
		<p>Runnables are basic software units. In general it can be said that a Runnable is comparable to a function. It runs within the context of a process and is described by a sequence of instructions. Those instructions can again represent different actions that define the dynamic behavior of the software. Following, such possible actions are listed:</p>
		<ul>
			<li>Semaphore Access: request/release of a semaphore</li>
			<li>Label Access: reading/writing a data signal</li>
			<li>Ticks: number of ticks (cycles) to be executed</li>
			<li>...</li>
		</ul>
		<p>
			<img src="images/user_sw_new_runnable_item.png"/>
		</p>
		<p>In the following sections elements, that can be of concern within a runnable, are described in more detail.</p>


<h5><a id="section2.2.4.1.2"></a>Labels</h5>
		<p>
			<img src="images/user_sw_runtime_gantt_signal.png" style="width: 1000px"/>
		</p>
		<p>Labels represent the system's view of data exchange. As a consequence, labels are used to represent communication in a flattened structure, with (at least) one label defined for each data element sent or received by a Runnable instance.</p>


<h5><a id="section2.2.4.1.3"></a>Semaphore</h5>
		<p>
			<img src="images/user_sw_runtime_gantt_semaphore.png" style="width: 1000px"/>
		</p>
		<p>The main functionality of a semaphore is to control simultaneous use of a single resource by several entities, e.g. scheduling of requests, multiple access protection.</p>


<h4><a id="section2.2.4.2"></a>Stimulation</h4>
		<p>Before, we described the dynamic behavior of a specific process instance. In general however, a process is not only activated once but many times. The action of activating a process is called stimulation. The following stimulation patterns are typically used for specification:</p>
		<ul>
			<li>Single: single activation of a process</li>
			<li>Periodic: periodic activation of a process with a specific frequency</li>
			<li>VariableRate: periodic activations based on other events, like rotation speed</li>
			<li>Event: activation triggered by a 
				<i>TriggerEvent</i>
			</li>
			<li>InterProcess: activations based on an explicit inter-process trigger</li>
		</ul>
		<p>
			<img src="images/model__stimuli.png"/>
		</p>


<h3><a id="section2.2.5">2.2.5 </a>General Concepts</h3>


<h4><a id="section2.2.5.1"></a>Grouping of elements (Tags, Tag groups)</h4>
		<p>It is possible to use 
			<a href="#common-tags">Tags</a> for grouping elements of the model.
		</p>


<h4><a id="section2.2.5.2"></a>Custom Properties</h4>
		<p>The AMALTHEA model provides 
			<a href="#basics-custom-props">Custom Properties</a> to enhance the model in a generic way. These can be used for different kind of purpose:
		</p>
		<ul>
			<li>Store attributes, which are relevant for your model, but not yet available at the elements</li>
			<li>Processing information of algorithms can be stored in that way, e.g. to mark an element as already processed</li>
		</ul>


<h4><a id="section2.2.5.3"></a>Support of Packages  </h4>
		<p>In Amalthea model 
			<em>(from APP4MC 0.9.7 version)</em> there is a feature to support grouping of following model elements listed below in a package:
		</p>
		<ul>
			<li>Component</li>
			<li>Composite</li>
			<li>MainInterface</li>
		</ul>
		<blockquote>
			<p>Above mentioned classes are implementing interface 
				<strong>IComponentStructureMember</strong>
			</p>
		</blockquote>
		<p>
			<strong>ComponentStructure</strong> element in Amalthea model represents a package, and this can be referred by above mentioned elements.
		</p>


<h5><a id="section2.2.5.3.1"></a>Example of using Package</h5>
		<p>Amalthea model contains a parent ComponentStructure "BC" and two child ComponentStructure's "FC1", "FC2".</p>
		<ul>
			<li>Component element "Comp3" is associated to ComponentStructure "FC1" and the Component element "Comp4" is associated to ComponentStructure "FC2"</li>
		</ul>
		<p>This representation demonstrates the grouping of the elements into different packages.</p>
		<p>
			<img class="gray_scale" src="images/user_guide_package_support.png"/>
		</p>


<h4><a id="section2.2.5.4"></a>Support of Namespaces   </h4>
		<p>In Amalthea model 
			<em>(from APP4MC 0.9.7 version)</em> there is a feature to have Namespace for the following model elements (
			<i>which are implementing interface 
				<strong>INamespaceMember</strong>
			</i>):
		</p>
		<ul>
			<li>BaseTypeDefinition</li>
			<li>Channel</li>
			<li>Component</li>
			<li>Composite</li>
			<li>DataTypeDefinition</li>
			<li>Label</li>
			<li>MainInterface</li>
			<li>Runnable</li>
			<li>TypeDefinition</li>
		</ul>
		<p>Advantage of having Namespace is, there can be multiple elements defined with the same name but with different Namespace 
			<i>(this feature will also be helpful to support c++ source code generation )</i>. If Namspace is specified in Amalthea model for a specific model element, then its unique name is built by considering the "Namespace text + name of the element"
		</p>


<h5><a id="section2.2.5.4.1"></a>Example of using Namespace</h5>
		<p>As shown in the below screenshot, there are two Component elements with the name "Comp1" but referring to different Namespace objects, which is making them unique. In this case, display in the UI editor is also updated by showing the Namespace in the prefix for the Amalthea element name.</p>
		<p>
			<img class="gray_scale" src="images/user_guide_namespace_support.png"/>
		</p>
		<p>Below is the text representation of the Amalthea model which shows the ComponentInstance elements referring to different Component elements. As mentioned above, highlighted text shows that unique name of the Component element 
			<i class="built by including the associated Namespace to the Component element">__ is used all the places where it is referenced __(to make it unique)</i>
		</p>
		<p>
			<img class="gray_scale" src="images/user_guide_namespace_support_xmlcontent.png"/>
		</p>
		<p>
			<strong>Additional Information</strong>: 
		</p>
		<ul>
			<li>As soon as Namespace elements are used in Amalthea model, AMXMI file is updated with additional attribute xmi:id for all elements implementing IReferable interface.</li>
			<li>On Amalthea model element implementing INamed interface, in addition to getName() API, getQualifiedName() API is available which returns &lt;namespace string value&gt;.getName()</li>
		</ul>


<h3><a id="section2.2.6">2.2.6 </a>Scheduling</h3>


<h4><a id="section2.2.6.1"></a>Scheduler to Core assignment</h4>
		<p>We distinguish between physical mapping and responsibility </p>
		<ul>
			<li>
				<strong>Executing Core</strong> means a scheduler produces algorithmic overhead on a core
			</li>
			<li>
				<strong>Responsibility</strong> means a scheduler controls the scheduling on core(s)
			</li>
		</ul>
		<p>
			<img src="images/user-scheduling-sched-allocation.png"/>
		</p>


<h4><a id="section2.2.6.2"></a>Task to Scheduler assignment</h4>
		<p>Tasks have a core affinity and are assigned to a scheduler</p>
		<ul>
			<li>
				<strong>Core Affinity</strong> Specifies the possible cores the task can run on. If only one core is specified, the task runs on this core. If multiple cores are specified, the task can migrate between the cores.
			</li>
			<li>
				<strong>Scheduler</strong> specifies the unique allocation of the task to a scheduler.
			</li>
		</ul>
		<p>The scheduling parameters are determined by the scheduling algorithm and are only valid for this specific task – scheduler combination. Therefore the parameters are specified in the TaskAllocation object.</p>
		<p>
			<img src="images/user-scheduling-task-allocation.svg"/>
		</p>


<h4><a id="section2.2.6.3"></a>Scheduler hierarchies</h4>
		<p>Schedulers can be arranged in a hierarchy via SchedulerAssociations. If set, the parent scheduler takes the initial decision and delegates to a child-scheduler. If the child-scheduler is a reservation based server, it can only delegate scheduling decisions to its child scheduler. If it is not a server, it can take scheduling decisions.
			<br>The scheduling parameters for the parent scheduler are specified in the SchedulerAssociation, just as it would have for task allocations.
			<br>If a reservation based server has only one child (this can either be a process or a child scheduler), the scheduling parameters specified in this single child allocation will also be passed to the parent scheduler. The example below shows this for the EDF scheduler on the right hand side.
		</p>
		<p>
			<img src="images/user-scheduling-hierarchy.svg"/>
		</p>


<h3><a id="section2.2.7">2.2.7 </a>Communication via channels</h3>


<h4><a id="section2.2.7.1"></a>Channel</h4>
		<p>Sender and receiver communicating via a channel by issuing send and receive operations; read policy and transmission policy define communication details.</p>
		<p>
			<img src="images/user_channel.png"/>
		</p>
		<p>A channel is specified by three attributes:</p>
		<ul>
			<li>
				<strong>elementType</strong>: the type that is sent to or read from the channel.
			</li>
			<li>
				<strong>defaultElements</strong>:  number of elements initially in the channel (at start-up).
			</li>
			<li>
				<strong>maxElements</strong> (integer) denoting a buffer limit, that is, the channel depth. In other words, no more than maxElements elements of the given element type may be stored in the channel.
			</li>
		</ul>


<h4><a id="section2.2.7.2"></a>Channel Access</h4>
		<p>In the basic thinking model, all elements are stored as a sequential collection in the channel.</p>
		<p>
			<img src="images/user_channel_access.png"/>
		</p>


<h5><a id="section2.2.7.2.1"></a>Sending</h5>
		<p>A runnable may send elements to a channel by issuing send operations.
			<br>The send operation has a single parameter:
		</p>
		<ul>
			<li>
				<strong>elements</strong> (integer): Number of elements that are written.
			</li>
		</ul>


<h5><a id="section2.2.7.2.2"></a>Receiving</h5>
		<p>A runnable may receive elements from a channel by issuing receive operations.
			<br>The receive operation is specified with a 
			<strong>receive policy</strong> that defines the main behaviour of the operation:
		</p>
		<ul>
			<li>
				<strong>LIFO</strong> (last-in, first-out) is chosen if processing the last written elements is the primary focus and thereby missing elements is tolerable.
			</li>
			<li>
				<strong>FIFO</strong> (first-in, first-out) is chosen if every written element needs to be handled, that is, loss of elements is not tolerable.
			</li>
			<li>
				<strong>Read</strong> will received elements without modifying the channel
			</li>
			<li>
				<strong>Take</strong> will remove the received elements from the channel
			</li>
		</ul>
		<p>The receive policy defines the direction a receive operation takes effect with LIFO accesses are from top of the sequential collection, while with FIFO accesses are from bottom of the sequential collection-and they define if the receive operation is destructive (take) or non-destructive) read.</p>
		<p>Each operation further has two parameters and two attributes specifying the exact behavior. The two parameters are:</p>
		<ul>
			<li>
				<strong>elements</strong> (integer): Maximum number n of elements that are received.
			</li>
			<li>
				<strong>elementIndex</strong> (integer): Position (index i) in channel at which the operation is effective. Zero is the default and denotes the oldest (FIFO) or newest element (LIFO) in the channel.
			</li>
		</ul>
		<p>In the following several examples are shown, of how to read or take elements out of a channel with the introduced parameters.</p>
		<p>
			<img src="images/user_channel_operations.png"/>
		</p>
		<p>Two attributes further detail the receive operation:</p>
		<ul>
			<li>
				<strong>lowerBound</strong> (integer): Specify the minimum number of elements returned by the operation. The value must be in the range [0,n], with n is the value of the parameter elements. Default value is n.
			</li>
			<li>
				<strong>dataMustBeNew</strong> (Boolean): Specify if the operation must only return elements that are not previously read by this Runnable. Default value is false.
			</li>
		</ul>


<h4><a id="section2.2.7.3"></a>Transmission Policy</h4>
		<p>To further specify how elements are accessed by a runnable in terms of computing time, an optional transmission policy may specify details for each receive and send operation. The intention of the transmission policy is to reflect computing demand (time) depending on data.</p>
		<p>The transmission policy consists of the following attributes:</p>
		<ul>
			<li>
				<strong>chunkSize</strong>: Size of a part of an element, maximum is the element size.
			</li>
			<li>
				<strong>chunkProcessingTicks</strong> (integer): Number of ticks that will be executed to process one chunk (algorithmic overhead).
			</li>
			<li>
				<strong>transmitRatio</strong> (float): Specify the ratio of each element that is actually transmitted by the runnable in percent. Value must be between [0, 1], default value is 1.0.
			</li>
		</ul>
		<p>Example for using transmission policy to detail the receiving phase of a runnable execution. Two elements are received, leading to transmission time as given in the formula. After the receiving phase, the runnable starts with the computing phase.</p>
		<p>
			<img src="images/user_channel_transmission_example.png"/>
		</p>


<h3><a id="section2.2.8">2.2.8 </a>Data Dependencies</h3>


<h4><a id="section2.2.8.1"></a>Overview</h4>
		<p>It is possible to specify potential data dependencies for written data. More specifically, it is now possible to annotate at write accesses what other data potentially have influenced the written data. A typical "influence" would be usage of data for computing a written value. As such data often comes from parameters when calling a runnable, it is now also possible to specify runnable parameters in Amalthea and their potential influence on written data.</p>
		<p>Semantics of the new attributes in Amalthea is described in detail below. In general, these data dependency extensions are considered as a way to explicitly model details that help for visualization or expert reviews. For use cases such as timing simulation the data dependency extensions are of no importance and should be ignored. </p>


<h4><a id="section2.2.8.2"></a>Internal Dataflow</h4>
		<p>In Embedded Systems, external dataflow is specified with reads and writes to labels, which are visible globally. This is sufficient for describing the inter-runnable communication and other use-cases like memory optimization. Nevertheless, for description of signal flows along an event chain, it is also necessary to specify the internal dataflow so that the connection between the read labels and the written labels in made. 
			<br>Internal dataflow is specified as dependency of label writes to other labels, parameters of the runnable or event return values of called runnables.  With this information, the connection of reads to writes of label can be drawn.
		</p>
		<p>
			<img src="images/user_sw_data_dependency_view.png"/>
		</p>
		<p>The internal dependencies are typically generated through source code analysis. The analysis parses the code and determines all writes to labels. For each of those positions, a backward slicing is made on the abstract syntax tree to derive all reads that influence this write. This collection is then stored as dependency at the write access.  
			<br>Based upon this data a developer can now track a signal flow along from the sensor over several other runnables to the actuator. Existing event-chains can be automatically validated to contain a valid flow by checking if the segments containing a read label event and write label event within the same runnable are connected by an internal dependency. Without internal dependencies, this would introduce a huge manual effort. Afterwards the event-chains can be simulated and their end-to-end latencies determined with the usual tools. 
		</p>


<h3 id="user-memsection"><a id="section2.2.9">2.2.9 </a>Memory Sections</h3>
		<p>
			<b>Purpose</b>
		</p>
		<p>Memory Sections are used for the division of the memory (RAM/ROM) into different blocks and allocate the "software" memory elements (
			<em>e.g. Labels</em>), code accordingly inside them.
			<br>Each Memory Section has certain specific properties (
			<em>e.g. faster access of the elements, storing constant values</em>). By default compiler vendors provide certain Memory Sections (
			<em>e.g. .data, .text</em>) and additional Memory Sections can be created based on the project need by enhancing the linker configuration.
		</p>
		<p>
			<b>Definition</b>
		</p>
		<p>A "Memory Section" is a region in memory (RAM/ROM) and is addressed with a specific name. There can exist multiple "Memory Sections" inside the same Memory (RAM/ROM) but with different names. Memory Section names should be unique across the Memory (RAM/ROM).</p>
		<p>Memory Sections can be of two types: </p>
		<ul>
			<li>Virtual Memory Section</li>
			<li>Physical Memory Section</li>
		</ul>


<h4><a id="section2.2.9.1"></a>Virtual Memory Section</h4>
		<p>"Virtual Memory Sections" are defined as a part of data specification and are associated to the corresponding Memory Elements (e.g. Label's) during the development phase of the software. Intention behind associating "Virtual Memory Sections" to Memory elements like Label's is to control their allocation in specific Memory (e.g. Ram1 or Ram2) by linker. </p>
		<p>As a part of linker configuration – It is possible to specify if a "Virtual Memory Section" 
			<i>(e.g. mem.Sec1)</i> can be part of certain Memory 
			<em>(e.g. Ram1/Ram2/SYSRAM but not Ram3)</em>.
		</p>
		<p>
			<ins>
				<em>Example:</em>
			</ins> 
		</p>
		<p>Software should be built for ManyCore ECU – containing 3 Cores 
			<em>(Core1, Core2, Core3)</em>. Following RAMs are associated to the Cores: Ram1 – Core1, Ram2 – Core2, Ram3 – Core3, and also there is SYSRAM.
		</p>
		<p>Virtual Memory Section : mem.sec1 
			<em>(is defined as part of data specification)</em> is associated to Label1 and Label2.
		</p>
		<p>
			<img class="scale" src="images/user_section_label_ref_to_memsection.png"/>
		</p>
		<p>In Linker configuration it is specified that mem.sec1 can be allocated only in Ram1 or Ram2.</p>
		<p>Below diagram represents the 
			<em>
				<ins>
					<strong>linker configuration content</strong>
				</ins>
			</em> - w.r.t. possibility for physical allocation of mem.sec1 in various memories .
		</p>
		<p>
			<img class="scale" src="images/user_section_linker_memsection.png"/>
		</p>
		<p>Based on the above configuration – Linker will allocate Label1, Label2 either in Ram1/Ram2/SYSRAM but not in Ram3/Ram4.</p>


<h4><a id="section2.2.9.2"></a>Physical Memory Section</h4>
		<p>"Physical Memory Sections" are generated by linker. The linker allocates various memory elements (e.g. Label's) inside "Physical Memory Sections".</p>
		<p>Each "Physical Memory Section" has following properties:</p>
		<ul>
			<li>Name – It will be unique across each Memory </li>
			<li>Start and End address – This represents the size of "Physical Memory Section"</li>
			<li>Associated Physical Memory 
				<em>(e.g. Ram1 or Ram2)</em>
			</li>
		</ul>
		<p>
			<ins>
				<em>Example:</em>
			</ins>  There can exist mem.sec1.py inside Ram1 and also in Ram2. But these are physically two different elements as they are associated to different memories (Ram1 and Ram2) and also they have different "start and end address". 
		</p>
		<p>Below diagram represents the information w.r.t. virtual memory sections 
			<em>(defined in data specification and associated to memory elements)</em> and physical memory sections 
			<i>(generated after linker run)</i>.
		</p>
		<p>
			<img class="scale" src="images/user_section_virtual_to_physical.png"/>
		</p>


<h4><a id="section2.2.9.3"></a>Modeling Memory Section information in AMALTHEA</h4>
		<ul>
			<li>As described in the above concept section:
				<ul>
					<li>Virtual memory sections are used:
						<ul>
							<li>To specify constraints for creation of Physical memory sections by linker</li>
							<li>To control allocation of data elements (e.g. Labels) in a specific memory 
								<em>(e.g. Ram1/Ram2/SYSRAM)</em>
							</li>
						</ul>
					</li>
					<li>Physical memory sections are containing the data elements after linker run 
						<em>(representing the software to be flashed into ECU)</em> 
					</li>
				</ul>
			</li>
		</ul>
		<p>Below figure represents the modeling of "Memory Section" (both virtual and physical) information in AMALTHEA model:
			<br>
			<img class="scale" src="images/user_section_amalthea.png"/>
		</p>
		<p>Below are equivalent elements of AMALTHEA model used for modeling the Memory Section information:</p>
		<ul>
			<li>
				<strong>Section</strong> 
				<ul>
					<li>This element is equivalent to Virtual Memory Section defined during the SW development phase.</li>
					<li>As a part of data specification defined in the sw-development phase, a Section object 
						<em>(with specific name)</em> is associated to Label and Runnable elements.
					</li>
				</ul>
			</li>
		</ul>
		<ul>
			<li>
				<strong>PhysicalSectionConstraint</strong>
				<ul>
					<li>This element is equivalent to the constraint specified in the linker configuration file, which is used to instruct linker for the allocation of Physical Memory Sections in specified Memories.</li>
					<li>PhysicalSectionContraint is used to specify the combination of Virtual Memory Section and Memories 
						<em>(which can be considered by linker for generation of Physical Memory Sections)</em>.
					</li>
				</ul>
			</li>
		</ul>
		<blockquote>
			<p>
				<em>
					<ins>Example:</ins>
				</em>   PhysicalSectionConstraint-1 is specifying following relation "Section-1" &lt;--&gt; "Memory-1", "Memory-2". This means that the corresponding Physical Memory Section for "Section-1" can be generated by linker in "Memory-1" or in "Memory-2" 	or in both. 
			</p>
		</blockquote>
		<ul>
			<li>
				<strong>PhysicalSectionMapping</strong> 
				<ul>
					<li>This element is equivalent to Physical Memory Section generated during the linker run.
						<ul>
							<li>Each PhysicalSectionMapping element:
								<ul>
									<li>Contains the Virtual Memory Section 
										<em>(e.g. Section-1)</em> which is the source. 
									</li>
									<li>is associated to a specific Memory and it contains the start and end memory address 
										<em>(difference of start and end address represents the size of Physical Memory Section)</em>.
									</li>
									<li>contains the data elements 
										<em>(i.e. Labels, Runnables part of the final software)</em>.
									</li>
								</ul>
							</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<blockquote>
			<p>
				<strong>Note:</strong> There is also a possibility to associate multiple Virtual Memory Section's as linker has a concept of grouping Virtual Memory Sections while generation of Physical Memory Section.
			</p>
		</blockquote>
		<blockquote>
			<p>
				<em>
					<ins>Example:</ins>
				</em> For the same Virtual Memory Section 
				<i>(e.g. Section-1)</i>, linker can generate multiple Physical Memory Sections in different Memories 
				<em>(e.g. PhysicalSectionMapping-1, PhysicalSectionMapping-2)</em>. Each PhysicalSectionMapping element is an individual entity as it has a separate start and end memory address.
			</p>
		</blockquote>


<h2><a id="section2.3">2.3 </a>Examples</h2>


<h3><a id="section2.3.1">2.3.1 </a>Modeling Example 1</h3>


<h4><a id="section2.3.1.1"></a>General information</h4>
		<p>Modeling Example 1 describes a simple system consisting of 4 Tasks, which is running on a dual core processor.
			<br>The following figure shows the execution footprint in a Gantt chart:
			<br>
			<img src="images/modeling_1_gantt.png"/>
			<br>In the following sections, the individual parts of the AMALTHEA model for Modeling Example 1 are presented followed by a short description of its elements.
		</p>


<h4><a id="section2.3.1.2"></a>Hardware Model</h4>
		<p>
			<img src="images/modeling_1_hw.png"/>
		</p>
		<p>The hardware model of Modeling Example 1 consists as already mentioned of a dual core processor.
			<br>The following gives a structural overview on the modeled elements.
			<br>There, the two cores, 'Core_1' and 'Core_2', have a static processing frequency of 100 MHz each, which is specified by the corresponding quartz oscillator 'Quartz'.
		</p>


<h4><a id="section2.3.1.3"></a>Operating System Model</h4>
		<p>
			<img src="images/modeling_1_schedulers.png"/>
		</p>
		<p>The operating system (OS) model defines in case of Modeling Example 1 only the needed Scheduler.
			<br>Since a dual core processor has to be managed, two schedulers are modeled correspondingly.
			<br>In addition to the scheduler definition used by the scheduler, in this case OSEK, a delay of 100 ticks is set, which represents the presumed time the scheduler needs for context switches.
		</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Scheduler</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Algorithm</th>
				<th colspan="1" rowspan="1">Delay</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Scheduler_1</strong>
				</td>
				<td colspan="1" rowspan="1">Constant</td>
				<td colspan="1" rowspan="1">OSEK</td>
				<td colspan="1" rowspan="1">100 ticks</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Scheduler_2</strong>
				</td>
				<td colspan="1" rowspan="1">Constant</td>
				<td colspan="1" rowspan="1">OSEK</td>
				<td colspan="1" rowspan="1">100 ticks</td>
			</tr>
		</table>


<h4><a id="section2.3.1.4"></a>Mapping Model</h4>
		<p>
			<img src="images/modeling_1_mapping.png"/>
		</p>
		<p>The mapping model defines allocations between different model parts.
			<br>On the one hand, this is the allocation of processes to a scheduler. In case of Example 1, 'Task_1' and 'Task_2' are managed by 'Scheduler_1', while the other tasks are managed by 'Scheduler_2'. Scheduler specific parameters are set here, too. For the OSEK scheduler these are 'priority' and 'taskGroup'. Each task has a priority assigned according its deadline, meaning the one with the shortest deadline, 'Task_1', has the highest priority, and so on.
			<br>On the other hand the allocation of cores to a scheduler is set. For Modeling Example 1 two local schedulers were modeled. As a consequence, each scheduler manages one of the processing cores.
			<br>A comprehension of the modeled properties can be found in the following tables:
		</p>


<h5><a id="section2.3.1.4.1"></a>Executable Allocation with Scheduling Parameters</h5>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Scheduler</th>
				<th colspan="1" rowspan="1">Process</th>
				<th colspan="1" rowspan="1">priority</th>
				<th colspan="1" rowspan="1">taskGroup</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Scheduler_1</td>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">4</td>
				<td colspan="1" rowspan="1">1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Scheduler_1</td>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">3</td>
				<td colspan="1" rowspan="1">2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Scheduler_2</td>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">2</td>
				<td colspan="1" rowspan="1">3</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Scheduler_2</td>
				<td colspan="1" rowspan="1">Task_4</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">4</td>
			</tr>
		</table>


<h5><a id="section2.3.1.4.2"></a>Core Allocation</h5>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Scheduler</th>
				<th colspan="1" rowspan="1">Core</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Scheduler_1</td>
				<td colspan="1" rowspan="1">Core_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Scheduler_2</td>
				<td colspan="1" rowspan="1">Core_2</td>
			</tr>
		</table>


<h4><a id="section2.3.1.5"></a>Software Model</h4>


<h5><a id="section2.3.1.5.1"></a>Tasks</h5>
		<p>
			<img src="images/modeling_1_tasks.png"/>
		</p>
		<p>As already mentioned above, the software model of Modeling Example 1 consists exactly of four tasks, named 'Task_1' to 'Task_4'. Each task is preemptive and also calls a definitive number of Runnables in a sequential order.
			<br>A comprehension of the modeled properties can be found in the following table:
		</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Task</th>
				<th colspan="1" rowspan="1">Preemption</th>
				<th colspan="1" rowspan="1">MTA*</th>
				<th colspan="1" rowspan="1">Deadline</th>
				<th colspan="1" rowspan="1">Calls</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Task_1</strong>
				</td>
				<td colspan="1" rowspan="1">Preemptive</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">75 ms</td>
				<td colspan="1" rowspan="1">1) Runnable_1_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">
					<strong>Task_2</strong>
				</td>
				<td colspan="1" rowspan="2">Preemptive</td>
				<td colspan="1" rowspan="2">1</td>
				<td colspan="1" rowspan="2">115 ms</td>
				<td colspan="1" rowspan="1">1) Runnable_2_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">2) Runnable_2_2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">
					<strong>Task_3</strong>
				</td>
				<td colspan="1" rowspan="3">Preemptive</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="3">300 ms</td>
				<td colspan="1" rowspan="1">1) Runnable_3_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">2) Runnable_3_2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">3) Runnable_3_3</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="4">
					<strong>Task_4</strong>
				</td>
				<td colspan="1" rowspan="4">Preemptive</td>
				<td colspan="1" rowspan="4">1</td>
				<td colspan="1" rowspan="4">960 ms</td>
				<td colspan="1" rowspan="1">1) Runnable_4_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">2) Runnable_4_2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">3) Runnable_4_3</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">4) Runnable_4_4</td>
			</tr>
		</table>
		<p>*MTA = Multiple Task Activation Limit</p>


<h5><a id="section2.3.1.5.2"></a>Runnables</h5>
		<p>
			<img src="images/modeling_1_runnables.png"/>
		</p>
		<p>In addition to the task, the software model also contains a definition of Runnables.
			<br>For Modeling Example 1, ten individual Runnables are defined.
			<br>The only function of those in this example is to consume processing resources.
			<br>Therefore, for each Runnable a constant number of instruction cycles is stated.
			<br>A comprehension of the modeled properties can be found in the following table:
		</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Runnable</th>
				<th colspan="1" rowspan="1">InstructionCycles</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">1500000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_2_1</td>
				<td colspan="1" rowspan="1">1500000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_2_2</td>
				<td colspan="1" rowspan="1">1500000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">1000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_3_2</td>
				<td colspan="1" rowspan="1">2000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_3_3</td>
				<td colspan="1" rowspan="1">1000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_4_1</td>
				<td colspan="1" rowspan="1">1000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_4_2</td>
				<td colspan="1" rowspan="1">2000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_4_3</td>
				<td colspan="1" rowspan="1">3000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_4_4</td>
				<td colspan="1" rowspan="1">2000000</td>
			</tr>
		</table>


<h4><a id="section2.3.1.6"></a>Stimuli Model</h4>
		<p>
			<img src="images/modeling_1_stimuli.png"/>
		</p>
		<p>The stimulation model defines the activations of tasks.
			<br>Since the four tasks of Modeling Example 1 are activated periodically, four stimuli according their recurrence are modeled.
			<br>A comprehension of the modeled properties can be found in the following table:
		</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Stimulus</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Offset</th>
				<th colspan="1" rowspan="1">Recurrence</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Stimulus_Task_1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="1">0 ms</td>
				<td colspan="1" rowspan="1">180 ms</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Stimulus_Task_2</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="1">0 ms</td>
				<td colspan="1" rowspan="1">200 ms</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Stimulus_Task_3</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="1">0 ms</td>
				<td colspan="1" rowspan="1">300 ms</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Stimulus_Task_4</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="1">0 ms</td>
				<td colspan="1" rowspan="1">1 s</td>
			</tr>
		</table>


<h3><a id="section2.3.2">2.3.2 </a>Modeling Example 2</h3>


<h4><a id="section2.3.2.1"></a>General information</h4>
		<p>Modeling Example 2 describes a simple system consisting of 4 Tasks, which is running on a single core processor.
			<br>The following figure shows the execution footprint in a Gantt chart:
			<br>
			<img src="images/modeling_2_gantt.png"/>
			<br>In the following sections, the individual parts of the AMALTHEA model for Modeling Example 2 are presented followed by a short description of its elements.
		</p>


<h4><a id="section2.3.2.2"></a>Hardware Model</h4>
		<p>
			<img src="images/modeling_2_hw.png"/>
		</p>
		<p>The hardware model of Modeling Example 2 consists as already mentioned of a single core processor.
			<br>The following gives a structural overview on the modeled elements.
			<br>There, the core, 'Core_1' , has a static processing frequency of 600 MHz each, which is specified by the corresponding quartz oscillator 'Quartz_1'.
		</p>


<h4><a id="section2.3.2.3"></a>Operating System Model</h4>
		<p>
			<img src="images/modeling_2_scheduler.png"/>
		</p>
		<p>The operating system (OS) model defines in case of Modeling Example 2 only the needed Scheduler.
			<br>Since only a single core has to be managed, a single scheduler is modeled correspondingly.
			<br>In addition to the scheduler definition used by the scheduler, in this case OSEK, a delay of 100 ticks is set, which represents the presumed time the scheduler needs for context switches.
		</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Scheduler</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Algorithm</th>
				<th colspan="1" rowspan="1">Delay</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Scheduler_1</strong>
				</td>
				<td colspan="1" rowspan="1">Constant</td>
				<td colspan="1" rowspan="1">OSEK</td>
				<td colspan="1" rowspan="1">100 ticks</td>
			</tr>
		</table>


<h4><a id="section2.3.2.4"></a>Mapping Model</h4>
		<p>
			<img src="images/modeling_2_mapping.png"/>
		</p>
		<p>The mapping model defines allocations between different model parts.
			<br>On the one hand, this is the allocation of processes to a scheduler. Since there is only one scheduler available in the system, all four tasks are mapped to 'Scheduler_1'. Scheduler specific parameters are set here, too. For the OSEK scheduler these are 'priority' and 'taskGroup'. All tasks have assigned the same priority (10) to get a cooperative scheduling.
			<br>On the other hand the allocation of cores to a scheduler is set. As a consequence, the scheduler manages the only available processing core.
			<br>A comprehension of the modeled properties can be found in the following tables:
		</p>


<h5><a id="section2.3.2.4.1"></a>Executable Allocation with Scheduling Parameters</h5>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Scheduler</th>
				<th colspan="1" rowspan="1">Process</th>
				<th colspan="1" rowspan="1">priority</th>
				<th colspan="1" rowspan="1">taskGroup</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Scheduler_1</td>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">10</td>
				<td colspan="1" rowspan="1">1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Scheduler_1</td>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">10</td>
				<td colspan="1" rowspan="1">2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Scheduler_1</td>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">10</td>
				<td colspan="1" rowspan="1">3</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Scheduler_1</td>
				<td colspan="1" rowspan="1">Task_4</td>
				<td colspan="1" rowspan="1">10</td>
				<td colspan="1" rowspan="1">4</td>
			</tr>
		</table>


<h5><a id="section2.3.2.4.2"></a>Core Allocation</h5>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Scheduler</th>
				<th colspan="1" rowspan="1">Core</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Scheduler_1</td>
				<td colspan="1" rowspan="1">Core_1</td>
			</tr>
		</table>


<h4><a id="section2.3.2.5"></a>Software Model</h4>


<h5><a id="section2.3.2.5.1"></a>Tasks</h5>
		<p>
			<img src="images/modeling_2_tasks.png"/>
		</p>
		<p>As already mentioned above, the software model of Modeling Example 2 consists exactly of four tasks, named 'Task_1' to 'Task_4'. 'Task_2' to'Task_4' call a definitive number of Runnables in a sequential order. 'Task_1' instead contains a call graph that models two different possible execution sequences. In 70% of the cases the sequence 'Runnable_1_1', 'Runnable_1_2', 'Task_2', 'Runnable_1_4' is called, while in the remaining 30% the sequence 'Runnable_1_1', 'Runnable_1_3', 'Task_3', 'Runnable_1_4' is called. As it can be seen, the call graph of 'Task_1' contains also interprocess activations, which activate other tasks.
			<br>A comprehension of the modeled properties can be found in the following table:
		</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Task</th>
				<th colspan="1" rowspan="1">Preemption</th>
				<th colspan="1" rowspan="1">MTA*</th>
				<th colspan="1" rowspan="1">Deadline</th>
				<th colspan="1" rowspan="1">Calls</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="8">
					<strong>Task_1</strong>
				</td>
				<td colspan="1" rowspan="8">Preemptive</td>
				<td colspan="1" rowspan="8">3</td>
				<td colspan="1" rowspan="8">25 ms</td>
				<td colspan="1" rowspan="1" style="text-align: left;">1.1) Runnable_1_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">1.2) Runnable_1_2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">1.3) Task_2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">1.4) Runnable_1_4</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">2.1) Runnable_1_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">2.2) Runnable_1_3</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">2.3) Task_3</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">2.4) Runnable_1_4</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Task_2</strong>
				</td>
				<td colspan="1" rowspan="1">Preemptive</td>
				<td colspan="1" rowspan="1">3</td>
				<td colspan="1" rowspan="1">25 ms</td>
				<td colspan="1" rowspan="1" style="text-align: left;">1) Runnable_2_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Task_3</strong>
				</td>
				<td colspan="1" rowspan="1">Preemptive</td>
				<td colspan="1" rowspan="1">3</td>
				<td colspan="1" rowspan="1">25 ms</td>
				<td colspan="1" rowspan="1" style="text-align: left;">1) Runnable_3_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Task_4</strong>
				</td>
				<td colspan="1" rowspan="1">Preemptive</td>
				<td colspan="1" rowspan="1">3</td>
				<td colspan="1" rowspan="1">25 ms</td>
				<td colspan="1" rowspan="1" style="text-align: left;">1) Runnable_4_1</td>
			</tr>
		</table>
		<p>*MTA = Multiple Task Activation Limit</p>


<h5><a id="section2.3.2.5.2"></a>Runnables</h5>
		<p>
			<img src="images/modeling_2_runnables.png"/>
		</p>
		<p>In addition to the task, the software model also contains a definition of Runnables.
			<br>For Modeling Example 2, seven individual Runnables are defined.
			<br>The only function of those in this example is to consume processing resources.
			<br>Therefore, for each Runnable a number of instruction cycles is stated.
			<br>The number of instruction cycles is thereby either constant or defined by a statistical distribution.
			<br>A comprehension of the modeled properties can be found in the following table:
		</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Runnable</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Instructions</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Runnable_1_1</strong>
				</td>
				<td colspan="1" rowspan="1">Constant</td>
				<td colspan="1" rowspan="1">1000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Runnable_1_2</strong>
				</td>
				<td colspan="1" rowspan="1">Constant</td>
				<td colspan="1" rowspan="1">2000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Runnable_1_3</strong>
				</td>
				<td colspan="1" rowspan="1">Constant</td>
				<td colspan="1" rowspan="1">3000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Runnable_1_4</strong>
				</td>
				<td colspan="1" rowspan="1">Constant</td>
				<td colspan="1" rowspan="1">4000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">
					<strong>Runnable_2_1</strong>
				</td>
				<td colspan="1" rowspan="2">Uniform Distribution</td>
				<td colspan="1" rowspan="1">1000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">5000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">
					<strong>Runnable_3_1</strong>
				</td>
				<td colspan="1" rowspan="3">Gauss Distribution</td>
				<td colspan="1" rowspan="1" style="text-align: left;">mean: 1000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">sd: 50000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">upper: 5000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Runnable_4_1</strong>
				</td>
				<td colspan="1" rowspan="1">Constant</td>
				<td colspan="1" rowspan="1">4000000</td>
			</tr>
		</table>


<h4><a id="section2.3.2.6"></a>Stimulation Model</h4>
		<p>
			<img src="images/modeling_2_stimuli.png"/>
		</p>
		<p>The stimulation model defines the activations of tasks.
			<br>'Task_1' is activated periodically by 'Stimulus_Task_1'
			<br>'Stimulus_Task_2' and 'Stimulus_Task_3' represent the inter-process activations for the corresponding tasks. 
			<br>'Task_4' finally is activated sporadically following a Gauss distribution. 
			<br>A comprehension of the modeled properties can be found in the following table:
		</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Stimulus</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Parameters</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">
					<strong>Stimulus_Task_1</strong>
				</td>
				<td colspan="1" rowspan="2">Periodic</td>
				<td colspan="1" rowspan="1" style="text-align: left;">offset: 0 ms</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">recurrence: 25 ms</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Stimulus_Task_2</strong>
				</td>
				<td colspan="1" rowspan="1">Inter-Process</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Stimulus_Task_3</strong>
				</td>
				<td colspan="1" rowspan="1">Inter-Process</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">
					<strong>Stimulus_Task_4</strong>
				</td>
				<td colspan="1" rowspan="3">Sporadic (Gauss)</td>
				<td colspan="1" rowspan="1" style="text-align: left;">mean: 30 ms</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">sd: 5 ms</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">upper: 100 ms</td>
			</tr>
		</table>


<h3><a id="section2.3.3">2.3.3 </a>Modeling Example "Purely Periodic without Communication"</h3>
		<p>This system architecture pattern consists of a task set, where each task is activated periodically and no data accesses are performed. The execution time for each task is determined by the called runnable entities as specified in the table below. All tasks contain just one runnable except of T<sub>7</sub>, which calls at first R<sub>7,1</sub> and after that R<sub>7,2</sub>.</p>
		<p>The table below gives a detailed specification of the tasks and their parameters. The tasks are scheduled according fixed-priority, preemptive scheduling and if not indicated otherwise, all events are active in order to get a detailed insight into the system's behavior.</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Task</th>
				<th colspan="1" rowspan="1">Priority</th>
				<th colspan="1" rowspan="1">Preemption</th>
				<th colspan="1" rowspan="1">Multiple Task Activation Limit</th>
				<th colspan="1" rowspan="1">Activation</th>
				<th colspan="2" rowspan="1">Execution Time</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>1</sub></td>
				<td colspan="1" rowspan="3">7</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 9.95</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 80</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 10</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>2</sub></td>
				<td colspan="1" rowspan="3">6</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>2</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 29.95</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 120</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 30</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>3</sub></td>
				<td colspan="1" rowspan="3">5</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>3</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 19.95</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 160</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 20</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>4</sub></td>
				<td colspan="1" rowspan="3">4</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>4</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 14.95</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 180</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 15</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>5</sub></td>
				<td colspan="1" rowspan="3">3</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>5</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 29.95</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 200</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 30</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>6</sub></td>
				<td colspan="1" rowspan="3">2</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>6</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 39.95</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 300</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 40</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="6">T<sub>7</sub></td>
				<td colspan="1" rowspan="6">1</td>
				<td colspan="1" rowspan="6">FULL</td>
				<td colspan="1" rowspan="6">1</td>
				<td colspan="1" rowspan="2"/>
				<td colspan="1" rowspan="3">R<sub>7,1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 59.95</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 60</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="3">R<sub>7,2</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 1000</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 19.95</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 20</td>
			</tr>
		</table>
		<p>In order to show the impact of changes to the model, the following consecutive variations are made to the model: </p>
		<dl>
			<dt>
				<b>1) Initial Task Set</b>
			</dt>
			<dd>For this variation, the Tasks T<sub>4</sub>, T<sub>5</sub>, T<sub>6</sub>, and T<sub>7</sub> of the table above are active.
				<br>
				<img src="images/modeling_example_periodic_1.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>2) Increase of Task Set Size I</b>
			</dt>
			<dd>For this variation, the Tasks T<sub>3</sub>, T<sub>4</sub>, T<sub>5</sub>, T<sub>6</sub>, and T<sub>7</sub> are active. That way the utilization  of the system is increased.
				<br>
				<img src="images/modeling_example_periodic_2.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>3) Increase of Task Set Size II</b>
			</dt>
			<dd>For this variation, the Tasks T<sub>1</sub>, T<sub>3</sub>, T<sub>4</sub>, T<sub>5</sub>, T<sub>6</sub>, and T<sub>7</sub> are active. That way the utilization  of the system is increased.
				<br>
				<img src="images/modeling_example_periodic_3.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>4) Increase of Task Set Size III</b>
			</dt>
			<dd>As from this variation on, all tasks (T<sub>1</sub> - T<sub>7</sub>) are active. That way the utilization  of the system is increased.
				<br>
				<img src="images/modeling_example_periodic_4.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>5) Accuracy in Logging</b>
			</dt>
			<dd>For this variation, just task events are active. That way, only a limited insight into the system's runtime behavior is available.
				<br>
				<img src="images/modeling_example_periodic_5.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>6) Schedule</b>
			</dt>
			<dd>As from this variation on, T<sub>7</sub> is set to non-preemptive. That way, the timing behavior is changed, which results in extinct activations (see red mark in the figure below).
				<br>
				<img src="images/modeling_example_periodic_6.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>7) Activation</b>
			</dt>
			<dd>As from this variation on, the maximum number of queued activation requests for all tasks is set to 2. That way, the problem with extinct activations resulting from the previous variation is solved.
				<br>
				<img src="images/modeling_example_periodic_7.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>8) Schedule Point</b>
			</dt>
			<dd>For this variation, a schedule point is added to T<sub>7</sub> between the calls of R<sub>7,1</sub> and R<sub>7,2</sub>. That way, the timing behavior is changed in particular.
				<br>
				<img src="images/modeling_example_periodic_8.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>9) Scheduling Algorithm</b>
			</dt>
			<dd>For this variation, the scheduling algorithm is set to Earliest Deadline First. That way, the timing behavior is changed completely.
				<br>
				<img src="images/modeling_example_periodic_9.png"/>
			</dd>
		</dl>


<h3><a id="section2.3.4">2.3.4 </a>Modeling Example "Client-Server without Reply"</h3>
		<p>This system architecture pattern extends the modeling example "Purely Periodic without Communication" by adding an one-way communication between tasks. It consists of two tasks T<sub>1</sub>, and T<sub>2</sub>. Task T<sub>1</sub> sends a message to Task T<sub>2</sub> before runnable R<sub>1</sub> is called. In 20% of the cases Message 1, in 30% of the cases Message 2, in 20% of the cases Message 3, in 15% of the cases Message 4, and in 15% of the cases any other message than the previously mentioned ones is sent. Task T<sub>2</sub> reacts on the contents of the message by calling different runnables. In case of Message 1 runnable R<sub>2,1</sub>, in case of Message 2 runnable R<sub>2,2</sub>, in case of Message 3 runnable R<sub>2,3</sub>, in case of Message 4 runnable R<sub>2,4</sub>, and in case of any other message than the previous mentioned ones runnable R<sub>2,x</sub> is called as default.</p>
		<p>
			<img src="images/modeling_example_client_server.png"/>
		</p>
		<p>The table below gives a detailed specification of the tasks and their parameters. The tasks are scheduled according fixed-priority, preemptive scheduling and if not indicated otherwise, all events are active in order to get a detailed insight into the system's behavior.</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Task</th>
				<th colspan="1" rowspan="1">Priority</th>
				<th colspan="1" rowspan="1">Preemption</th>
				<th colspan="1" rowspan="1">Multiple Task Activation Limit</th>
				<th colspan="1" rowspan="1">Activation</th>
				<th colspan="2" rowspan="1">Execution Time</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>1</sub></td>
				<td colspan="1" rowspan="3">2</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 9.9 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 100 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 10 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="15">T<sub>2</sub></td>
				<td colspan="1" rowspan="15">1</td>
				<td colspan="1" rowspan="15">FULL</td>
				<td colspan="1" rowspan="15">1</td>
				<td colspan="1" rowspan="6"/>
				<td colspan="1" rowspan="3">R<sub>2,x</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">R<sub>2,1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 990</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 1 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>2,2</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 15 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 49.5 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 60 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 50 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="6"/>
				<td colspan="1" rowspan="3">R<sub>2,3</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 990 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 1 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">R<sub>2,4</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 39.6 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 40 * 10<sup>6</sup></td>
			</tr>
		</table>
		<p>In order to show the impact of changes to the model, the following consecutive variations are made to the model:</p>
		<dl>
			<dt>
				<b>1) Initial Task Set</b>
			</dt>
			<dd>As defined by the table above.
				<br>
				<img src="images/modeling_example_client_server_1.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>2) Exclusive Area</b>
			</dt>
			<dd>For this variation, all data accesses are protected by an exclusive area. Therefore, the data accesses in T<sub>1</sub> as well as all runnables in T<sub>2</sub> (R<sub>2,x</sub>, R<sub>2,1</sub>, R<sub>2,2</sub>, R<sub>2,3</sub>, and R<sub>2,4</sub>) are protected during their complete time of execution via a mutex and priority ceiling protocol. That way, blocking situations appear.
				<br>
				<img src="images/modeling_example_client_server_2.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>3) Inter-process Activation</b>
			</dt>
			<dd>As from this variation on, task T<sub>2</sub> gets activated by an inter-process activation from task T<sub>1</sub> instead of being activated periodically. The interprocess activation is performed right after the message 
				<em>message</em> is written in T<sub>2</sub> and consequently before the runnable R<sub>1</sub> is called. That way, a direct connection between T<sub>1</sub> and T<sub>2</sub> is established.
				<br>
				<img src="images/modeling_example_client_server_3.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>4) Priority Ordering</b>
			</dt>
			<dd>As from this variation on, the priority relation between task T<sub>1</sub> and T<sub>2</sub> is reversed. As a consequence, the priority of task T<sub>1</sub> is set to 1 and the priority of task T<sub>2</sub> is set to 2. That way, a switch from asynchronous to synchronous communication is considered.
				<br>
				<img src="images/modeling_example_client_server_4.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>5) Event Frequency Increase</b>
			</dt>
			<dd>As from this variation on, the periodicity of T<sub>1</sub> is shortened. For this, the value for the period of task T<sub>1</sub> is cut in half to 50 * 10<sup>6</sup> time units. That way, the utilization  of the system is increased.
				<br>
				<img src="images/modeling_example_client_server_5.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>6) Execution Time Fluctuation</b>
			</dt>
			<dd>As from this variation on, the execution time distribution is widened for both tasks. Therefore, the maximum of every uniform distribution is increased by 1 percent so that they vary now by 2 percent. That way, the utilization  of the system is increased, which results in extinct activations.
				<br>
				<img src="images/modeling_example_client_server_6.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>7) Activation</b>
			</dt>
			<dd>As from this variation on, the maximum number of queued activation requests for both tasks is set to 2. That way, the problem with extinct activations resulting from the previous variation is solved.
				<br>
				<img src="images/modeling_example_client_server_7.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>8) Accuracy in Logging of Data State I</b>
			</dt>
			<dd>For this variation, the data accesses in task T<sub>1</sub> and task T<sub>2</sub> are omitted. Instead, the runnable entities R<sub>2,x</sub>, R<sub>2,1</sub>, R<sub>2,2</sub>, R<sub>2,3</sub>, and R<sub>2,4</sub>, each representing the receipt of a specific message, are executed equally random, meaning each with a probability of 20%. That way, only a limited insight into the system's runtime behavior is available.
				<br>
				<img src="images/modeling_example_client_server_8.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>9) Accuracy in Logging of Data State II</b>
			</dt>
			<dd>For this variation, just task events are active. That way, only a limited insight into the system's runtime behavior is available.
				<br>
				<img src="images/modeling_example_client_server_9.png"/>
			</dd>
		</dl>


<h3><a id="section2.3.5">2.3.5 </a>Modeling Example "State Machine"</h3>
		<p>In this system architecture pattern the modeling example "Client Server without Reply" is extended in such a way that now the task that receives messages (T<sub>2</sub>) not only varies its dynamic behavior and consequently also its execution time according the transmitted content but also depending on its internal state, meaning the prior transmitted contents. To achieve, this task T<sub>1</sub> sends a message to task T<sub>2</sub> with either 0 or 1 before runnable R<sub>1</sub> is called. The value 0 is used in 75 % of the cases and 1 in the other cases as content of the message. Starting in state 0, T<sub>2</sub> decreases or increases the state its currently in depending on the content of the message, 0 or 1 respectively. The runnable R 
			<sub>2,1</sub>, R 
			<sub>2,2</sub>, and R 
			<sub>2,3</sub> represent then the three different states that the system can be in.
		</p>
		<p>
			<img src="images/modeling_example_state_machine.png"/>
		</p>
		<p>The table below gives a detailed specification of the tasks and their parameters. The tasks are scheduled according fixed-priority, preemptive scheduling and if not indicated otherwise, all events are active in order to get a detailed insight into the system's behavior.</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Task</th>
				<th colspan="1" rowspan="1">Priority</th>
				<th colspan="1" rowspan="1">Preemption</th>
				<th colspan="1" rowspan="1">Multiple Task Activation Limit</th>
				<th colspan="1" rowspan="1">Activation</th>
				<th colspan="2" rowspan="1">Execution Time</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>1</sub></td>
				<td colspan="1" rowspan="3">2</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 9.9 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 100 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 10 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="9">T<sub>2</sub></td>
				<td colspan="1" rowspan="9">1</td>
				<td colspan="1" rowspan="9">FULL</td>
				<td colspan="1" rowspan="9">1</td>
				<td colspan="1" rowspan="3"/>
				<td colspan="1" rowspan="3">R 
					<sub>2,1</sub>
				</td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R 
					<sub>2,2</sub>
				</td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 15 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 60 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3"/>
				<td colspan="1" rowspan="3">R<sub>2,3</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 49.5 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 50 * 10<sup>6</sup></td>
			</tr>
		</table>
		<p>In order to show the impact of changes to the model, the following consecutive variations are made to the model:</p>
		<dl>
			<dt>
				<b>1) Initial Task Set</b>
			</dt>
			<dd>As defined by the table above.
				<br>
				<img src="images/modeling_example_state_machine_1.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>2) Exclusive Area</b>
			</dt>
			<dd>For this variation, all data accesses are protected by an exclusive area. Therefore, the data accesses in T<sub>1</sub> as well as all runnables in T<sub>2</sub> (R<sub>2,1</sub>, R<sub>2,2</sub>, and R<sub>2,3</sub>) are protected during their complete time of execution via a mutex and priority ceiling protocol. That way, blocking situations appear.
				<br>
				<img src="images/modeling_example_state_machine_2.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>3) Priority Ordering</b>
			</dt>
			<dd>As from this variation on, the priority relation between task T<sub>1</sub> and T<sub>2</sub> is reversed. As a consequence, the priority of task T<sub>1</sub> is set to 1 and the priority of task T<sub>2</sub> is set to 2. That way, the timing behavior is changed fully.
				<br>
				<img src="images/modeling_example_state_machine_3.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>4) Inter-process Activation</b>
			</dt>
			<dd>As from this variation on, task T<sub>2</sub> gets activated by an inter-process activation from task T<sub>1</sub> instead of being activated periodically. The interprocess activation is performed right after the message 
				<em>message</em> is written in T<sub>1</sub> and consequently before the runnable R<sub>1</sub> is called. That way, a direct connection between T<sub>1</sub> and T<sub>2</sub> is established.
				<br>
				<img src="images/modeling_example_state_machine_4.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>5) Event Frequency Increase</b>
			</dt>
			<dd>As from this variation on, the periodicity of T<sub>1</sub> is shortened. For this, the value for the period of task T<sub>1</sub> is halved to 50 * 10<sup>6</sup>. That way, the utilization  of the system is increased, which results in extinct activations.
				<br>
				<img src="images/modeling_example_state_machine_5.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>6) Activation</b>
			</dt>
			<dd>As from this variation on, the maximum number of queued activation requests for both tasks is set to 2. That way, the problem with extinct activations resulting from the previous variation is solved.
				<br>
				<img src="images/modeling_example_state_machine_6.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>7) Execution Time Fluctuation</b>
			</dt>
			<dd>As from this variation on, the execution time distribution is widened for both tasks. Therefore, the maximum of the uniform distribution is increased by 1 percent so that the uniform distribution varies now by 2 percent. That way, the utilization  of the system is further increased.
				<br>
				<img src="images/modeling_example_state_machine_7.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>8) Accuracy in Logging of Data State I</b>
			</dt>
			<dd>For this variation, the data write accesses in task T<sub>1</sub> and task T<sub>2</sub> are omitted. Instead, the runnables R<sub>2,1</sub>, R<sub>2,2</sub>, and R<sub>2,3</sub>, each representing the execution of a specific state, are executed with a probability of 60 %, 30 %, and 10 % respectively. That way, only a limited insight into the system's runtime behavior is available.
				<br>
				<img src="images/modeling_example_state_machine_8.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>9) Accuracy in Logging of Data State II</b>
			</dt>
			<dd>For this variation, just task events are active. That way, only a limited insight into the system's runtime behavior is available.
				<br>
				<img src="images/modeling_example_state_machine_9.png"/>
			</dd>
		</dl>


<h3><a id="section2.3.6">2.3.6 </a>Modeling Example "Feedback Loop"</h3>
		<p>The task set of the modeling example "State Machine" is expanded further in this architecture pattern with the result that messages are exchanged in a loop, instead of just in one way. To achieve this, task T<sub>1</sub> sends a message 
			<em>u</em> to task T<sub>2</sub> before runnable R<sub>1</sub> is called. The content of this message is 0, if the content of a previously received message 
			<em>e</em> is 0, or 1 if it was 1. Task T<sub>2</sub> represents then a state machine with three states that increases its state, if message 
			<em>u</em> is 1 and decreases, if it is 0. In each state the messages 
			<em>y</em> and 
			<em>w</em> are set with state specific values and sent to task T<sub>3</sub> and task T<sub>4</sub> respectively. In case of 
			<em>State 0</em>, the messages 
			<em>y</em> and 
			<em>w</em> contain the value 0, in case of 
			<em>State 1</em> both contain 50 and in case of 
			<em>State 2</em> the value 100 is sent. These messages are written before runnable R<sub>2</sub> is called. However, in 30 % of the cases task T<sub>4</sub> is activated via an inter-process activation before this runnable call happens. Task T<sub>3</sub> varies its dynamic behavior and consequently also its execution time according the transmitted content of message 
			<em>y</em>. Task T<sub>4</sub> finally prepares again the input for task T<sub>1</sub>. If the content received in message 
			<em>w</em> is 0, then in 30% of the cases the content of message 
			<em>e</em> is 0, otherwise 1. In the case that message 
			<em>w</em> is 50, message 
			<em>e</em> is set to 0 with a probability of 50% and to 1 accordingly. Finally, message 
			<em>e</em> is set to 0 in 70% of the cases and to 1 in 30% of the cases, if message 
			<em>w</em> is 100. In addition to this feedback loop, other system architecture patterns are added to be executed concurrently in order to increase the complexity. The tasks T<sub>5</sub> and T<sub>6</sub> represent a client-server without reply and are equal to the tasks T<sub>1</sub> and T<sub>2</sub> respectively as described in the modeling example "Client-Server without Reply". T<sub>7</sub> is a periodically activated task without any communication and identical to task T<sub>7</sub> of modeling example "Purely Periodic without Communication".
		</p>
		<p>
			<img src="images/modeling_example_feedback_loop.png"/>
		</p>
		<p>The table below gives a detailed specification of the tasks and their parameters. The tasks are scheduled according fixed-priority, preemptive scheduling and if not indicated otherwise, all events are active in order to get a detailed insight into the system's behavior.</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Task</th>
				<th colspan="1" rowspan="1">Priority</th>
				<th colspan="1" rowspan="1">Preemption</th>
				<th colspan="1" rowspan="1">Multiple Task Activation Limit</th>
				<th colspan="1" rowspan="1">Activation</th>
				<th colspan="2" rowspan="1">Execution Time</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>1</sub></td>
				<td colspan="1" rowspan="3">3</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 9.9 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 600 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 10 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>2</sub></td>
				<td colspan="1" rowspan="3">2</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>2</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 20 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99 * 10<sup>4</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 300 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100 * 10<sup>4</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="9">T<sub>3</sub></td>
				<td colspan="1" rowspan="9">3</td>
				<td colspan="1" rowspan="9">FULL</td>
				<td colspan="1" rowspan="9">1</td>
				<td colspan="1" rowspan="3"/>
				<td colspan="1" rowspan="3">R<sub>3,0</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99 * 10<sup>4</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100 * 10<sup>4</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>3,1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 50 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99 * 10<sup>5</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 500 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100 * 10<sup>5</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3"/>
				<td colspan="1" rowspan="3">R<sub>3,2</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>4</sub></td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="3">R<sub>4</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Inter-process Activation</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99 * 10<sup>5</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100 * 10<sup>5</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>5</sub></td>
				<td colspan="1" rowspan="3">5</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>5</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99 * 10<sup>5</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 100 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100 * 10<sup>5</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="15">T<sub>6</sub></td>
				<td colspan="1" rowspan="15">4</td>
				<td colspan="1" rowspan="15">FULL</td>
				<td colspan="1" rowspan="15">1</td>
				<td colspan="1" rowspan="6"/>
				<td colspan="1" rowspan="3">R<sub>6,x</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">R<sub>6,1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 990</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 1 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>6,2</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 15 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 49.5 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 60 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 50 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="6"/>
				<td colspan="1" rowspan="3">R<sub>6,3</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 990 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 1 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">R<sub>6,4</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 49.5 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 50 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="6">T<sub>7</sub></td>
				<td colspan="1" rowspan="6">0</td>
				<td colspan="1" rowspan="6">FULL</td>
				<td colspan="1" rowspan="6">1</td>
				<td colspan="1" rowspan="2"/>
				<td colspan="1" rowspan="3">R<sub>7,1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 59.4 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 60 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="3">R<sub>7,2</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 1000</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 19.8 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 20 * 10<sup>6</sup></td>
			</tr>
		</table>
		<p>In order to show the impact of changes to the model, the following consecutive variations are made to the model:</p>
		<dl>
			<dt>
				<b>1) Initial Task Set</b>
			</dt>
			<dd>For this variation, the tasks T<sub>1</sub>, T<sub>2</sub>, T<sub>3</sub>, and T<sub>4</sub> of the table above are active.
				<br>
				<img src="images/modeling_example_feedback_loop_1.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>2) Increase of Task Set Size I</b>
			</dt>
			<dd>For this variation, the Tasks T<sub>1</sub>, T<sub>2</sub>, T<sub>3</sub>, T<sub>4</sub>, T<sub>5</sub>, and T<sub>6</sub> are active. That way the utilization  of the system is increased.
				<br>
				<img src="images/modeling_example_feedback_loop_2.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>3) Increase of Task Set Size II</b>
			</dt>
			<dd>As from this variation on, all tasks are active. That way the utilization  of the system is increased.
				<br>
				<img src="images/modeling_example_feedback_loop_3.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>4) Inter-process Activation</b>
			</dt>
			<dd>As from this variation on, task T<sub>2</sub> gets activated by an inter-process activation from task T<sub>1</sub>, task T<sub>3</sub> by an inter-process activation from task T<sub>2</sub>, and task T<sub>6</sub> by an inter-process activation from task T<sub>5</sub> instead of being activated periodically. The inter-process activation in task T<sub>1</sub> is performed right after the message 
				<em>u</em> is written in T<sub>2</sub> and consequently before the runnable R<sub>1</sub> is called, in task T<sub>2</sub> respectively right before task T<sub>4</sub> is activated, and in task T<sub>5</sub> task T<sub>6</sub> is called right before runnable R<sub>5</sub>. That way, a direct connection between these tasks is established.
				<br>
				<img src="images/modeling_example_feedback_loop_4.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>5) Event Frequency Increase</b>
			</dt>
			<dd>As from this variation on, the periodicity of the tasks T<sub>1</sub>, T<sub>5</sub>, and T<sub>7</sub> are shortened. For task T<sub>1</sub>, the value for the period is set to 450 * 10<sup>6</sup>, the task T<sub>5</sub> to 60 * 10<sup>6</sup>, and for task T<sub>7</sub> to 575 * 10<sup>6</sup>. That way, the information density is increased.
				<br>
				<img src="images/modeling_example_feedback_loop_5.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>6) Execution Time Fluctuation</b>
			</dt>
			<dd>As from this variation on, the execution time distribution is widened for both tasks. Therefore, the maximum of the uniform distribution is increased by 1 percent so that the uniform distribution varies now by 2 percent. That way, the utilization  of the system is increased, which results in extinct activations.
				<br>
				<img src="images/modeling_example_feedback_loop_6.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>7) Activation</b>
			</dt>
			<dd>As from this variation on, the maximum number of queued activation requests for both tasks is set to 2. That way, the problem with extinct activations resulting from the previous variation is solved.
				<br>
				<img src="images/modeling_example_feedback_loop_7.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>8) Accuracy in Logging of Data State I</b>
			</dt>
			<dd>For this variation, the data accesses in all tasks are omitted. Instead, the runnable entities R<sub>3,0</sub>, R<sub>3,1</sub>, and R<sub>3,2</sub>, are executed with a probability of 50 %, 30 %, and 20 % respectively, and the runnable entities R<sub>6,x</sub>, R<sub>6,1</sub>, R<sub>6,2</sub>, R<sub>6,3</sub>, and R<sub>6,4</sub> are executed with a probability of 15 %, 20 %, 30 %, 20 %, and 15 % respectively. That way, only a limited insight into the system's runtime behavior is available.
				<br>
				<img src="images/modeling_example_feedback_loop_8.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>9) Accuracy in Logging of Data State II</b>
			</dt>
			<dd>For this variation, just task events are active. That way, only a limited insight into the system's runtime behavior is available.
				<br>
				<img src="images/modeling_example_feedback_loop_9.png"/>
			</dd>
		</dl>


<h3><a id="section2.3.7">2.3.7 </a>Modeling Example "State Machine Feedback Loop"</h3>
		<p>The task set of the modeling example "State Machine" is expanded further in this architecture pattern by combining the ideas behind the modeling example "State Machine" and "Feedback Loop". This means that messages are exchanged in a loop and each sender/receiver is also a state machine. To achieve this, task T<sub>1</sub> has two different internal states 0 and 1, and task T<sub>2</sub> manages three consecutive states 0, 1, and 2. The state task T<sub>1</sub> is currently in is sent via a message to task T<sub>2</sub> before runnable R<sub>1</sub> is called. If the content of the message sent from task T<sub>1</sub> is 1, task T<sub>2</sub> increases its internal state, e.g. from state 0 to 1, and if it is 0, task T<sub>2</sub> decreases its internal state accordingly. Then, depending on the state task T<sub>2</sub> is currently in, the according runnable (R<sub>2,0</sub> for state 0, etc.) is executed. If the maximum or minimum state of task T<sub>2</sub> is reached but the received message from task T<sub>1</sub> tells task T<sub>2</sub> to further increase or respectively decrease its internal state, task T<sub>2</sub> sends a message to task T<sub>1</sub>. This message then causes task T<sub>1</sub> to toggle its internal state which consequently results in a switch from increasing to decreasing or vice versa. In addition to this state machine feedback loop, other system architecture patterns are added to be executed concurrently in order to increase the complexity. The tasks T<sub>3</sub> and T<sub>4</sub> represent a client-server without reply and are equal to the tasks T<sub>1</sub> and T<sub>2</sub> respectively as described above in the modeling example "Client-Server without Reply". T<sub>5</sub> is a periodically activated task without any communication and identical to task T<sub>7</sub> in the modeling example "Purely Periodic without Communication".</p>
		<p>
			<img src="images/modeling_example_state_machine_feedback_loop.png"/>
		</p>
		<p>The table below gives a detailed specification of the tasks and their parameters. The tasks are scheduled according fixed-priority, preemptive scheduling and if not indicated otherwise, all events are active in order to get a detailed insight into the system's behavior.</p>
		<table class="classic" style="text-align:center; background:#f8f8f8">
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">Task</th>
				<th colspan="1" rowspan="1">Priority</th>
				<th colspan="1" rowspan="1">Preemption</th>
				<th colspan="1" rowspan="1">Multiple Task Activation Limit</th>
				<th colspan="1" rowspan="1">Activation</th>
				<th colspan="2" rowspan="1">Execution Time</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>1</sub></td>
				<td colspan="1" rowspan="3">2</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 9.9 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 300 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 10 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="9">T<sub>2</sub></td>
				<td colspan="1" rowspan="9">1</td>
				<td colspan="1" rowspan="9">FULL</td>
				<td colspan="1" rowspan="9">1</td>
				<td colspan="1" rowspan="3"/>
				<td colspan="1" rowspan="3">R<sub>2,0</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>2,1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 15 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 250 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3"/>
				<td colspan="1" rowspan="3">R<sub>2,2</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 49.5 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 50 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">T<sub>3</sub></td>
				<td colspan="1" rowspan="3">4</td>
				<td colspan="1" rowspan="3">FULL</td>
				<td colspan="1" rowspan="3">1</td>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>3</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99 * 10<sup>5</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 100 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100 * 10<sup>5</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="15">T<sub>4</sub></td>
				<td colspan="1" rowspan="15">3</td>
				<td colspan="1" rowspan="15">FULL</td>
				<td colspan="1" rowspan="15">1</td>
				<td colspan="1" rowspan="6"/>
				<td colspan="1" rowspan="3">R<sub>4,x</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 99</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">R<sub>4,1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 990</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 1 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="3">R<sub>4,2</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 15 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 49.5 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 60 * 10<sup>6</sup></td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 50 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="6"/>
				<td colspan="1" rowspan="3">R<sub>4,3</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 990 * 10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 1 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">R<sub>4,4</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 49.5 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 50 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="6">T<sub>5</sub></td>
				<td colspan="1" rowspan="6">0</td>
				<td colspan="1" rowspan="6">FULL</td>
				<td colspan="1" rowspan="6">1</td>
				<td colspan="1" rowspan="2"/>
				<td colspan="1" rowspan="3">R<sub>5,1</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 59.4 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 60 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Offset = 0</td>
				<td colspan="1" rowspan="3">R<sub>5,2</sub></td>
				<td colspan="1" rowspan="1">Uniform</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1" style="text-align: left;">Recurrence = 1000</td>
				<td colspan="1" rowspan="1" style="text-align: left;">Min = 19.8 * 10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1" style="text-align: left;">Max = 20 * 10<sup>6</sup></td>
			</tr>
		</table>
		<p>In order to show the impact of changes to the model, the following consecutive variations are made to the model:</p>
		<dl>
			<dt>
				<b>1) Initial Task Set</b>
			</dt>
			<dd>For this variation, the tasks T<sub>1</sub>, and T<sub>2</sub> of the table above are active.
				<br>
				<img src="images/modeling_example_state_machine_feedback_loop_1.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>2) Increase of Task Set Size I</b>
			</dt>
			<dd>For this variation, the tasks T<sub>1</sub>, T<sub>2</sub>, T<sub>3</sub>, and T<sub>4</sub> are active. That way the utilization  of the system is increased.
				<br>
				<img src="images/modeling_example_state_machine_feedback_loop_2.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>3) Increase of Task Set Size II</b>
			</dt>
			<dd>As from this variation on, all tasks are active. That way the utilization  of the system is increased.
				<br>
				<img src="images/modeling_example_state_machine_feedback_loop_3.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>4) Inter-process Activation</b>
			</dt>
			<dd>As from this variation on, task T<sub>2</sub> gets activated by an inter-process activation from task T<sub>1</sub>, and task T<sub>4</sub> by an inter-process activation from task T<sub>3</sub> instead of being activated periodically. The inter-process activation in task T<sub>1</sub> is performed right after the message to task T<sub>2</sub> is written and consequently before the runnable R<sub>1</sub> is called, and in task T<sub>3</sub> task T<sub>4</sub> is called right before runnable R<sub>3</sub>. That way, a direct connection between these tasks is established.
				<br>
				<img src="images/modeling_example_state_machine_feedback_loop_4.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>5) Event Frequency Increase</b>
			</dt>
			<dd>As from this variation on, the periodicity of the tasks T<sub>1</sub>, T<sub>3</sub>, and T<sub>5</sub> are shortened. For task T<sub>1</sub>, the value for the period is set to 220 * 10<sup>6</sup>, the task T<sub>3</sub> to 50 * 10<sup>6</sup>, and for task T<sub>5</sub> to 500 * 10<sup>6</sup>. That way, the information density is increased.
				<br>
				<img src="images/modeling_example_state_machine_feedback_loop_5.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>6) Execution Time Fluctuation</b>
			</dt>
			<dd>As from this variation on, the execution time distribution is widened for both tasks. Therefore, the maximum of the uniform distribution is increased by 1 percent so that the uniform distribution varies now by 2 percent. That way, the utilization  of the system is increased, which results in extinct activations.
				<br>
				<img src="images/modeling_example_state_machine_feedback_loop_6.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>7) Activation</b>
			</dt>
			<dd>As from this variation on, the maximum number of queued activation requests for both tasks is set to 2. That way, the problem with extinct activations resulting from the previous variation is solved.
				<br>
				<img src="images/modeling_example_state_machine_feedback_loop_7.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>8) Accuracy in Logging of Data State I</b>
			</dt>
			<dd>For this variation, the data accesses in all tasks are omitted. Instead, all runnablea representing a state are executed equally random, meaning the runnables R<sub>2,0</sub>, R<sub>2,1</sub>, and R<sub>2,2</sub> are each executed with a probability of 33 %, and the runnables R<sub>4,x</sub>, R<sub>4,1</sub>, R<sub>4,2</sub>, R<sub>4,3</sub>, and R<sub>4,4</sub> each with a probability of 20 %. That way, only a limited insight into the system's runtime behavior is available.
				<br>
				<img src="images/modeling_example_state_machine_feedback_loop_8.png"/>
			</dd>
		</dl>
		<dl>
			<dt>
				<b>9) Accuracy in Logging of Data State II</b>
			</dt>
			<dd>For this variation, just task events are active. That way, only a limited insight into the system's runtime behavior is available.
				<br>
				<img src="images/modeling_example_state_machine_feedback_loop_9.png"/>
			</dd>
		</dl>


<h3><a id="section2.3.8">2.3.8 </a>Democar Example</h3>
		<p>The so called Democar model presented in the AMALTHEA example files describe a simple engine management system.</p>


<h4><a id="section2.3.8.1"></a>Origin</h4>
		<p>The Democar example is loosely based on the publicly available information taken from</p>
		<blockquote>
			<p>
				<br> 
				<strong>A Timing Model for Real-Time Control-Systems and its Application</strong>
				<br> 
				<strong>on Simulation and Monitoring of AUTOSAR Systems</strong>
				<br> 
				<em>Author: Patrick Frey</em>
			</p>
		</blockquote>
		<p>A version of the dissertation can be downloaded from University of Ulm: 
			<a href="https://oparu.uni-ulm.de/xmlui/handle/123456789/1770">pdf</a>.
		</p>


<h4><a id="section2.3.8.2"></a>Files</h4>
		<p>
			<strong>democar.amxmi</strong>
			<br>contains the complete model, consisting of a hardware model, a model of the operating system, a stimulation model and a model that describes the software system.
		</p>
		<p>
			<strong>trace-example.atdb</strong>
			<br>is an AMALTHEA Trace Database and it contains a trace that is the result of a simulation of this example. 
		</p>


<h3><a id="section2.3.9">2.3.9 </a>Hardware Examples</h3>
		<p>This example contains two simple hardware models:</p>
		<p>
			<strong>Example 1: Simple_ECU</strong>
		</p>
		<p>
			<img class="scale" src="images/example_hw_example_1_diagram.png"/>
		</p>
		<p>The example shows a single structure with two identical cores with such an Instruction per cycle feature. The model includes only one frequency domain and no power domain. Each core is connected to all three different memory units via a 
			<em>HwAccessElement</em> with read and write latencies. The memory components include an access latency. This means the total latency for a read and a write access are calculated in the following way:
		</p>
		<p>
			<em>TotalReadLatency = readLatency + accessLatency</em>
			<br>
			<em>TotalWriteLatency = writeLatency + accessLatency</em>
		</p>
		<p>This example shows a very simple hardware modeling approach where no interconnects and ports are necessary. Such a model can be used in a very early design phase where only rough estimations or a limited amount of informations about the system are available.</p>
		<p>
			<img src="images/example_hw_example_1_editor.png"/>
		</p>
		<p>
			<strong>Example 2: Simple_E_E_Architecture</strong>
		</p>
		<p>
			<img class="scale" src="images/example_hw_example_2_diagram.png"/>
		</p>
		<p>The second example shows a simple E/E-Architecture out of two identical ECUs. Each ECU contains two cores, one interconnect and a memory component. Both ECUs are connected via a CAN-Bus. In this example both possibilities for a 
			<em>HwAccessElement</em> are shown. The local memory is just connected with read and write latencies and the external memory of the other ECU is connected with the help of a 
			<em>HwAccessPath</em>. To use access paths hardware ports and connections between those ports are mandatory. The access paths itself is an ordered list of elements which are used for the connection. As an example for the access path between Core1EC1 and MainMemEC2 following access path elements are referred:
		</p>
		<p>con1 -&gt; internalCan_ECU1 -&gt; con4 -&gt; con9 -&gt; CAN -&gt; con10 -&gt; con8 -&gt; InterconnectEC2 -&gt; con7.</p>
		<p>That means the complete access paths includes:</p>
		<ul>
			<li>3 x ConnectionHandler</li>
			<li>6 x HwConnections</li>
		</ul>
		<p>The latency in this case is the sum of all elements of the path plus the access latency of the memory. However latencies at connections are usually only used to account an offset for a specific component. In case a data rate is used the maximum data rate is limited by the lowest data rate in the path. In case of a 
			<em>ConnectionHandler</em> the data rate is usually shared between different accesses.
			<br>The hierarchical ports from both ECUs to connect the CAN Bus with the ECUs as block boxes are not mandatory but recommended. This concept of hierarchical ports increases the number of HwConnections but allows also the structuring of all internal modules within a HwStructure and only connect the hierarchical ports with the rest of the system.
		</p>
		<p>
			<img src="images/example_hw_example_2_editor.png"/>
		</p>


<h3><a id="section2.3.10">2.3.10 </a>Scheduler Examples</h3>
		<p>The following elements are used to illustrate the structure of the example schedulers:</p>
		<p>
			<img src="images/example_scheduler_legend.png"/>
		</p>


<h4><a id="section2.3.10.1"></a>Hierarchical Scheduler</h4>
		<p>In this example the main scheduler realizes a 
			<strong>Priority Round Robin</strong> strategy. The main scheduler works as a global scheduler that schedules subsystems like virtual machines or hypervisor partitions. Each partition realizes an 
			<strong>OSEK</strong> scheduling system. In this case the main scheduler is responsible for both cores but only running on one core. Each 
			<strong>OSEK</strong> subsystem is responsible for exactly one core but only if the main scheduler grants the core usage. The 
			<strong>OSEK</strong> subsystems then decide on a FPP basis, which task can run. The coreAffinity for the tasks is not needed, since their scheduler is only responsible for one core.
		</p>
		<p>
			<img src="images/example_scheduler_hierarchical.png"/>
		</p>


<h4><a id="section2.3.10.2"></a>Partitioned_FPP Scheduler</h4>
		<p>In this example an FPP scheduler acts as a global scheduler. It schedules tasks on a FPP basis but with the additional constraint that its group must have budget left (has similarities to 'adaptive partitioned scheduling' of QNX). The scheduler "CBS" (Constant Bandwith Server) is only there to assign budgets to a logical task group and define no mapping or responsibility at all. Therefore, in the taskAllocation only the priority is specified. The coreAffinity of tasks in the same group can differ, even task migration is possible if a task affinity is 
			<strong>CoreA</strong> as well as 
			<strong>CoreB</strong>.
		</p>
		<p>
			<img src="images/example_scheduler_partitioned_fpp.svg"/>
		</p>


<h3><a id="section2.3.11">2.3.11 </a>Numeric Modes Example</h3>
		<p>Dynamic task activations and the execution of different control paths can depend on internal system states, external events and scheduling effects resulting in different execution sequences of tasks. In APP4MC modes can be used to steer different execution paths. The designer can define modes that execute different paths within runnables, tasks, and even control dynamic activation schemes of tasks with multiple dependencies. This page explains the concepts with a simple example. For the description of the basic model elements, we refer the reader to the chapters:</p>
		<p>Data Models -&gt; Software Model -&gt; Modes 
			<br>Data Models -&gt; Software Model -&gt; Runnable Items -&gt; Runnable Mode Switch
			<br>Data Models -&gt; Software Model -&gt; The Call Graph -&gt; Mode Switch
			<br>Data Models -&gt; Stimuli Model -&gt; Mode Value List and Execution Condition
		</p>


<h4><a id="section2.3.11.1"></a>Example description</h4>
		<p>In this chapter, we show a small example how to use modes to steer the execution and the activation of tasks with modes. The following picture depicts the example:</p>
		<p>
			<img src="images/example_numeric_modes.png" style="width:750px"/>
		</p>
		<p>In this example, we have three modes, one _Enum__ and two 
			<i>Numeric</i>. The numeric modes are initialized with the value -1: 
		</p>
		<p>
			<img src="images/example_numeric_modes_modes.png"/>
		</p>
		<p>First, we have two data generators with Task 
			<i>genX</i> and Task 
			<i>genY</i> where each execution increases a numeric mode by 1. They are activated by a relative sporadic stimulus with an occurrence interval between 10ms and 50ms. The runnable 
			<i>counterForX</i> executes this for 
			<i>genX</i>:
		</p>
		<p>
			<img src="images/example_numeric_modes_gen-x.png"/>
		</p>
		<p>On every execution, the generator tasks trigger the 
			<i>CustomEvent</i> 
			<i>check</i> to evaluate the 
			<i>EventStimulus</i>. This event stimulus checks the condition: 
			<br>
			<strong>
				<i>executionMode == ModeA &amp;&amp; countX &gt; 2 &amp;&amp; countY &gt; 4</i>
			</strong>
			<br>In this example, we do not describe the change of the 
			<i>executionMode</i> to keep the model simpler. This mode could be changed e.g. from within the system or by an external ISR trigger. 
		</p>
		<p>
			<img src="images/example_numeric_modes_event-stimuli.png"/>
		</p>
		<p>If this condition is true, both counting modes are set to zero and the Task 
			<i>doA</i> is called.
		</p>
		<p>Another way to steer the execution depending can be done via mode switches on task level. In 
			<i>doB</i> the mode check is done at task level as depicted in the following picture: 
		</p>
		<p>
			<img src="images/example_numeric_modes_do-b.png"/>
		</p>
		<p>Only if the condition is true runnable 
			<i>runB</i> is called. Within this runnable the counting modes are decremented by 3. 
		</p>
		<p>
			<img src="images/example_numeric_modes_runn-b.png"/>
		</p>
		<p>The last mechanisms is also possible at runnable level by using the 
			<i>runnableModeSwitch</i>. 
		</p>
		<p>Beware of where to reset or change the modes. In 
			<i>doB</i> the modes are reseted directly in the beginning. If you by accident put these after the 
			<i>tick</i> element, it could result in an unintended behavior. In the generator tasks be aware of where to put the 
			<i>customEventTrigger</i>. This element activates the stimuli evaluation. If you put a tick element between the increment and the trigger, the evaluation is delayed.
		</p>


<h3><a id="section2.3.12">2.3.12 </a>AMALTHEA Trace Database (ATDB) Example</h3>
		<p>The ATDB provides tables and view definitions to hold trace data and represent it in comprehensive views. In this section we will show a small example BTF trace, convert it to its ATDB equivalent, and enrich it with event chains. The relevant tables and views will given for better understanding.</p>


<h4><a id="section2.3.12.1"></a>Source BTF Trace</h4>
		<p>The source BTF trace has two cores, three stimuli, three tasks, and four runnables.</p>
		<pre xml:space="preserve"><code>#version 2.1.5
#timeScale ns
0,ECU_1,-1,SIM,SIM,-1,tag,ECU_INIT
0,Processor_1,-1,SIM,SIM,-1,tag,PROCESSOR_INIT
0,Core_1,-1,SIM,SIM,-1,tag,CORE_INIT
0,Core_2,-1,SIM,SIM,-1,tag,CORE_INIT
0,Core_1,0,C,Core_1,0,set_frequence,10000000
0,Core_2,0,C,Core_2,0,set_frequence,11000000
0,Stimulus_Task_1,0,STI,Stimulus_Task_1,0,trigger
0,Stimulus_Task_1,0,T,Task_1,0,activate
0,Stimulus_Task_2,0,STI,Stimulus_Task_2,0,trigger
0,Stimulus_Task_2,0,T,Task_2,0,activate
100,Core_1,0,T,Task_1,0,start
100,Task_1,0,R,Runnable_1_1,0,start
100,Core_2,0,T,Task_2,0,start
100,Task_2,0,R,Runnable_2_1,0,start
20800,Task_1,0,R,Runnable_1_1,0,terminate
20800,Task_1,0,R,Runnable_1_2,0,start
40900,Task_1,0,R,Runnable_1_2,0,terminate
40900,Core_1,0,T,Task_1,0,terminate
45000,Stimulus_Task_3,0,STI,Stimulus_Task_3,0,trigger
45000,Stimulus_Task_3,0,T,Task_3,0,activate
45100,Task_2,0,R,Runnable_2_1,0,suspend
45100,Core_2,0,T,Task_2,0,preempt
45100,Core_2,0,T,Task_3,0,start
45100,Task_3,0,R,Runnable_3_1,0,start
55800,Task_3,0,R,Runnable_3_1,0,terminate
55800,Core_2,0,T,Task_3,0,terminate
55900,Core_2,0,T,Task_2,0,resume
55900,Task_2,0,R,Runnable_2_1,0,resume
61000,Task_2,0,R,Runnable_2_1,0,terminate
61000,Core_2,0,T,Task_2,0,terminate
</code></pre>
		<p>There is exacly one instance of each entity in the trace, so the tables in the database do not become to big for a small example. The visualized Gantt chart of the above trace is depicted in the following figure:</p>
		<p>
			<img class="scale" src="images/atdb_example_btf_visual.png"/>
		</p>


<h4><a id="section2.3.12.2"></a>Equivalent ATDB Contents</h4>
		<p>The tables and/or relevant views for the above BTF trace are listed in the following: Note that if the table's header starts with a "v" it is a view for better readability.</p>
		<table class="classic" style="background:#f8f8f8">
			<tr style="background:#eee">
				<td colspan="2" rowspan="1" style="text-align:center">
					<strong>MetaInformation</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">name</th>
				<th colspan="1" rowspan="1">value</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">timeBase</td>
				<td colspan="1" rowspan="1">ns</td>
			</tr>
		</table>
		<p><br></p>
		<table class="classic" style="background:#f8f8f8;display:inline-table">
			<tr style="background:#eee">
				<td colspan="3" rowspan="1" style="text-align:center">
					<strong>Entity</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">id</th>
				<th colspan="1" rowspan="1">name</th>
				<th colspan="1" rowspan="1">entityTypeId</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">SIM</td>
				<td colspan="1" rowspan="1">1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">2</td>
				<td colspan="1" rowspan="1">ECU_1</td>
				<td colspan="1" rowspan="1">2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">3</td>
				<td colspan="1" rowspan="1">Processor_1</td>
				<td colspan="1" rowspan="1">3</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">4</td>
				<td colspan="1" rowspan="1">Core_1</td>
				<td colspan="1" rowspan="1">4</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">5</td>
				<td colspan="1" rowspan="1">Core_2</td>
				<td colspan="1" rowspan="1">4</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">6</td>
				<td colspan="1" rowspan="1">Stimulus_Task_1</td>
				<td colspan="1" rowspan="1">5</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">7</td>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">6</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">8</td>
				<td colspan="1" rowspan="1">Stimulus_Task_2</td>
				<td colspan="1" rowspan="1">5</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">9</td>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">6</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">10</td>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">7</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">11</td>
				<td colspan="1" rowspan="1">Runnable_2_1</td>
				<td colspan="1" rowspan="1">7</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">12</td>
				<td colspan="1" rowspan="1">Runnable_1_2</td>
				<td colspan="1" rowspan="1">7</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">13</td>
				<td colspan="1" rowspan="1">Stimulus_Task_3</td>
				<td colspan="1" rowspan="1">5</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">14</td>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">6</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">15</td>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">7</td>
			</tr>
		</table>
		<table class="classic" style="background:#f8f8f8;display:inline-table">
			<tr style="background:#eee">
				<td colspan="2" rowspan="1" style="text-align:center">
					<strong>EntityInstance</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">entityId</th>
				<th colspan="1" rowspan="1">sqcnr</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">-1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">2</td>
				<td colspan="1" rowspan="1">-1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">3</td>
				<td colspan="1" rowspan="1">-1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">4</td>
				<td colspan="1" rowspan="1">-1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">4</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">5</td>
				<td colspan="1" rowspan="1">-1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">5</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">6</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">7</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">8</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">9</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">10</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">11</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">12</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">13</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">14</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">15</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
		</table>
		<table class="classic" style="background:#f8f8f8;display:inline-table">
			<tr style="background:#eee">
				<td colspan="2" rowspan="1" style="text-align:center">
					<strong>EntityType</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">id</th>
				<th colspan="1" rowspan="1">name</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">SIM</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">2</td>
				<td colspan="1" rowspan="1">ECU</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">3</td>
				<td colspan="1" rowspan="1">Processor</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">4</td>
				<td colspan="1" rowspan="1">C</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">5</td>
				<td colspan="1" rowspan="1">STI</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">6</td>
				<td colspan="1" rowspan="1">T</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">7</td>
				<td colspan="1" rowspan="1">R</td>
			</tr>
		</table>
		<table class="classic" style="background:#f8f8f8;display:inline-table">
			<tr style="background:#eee">
				<td colspan="3" rowspan="1" style="text-align:center">
					<strong>Property</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">id</th>
				<th colspan="1" rowspan="1">name</th>
				<th colspan="1" rowspan="1">type</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">processors</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">2</td>
				<td colspan="1" rowspan="1">cores</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">3</td>
				<td colspan="1" rowspan="1">frequencyInHz</td>
				<td colspan="1" rowspan="1">long</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">4</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">5</td>
				<td colspan="1" rowspan="1">executingCore</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">6</td>
				<td colspan="1" rowspan="1">runnables</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">7</td>
				<td colspan="1" rowspan="1">ecItems</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">8</td>
				<td colspan="1" rowspan="1">ecStimulus</td>
				<td colspan="1" rowspan="1">eventIdRef</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">9</td>
				<td colspan="1" rowspan="1">ecResponse</td>
				<td colspan="1" rowspan="1">eventIdRef</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">10</td>
				<td colspan="1" rowspan="1">ecMinItemsCompleted</td>
				<td colspan="1" rowspan="1">long</td>
			</tr>
		</table>
		<p>Note that in the entityInstance table there are actually two instances of the cores (entityIds 4 and 5). Also note, the event chain properties are already contained in the property table.</p>
		<table class="classic" style="background:#f8f8f8">
			<tr style="background:#eee">
				<td colspan="10" rowspan="1" style="text-align:center">
					<strong>vTraceEvent</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">timestamp</th>
				<th colspan="1" rowspan="1">sqcnr</th>
				<th colspan="1" rowspan="1">entityName</th>
				<th colspan="1" rowspan="1">entityType</th>
				<th colspan="1" rowspan="1">entityInstance</th>
				<th colspan="1" rowspan="1">sourceEntityName</th>
				<th colspan="1" rowspan="1">sourceEntityType</th>
				<th colspan="1" rowspan="1">sourceEntityInstance</th>
				<th colspan="1" rowspan="1">eventType</th>
				<th colspan="1" rowspan="1">value</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Stimulus_Task_1</td>
				<td colspan="1" rowspan="1">STI</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Stimulus_Task_1</td>
				<td colspan="1" rowspan="1">STI</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">trigger</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Stimulus_Task_1</td>
				<td colspan="1" rowspan="1">STI</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">activate</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">2</td>
				<td colspan="1" rowspan="1">Stimulus_Task_2</td>
				<td colspan="1" rowspan="1">STI</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Stimulus_Task_2</td>
				<td colspan="1" rowspan="1">STI</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">trigger</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">3</td>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Stimulus_Task_2</td>
				<td colspan="1" rowspan="1">STI</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">activate</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">100</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Core_1</td>
				<td colspan="1" rowspan="1">C</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">100</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">100</td>
				<td colspan="1" rowspan="1">2</td>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Core_2</td>
				<td colspan="1" rowspan="1">C</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">100</td>
				<td colspan="1" rowspan="1">3</td>
				<td colspan="1" rowspan="1">Runnable_2_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">20800</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">20800</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Runnable_1_2</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">40900</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Runnable_1_2</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">40900</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Core_1</td>
				<td colspan="1" rowspan="1">C</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">45000</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Stimulus_Task_3</td>
				<td colspan="1" rowspan="1">STI</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Stimulus_Task_3</td>
				<td colspan="1" rowspan="1">STI</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">trigger</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">45000</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Stimulus_Task_3</td>
				<td colspan="1" rowspan="1">STI</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">activate</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">45100</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Runnable_2_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">suspend</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">45100</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Core_2</td>
				<td colspan="1" rowspan="1">C</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">preempt</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">45100</td>
				<td colspan="1" rowspan="1">2</td>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Core_2</td>
				<td colspan="1" rowspan="1">C</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">45100</td>
				<td colspan="1" rowspan="1">3</td>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">55800</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">55800</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Core_2</td>
				<td colspan="1" rowspan="1">C</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">55900</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Core_2</td>
				<td colspan="1" rowspan="1">C</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">resume</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">55900</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Runnable_2_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">resume</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">61000</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Runnable_2_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">61000</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">Core_2</td>
				<td colspan="1" rowspan="1">C</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1"/>
			</tr>
		</table>
		<p>The vTraceEvent table view intentionally resembles the original BTF trace. However, some information is omitted since it is extracted and stored in other tables (e.g. the frequency of the cores). All tags (eventType "tag") have been stored in property values.</p>
		<table class="classic" style="background:#f8f8f8">
			<tr style="background:#eee">
				<td colspan="5" rowspan="1" style="text-align:center">
					<strong>vPropertyValue</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">entityName</th>
				<th colspan="1" rowspan="1">entityType</th>
				<th colspan="1" rowspan="1">propertyName</th>
				<th colspan="1" rowspan="1">propertyType</th>
				<th colspan="1" rowspan="1">value</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ECU_1</td>
				<td colspan="1" rowspan="1">ECU</td>
				<td colspan="1" rowspan="1">processors</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
				<td colspan="1" rowspan="1">Processor_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Processor_1</td>
				<td colspan="1" rowspan="1">Processor</td>
				<td colspan="1" rowspan="1">cores</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
				<td colspan="1" rowspan="1">Core_1, Core_2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Core_1</td>
				<td colspan="1" rowspan="1">C</td>
				<td colspan="1" rowspan="1">frequencyInHz</td>
				<td colspan="1" rowspan="1">long</td>
				<td colspan="1" rowspan="1">10000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Core_2</td>
				<td colspan="1" rowspan="1">C</td>
				<td colspan="1" rowspan="1">frequencyInHz</td>
				<td colspan="1" rowspan="1">long</td>
				<td colspan="1" rowspan="1">11000000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
				<td colspan="1" rowspan="1">Stimulus_Task_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">executingCore</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
				<td colspan="1" rowspan="1">Core_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">runnables</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
				<td colspan="1" rowspan="1">Runnable_1_1, Runnable_1_2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
				<td colspan="1" rowspan="1">Stimulus_Task_2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">executingCore</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
				<td colspan="1" rowspan="1">Core_2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">runnables</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
				<td colspan="1" rowspan="1">Runnable_2_1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
				<td colspan="1" rowspan="1">Stimulus_Task_3</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">executingCore</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
				<td colspan="1" rowspan="1">Core_2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">runnables</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
			</tr>
		</table>
		<p><br></p>
		<table class="classic" style="background:#f8f8f8">
			<tr style="background:#eee">
				<td colspan="7" rowspan="1" style="text-align:center">
					<strong>vRunnableInstanceTraceInfo</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">runnableName</th>
				<th colspan="1" rowspan="1">entityInstance</th>
				<th colspan="1" rowspan="1">startEventCount</th>
				<th colspan="1" rowspan="1">resumeEventCount</th>
				<th colspan="1" rowspan="1">terminateEventCount</th>
				<th colspan="1" rowspan="1">suspendEventCount</th>
				<th colspan="1" rowspan="1">isComplete</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_2_1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_1_2</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">1</td>
			</tr>
		</table>
		<p>All runnable instances are completely represented in the trace, as are the task instances. To keep it simple we leave out the vProcessInstanceTraceInfo table since it is too wide (it has more event types).</p>


<h4><a id="section2.3.12.3"></a>Adding Event Chains</h4>
		<p>Thus far, all information contained in the database has been extracted from the original BTF trace. Event chains, however, are not actually visible in the trace. So we insert their specification (which may originate from an AMALTHEA model) manually. Our event chain is specified as follows:</p>
		<p>
			<strong>Runnable_1_1:start</strong> -&gt; 
			<strong>Runnable_1_1:terminate</strong> -&gt; 
			<strong>Runnable_3_1:start</strong> -&gt; 
			<strong>Runnable_3_1:terminate</strong>
		</p>
		<p>In order to define our event chain for the respective events (which must be present even without a trace), we define them in the event table:</p>
		<table class="classic" style="background:#f8f8f8">
			<tr style="background:#eee">
				<td colspan="6" rowspan="1" style="text-align:center">
					<strong>vEvent</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">name</th>
				<th colspan="1" rowspan="1">eventType</th>
				<th colspan="1" rowspan="1">entityName</th>
				<th colspan="1" rowspan="1">entityType</th>
				<th colspan="1" rowspan="1">sourceEntityName</th>
				<th colspan="1" rowspan="1">sourceEntityType</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_1_1_start</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_1_1_terminate</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_3_1_start</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_3_1_terminate</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1"/>
			</tr>
		</table>
		<p>The following two tables then extend the existing ones by the event chains.</p>
		<table class="classic" style="background:#f8f8f8;display:inline-table">
			<tr style="background:#eee">
				<td colspan="3" rowspan="1" style="text-align:center">
					<strong>Entity</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">id</th>
				<th colspan="1" rowspan="1">name</th>
				<th colspan="1" rowspan="1">entityTypeId</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">16</td>
				<td colspan="1" rowspan="1">EC1</td>
				<td colspan="1" rowspan="1">8</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">17</td>
				<td colspan="1" rowspan="1">EC1_segment1</td>
				<td colspan="1" rowspan="1">8</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">18</td>
				<td colspan="1" rowspan="1">EC1_segment2</td>
				<td colspan="1" rowspan="1">8</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">19</td>
				<td colspan="1" rowspan="1">EC1_segment3</td>
				<td colspan="1" rowspan="1">8</td>
			</tr>
		</table>
		<table class="classic" style="background:#f8f8f8;display:inline-table">
			<tr style="background:#eee">
				<td colspan="2" rowspan="1" style="text-align:center">
					<strong>EntityType</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">id</th>
				<th colspan="1" rowspan="1">name</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">8</td>
				<td colspan="1" rowspan="1">EC</td>
			</tr>
		</table>
		<p>In the values of properties, we employ event chain items to represent the segments. As the vPropertyValue view indicates, at this point we refer to the stimulus/response events we created in the event table.</p>
		<table class="classic" style="background:#f8f8f8">
			<tr style="background:#eee">
				<td colspan="5" rowspan="1" style="text-align:center">
					<strong>vPropertyValue</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">entityName</th>
				<th colspan="1" rowspan="1">entityType</th>
				<th colspan="1" rowspan="1">propertyName</th>
				<th colspan="1" rowspan="1">propertyType</th>
				<th colspan="1" rowspan="1">value</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">ecItems</td>
				<td colspan="1" rowspan="1">entityIdRef</td>
				<td colspan="1" rowspan="1">EC1_segment1, EC1_segment2, EC1_segment3</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">ecStimulus</td>
				<td colspan="1" rowspan="1">eventIdRef</td>
				<td colspan="1" rowspan="1">Runnable_1_1_start</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">ecResponse</td>
				<td colspan="1" rowspan="1">eventIdRef</td>
				<td colspan="1" rowspan="1">Runnable_3_1_terminate</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment1</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">ecStimulus</td>
				<td colspan="1" rowspan="1">eventIdRef</td>
				<td colspan="1" rowspan="1">Runnable_1_1_start</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment1</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">ecResponse</td>
				<td colspan="1" rowspan="1">eventIdRef</td>
				<td colspan="1" rowspan="1">Runnable_1_1_terminate</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment2</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">ecStimulus</td>
				<td colspan="1" rowspan="1">eventIdRef</td>
				<td colspan="1" rowspan="1">Runnable_1_1_terminate</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment2</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">ecResponse</td>
				<td colspan="1" rowspan="1">eventIdRef</td>
				<td colspan="1" rowspan="1">Runnable_3_1_start</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment3</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">ecStimulus</td>
				<td colspan="1" rowspan="1">eventIdRef</td>
				<td colspan="1" rowspan="1">Runnable_3_1_start</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment3</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">ecResponse</td>
				<td colspan="1" rowspan="1">eventIdRef</td>
				<td colspan="1" rowspan="1">Runnable_3_1_terminate</td>
			</tr>
		</table>
		<p>There is the additional view which explicitly combines event chains and their properties:</p>
		<table class="classic" style="background:#f8f8f8">
			<tr style="background:#eee">
				<td colspan="6" rowspan="1" style="text-align:center">
					<strong>vEventChainEntity</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">eventChainName</th>
				<th colspan="1" rowspan="1">stimulus</th>
				<th colspan="1" rowspan="1">response</th>
				<th colspan="1" rowspan="1">items</th>
				<th colspan="1" rowspan="1">minItemsCompleted</th>
				<th colspan="1" rowspan="1">isParallel</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1</td>
				<td colspan="1" rowspan="1">Runnable_1_1_start</td>
				<td colspan="1" rowspan="1">Runnable_3_1_terminate</td>
				<td colspan="1" rowspan="1">EC1_segment1, EC1_segment2, EC1_segment3</td>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment1</td>
				<td colspan="1" rowspan="1">Runnable_1_1_start</td>
				<td colspan="1" rowspan="1">Runnable_1_1_terminate</td>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment2</td>
				<td colspan="1" rowspan="1">Runnable_1_1_terminate</td>
				<td colspan="1" rowspan="1">Runnable_3_1_start</td>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment3</td>
				<td colspan="1" rowspan="1">Runnable_3_1_start</td>
				<td colspan="1" rowspan="1">Runnable_3_1_terminate</td>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">0</td>
			</tr>
		</table>
		<p>Each event chain has exactly one instance in the EntityInstance table. So the derived view for event chain instances is as follows:</p>
		<table class="classic" style="background:#f8f8f8">
			<tr style="background:#eee">
				<td colspan="11" rowspan="1" style="text-align:center">
					<strong>vEventChainInstanceInfo</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">eventChainName</th>
				<th colspan="1" rowspan="1">ecInstance</th>
				<th colspan="1" rowspan="1">stimulusTimestamp</th>
				<th colspan="1" rowspan="1">stimulusEntityName</th>
				<th colspan="1" rowspan="1">stimulusEntityInstance</th>
				<th colspan="1" rowspan="1">stimulusEvent</th>
				<th colspan="1" rowspan="1">responseTimestamp</th>
				<th colspan="1" rowspan="1">responseEntityName</th>
				<th colspan="1" rowspan="1">responseEntityInstance</th>
				<th colspan="1" rowspan="1">responseEvent</th>
				<th colspan="1" rowspan="1">latencyType</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">100</td>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1">55800</td>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1">age/reaction</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">100</td>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1">20800</td>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1">age/reaction</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment2</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">20800</td>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1">45100</td>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1">age/reaction</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment3</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">45100</td>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1">55800</td>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1">age/reaction</td>
			</tr>
		</table>


<h4><a id="section2.3.12.4"></a>Metrics on the Trace</h4>
		<p>There are numerous metrics for entities. The most important ones include the times that each entity instance remains in a specific state (according to their corresponding BTF state automaton). In addition to these metrics, there are also some counting metrics (e.g. how often a specific task instance was preempted). Lastly, there are also metrics for specific entity types and instances, e.g., the latency for a specific event chain instance (either age or reaction). The metrics themselves and these entity instance specific metrics for our example are listed in the following:</p>
		<table class="classic" style="background:#f8f8f8">
			<tr style="background:#eee">
				<td colspan="3" rowspan="1" style="text-align:center">
					<strong>Metric</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">id</th>
				<th colspan="1" rowspan="1">name</th>
				<th colspan="1" rowspan="1">dimension</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">startDelayTime</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">2</td>
				<td colspan="1" rowspan="1">runningTime</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">3</td>
				<td colspan="1" rowspan="1">pollingTime</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">4</td>
				<td colspan="1" rowspan="1">parkingTime</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">5</td>
				<td colspan="1" rowspan="1">waitingTime</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">6</td>
				<td colspan="1" rowspan="1">readyTime</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">7</td>
				<td colspan="1" rowspan="1">responseTime</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">8</td>
				<td colspan="1" rowspan="1">coreExecutionTime</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">9</td>
				<td colspan="1" rowspan="1">netExecutionTime</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">10</td>
				<td colspan="1" rowspan="1">grossExecutionTime</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">11</td>
				<td colspan="1" rowspan="1">activateToActivate</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">12</td>
				<td colspan="1" rowspan="1">startToStart</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">13</td>
				<td colspan="1" rowspan="1">endToEnd</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">14</td>
				<td colspan="1" rowspan="1">endToStart</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">15</td>
				<td colspan="1" rowspan="1">slack</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">16</td>
				<td colspan="1" rowspan="1">activations</td>
				<td colspan="1" rowspan="1">count</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">17</td>
				<td colspan="1" rowspan="1">preemptions</td>
				<td colspan="1" rowspan="1">count</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">18</td>
				<td colspan="1" rowspan="1">suspensions</td>
				<td colspan="1" rowspan="1">count</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">79</td>
				<td colspan="1" rowspan="1">ageLatency</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">84</td>
				<td colspan="1" rowspan="1">reactionLatency</td>
				<td colspan="1" rowspan="1">time</td>
			</tr>
		</table>
		<p>As indicated by th id numbering, we omitted some of the metrics. These include the respective Min/Max/Avg/StDev of each metric with dimension "time". Here is the view of the entity instance metric values:</p>
		<table class="classic" style="background:#f8f8f8">
			<tr style="background:#eee">
				<td colspan="5" rowspan="1" style="text-align:center">
					<strong>vEntityInstanceMetricValue</strong>
				</td>
			</tr>
			<tr style="background:#eee">
				<th colspan="1" rowspan="1">entityName</th>
				<th colspan="1" rowspan="1">entityType</th>
				<th colspan="1" rowspan="1">entityInstance</th>
				<th colspan="1" rowspan="1">metricName</th>
				<th colspan="1" rowspan="1">value</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">startDelayTime</td>
				<td colspan="1" rowspan="1">100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">runningTime</td>
				<td colspan="1" rowspan="1">40800</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">pollingTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">parkingTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">waitingTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">readyTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">responseTime</td>
				<td colspan="1" rowspan="1">40900</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">coreExecutionTime</td>
				<td colspan="1" rowspan="1">40800</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">netExecutionTime</td>
				<td colspan="1" rowspan="1">40800</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_1</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">grossExecutionTime</td>
				<td colspan="1" rowspan="1">40800</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">startDelayTime</td>
				<td colspan="1" rowspan="1">100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">runningTime</td>
				<td colspan="1" rowspan="1">50100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">pollingTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">parkingTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">waitingTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">readyTime</td>
				<td colspan="1" rowspan="1">10800</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">responseTime</td>
				<td colspan="1" rowspan="1">61000</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">coreExecutionTime</td>
				<td colspan="1" rowspan="1">50100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">netExecutionTime</td>
				<td colspan="1" rowspan="1">50100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_2</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">grossExecutionTime</td>
				<td colspan="1" rowspan="1">60900</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">runningTime</td>
				<td colspan="1" rowspan="1">20700</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_1_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">readyTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_2_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">runningTime</td>
				<td colspan="1" rowspan="1">50100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_2_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">readyTime</td>
				<td colspan="1" rowspan="1">10800</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_1_2</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">runningTime</td>
				<td colspan="1" rowspan="1">20100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_1_2</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">readyTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">startDelayTime</td>
				<td colspan="1" rowspan="1">100</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">runningTime</td>
				<td colspan="1" rowspan="1">10700</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">pollingTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">parkingTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">waitingTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">readyTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">responseTime</td>
				<td colspan="1" rowspan="1">10800</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">coreExecutionTime</td>
				<td colspan="1" rowspan="1">10700</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">netExecutionTime</td>
				<td colspan="1" rowspan="1">10700</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Task_3</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">grossExecutionTime</td>
				<td colspan="1" rowspan="1">10700</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">runningTime</td>
				<td colspan="1" rowspan="1">10700</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable_3_1</td>
				<td colspan="1" rowspan="1">R</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">readyTime</td>
				<td colspan="1" rowspan="1">0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">ageLatency</td>
				<td colspan="1" rowspan="1">55700</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">reactionLatency</td>
				<td colspan="1" rowspan="1">55700</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment1</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">ageLatency</td>
				<td colspan="1" rowspan="1">20700</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment1</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">reactionLatency</td>
				<td colspan="1" rowspan="1">20700</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment2</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">ageLatency</td>
				<td colspan="1" rowspan="1">24300</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment2</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">reactionLatency</td>
				<td colspan="1" rowspan="1">24300</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment3</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">ageLatency</td>
				<td colspan="1" rowspan="1">10700</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EC1_segment3</td>
				<td colspan="1" rowspan="1">EC</td>
				<td colspan="1" rowspan="1">0</td>
				<td colspan="1" rowspan="1">reactionLatency</td>
				<td colspan="1" rowspan="1">10700</td>
			</tr>
		</table>
		<p>Note that since each event chain instance also is either age, reaction, or both, there are two latency metrics to distinguish between the two. There are also cumulated Min/Max/Avg/StDev values calculated from these entity instance metric values. Since there is only one instance of each entity in the example trace the values are all the same, so we omit the EntityMetricValue table here (it has roughly four times as many entries).</p>


<h3 id="example-btf-mta3"><a id="section2.3.13">2.3.13 </a>BTF Example (MultipleTaskActivationLimit 3)</h3>
		<p>To clarify the interpretation of the multipleTaskActivationLimit (MTA) property of tasks, we provide a simple BTF trace example. In this example we focus on one task with an MTA = 3. Here we will show the internal task instance states of each of the three task instances. MTA = 3 means that at any given time only three task instances of the same task shall be active. A fourth activation will just be ignored. So at any given time, according to the BTF process state machine, only three state machines will exist to represent the state of their corresponding task instance.</p>
		<p>Consider the following BTF trace:</p>
		<pre xml:space="preserve"><code>#version 2.2.1
#timeScale ns
0,ECU_1,-1,SIM,SIM,-1,tag,ECU_INIT
0,Processor_1,-1,SIM,SIM,-1,tag,PROCESSOR_INIT
0,Core_1,-1,SIM,SIM,-1,tag,CORE_INIT
0,Core_1,0,C,Core_1,0,set_frequence,10000000
0,Stimulus_Task,0,STI,Stimulus_Task,0,trigger
0,Stimulus_Task,0,T,Task,0,activate
100,Core_1,0,T,Task,0,start
100,Task,0,R,Runnable_1,0,start
19800,Task,0,R,Runnable_1,0,terminate
19800,Task,0,R,Runnable_2,0,start
20000,Stimulus_Task,1,STI,Stimulus_Task,1,trigger
20000,Stimulus_Task,1,T,Task,1,activate
40000,Stimulus_Task,2,STI,Stimulus_Task,2,trigger
40000,Stimulus_Task,2,T,Task,2,activate
42000,Task,0,R,Runnable_2,0,terminate
42000,Core_1,0,T,Task,0,terminate
42100,Core_1,0,T,Task,1,start
42100,Task,1,R,Runnable_1,1,start
</code></pre>
		<p>The corresponding states, at specific points in time are shown in the following. We therefore show the composed state of three state machines for 
			<em>Task</em>, indexed with [1..3]. The light blue colored state is the current state the state machine is in. So at the beginning of the trace the three state machines look like this:
		</p>
		<p>
			<img src="images/mta3example1.svg"/>
		</p>


<h4><a id="section2.3.13.1"></a>State after timestamp 0</h4>
		<p>After Task has been activated 
			<em>Task[1]</em> is now in the state activated and the state machines look like this:
		</p>
		<p>
			<img src="images/mta3example2.svg"/>
		</p>


<h4><a id="section2.3.13.2"></a>State after timestamp 100</h4>
		<p>Once the scheduler decided the task should run, 
			<em>Task</em> starts and, correspondingly, changes its state:
		</p>
		<p>
			<img src="images/mta3example3.svg"/>
		</p>


<h4><a id="section2.3.13.3"></a>State after timestamp 20000</h4>
		<p>Here, a second instance of 
			<em>Task</em> is activated while the first has not yet terminated. So 
			<em>Task[2]</em> enters the activated state:
		</p>
		<p>
			<img src="images/mta3example4.svg"/>
		</p>


<h4><a id="section2.3.13.4"></a>State after timestamp 40000</h4>
		<p>Again, another instance of 
			<em>Task</em> is activated so 
			<em>Task[3]</em> enters the activated state:
		</p>
		<p>
			<img src="images/mta3example5.svg"/>
		</p>


<h4><a id="section2.3.13.5"></a>State after timestamp 42000</h4>
		<p>
			<em>Task[1]</em> has terminated (displayed in grey):
		</p>
		<p>
			<img src="images/mta3example6.svg"/>
		</p>


<h4><a id="section2.3.13.6"></a>State after timestamp 42100</h4>
		<p>Now, there is room for the state machine for the next task instance, we called it 
			<em>Task[4]</em>. Also, the scheduler decided to let 
			<em>Task[2]</em> run:
		</p>
		<p>
			<img src="images/mta3example7.svg"/>
		</p>


<h2><a id="section2.4">2.4 </a>Tutorials</h2>


<h3><a id="section2.4.1">2.4.1 </a>BTF -> AMALTHEA Trace Database (ATDB) Import Example</h3>
		<p>The following section describes how to import an existing Best Trace Format (BTF) file into an AMALTHEA Trace Database (ATDB).</p>
		<p>
			<strong>Step 1</strong>
		</p>
		<p>Consider the following BTF file (stored on the file system as "test1.btf"):</p>
		<pre xml:space="preserve"><code>#version 2.1.5
#timeScale ns
0,ECU_1,-1,SIM,SIM,-1,tag,ECU_INIT
0,Processor_1,-1,SIM,SIM,-1,tag,PROCESSOR_INIT
0,Core_1,-1,SIM,SIM,-1,tag,CORE_INIT
0,Core_2,-1,SIM,SIM,-1,tag,CORE_INIT
0,Core_1,0,C,Core_1,0,set_frequence,10000000
0,Core_2,0,C,Core_2,0,set_frequence,11000000
0,Stimulus_Task_1,0,STI,Stimulus_Task_1,0,trigger
0,Stimulus_Task_1,0,T,Task_1,0,activate
0,Stimulus_Task_2,0,STI,Stimulus_Task_2,0,trigger
0,Stimulus_Task_2,0,T,Task_2,0,activate
100,Core_1,0,T,Task_1,0,start
100,Task_1,0,R,Runnable_1_1,0,start
100,Core_2,0,T,Task_2,0,start
100,Task_2,0,R,Runnable_2_1,0,start
20800,Task_1,0,R,Runnable_1_1,0,terminate
20800,Task_1,0,R,Runnable_1_2,0,start
40900,Task_1,0,R,Runnable_1_2,0,terminate
40900,Core_1,0,T,Task_1,0,terminate
45000,Stimulus_Task_3,0,STI,Stimulus_Task_3,0,trigger
45000,Stimulus_Task_3,0,T,Task_3,0,activate
45100,Task_2,0,R,Runnable_2_1,0,suspend
45100,Core_2,0,T,Task_2,0,preempt
45100,Core_2,0,T,Task_3,0,start
45100,Task_3,0,R,Runnable_3_1,0,start
55800,Task_3,0,R,Runnable_3_1,0,terminate
55800,Core_2,0,T,Task_3,0,terminate
55900,Core_2,0,T,Task_2,0,resume
55900,Task_2,0,R,Runnable_2_1,0,resume
61000,Task_2,0,R,Runnable_2_1,0,terminate
61000,Core_2,0,T,Task_2,0,terminate
</code></pre>
		<p>Create a new empty Eclipse project that shall be used as a target container for the ATDB to imported from the btf file.</p>
		<p>
			<strong>Step 2</strong>
		</p>
		<p>
			<img src="images/project_rightclick_import.png"/>
		</p>
		<p>Right-click on the project folder (in this example, the name of the project is "Test1"). You will see several possible options. In that menu select and click "Import...".
			<br>This will open a dialogue where different available import options are listed.
		</p>
		<p>
			<strong>Step 3</strong>
		</p>
		<p>Open the folder called "AMALTHEA Trace DB" by clicking on cross next to the title. This is shown in the following picture:</p>
		<p>
			<img src="images/atdb_import_wizard_open.png"/>
		</p>
		<p>Select the option "AMALTHEA Trace DB from BTF" and click the "Next" button.</p>
		<p>
			<strong>Step 4</strong>
		</p>
		<p>You are prompted to enter the location of the BTF file you want to import. Click the upper "Browse..." button to navigate your file system and select the "test1.btf" file. If you want to change the target project the ATDB file will be created in, press the lower "Browse..." button and make your choice. If you want the original trace data from the BTF in the data base file, select the option "Persist trace event table". The figure shows the example input:</p>
		<p>
			<img src="images/btf_to_atdb_import_dialog.png"/>
		</p>
		<p>
			<strong>Step 5</strong>
		</p>
		<p>After you have made all required inputs, click on "Finish". This will start the import of the database. Once the transformation is done the dialogue will close and the newly created ATDB file is opened in the Metric Viewer. For our example, this is shown in the following figure:</p>
		<p>
			<img src="images/atdb_in_metric_viewer.png"/>
		</p>


<h3><a id="section2.4.2">2.4.2 </a>AMALTHEA Specification Parts to ATDB Import Example</h3>
		<p>This section describes how to use the information contained in an AMALTHEA model to enrich an existing ATDB with the specification parts (events and event chains).</p>
		<p>
			<strong>Step 1</strong>
		</p>
		<p>Consider the following original AMALTHEA model (called "test1model.amxmi") of which we want to import and analyze the events and event chains in the already existing test1.atdb file.</p>
		<p>
			<img src="images/amxmi_input_test1model.png"/>
		</p>
		<p>
			<strong>Step 2</strong>
		</p>
		<p>Select both files, test1.atdb and test1model.amxmi in the Project Explorer (press and hold Ctrl while clicking on the second file). Right-click on your selection and click "AMALTHEA Specifications -&gt; ATDB" in the contest menu:</p>
		<p>
			<img src="images/amxmi_and_atdb_context_menu_import.png"/>
		</p>
		<p>
			<strong>Step 3</strong>
		</p>
		<p>This will then create and open the enriched ATDB (which is named after the original amxmi file) in the metric viewer.</p>
		<p>
			<img src="images/amxmi_and_atdb_result.png"/>
		</p>
		<p>As can be seen in the picture, there is now metric data about the events and event chains from the test1model.amxmi file.</p>


<h3><a id="section2.4.3">2.4.3 </a>ATDB to AMALTHEA Model Transformation</h3>
		<p>Here, we describes how to use the information contained within an AMALTHEA Trace Database (ATDB) to create an initial AMALTHEA model from it.</p>
		<p>
			<strong>Step 1</strong>
		</p>
		<p>Let us assume there is an ATDB file called "test2.atdb" which contains typical atdb data about a trace and some specification parts (events and event chains):</p>
		<p>
			<img src="images/atdb_to_amxmi_input.png"/>
		</p>
		<p>
			<strong>Step 2</strong>
		</p>
		<p>We now want to create an AMALTHEA model to start out on an initial simulateable model from the contained trace data. For this right-click on the "test2.atdb" file in the Project Explorer:</p>
		<p>
			<img src="images/atdb_to_amxmi_context_menu_import.png"/>
		</p>
		<p>Now, click on "ATDB -&gt; AMALTHEA model".</p>
		<p>
			<strong>Step 3</strong>
		</p>
		<p>This will create a new AMALTHEA model from the ATDB file (here, called "test2.amxmi". The result will contain all information about the software, hardware, events, and event chains that the original ATDB file provided.</p>
		<p>
			<img src="images/atdb_to_amxmi_import_result.png"/>
		</p>


<h2><a id="section2.5">2.5 </a>Editors / Viewers</h2>


<h3><a id="section2.5.1">2.5.1 </a>AMALTHEA Trace Database Metrics Viewer</h3>
		<p>This is a simple viewer that shows how to access the AMALTHEA trace database.</p>
		<p>
			<img src="images/metric-viewer_open.png"/>
		</p>
		<p>The ATDB metrics viewer displays metrics in three tabs: "Process Time Metrics", "Runnable Time Metrics", and "EventChain Time Metrics". The table in each tab displays various time metrics (depending on what events were actually in the source trace). The time metrics are aggregated, i.e., Minimum, Maximum, Average, and Standard Deviation values of the entity instances are shown. For better navigability you can collapse the metric value rows per entity. The following figure shows the metric table for processes:</p>
		<p>
			<img src="images/metric-viewer_table.png"/>
		</p>
		<p>And the next picture shows the same table with the metrics of "Task_1" and "Task_2" collapsed.</p>
		<p>
			<img src="images/metric-viewer_table_collapsed.png"/>
		</p>


<h2><a id="section2.6">2.6 </a>Model Visualization</h2>


<h3><a id="section2.6.1">2.6.1 </a>Usage of AMALTHEA Model Visualization</h3>
		<p>The AMALTHEA Visualization can be opened via</p>
		<ul>
			<li> 
				<i>Window &rarr; Show View &rarr; Other... &rarr; APP4MC &rarr; APP4MC Visualizations</i>, 
			</li>
			<li> or via right click on an element and selecting 
				<i>Open APP4MC Visualization</i>.
			</li>
		</ul>
		<p>Via the context menu it is also possible to open multiple visualization views.</p>
		<p>On selecting a model element, the view will render a corresponding visualization. If multiple visualizations are available, the first one will be selected by default, unless the user has selected another visualization before.</p>
		<p>The visualization view has 3 buttons in the toolbar:</p>
		<ol>
			<li>
				<b>Visualization dropdown</b><br>The dropdown contains all available visualizations for the current active selection. A click on the image will reload the visualization.
			</li>
			<li>
				<b>Pin visualization</b><br>The selection handling will be disabled so the visualization gets not updated on model selection changes.
			</li>
			<li>
				<b>Select model element</b><br>Selects the current visualized model element in the model editor. Useful for example if a visualization is pinned and the selection in the model editor changed.
			</li>
		</ol>
		<p>
			<img src="images/visualization-view.png"/>
		</p>


<h3><a id="section2.6.2">2.6.2 </a>Standard Visualizations</h3>
		<p>APP4MC comes with a set of default model visualizations to show the options and possibilities the visualization framework provides.</p>


<h4><a id="section2.6.2.1"></a>Hardware Model</h4>
		<ul>
			<li>
				<ins>HW Model Block Diagram</ins><br><br>This visualization is intended to provide an overview of the described and used hardware within the system.<br><br>It uses PlantUML and SVG for rendering. Therefore a Graphviz dot.exe needs to be configured via 
				<i>Window – Preferences – PlantUML – Path to the dot executable of Graphviz</i> in order to get the result shown.<br><br>
				<img src="images/hwmodel_hwblockdiagram.png"/>
			</li>
		</ul>


<h4><a id="section2.6.2.2"></a>Software Model</h4>
		<ul>
			<li>
				<ins>SWModel Statistics Visualization</ins><br><br>This is a simple visualization that shows some statistics on the selected Software Model. It is also a simple example to show how to implement a visualization with JavaFX and some animations.<br><br>
				<img src="images/swmodel_statistics.png"/><br><br>
			</li>
		</ul>
		<ul>
			<li>
				<ins>Shared Runnable Label Dependencies</ins><br><br>This visualization paints all 
				<i>Runnables</i> and the read/write dependencies on 
				<i>Labels</i> in a Software Model.<br>Via the buttons on the left edge you can 
				<i>Zoom in (+) / Zoom out (-) / Filter (F)</i> the currently visible 
				<i>Runnables</i>.<br><br>
				<img src="images/swmodel_label_dependencies.png"/>
			</li>
		</ul><ul>
    <li>
        <p>
            <u>Runnable Data Dependencies</u>
            <br>
            <br>
            The purpose of this small - but
            hopefully useful - visualization is to lay out a graph of the
            <i>Runnables</i>
            in a software model based on there data dependencies.
            This means, two runnables are connected by a directed edge if the first
            runnable writes a
            <i>Label</i>
            that is read by the second one.
            Furthermore, some parts of the control flow are expressed by edges. The
            tool colors the graph in order to make it easier for the user to follow
            individual edges.
        </p>
        <p>
            For the visualization to work properly, the path to Graphviz DOT has
            to be set up in the PlantUML preferences. You can access them via
            <i>Window &gt; Preferences...</i>
            and then opening the PlantUML tab.
        </p>
        <p>The buttons in the top row are used to configure the
            visualization.
        </p>
        <ul>
            <li>
                <i>Horizontal Layout:</i>
                Toggle between horizontal
                (left to right) and vertical (top to bottom) layout of the
                graph.
            </li>
            <li>
                <i>Show Labels:</i>
                Show read and written labels of the
                runnables.
            </li>
            <li>
                <i>Show R/W Dependencies:</i>
                Show read/write data
                dependencies between runnables. This is independent from the labels
                being shown.
            </li>
            <li>
                <i>Show Control Flow:</i>
                Show stimuli, inter-process
                triggers, and OS events. Also show the sequence of runnables within a
                task.
            </li>
            <li>
                <i>Show Tasks:</i>
                Group runnables by tasks.
            </li>
            <li>
                <i>Export:</i>
                Export the visualization as an image, or
                as Graphiz DOT. Supported image formats are PDF, SVG, and
                PNG. Output in other formats can be generated by exporting in DOT
                format and running Graphviz manually.
            </li>
            <li>
                <i>+ / -:</i>
                Zoom in/out.
            </li>
        </ul>
        <p>
            For performance reasons, the visualization has been limited to models
            containing at most 200 runnables. This limitation does not apply to
            the
            export of the graph in
            DOT
            format.
        </p>
        <p>
            <img src="images/datadependency_screenshot.png"/>
        </p>
        <p>The table below summarizes which elements are visualized. The
            following elements are considered:
        </p>
        <ul>
            <li>Within a <i>Runnable</i>: <i>LabelAccess</i></li>
            <li>Within a <i>Task</i>:
                    <i>Group</i>, <i>RunnableCall</i>,
                    <i>InterProcessTrigger</i>,
                    <i>WaitEvent</i>,
                    <i>SetEvent</i>
            </li>
        </ul>
        <p>
            Other activity items (e.g. <i>ProbabilitySwitch</i>) are simply
            ignored. Using them may lead to incomplete results.
        </p>
        <table class="classic">
            <tr>
                <td colspan="1" rowspan="1">Runnables</td>
                <td align="center" colspan="1" rowspan="1">
                    <img alt="image" src="images/datadependency_runnable.png"/>
                </td>
            </tr>
            <tr>
                <td colspan="1" rowspan="1">Stimuli</td>
                <td align="center" colspan="1" rowspan="1">
                    <img src="images/datadependency_stimulus.png"/>
                </td>
            </tr>
            <tr>
                <td colspan="1" rowspan="1">Tasks</td>
                <td align="center" colspan="1" rowspan="1">
                    <img src="images/datadependency_task.png"/>
                </td>
            </tr>
            <tr class="odd">
                <td colspan="1" rowspan="1">Data dependencies</td>
                <td align="center" colspan="1" rowspan="1">
                    <img src="images/datadependency_rwdependency.png"/>
                    <br>
                    (colored edges)
                </td>
            </tr>
            <tr>
                <td colspan="1" rowspan="1">Runnable sequence in tasks</td>
                <td align="center" colspan="1" rowspan="1">
                    <img src="images/datadependency_sequence.png"/>
                </td>
            </tr>
            <tr>
                <td colspan="1" rowspan="1">Inter-process stimuli, OS events</td>
                <td align="center" colspan="1" rowspan="1">
                    <img src="images/datadependency_sync.png"/>
                </td>
            </tr>
        </table>
    </li>
</ul>



<h4><a id="section2.6.2.3"></a>Runnable</h4>
		<ul>
			<li>
				<ins>LabelAccess View</ins><br><br>A simple visualization of a 
				<i>Runnable</i> and its 
				<i>Label</i> read/write access. On the left side the 
				<i>Labels</i> are rendered that are accessed for a read operation. On the right side the 
				<i>Labels</i> are rendered that are accessed for a write operation.<br><br>
				<img src="images/runnable_labelaccess.png"/><br><br>
			</li>
		</ul>
		<ul>
			<li>
				<ins>Shared Runnable Label Dependencies</ins><br><br>Visualization of all selected 
				<i>Runnables</i> and their relationships based on 
				<i>Labels</i>. This visualization is an example to verify how to implement a visualization on multi-selection.<br>Via the buttons on the left edge you can 
				<i>Zoom in (+) / Zoom out (-) / Filter (F)</i> the currently visible 
				<i>Runnables</i>.<br><br>
				<img src="images/runnable_sharedlabels.png"/><br><br>
			</li>
		</ul>
		<ul>
			<li>
				<ins>Runnable Label Dependencies</ins><br><br>This visualization shows the current selected 
				<i>Runnable</i> and the 
				<i>Runnables</i> that have a direct dependency via 
				<i>Labels</i>. On the left side the 
				<i>Runnables</i> are rendered that 
				<ins>write</ins> to 
				<i>Labels</i> that are read by the selected 
				<i>Runnable</i>. On the right side the 
				<i>Runnables</i> are rendered that 
				<ins>read</ins> from 
				<i>Labels</i> that were modified by the selected 
				<i>Runnable</i>.<br>Via the buttons on the left edge you can 
				<i>Zoom in (+) / Zoom out (-)</i> the currently visible 
				<i>Runnables</i>.<br><br>
				<img class="scale" src="images/runnable_labeldependencies.png"/>
			</li>
		</ul>


<h4><a id="section2.6.2.4"></a>Deviation</h4>
		<ul>
			<li>
				<ins>Probability Density Diagram</ins><br><br>This visualization provides probability density diagrams for all subclasses of<br> - IContinuousValueDeviation<br> - IDiscreteValueDeviation<br> - ITimeDeviation<br><br>Markers (vertical lines) are shown for lower bound, upper bound and average.<br><br>Changed values in the Properties view lead to an update of the diagram.<br><br>
				<img src="images/deviation_boundaries.png"/> 
				<img src="images/deviation_statistics.png"/> 
				<img src="images/deviation_histogram.png"/> 
				<img src="images/deviation_gauss.png"/> 
				<img src="images/deviation_beta.png"/> 
				<img src="images/deviation_weibull.png"/>
			</li>
		</ul>


<h4><a id="section2.6.2.5"></a>Mapping</h4>
		<ul>
			<li>
				<ins>Scheduler Mapping Table</ins><br><br>This visualization shows a (hierarchical) table of schedulers, processing units and processes.<br><br>
				<img src="images/mapping_schedulers.png"/>
			</li>
		</ul>


<h2><a id="section2.7">2.7 </a>Model Validation</h2>


<h3><a id="section2.7.1">2.7.1 </a>Usage of AMALTHEA Model Validation</h3>
		<p>The AMALTHEA model validation can be triggered by clicking on the "Validate" button of the Amalthea editor.</p>
		<p>
			<img src="images/profile_selection_dialog.png"/>
		</p>
		<p>The dialog shows a list of profiles allowing the selection of specific validations.</p>
		<p>The validation is either applied to all elements of the model (default: folder scope) or only to the elements of the current file.</p>
		<p>If an error is found, it is shown in the Problems view of Eclipse. A simple double click on the error will lead you to the affected elements in the AMALTHEA model. The validation distinguishes between three error types: 
			<i>errors</i>, 
			<i>warnings</i> and 
			<i>info</i>.
		</p>


<h3><a id="section2.7.2">2.7.2 </a>Included Validations</h3>


<h4><a id="section2.7.2.1"></a>Amalthea Standard Validations</h4>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.standard.AmaltheaProfile</code><br>
			<br>
			<b>Amalthea Standard Validations</b>
			<br>
			<i>Standard validations for AMALTHEA models to ensure data consistency.</i>
		</p>
		<ul>
			<li>Profiles:
				<ul>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.standard.BasicProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.standard.ConstraintsProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.standard.EMFProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.standard.HardwareProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.standard.MappingProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.standard.OSProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.standard.SoftwareProfile</code>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.standard.BasicProfile</code><br>
			<br>
			<b>Basic Validations</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>AM-Basic-Counter (ERROR – Counter)
						<ul>
							<li>The offset value of a counter must not be negative</li>
						</ul>
					</li>
					<li>AM-Basic-Data-Size (ERROR – DataSize)
						<ul>
							<li>Some data sizes have to fulfill the condition &gt;0 or &gt;=0</li>
						</ul>
					</li>
					<li>AM-Basic-Frequency (ERROR – Frequency)
						<ul>
							<li>Some frequencies have to fulfill the condition &gt;0</li>
						</ul>
					</li>
					<li>AM-Basic-Quantity (ERROR – Quantity)
						<ul>
							<li>Quantity unit has to be set (
								<em>undefined</em> is an error)
							</li>
						</ul>
					</li>
					<li>AM-Basic-Time-Range (ERROR – Time)
						<ul>
							<li>Some time ranges has to fulfill the condition &gt;0 or &gt;=0</li>
						</ul>
					</li>
					<li>AM-Basic-CustomProperty-Key (WARNING – IAnnotatable)
						<ul>
							<li>Custom property keys have to be unique</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.standard.ConstraintsProfile</code><br>
			<br>
			<b>Constraints Validations</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>AM-Constraints-EventChain (ERROR – AbstractEventChain)
						<ul>
							<li>Stimulus and response shall not reference the same event</li>
							<li>The response of the last segment has to be the same as the response of the event chain</li>
							<li>The stimulus of other segments have to be equal to the response of the previous segment</li>
							<li>The stimulus of the first segment has to be the same as the stimulus of the event chain</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.standard.EMFProfile</code><br>
			<br>
			<b>Amalthea EMF Validations</b>
			<br>
			<i>Standard EMF validations for AMALTHEA models (generated).</i>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>AM-EMF-INTRINSIC (UNDEFINED – EObject)
						<ul>
							<li>AMALTHEA invariants (generated)</li>
							<li>EMF extended metadata constraints (generated)</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.standard.HardwareProfile</code><br>
			<br>
			<b>Hardware Validations</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>AM-HW-AccessPath (ERROR – HwAccessPath)
						<ul>
							<li>HwAccessPath elements must be consistent</li>
							<li>HwAccessPath ranges and memory size must be consistent</li>
						</ul>
					</li>
					<li>AM-HW-Connection (ERROR – HwConnection)
						<ul>
							<li>HwConnections must be linked to HwPorts of the same Interface</li>
							<li>HwConnections must refer to two HwPorts</li>
						</ul>
					</li>
					<li>AM-HW-Definition (ERROR – HwDefinition)
						<ul>
							<li>Only one feature of a category can be referred</li>
						</ul>
					</li>
					<li>AM-HW-Port (ERROR – HwPort)
						<ul>
							<li>A HwPort can only have one (non internal) HwConnection</li>
						</ul>
					</li>
					<li>AM-HW-Structure (ERROR – HwStructure)
						<ul>
							<li>Connections must only refer to contained HwPorts</li>
							<li>Delegated connections always connect HwPorts of the same type</li>
							<li>Inner connections always need one Initiator and one Responder HwPort</li>
						</ul>
					</li>
					<li>AM-HW-Module-Definition (WARNING – HwModule)
						<ul>
							<li>Cache definition must be set</li>
							<li>ConnectionHandler definition must be set</li>
							<li>Memory definition must be set</li>
							<li>ProcessingUnit definition must be set</li>
						</ul>
					</li>
					<li>AM-HW-Port-BitWidth (WARNING – HwPort)
						<ul>
							<li>Bitwidth should be greater than zero</li>
						</ul>
					</li>
					<li>AM-HW-Port-Definition (WARNING – HwPort)
						<ul>
							<li>PortInterface must be set</li>
							<li>PortType must be set</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.standard.MappingProfile</code><br>
			<br>
			<b>Mapping Validations</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>AM-Mapping-ISR-Scheduler (WARNING – ISR)
						<ul>
							<li>An ISR should have an allocation to an interrupt controller</li>
						</ul>
					</li>
					<li>AM-Mapping-Scheduler-Allocation-Hierarchy (WARNING – SchedulerAllocation)
						<ul>
							<li>A child scheduler should only be responsible for a subset of processing units of its ancestors</li>
						</ul>
					</li>
					<li>AM-Mapping-Scheduler-Allocation-Top-Level-Responsibility (WARNING – MappingModel)
						<ul>
							<li>A processing unit should have at most one top level task scheduler and one interrupt controller responsible for it</li>
						</ul>
					</li>
					<li>AM-Mapping-Scheduler-ProcessingUnit (WARNING – Scheduler)
						<ul>
							<li>A top level scheduler should be responsible for at least one processing unit</li>
						</ul>
					</li>
					<li>AM-Mapping-Task-Scheduler (WARNING – Task)
						<ul>
							<li>A task should have an allocation to a task scheduler</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.standard.OSProfile</code><br>
			<br>
			<b>OS Validations</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>AM-OS-Mandatory-Scheduling-Parameters-Set (ERROR – Scheduler)
						<ul>
							<li>Mandatory scheduling parameters must be set</li>
						</ul>
					</li>
					<li>AM-OS-Scheduling-Parameter-Value-Number-Matches-Defined-Multiplicity (ERROR – Entry)
						<ul>
							<li>The number of values of the specified scheduling parameter must match the defined multiplicity in the scheduling parameter definition</li>
						</ul>
					</li>
					<li>AM-OS-Scheduling-Parameter-Value-Type-Matches-Defined-Type (ERROR – Entry)
						<ul>
							<li>The type of the specified scheduling parameter must match the type defined in the scheduling parameter definition</li>
						</ul>
					</li>
					<li>AM-OS-Scheduling-Parameter-Empty-Overriden-Value (WARNING – Entry)
						<ul>
							<li>There should be a value if a default value of a scheduling parameter is overridden</li>
						</ul>
					</li>
					<li>AM-OS-Standard-Scheduler-Definition-Conformance (WARNING – SchedulerDefinition)
						<ul>
							<li>Standard schedulers with their parameters should be modeled as defined by the APP4MC standard scheduler library</li>
						</ul>
					</li>
					<li>AM-OS-Standard-Scheduling-Parameter-Definition-Conformance (WARNING – SchedulingParameterDefinition)
						<ul>
							<li>Scheduling parameter definition that are used in a standard scheduler should conform to the parameters defined by the APP4MC standard scheduler library</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.standard.SoftwareProfile</code><br>
			<br>
			<b>Software Validations</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>AM-SW-CallArgument (ERROR – CallArgument)
						<ul>
							<li>The referred runnable must contain the referred parameter</li>
						</ul>
					</li>
					<li>AM-SW-DataDependency (ERROR – DataDependency)
						<ul>
							<li>A data dependency can only be defined for specific types of label accesses, parameters and call arguments</li>
							<li>A data dependency can only refer to specific types of parameters and call arguments</li>
						</ul>
					</li>
					<li>AM-SW-Group (ERROR – Group)
						<ul>
							<li>The uninterruptible group must not contain nested groups</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>


<h4><a id="section2.7.2.2"></a>APP4MC.sim Validations</h4>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.sim.App4mcSimProfile</code><br>
			<br>
			<b>APP4MC.sim Validations</b>
			<br>
			<i>Validations for AMALTHEA models used in a APP4MC.sim simulation.</i>
		</p>
		<ul>
			<li>Profiles:
				<ul>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.sim.SimBasicProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.sim.SimHardwareProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.sim.SimMappingProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.sim.SimOsProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.sim.SimSoftwareProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.standard.AmaltheaProfile</code>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.sim.SimBasicProfile</code><br>
			<br>
			<b>Basic Validations (APP4MC.sim)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>Sim-Basic-Identifiers (ERROR – IReferable)
						<ul>
							<li>All names of IReferable objects must be valid C++ identifier names</li>
						</ul>
					</li>
					<li>TA-Basic-ContinuousValueGaussDistribution-mean (ERROR – ContinuousValueGaussDistribution)
						<ul>
							<li>Mean must not be greater than the upper bound</li>
							<li>Mean must not be less than the lower bound</li>
						</ul>
					</li>
					<li>TA-Basic-DiscreteValueGaussDistribution-mean (ERROR – DiscreteValueGaussDistribution)
						<ul>
							<li>Mean must not be greater than the upper bound</li>
							<li>Mean must not be less than the lower bound</li>
						</ul>
					</li>
					<li>TA-Basic-TimeGaussDistribution-mean (ERROR – TimeGaussDistribution)
						<ul>
							<li>Mean must not be greater than the upper bound</li>
							<li>Mean must not be less than the lower bound</li>
						</ul>
					</li>
					<li>Sim-supported-model-elements (WARNING – EObject)
						<ul>
							<li>Checks that the model elements are supported in APP4MCsim</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.sim.SimHardwareProfile</code><br>
			<br>
			<b>Hardware Validations (APP4MC.sim)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>Inchron-HWModule-MissingClockReference (ERROR – HwModule)
						<ul>
							<li>HW Module must have 'Frequency Domain' reference</li>
						</ul>
					</li>
					<li>Sim-HW-ProcessingUnit (ERROR – ProcessingUnit)
						<ul>
							<li>ProcessingUnit definition must be set</li>
						</ul>
					</li>
					<li>Sim-HW-AccessElement (WARNING – HwAccessElement)
						<ul>
							<li>Either hwAccessPath must be set or at least one of read latency and datarate must be set. Either hwAccessPath must be set or at least one of write latency and datarate must be set.</li>
						</ul>
					</li>
					<li>Sim-HW-Connection (WARNING – HwConnection)
						<ul>
							<li>Either read latency or data rate or both must be set. Either write latency or data rate or both must be set.</li>
						</ul>
					</li>
					<li>Sim-HW-MemoryDefinition (WARNING – MemoryDefinition)
						<ul>
							<li>Either access latency or datarate (or both) must be set</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.sim.SimMappingProfile</code><br>
			<br>
			<b>Mapping Validations (APP4MC.sim)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>AM-Mapping-ISR-Scheduler (ERROR – ISR)
						<ul>
							<li>An ISR should have an allocation to an interrupt controller</li>
						</ul>
					</li>
					<li>AM-Mapping-Scheduler-Allocation-Hierarchy (ERROR – SchedulerAllocation)
						<ul>
							<li>A child scheduler should only be responsible for a subset of processing units of its ancestors</li>
						</ul>
					</li>
					<li>AM-Mapping-Scheduler-Allocation-Top-Level-Responsibility (ERROR – MappingModel)
						<ul>
							<li>A processing unit should have at most one top level task scheduler and one interrupt controller responsible for it</li>
						</ul>
					</li>
					<li>AM-Mapping-Scheduler-ProcessingUnit (ERROR – Scheduler)
						<ul>
							<li>A top level scheduler should be responsible for at least one processing unit</li>
						</ul>
					</li>
					<li>AM-Mapping-Task-Scheduler (ERROR – Task)
						<ul>
							<li>A task should have an allocation to a task scheduler</li>
						</ul>
					</li>
					<li>Sim-Mapping-SchedulerAllocation (WARNING – SchedulerAllocation)
						<ul>
							<li>Executing processing unit must be set</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.sim.SimOsProfile</code><br>
			<br>
			<b>OS model Validations (APP4MC.sim)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>AM-OS-Mandatory-Scheduling-Parameters-Set (ERROR – Scheduler)
						<ul>
							<li>Mandatory scheduling parameters must be set</li>
						</ul>
					</li>
					<li>AM-OS-Scheduling-Parameter-Value-Number-Matches-Defined-Multiplicity (ERROR – Entry)
						<ul>
							<li>The number of values of the specified scheduling parameter must match the defined multiplicity in the scheduling parameter definition</li>
						</ul>
					</li>
					<li>AM-OS-Scheduling-Parameter-Value-Type-Matches-Defined-Type (ERROR – Entry)
						<ul>
							<li>The type of the specified scheduling parameter must match the type defined in the scheduling parameter definition</li>
						</ul>
					</li>
					<li>AM-OS-Standard-Scheduler-Definition-Conformance (ERROR – SchedulerDefinition)
						<ul>
							<li>Standard schedulers with their parameters should be modeled as defined by the APP4MC standard scheduler library</li>
						</ul>
					</li>
					<li>AM-OS-Standard-Scheduling-Parameter-Definition-Conformance (ERROR – SchedulingParameterDefinition)
						<ul>
							<li>Scheduling parameter definition that are used in a standard scheduler should conform to the parameters defined by the APP4MC standard scheduler library</li>
						</ul>
					</li>
					<li>Inchron-OS-PU-Allocation-MustBeDisjunct (INFO – OperatingSystem)
						<ul>
							<li>OS Scheduler to core mapping must be distinct</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.sim.SimSoftwareProfile</code><br>
			<br>
			<b>Software Validations (APP4MC.sim)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>Sim-Software-AbstractMemoryElementIsMapped (ERROR – ModeLabelAccess)
						<ul>
							<li>Checks if modeLabel access type is valid</li>
						</ul>
					</li>
					<li>Sim-Software-AbstractMemoryElementIsMapped (ERROR – Label)
						<ul>
							<li>Checks if label is mapped to a memory node</li>
						</ul>
					</li>
					<li>Sim-Software-AbstractMemoryElementIsMapped (ERROR – Channel)
						<ul>
							<li>Checks if channel is mapped to a Memory</li>
						</ul>
					</li>
					<li>Sim-Software-AbstractMemoryElementIsMapped (ERROR – LabelAccess)
						<ul>
							<li>Checks if label access type is set</li>
						</ul>
					</li>
					<li>Sim-Software-ChannelAccessFeasibility (ERROR – ChannelAccess)
						<ul>
							<li>Checks if a channel access can be performed from certain runnable</li>
						</ul>
					</li>
					<li>Sim-Software-ChannelElements (ERROR – ChannelAccess)
						<ul>
							<li>Checks if channel access's property elements is greater 0</li>
						</ul>
					</li>
					<li>Sim-Software-LabelAccessFeasibility (ERROR – LabelAccess)
						<ul>
							<li>Checks if a label access can be performed from certain runnable</li>
						</ul>
					</li>
					<li>Sim-Software-Process (ERROR – Process)
						<ul>
							<li>At least one stimulus must be set</li>
						</ul>
					</li>
					<li>Inchron-SW-Task-MustHaveActivityGraph (WARNING – Task)
						<ul>
							<li>Task must have atleast one ActivityGraph</li>
						</ul>
					</li>
					<li>Sim-Software-AbstractMemoryElementIsMapped (WARNING – ModeLabel)
						<ul>
							<li>Checks if modeLabel is mapped to a Memory</li>
						</ul>
					</li>
					<li>Sim-Software-ModeLabelAccessFeasibility (WARNING – ModeLabelAccess)
						<ul>
							<li>Checks if a modeLabel access can be performed from certain runnable</li>
						</ul>
					</li>
					<li>TA-Software-ModeConditionConjunctionAlwaysFalse (WARNING – ModeConditionConjunction)</li>
					<li>TA-Software-ModeConditionDisjunctionAlwaysTrue (WARNING – ModeConditionDisjunction)</li>
					<li>Inchron-SW-Runnable-MustHaveActivityGraph (INFO – Runnable)
						<ul>
							<li>Runnable must have at least one ActivityGraph</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>


<h4><a id="section2.7.2.3"></a>Timing Architects Validations</h4>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.ta.TimingArchitectsProfile</code><br>
			<br>
			<b>Timing Architects Validations</b>
			<br>
			<i>Validations for AMALTHEA models used in a Timing Architects Simulation.</i>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>TA-Misc-Semaphore (ERROR – Semaphore)
						<ul>
							<li>Initial value must not be negative</li>
							<li>Max value must be positive</li>
							<li>Max value must not be smaller than the initial value</li>
						</ul>
					</li>
				</ul>
			</li>
			<li>Profiles:
				<ul>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.standard.AmaltheaProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.ta.TABasicProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.ta.TAConstraintsProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.ta.TAHardwareProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.ta.TASoftwareProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.ta.TAStimuliProfile</code>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.ta.TABasicProfile</code><br>
			<br>
			<b>Basic Validations (Timing Architects)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>TA-Basic-ContinuousValueGaussDistribution-mean (ERROR – ContinuousValueGaussDistribution)
						<ul>
							<li>Mean must not be greater than the upper bound</li>
							<li>Mean must not be less than the lower bound</li>
						</ul>
					</li>
					<li>TA-Basic-DiscreteValueGaussDistribution-mean (ERROR – DiscreteValueGaussDistribution)
						<ul>
							<li>Mean must not be greater than the upper bound</li>
							<li>Mean must not be less than the lower bound</li>
						</ul>
					</li>
					<li>TA-Basic-TimeGaussDistribution-mean (ERROR – TimeGaussDistribution)
						<ul>
							<li>Mean must not be greater than the upper bound</li>
							<li>Mean must not be less than the lower bound</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.ta.TAConstraintsProfile</code><br>
			<br>
			<b>Constraints Validations (Timing Architects)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>TA-Constraints-DataAgeTime (ERROR – DataAgeTime)
						<ul>
							<li>Maximum time must not be smaller than minimum time</li>
						</ul>
					</li>
					<li>TA-Constraints-DelayConstraint (ERROR – DelayConstraint)
						<ul>
							<li>Upper bound must not be smaller than lower bound</li>
						</ul>
					</li>
					<li>TA-Constraints-ECLConstraint (ERROR – EventChainLatencyConstraint)
						<ul>
							<li>Maximum must not be smaller than minimum</li>
						</ul>
					</li>
					<li>TA-Constraints-EDFTaskMustHaveDeadline (ERROR – Task)
						<ul>
							<li>EDF tasks must have a deadline requirement</li>
						</ul>
					</li>
					<li>TA-Constraints-RTLimitMustBePositive (ERROR – TimeRequirementLimit)
						<ul>
							<li>Response time must be positive</li>
						</ul>
					</li>
					<li>TA-Constraints-RepetitionConstraint (ERROR – RepetitionConstraint)
						<ul>
							<li>Upper bound must not be smaller than lower bound</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.ta.TAHardwareProfile</code><br>
			<br>
			<b>Hardware Validations (Timing Architects)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>TA-Hardware-HWFIPCMustBePositive (ERROR – HwFeature)
						<ul>
							<li>IPC (instructions per cycle) must be positive</li>
						</ul>
					</li>
					<li>TA-Hardware-PUDIPCMissing (INFO – ProcessingUnitDefinition)
						<ul>
							<li>IPC (instructions per cycle) should be set, otherwise default (1.0) will be assumed</li>
							<li>Only one IPC HwFeature should be specified for a processing unit definition</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.ta.TASoftwareProfile</code><br>
			<br>
			<b>Software Validations (Timing Architects)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>TA-Software-RunnableCall (ERROR – RunnableCall)</li>
					<li>TA-Software-ServerCall (ERROR – ServerCall)</li>
					<li>TA-Stimuli-ArrivalCurveStimulus (ERROR – OsEvent)</li>
					<li>TA-Software-ModeConditionConjunctionAlwaysFalse (WARNING – ModeConditionConjunction)</li>
					<li>TA-Software-ModeConditionDisjunctionAlwaysTrue (WARNING – ModeConditionDisjunction)</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.ta.TAStimuliProfile</code><br>
			<br>
			<b>Stimuli Validations (Timing Architects)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>TA-Stimuli-VariableRateStimulusScenario (ERROR – VariableRateStimulus)
						<ul>
							<li>Scenario must be set</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>


<h4><a id="section2.7.2.4"></a>Inchron Validations</h4>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.inchron.InchronProfile</code><br>
			<br>
			<b>Inchron Validations</b>
			<br>
			<i>Validation for Amalthea models used in Inchron Toolsuite</i>
		</p>
		<ul>
			<li>Profiles:
				<ul>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.inchron.InchronConstraintsProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.inchron.InchronHWProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.inchron.InchronOsProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.inchron.InchronSoftwareProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.inchron.InchronStimuliProfile</code>
					</li>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.standard.AmaltheaProfile</code>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.inchron.InchronConstraintsProfile</code><br>
			<br>
			<b>Constraints Validations (INCHRON)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>Inchron-Constraints-LoadRequirementMissingResource (ERROR – CPUPercentageRequirementLimit)
						<ul>
							<li>CPU load requirement must have hardware context</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.inchron.InchronHWProfile</code><br>
			<br>
			<b>Hardware Validations (INCHRON)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>AM-HW-Port-BitWidth (ERROR – HwPort)
						<ul>
							<li>Bitwidth should be greater than zero</li>
						</ul>
					</li>
					<li>Inchron-HW-Memory-PortTypeResponder (ERROR – Memory)
						<ul>
							<li>HW ports of memory should be of type responder</li>
						</ul>
					</li>
					<li>Inchron-HW-PU-PortTypeInitiator (ERROR – ProcessingUnit)
						<ul>
							<li>HW ports of processing Unit should be of type initiator</li>
						</ul>
					</li>
					<li>Inchron-HWModule-InconsistentPortWidths (ERROR – HwModule)
						<ul>
							<li>HW Module cannot have ports with unequal bitwidth</li>
						</ul>
					</li>
					<li>Inchron-HWModule-MissingClockReference (ERROR – HwModule)
						<ul>
							<li>HW Module must have 'Frequency Domain' reference</li>
						</ul>
					</li>
				</ul>
			</li>
			<li>Profiles:
				<ul>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.standard.HardwareProfile</code>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.inchron.InchronOsProfile</code><br>
			<br>
			<b>Operating Systems Validations (INCHRON)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>Inchron-OS-PU-Allocation-MustBeDisjunct (ERROR – OperatingSystem)
						<ul>
							<li>OS Scheduler to core mapping must be distinct</li>
						</ul>
					</li>
					<li>Inchron-OS-Scheduler-Allocation-DifferentCPU (ERROR – Scheduler)
						<ul>
							<li>OS Task scheduler should not be allocated to more than one HwStructure</li>
						</ul>
					</li>
					<li>Inchron-OS-UserSpecificSchedulerCheck (ERROR – Amalthea)
						<ul>
							<li>User specific task scheduler needs at least one task allocation</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.inchron.InchronSoftwareProfile</code><br>
			<br>
			<b>Software Validations (INCHRON)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>Inchron-SW-Runnable-MustHaveActivityGraph (ERROR – Runnable)
						<ul>
							<li>Runnable must have at least one ActivityGraph</li>
						</ul>
					</li>
					<li>Inchron-SW-Runnable-NotAllocated-DifferentOS (ERROR – Runnable)
						<ul>
							<li>Runnable cannot be scheduled by more than one OS</li>
						</ul>
					</li>
					<li>Inchron-SW-RunnableAllocation-Present (ERROR – RunnableAllocation)
						<ul>
							<li>Runnable allocation is not supported</li>
						</ul>
					</li>
					<li>Inchron-SW-Task-EnforcedMigrationCheck (ERROR – Task)
						<ul>
							<li>Invalid Enforced Migration of a task to a task Scheduler</li>
						</ul>
					</li>
					<li>Inchron-SW-Task-MustHaveActivityGraph (ERROR – Task)
						<ul>
							<li>Task must have atleast one ActivityGraph</li>
						</ul>
					</li>
					<li>Inchron-SW-Task-NotAllocated-DifferentSchedulers (ERROR – Task)
						<ul>
							<li>Task cannot be scheduled by more than one OS</li>
						</ul>
					</li>
				</ul>
			</li>
			<li>Profiles:
				<ul>
					<li>
						<code>org.eclipse.app4mc.amalthea.validations.standard.SoftwareProfile</code>
					</li>
				</ul>
			</li>
		</ul>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<code>org.eclipse.app4mc.amalthea.validations.inchron.InchronStimuliProfile</code><br>
			<br>
			<b>Stimuli Validations (INCHRON)</b>
		</p>
		<ul>
			<li>Validations:
				<ul>
					<li>Inchron-Stimuli-TypeCheck (ERROR – Stimulus)
						<ul>
							<li>Unsupported stimuli types</li>
						</ul>
					</li>
				</ul>
			</li>
		</ul>


<h2><a id="section2.8">2.8 </a>Model Migration</h2>


<h3><a id="section2.8.1">2.8.1 </a>AMALTHEA Model Migration</h3>


<h4><a id="section2.8.1.1"></a>Why model migration is required ?</h4>
		<p>EMF based models are the instances of ECORE meta model (which is updated for each release). </p>
		<p>As there is a tight dependency between model instance and the corresponding meta model, old EMF models can not be loaded with the newer release of meta model.</p>
		<blockquote>
			<p>Example : Due to the change in the namespace of the meta model, loading of model files from prior versions would fail with the latest version</p>
		</blockquote>
		<p>This problem can be solved by explicitly migrating the model files from the prior versions to be compatible to the latest meta model version</p>


<h4><a id="section2.8.1.2"></a>AMALTHEA model migration</h4>
		<p>As described above, same scenario is also applicable for AMALTHEA models as they are instances of EMF based AMALTHEA ECORE meta model.</p>
		<p>For each release of AMALTHEA there will be changes in the meta model contents, due to this it is not possible to load models built from previous releases of AMALTHEA into latest tool distribution.</p>
		<p>
			<strong>Model Migration functionality</strong> is part of this distribution, using this feature it is possible to convert models from previous APP4MC releases to the ones which are compatible to the next versions of AMALTHEA meta model.
		</p>
		<p>
			<em>Only forward migration of models is supported by Model Migration functionality of AMALTHEA</em>
		</p>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<em>
				<span style="color:brown">
					<b>Warning:</b><br>Migration of Amalthea models belonging to legacy versions (ITEA "1.0.3, 1.1.0, 1.1.1") is no longer supported.
				</span>
			</em>
			<br>If there are Amalthea models belonging to legacy versions, use APP4MC version 0.9.2 (or older) and convert the models into a APP4MC model version. These models can still be used as input for model migration.
		</p>


<h3><a id="section2.8.2">2.8.2 </a>Supported versions for model Migration</h3>
		<p>Model migration functionality provides a possibility to migrate the models (
			<em>created from previous releases of AMALTHEA</em> ) to the latest versions.
		</p>
		<p>
			<em>Only forward migration is supported</em>.
		</p>
		<p>
			<b>AMALTHEA meta model versions information</b>
		</p>
		<ul>
			<li>Oldest version to migrate is 
				<b>APP4MC 0.7.0</b><br><br>Beginning with that version, the AMALTHEA meta model is a part of the official Eclipse project 
				<a href="https://www.eclipse.org/app4mc/">APP4MC</a>.
			</li>
		</ul>
		<p>
			<b>Model migration</b>
		</p>
		<p>As described above, only forward migration is supported by the AMALTHEA model migration utility.</p>
		<p>Model migration utility migrates the specified model sequentially to the next versions (step by step) till expected version is reached.</p>
		<p style="padding: 10px; background: #fafafa; border: 1px solid #888; border-radius: 5px">
			<em>
				<span style="color:brown">
					<b>Hint for APP4MC 0.9.3 and newer:</b><br>Migration of Amalthea models belonging to legacy versions (ITEA "1.0.3, 1.1.0, 1.1.1") is no longer supported.
				</span>
			</em>
		</p>
		<p>Below figure represents the steps involved in the migration of model from 0.7.0 version to APP4MC 0.8.1 version:</p>
		<p>
			<img class="scale" src="images/migration_flow.png"/>
		</p>


<h3><a id="section2.8.3">2.8.3 </a>Pre-requisites for AMALTHEA model migration</h3>


<h4 id="migration-vm-args"><a id="section2.8.3.1"></a>VM arguments</h4>
		<p>Default max heap memory (Xmx) used by the APP4MC distribution is 2 GB. In case of migrating huge models, it is recommended to increase this memory to 4 GB before invocation of "AMALTHEA Model Migration" feature</p>
		<p>Follow the below steps to increase the heap memory setting of APP4MC :</p>
		<ul>
			<li>Open 
				<strong>app4mc.ini</strong> file (
				<em>present in the location where APP4MC is installed</em>) and change the parameter -Xmx from 2g to 4g. (
				<em>
					<strong>Note</strong>: In case if APP4MC plugins are integrated inside custom eclipse application, then corresponding &lt;application_name&gt;.ini file -Xmx parameter should be updated as specified below
				</em>)
			</li>
		</ul>
		<img class="gray_scale" src="images/vm_arguments_configuration.png"/>


<h4 id="migration-linked-files"><a id="section2.8.3.2"></a>Linked files in eclipse project (virtual files)</h4>
		<p>In case you want to have linked files in eclipse project, during the drag and drop of the files select 
			<strong>"Link to files"</strong> option in 
			<em>
				<strong>File Operation</strong>
			</em> dialog and uncheck 
			<em>
				<strong>create link locations relative to</strong>
			</em> option
		</p>
		<img class="gray_scale" src="images/linked_files_creation.png"/>


<h3><a id="section2.8.4">2.8.4 </a>How to invoke AMALTHEA model migration</h3>


<h4><a id="section2.8.4.1"></a>Simple migration</h4>
		<p>An attempt to open an older model file in the model editor will show the following dialog.</p>
		<p>
			<img src="images/file-open-dialog.png"/>
		</p>
		<p>The default button will simply migrate the selected file ...</p>
		<ul>
			<li>provided it doesn't have any references (only allowing single file migration)</li>
			<li>the original file is renamed (the version string is added, e.g. "model_0.9.2.amxmi")</li>
			<li>a log file with the current date is created (e.g. "ModelMigration__2019-07-30_15_43_44.log")</li>
		</ul>


<h4><a id="section2.8.4.2"></a>Migration dialog</h4>
		<p>AMALTHEA model migration utility is developed as a eclipse plugin and it is part of APP4MC distribution</p>
		<p>Model migration utility can be invoked by selecting the required models to be migrated in the UI and specifying the target AMALTHEA version to which models should be migrated</p>
		<p>
			<b>Step 1:</b> Selection of AMALTHEA models
		</p>
		<blockquote>
			<p>Possible selections are:
				<br>- a single .amxmi file
				<br>- a folder that contains at least one .amxmi file
				<br>- a project that contains at least one .amxmi file
			</p>
		</blockquote>
		<p>
			<strong>Step 2:</strong> Opening AMALTHEA Model Migration dialog and configuring migration inputs
		</p>
		<p>On click of AMALTHEA Model Migration action, the following Model Migration dialog is opened:</p>
		<p>
			<img class="gray_scale" src="images/migration-menu-dialog.png"/>
		</p>
		<p>Model Migration dialog consists of following information:</p>
		<ol>
			<li>Selected AMALTHEA model files: These are the models which are included in the selection<br>
				<strong>
					<em>Note:</em>
				</strong> The check box "recursive" allows to include the contents of subfolders
			</li>
			<li>Input model versions are displayed in the second column of the table<br>
				<strong>
					<em>Note:</em>
				</strong> In case of different AMALTHEA model versions in one folder, a warning will be shown.
			</li>
			<li>Output model version : This is the AMALTHEA model version to which the selected models files should be migrated to</li>
			<li>If the check box "Create backup file" is checked then a backup file with the same name suffix as in "Simple migration" is created before the migration. Otherwise the migration will be executed in place.</li>
		</ol>
		<p>
			<strong>Step 3:</strong> Model migration
		</p>
		<blockquote>
			<p>Once the required parameters are configured in the model migration dialog, click on "Migrate Models" button in the dialog to invoke migration.</p>
		</blockquote>
		<p>The result of the migration will be shown in a new dialog:</p>
		<p>
			<img class="gray_scale" src="images/migration-result.png"/>
		</p>
		<p>Additionally a log file with the current date is created next to the migrated files (e.g. "ModelMigration__2019-07-30_15_43_44.log").</p>


<h3><a id="section2.8.5">2.8.5 </a>Additional details</h3>
		<p>For details regarding the below topics, refer to the corresponding links:</p>
		<ol>
			<li>
				<a href="#meta-model-changes">How model elements are migrated across various versions ?</a>
			</li>
			<li>
				<a href="#migration-vm-args">How to update max heap memory used by the application ?</a>
			</li>
		</ol>
</article>


<article>
<h1><a id="section3">3 </a>Data Models</h1>


<h2><a id="section3.1">3.1 </a>Model Overview</h2>
		<p>The AMALTHEA data models are related to the activities in a typical design flow. The focus is on design, implementation and optimization of software for multicore systems. The data exchange between the activities is supported by the two main models of AMALTHEA, the System-Model and the Trace-Model.</p>
		<p>
			<img src="images/amalthea_models_actions.png"/>
		</p>
		<p>
			<strong>Modeling</strong>
			<br>The behavior of a component or system is often defined in the form of block diagrams or state charts. Dynamical behavior can also be formalized by differential equations that describe how the state of a system changes over time. Modeling tools like Matlab/Simulink, ASCET or Yakindu allow to simulate the model and to generate software descriptions and implementation.
		</p>
		<p>
			<strong>Partitioning</strong>
			<br>Based on the description of the software behavior (e.g. label accesses, synchronization, ...) this step identifies software units that can be executed in parallel.
		</p>
		<p>
			<strong>System Modeling</strong>
			<br>The structure of the hardware (e.g. cores, memory sizes, ...) and system constraints are added to the model.
			<br>The constraints are limiting the possible results of the next step.
		</p>
		<p>
			<strong>Optimization</strong>
			<br>The activity of assigning executable software units to the cores and mapping data and instructions to memory sections. This step can be done manually or supported by a tool that optimizes the partitioning based on information about the software behavior (e.g. data dependencies, required synchronization, etc.).
		</p>
		<p>
			<strong>Simulation / Software Execution</strong>
			<br>In this step model-based simulation tools evaluate the timing behavior of the software.
			<br>Typically these types of high level simulations are based on the hardware and software description of the system.
			<br>Low level simulators (e.g. instruction set simulators) or real hardware can be used to execute existing software.
			<br>The resulting traces provide additional data that is the basis for a more detailed analysis.
		</p>
		<p>A simplified picture shows the main purpose of the models.</p>
		<p>
			<img src="images/amalthea_models.png" style="width: 500px"/>
		</p>
		<p>The open AMALTHEA models allow custom tooling, interoperability of tools and the combination of different simulation or execution environments.</p>


<h3><a id="section3.1.1">3.1.1 </a>AMALTHEA System Model</h3>
		<p>
			<img src="images/amalthea_system_model.png" style="width: 400px"/>
		</p>
		<p>The System Model contains:</p>
		<p>
			<strong>Hardware / ECU Description</strong>
			<br>Hardware abstraction that includes general information about the hardware. Examples are: Number of cores, features of the cores, available memory, access times (from core x to memory y), etc.
		</p>
		<p>
			<strong>SW Description</strong>
			<br>The description contains information about the static or dynamic behavior the software. This includes: tasks, software components, interfaces, variables, types, etc. It is also possible to describe the characteristics of software functions like the access to variables (read, write, frequency) or the calls to service routines (call tree).
		</p>
		<p>
			<strong>Timing Constraints</strong>
			<br>Timing Constraints like End-to-End Delay, Latency and Synchronization can be formally written in the "TIMMO Timing Augmented Description Language" (TADL). They are derived from timing requirements or control theory.
		</p>
		<p>
			<strong>Mapping Constraints</strong>
			<br>The different cores of a typical embedded multicore ECU have different features. For optimal performance it is necessary to restrict the assignment of some software functions to e.g. cores with fastest I/O connections or the maximum clock rate. For safety reasons it is required that some functions are located on specific cores that e.g. can run in lock step mode. Constraints like this are represented in this sub model.
		</p>
		<p>
			<strong>SW Mapping</strong>
			<br>All information about the assignment of software units (e.g. tasks or runnables) to the cores and about the mapping of data and instructions to memory sections.
		</p>


<h3><a id="section3.1.2">3.1.2 </a>AMALTHEA Trace Model</h3>
		<p>There is no specific EMF data model to describe event traces. The relevant events and their states are represented in the Event Model. In addition special trace formats for multicore have been specified in the AMALTHEA project and a Trace Database has been implemented. This database stores traces in a way that allows fast retrieval of the information (see the Developer Guide for a detailed description of the database structure).</p>


<h3><a id="section3.1.3">3.1.3 </a>Structure of the model</h3>
		<p>The definition of the AMALTHEA data model follows some basic principles:</p>
		<ul>
			<li>The model is defined in one package to simplify the handling (e.g. allow opposite references).</li>
			<li>Different aspects are addressed in different logical sub models.</li>
			<li>Existing EMF models from other Eclipse projects are reused and referenced instead of creating own definitions.</li>
			<li>References are based on unique names within the same type of element.</li>
		</ul>
		<p>We also try to use ticks wherever possible instead of direct time information. This has advantages in a multi-core environment, as the cores could have different clock frequencies.</p>
		<p>The following figure shows the different logical parts of the AMALTHEA data model and how they are referencing each other. The central AMALTHEA model and common model that contains reusable elements are drawn without connections in this diagram.</p>
		<p>
			<img src="images/model_dependencies.png"/>
		</p>


<h2><a id="section3.2">3.2 </a>Model Basics</h2>
		<p>The following classes are used all over the Amalthea model to define specific attributes of the model classes.</p>


<h3 id="basics-custom-props"><a id="section3.2.1">3.2.1 </a>Custom Properties</h3>
		<p>The 
			<i>CustomProperty</i> element is used to define own properties that are not (yet) available in AMALTHEA. If there is the need to extend an element or to store tool information related to processing steps, 
			<i>CustomProperties</i> can be used to store this type of information. It also provides the possibility to work with prototypical approaches that later (if established and more stable) can be integrated in the standard model.
		</p>
		<p>
			<img src="images/model_common_custom_property.png"/>
		</p>
		<p>The elements are stored in a 
			<i>HashMap</i>. The values can be of different types as shown in the structure picture, like String, Integer, Boolean...
			<br>In addition a 
			<i>ReferenceObject</i> is available to store own references to other 
			<i>EObject</i> elements.
			<br>The 
			<i>ListObject</i> can be used to store multi-valued custom properties and the 
			<i>MapObject</i> allows nested entries.
		</p>
		<p>
			<img class="scale" src="images/model_common_custom_property_value.png"/>
		</p>


<h3><a id="section3.2.2">3.2.2 </a>Time (and Time Unit)</h3>
		<p>The AMALTHEA data model includes a common element to describe time ranges in an easy way, the 
			<i>Time</i> element. The 
			<i>Time</i> class in general allows to define negative time values. If only positive values are expected the AMALTHEA validation will show a warning.
			<br>The 
			<i>Time</i> element can be contained by any other element for specifying attributes to store time information.
			<br>Time units are needed to describe different timing behavior and requirements, like deadlines or offsets of components.
			<br>To support different time ranges, especially different time units, AMALTHEA predefines these types like seconds, milli-seconds, micro-seconds, nano-seconds or pico-seconds.
		</p>
		<p>
			<img class="scale" src="images/model_common_time.png"/>
		</p>


<h3><a id="section3.2.3">3.2.3 </a>Frequency (and Frequency Unit)</h3>
		<p>
			<img class="scale" src="images/model_common_frequency.png"/>
		</p>


<h3><a id="section3.2.4">3.2.4 </a>Data Size (and Data Size Unit)</h3>
		<p>The  
			<i>DataSize</i> (and  
			<i>DataRate</i>) definition contains units and prefixes
		</p>
		<ul>
			<li>according to the SI Standard</li>
			<li>for binary multiples</li>
		</ul><table>
		 <tr>
		 <th colspan="1" rowspan="1" style="padding:15px">International System of Units (SI)</th>
		 <th colspan="1" rowspan="1" style="padding:15px">Prefixes for binary multiples</th>
		 </tr>
		 <tr>
		 <td colspan="1" rowspan="1" style="vertical-align:top; padding:15px"> 
		<table class="classic">
			<tr>
				<td colspan="1" rowspan="1">
					<em>
						<strong>Name</strong>
					</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>
						<strong>Prefix</strong>
					</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>
						<strong>Factor</strong>
					</em>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">kilo</td>
				<td colspan="1" rowspan="1">k</td>
				<td colspan="1" rowspan="1">10<sup>3</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">mega</td>
				<td colspan="1" rowspan="1">M</td>
				<td colspan="1" rowspan="1">10<sup>6</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">giga</td>
				<td colspan="1" rowspan="1">G</td>
				<td colspan="1" rowspan="1">10<sup>9</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">tera</td>
				<td colspan="1" rowspan="1">T</td>
				<td colspan="1" rowspan="1">10<sup>12</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<em>peta</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>P</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>10<sup>15</sup></em>
				</td>
			</tr>
		</table></td>
		 <td colspan="1" rowspan="1" style="vertical-align:top; padding:15px"> 
		<table class="classic">
			<tr>
				<td colspan="1" rowspan="1">
					<em>
						<strong>Name</strong>
					</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>
						<strong>Prefix</strong>
					</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>
						<strong>Factor</strong>
					</em>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">kibi</td>
				<td colspan="1" rowspan="1">Ki</td>
				<td colspan="1" rowspan="1">2<sup>10</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">mebi</td>
				<td colspan="1" rowspan="1">Mi</td>
				<td colspan="1" rowspan="1">2<sup>20</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">gibi</td>
				<td colspan="1" rowspan="1">Gi</td>
				<td colspan="1" rowspan="1">2<sup>30</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">tebi</td>
				<td colspan="1" rowspan="1">Ti</td>
				<td colspan="1" rowspan="1">2<sup>40</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">pebi</td>
				<td colspan="1" rowspan="1">Pi</td>
				<td colspan="1" rowspan="1">2<sup>50</sup></td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<em>exbi</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>Ei</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>2<sup>60</sup></em>
				</td>
			</tr>
		</table></td>
		 </tr>
		 </table>
		<p>The 
			<i>DataSize</i> provides convenience methods to get the size also in bit and byte.
			<br>It is internally converted and can be retrieved in both ways.
		</p>
		<p>
			<img class="scale" src="images/model_common_data_size.png"/> 
		</p>


<h3><a id="section3.2.5">3.2.5 </a>Data Rate (and Data Rate Unit)</h3>
		<p>
			<img class="scale" src="images/model_common_data_rate.png"/> 
		</p>


<h3><a id="section3.2.6">3.2.6 </a>Deviation</h3>
		<p>Deviations used to model constant values, histograms and statistical distributions within AMALTHEA. There is a wide variety of possible use cases, where such a distribution is needed. For example, the variation in runtime of functions can be imitated. Therefore, AMALTHEA currently supports the following statistical distributions:</p>
		<p>
			<img class="scale" src="images/model_common_deviations_abstract.png"/>
		</p>
		<p>The earlier implementation used Generics to support the different use cases. To simplify the usage (via Java API and in the editor) the new implementation provides three different top level interfaces for 
			<strong>Time Deviation</strong>, 
			<strong>Discrete Value Deviation</strong> (integer values) and 
			<strong>Continuous Value Deviation</strong> (float values). They provide specialized methods to handle their values and a common interface to access lower bound, upper bound and average.
			<br>The following image shows the detailed hierarchy of time deviations, the other implementations are built accordingly.
		</p>
		<p>
			<img class="scale" src="images/model_common_deviations_time.png"/>
		</p>


<h4><a id="section3.2.6.1"></a>Boundaries</h4>
		<p>With the 
			<i>Boundaries</i> class it is possible to specify commonly used deviations (scenarios). On the one hand, the scenario specified by the minimum and maximum value between which the sampled values vary. On the other hand, the 
			<i>Sampling Type</i> denotes the specific scenario that is covered. These scenarios are actually defined by a Beta Distribution with preconfigured Alpha and Beta parameters. The following sampling types are available (visualized in the figures below):
		</p>
		<dl>
			<dt>BestCase</dt>
			<dd>Defines the scenario in which most instances should have runtimes close to the specified minimum runtime, but still should consider some more time-consuming outliers up to the set maximum. Alpha = 0.2; Beta = 1.</dd>
			<dt>WorstCase</dt>
			<dd>Defines the scenario in which most instances should have runtimes close to the specified maximum runtime, but still should consider some less time-consuming outliers down to the set minimum. Alpha = 1; Beta = 0.2.</dd>
			<dt>AverageCase</dt>
			<dd>Defines the scenario in which most instances should have runtimes close to the middle between the specified minimum and maximum, but still should consider some more or less time-consuming outliers down to the set minimum or up to the set maximum respectively. Alpha = 2; Beta = 2.</dd>
			<dt>CornerCase</dt>
			<dd>Defines the scenario in which most instances should have runtimes close to the specified minimum and maximum runtime, but still should consider some other time-consuming outliers between those two. Alpha = 0.2; Beta = 0.2.</dd>
			<dt>Uniform</dt>
			<dd>Defines the scenario in which all instances should have runtimes that are uniformly distributed between the specified minimum and maximum. Alpha = 1; Beta = 1.</dd>
		</dl>
		<p>
			<img src="images/model_common_deviation_boundaries_1.png"/>
		</p>
		<p>
			<img src="images/model_common_deviation_boundaries_2.png"/>
		</p>


<h4><a id="section3.2.6.2"></a>Uniform Distribution</h4>
		<p>The uniform distribution is a statistical distribution where the values between the stated lower and upper bound are equally likely to be observed.</p>
		<p>
			<img src="images/model_common_deviation_uniform.png"/>
		</p>


<h4><a id="section3.2.6.3"></a>Gaussian/Normal Distribution</h4>
		<p>The Gaussian/normal distribution is a statistical distribution where the values decrease symmetrically. The maximum value and thus its location is thereby stated by the mean and the rate of decrease is defined by its standard deviation. Since the curves approach zero on either side, an additional upper and lower bound can be added to constraint the values.</p>
		<p>
			<img src="images/model_common_deviation_normal.png"/>
		</p>


<h4><a id="section3.2.6.4"></a>Beta Distribution</h4>
		<p>The Beta distribution is a statistical distribution whose shape is defined by alpha &gt; 0 and beta &gt; 0. That way, the Beta distribution can also be used to model other distributions like for example uniform, normal, or Bernoulli distribution. Since the curves can approach zero or infinity on either side, an additional upper and lower bound can be added to constraint the values.</p>
		<p>
			<img src="images/model_common_deviation_beta.png"/>
		</p>


<h4><a id="section3.2.6.5"></a>Weibull Distribution</h4>
		<p>The Weibull distribution is a statistical distribution whose shape is mathematically defined by kappa &gt; 0 and the scale of the distribution by lambda &gt; 0. In the model, it is parameterized using the mean value, the lower and upper bound, and the probability that a real-valued random variable of that distribution will not take a value less than or equal to a specific value. To calculate the scale and shape parameter for the Weibull distribution from the model parameters, the equation of the mean (see 
			<a href="https://en.wikipedia.org/wiki/Weibull_distribution">Weibull distribution – Wikipedia</a>) is solved for the scale parameter, first. Then, the resulting equation for lambda is plugged into the equation of the cumulative distribution function (CDF) for the Weibull distribution. Finally, the lower and upper bound allow to shift this function and the remaining unknown shape parameter in the equation is numerically approximated until the value of the parameter that constraints the distribution regarding the per mill of remaining values is reached.
		</p>
		<p>
			<img src="images/model_common_deviation_weibull.png"/>
		</p>


<h4><a id="section3.2.6.6"></a>Histogram</h4>
		<p>A histogram represents a distribution containing a limited number of entries (e.g. extracted from a trace). Each entry thereby is an 
			<i>Interval</i> with the extra attribute 
			<i>occurrences</i> which holds the number instances within the interval. The intervals do not have to cover a continuous range nor do they need to have the same interval size. Histograms are useful if there is a limited number of possibilities of valuations, which covers most practical systems. See the following figure for an example of two runnables having a time histogram deviation of their execution times.
		</p>
		<p>
			<img src="images/model_common_deviation_time_histogram.png"/>
		</p>


<h3><a id="section3.2.7">3.2.7 </a>Statistic Elements</h3>
		<p>The contained elements are representing statistical values.
			<br>The values can be set either with a min, avg and max representation using the 
			<i>MinAvgMaxStatistic</i> element.
			<br>The other possibility is to set a single value using the 
			<i>SingleValueStatistic</i> element.
			<br>The minimum and maximum values are set as a normal 
			<i>int</i> value,  the average the single value as 
			<i>float</i>.
		</p>
		<p>
			<img src="images/model_common_statistic.png"/>
		</p>


<h3 id="basics-ticks"><a id="section3.2.8">3.2.8 </a>Ticks</h3>
		<p>Ticks are used to express execution times in a basic way. The number of ticks characterizes the amount of computation that is necessary to execute e.g. a 
			<i>Runnable</i>. The corresponding execution time can be easily calculated if the frequency of the executing 
			<i>ProcessingUnit</i> (PU) is known.The corresponding execution time can be easily calculated if the frequency of the executing 
			<i>ProcessingUnit</i> (PU) is knownexecution time can be easily calculated if the frequency of the executing 
			<i>ProcessingUnit</i> (PU) is known. Depending on the capabilities of a PU the time to execute such an element will differ. If necessary the fundamentally different numbers for specific types of PUs can be stored as extended values in a map.
		</p>
		<p>In the next picture 
			<i>Ticks</i> are shown in more detail.
		</p>
		<p>
			<img src="images/model_common_ticks.png"/>
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>default</i>
				</td>
				<td colspan="1" rowspan="1">The default number of ticks. This value is used if (1) the executing PU is unknown or (2) no extended entry is available for the PU.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>extended</i>
				</td>
				<td colspan="1" rowspan="1">Possibility to store a PU-specific number of ticks.</td>
			</tr>
		</table>


<h3><a id="section3.2.9">3.2.9 </a>Counters</h3>
		<p>The 
			<i>Counter</i> element describes an activation of a target element that happens only every n<sup>th</sup> time.
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>prescaler</i>
				</td>
				<td colspan="1" rowspan="1">Gives the number n for the activation,<br>e.g. if set to 2, the target element is executed every second time.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>offset</i>
				</td>
				<td colspan="1" rowspan="1">Initial shift for the first execution of the target.</td>
			</tr>
		</table>
		<p>If for example 
			<i>prescaler</i> is 5 and 
			<i>offset</i> is 2 it is executed on the 2<sup>nd</sup>, 7<sup>th</sup>, 12<sup>th</sup>, … time.
		</p>
		<p>Counters are available at the following elements:</p>
		<ul>
			<li>Activity graph items:
				<ul>
					<li>
						<i>ClearEvent</i>
					</li>
					<li>
						<i>EnforcedMigration</i>
					</li>
					<li>
						<i>InterProcessActivation</i>
					</li>
					<li>
						<i>SchedulePoint</i>
					</li>
					<li>
						<i>SetEvent</i>
					</li>
					<li>
						<i>TerminateProcess</i>
					</li>
					<li>
						<i>RunnableCall</i>
					</li>
					<li>
						<i>WaitEvent</i>
					</li>
				</ul>
			</li>
			<li>Stimuli:
				<ul>
					<li>
						<i>InterProcess</i>
					</li>
					<li>
						<i>EventStimulus</i>
					</li>
				</ul>
			</li>
		</ul>


<h3><a id="section3.2.10">3.2.10 </a>Conditions</h3>
		<p>Conditions are used to model the conditional execution of high level elements (Runnables, Stimuli) and also the repeated or conditional execution in a detailed activity graph (Switch, WhileLoop). The conditions have a predefined structure of top level disjunction (OR) with conjunctions (AND) or single conditions as contained elements. It is similar to the disjunctive normal form (DNF) of a logical formula.</p>
		<p>
			<img class="scale" src="images/model_common_conditions.png"/>
		</p>
		<p>Use of common conditions:</p>
		<p>
			<img class="scale" src="images/model_common_conditions_references.png"/>
		</p>


<h2><a id="section3.3">3.3 </a>Common Elements</h2>
		<p>The 
			<i>CommonElements</i> model provides a central container for tags and classifiers. These elements are used in many sub models where references to 
			<i>Tags</i> or 
			<i>Classifiers</i> provide a mechanism to annotate objects.
		</p>
		<p>
			<img src="images/model_common_elements.png"/>
		</p>


<h3 id="common-tags"><a id="section3.3.1">3.3.1 </a>Tags</h3>
		<p>Tags are a generic possibility to annotate objects in the AMALTHEA model.</p>
		<p>
			<img src="images/model_common_tag.png"/>
		</p>


<h3 id="common-classifiers"><a id="section3.3.2">3.3.2 </a>Classifiers</h3>
		<p>Classifiers are used to define specific features or abilities of a core or a memory. They are used in the 
			<i>PropertyConstraintsModel</i> to restrict the allocation to cores or the memory mapping.
		</p>
		<p>
			<img src="images/model_common_classifier.png"/>
		</p>


<h3 id="common-namespaces"><a id="section3.3.3">3.3.3 </a>Namespaces</h3>
		<p>Some elements in the data model can refer to a 
			<i>Namespace</i>. A namespace provides a prefix to the name of the element.
		</p>
		<p>
			<img src="images/model_common_elements_namespace_member.png"/>
		</p>


<h2><a id="section3.4">3.4 </a>Components Model</h2>
		<p>The AMALTHEA component model is central accessible through the 
			<i>ComponentsModel</i> element.
		</p>
		<p>It holds the following types:</p>
		<ul>
			<li>
				<strong>Components</strong> / 
				<strong>Composites</strong>
			</li>
			<li>
				<strong>Systems</strong>
			</li>
			<li>
				<strong>Interfaces</strong>
			</li>
			<li>
				<strong>Structures</strong>
			</li>
		</ul>
		<p>
			<img class="scale" src="images/model_components.png"/>
		</p>


<h3><a id="section3.4.1">3.4.1 </a>Component Interfaces</h3>
		<p>
			<img class="scale" src="images/model_components_interface.png"/>
		</p>


<h3><a id="section3.4.2">3.4.2 </a>Architecture of Systems / Composites</h3>
		<p>The inner architecture of a System or a Composite is defined with the ISystem interface. Both elements contain component instances and connectors. The ports of the instances and the containing architecture can be identified as QualifiedPort.</p>
		<p>
			<img class="scale" src="images/model_components_composition.png"/>
		</p>


<h3><a id="section3.4.3">3.4.3 </a>Components Model Elements</h3>
		<p>The elements of the Components Model inherit several capabilities from common elements.</p>
		<p>
			<img class="scale" src="images/model_components_common.png"/>
		</p>
		<p>Ports, Components, Composites and ComponentInstances are referable by unique names.
			<br>A Connector also has a name but the name is optional and does not have to be unique.
		</p>


<h4><a id="section3.4.3.1"></a>Component</h4>
		<p>The 'Component' class represents a component. Components could be created directly within the 'ComponentModel' and are used as a type for a component instance.</p>
		<p>
			<img class="scale" src="images/model_components_component_references.png"/>
		</p>
		<p>It contains several ports of type 'Port'. A component refers the classes 'OsEvent', 'Label', 'Runnable' and 'AbstractProcess' from the software model and the class 'Semaphore' from the OS model.</p>


<h4><a id="section3.4.3.2"></a>System and Composite</h4>
		<p>Systems are defined as top level elements within a component model. A system contains several Component- and
			<br>Connection-instances and is used to define the architecture of a technical system. 
		</p>
		<p>A 'Composite' is a special component type to aggregate Component- and Connection-instances compositely.
			<br>So it could be used to create hierarchical component architectures.
		</p>
		<p>System and Composite implement the interface 'ISystem'.
			<br>The following diagram shows the main elements to represent the hierarchical architecture.
		</p>
		<p>
			<img src="images/model_components_isystem.png"/>
		</p>
		<p>In general each inner port should be connected. If a port is intentionally left unconnected it has to be added to the list of 'groundedPorts'.</p>


<h4><a id="section3.4.3.3"></a>ComponentInstance and Connector</h4>
		<p>The 'ComponentInstance' and the 'Connector' can be created within a 'System' or a 'Composite'. 'ComponentInstances' are used to represent instances of component- or composite-types. The 'Connector' class is used to connect the component instances to each other via their Ports. The connector contains a source and target 'QualifiedPort'. </p>
		<p>
			<img class="scale" src="images/model_components_connector.png"/>
		</p>
		<p>To specfiy the implementation details of a connection between ports it is possible to specify an interface/channel pair for each connector. This links additional information from the channel implementation like the access behavior to the connector. The connector can contain multiple interface/channel pairs since an interface can contain multiple sub-interfaces realized by multiple data types implemented by multiple channels.</p>


<h4><a id="section3.4.3.4"></a>QualifiedPort</h4>
		<p>A 'qualified' port refers a 'ComponentInstance' and a 'ComponentPort'.
			<br>If the 'instance' link is null then the QualifiedPort refers to a port of the enclosing composite. 
		</p>


<h4><a id="section3.4.3.5"></a>ComponentPort</h4>
		<p>The 'ComponentPort' class contains the attribute 'kind' to set the port direction.
			<br>The attribute 'interface name' can be used to refer to an external definition, e.g. described in detail with the Franca IDL. 
		</p>


<h4><a id="section3.4.3.6"></a>Structures</h4>
		<p>Structures enables structuring/ordering of components, composites and interfaces. In contrasts to namespaces the structure does not add to the qualified name but supports the design of a hierarchical structure to order the elements in a package/folder like scheme.</p>


<h3><a id="section3.4.4">3.4.4 </a>Example</h3>


<h4><a id="section3.4.4.1"></a>Diagram</h4>
		<p>The diagram of the example shows a composite 'A' that contains two component instances 'X' and 'Y' of type 'B'. The connections between the ports are named 'c1' to 'c4'. The grounded port 'in_3' of instance 'X' (intentionally left unconnected) is marked green. The second unconnected port 'in_2' of instance 'Y' is unspecified. It is marked red and has to be changed, either declared as grounded or connected to another port. </p>
		<p>
			<img src="images/model_components_example.png"/>
		</p>


<h4><a id="section3.4.4.2"></a>Model Editor</h4>
		<p>The same example is shown in the standard AMALTHEA editor.</p>
		<p>
			<img src="images/model_components_example_treeview.png"/>
		</p>


<h2><a id="section3.5">3.5 </a>Configuration Model</h2>
		<p>The purpose of the configuration model is to provide a common mechanism for configuration purposes. The included configurations can contain elements for further processing or build steps.</p>
		<p>The central element is the 
			<i>ConfigModel</i> class.
		</p>
		<p>Currently the only configuration object is 
			<i>EventConfig</i>.
		</p>
		<p>
			<img src="images/model_config_overview.png"/>
		</p>


<h3><a id="section3.5.1">3.5.1 </a>Event Configuration</h3>
		<p>The event configuration represents target events to trace, either in a simulation or on a target hardware platform. The 
			<i>EventConfig</i> elements are contained in the ConfigModel class as list with the name 
			<i>eventsToTrace</i>. Attributes of 
			<i>EventConfig</i> are:
		</p>
		<ol>
			<li>
				<i>name</i>: (optional) name of the element
			</li>
			<li>
				<i>event</i>: reference to an existing events in the 
				<i>Events</i> model
			</li>
		</ol>


<h4><a id="section3.5.1.1"></a>Sample</h4>
		<p>An example use case can be to trace all 
			<i>Process</i> activate events. To express this in the configuration, one contained element must be of type 
			<i>EventConfig</i> with the corresponding 
			<i>Event</i> pointing to an already existent element. The 
			<i>Event</i> is of type 
			<i>ProcessEvent</i> and the 
			<i>ProcessEventType</i> is set to 
			<i>activate</i>. The other attributes are left blank to not limit the configuration to one 
			<i>Process</i> with a given name for example.
		</p>
		<p>The consumer of the configuration must then match and filter the relevant elements for further processing.</p>
		<p>The following screenshot is showing this minimal configuration.</p>
		<p>
			<img src="images/model_config_sample.png"/>
		</p>


<h2><a id="section3.6">3.6 </a>Constraints Model</h2>
		<p>The constraints model contains different kind of constraints. There are the runnable-sequencing-constraints that can be used to define a required order for the runnables of the Software Model, the affinity constraints for defining the constraints for the mapping of runnables, processes and schedulers, and the timing constraints for restricting the time span between events or the duration of event chains. Regarding to that, it is also possible to define event chains in this model. </p>
		<p>
			<img src="images/model_constraints.png"/>
		</p>


<h3><a id="section3.6.1">3.6.1 </a>Requirements</h3>
		<p>The Requirements are used to specify quality requirements for the dynamic architecture. 
			<br>Requirements are divided into the following types depending on the entity type for which the requirement is specified:
		</p>
		<ul>
			<li>Architecture Requirements for components</li>
			<li>Process Chain Requirements for process chains</li>
			<li>Process Requirements for tasks and ISRs</li>
			<li>Runnable Requirements for runnables</li>
		</ul>
		<p>The Severity attribute is used to describe the quality impact if the requirement is not fulfilled.
			<br>The Limit defines the metric, the value, and whether the value for the metric is an upper or a lower bound. 
			<br>Depending on the metric unit, the following Limits can be distinguished:
		</p>
		<ul>
			<li>Count Requirement Limit for metrics that count system actions</li>
			<li>CPU Percentage Requirement Limit for metrics that specify relative CPU characteristics</li>
			<li>Frequency Requirement Limit for metrics that measure the frequency of system actions</li>
			<li>Percentage Requirement Limit for metrics that specify relative system characteristics</li>
			<li>Time Requirement Limit for metrics that describe time intervals</li>
		</ul>
		<p>
			<img class="scale" src="images/model_constraints_requirements.png"/>
		</p>
		<p>Time Metric groups all metrics that describe time intervals of an individual process instance or between two succeeding process instances and are defined here. Note that the colors of the various time slices depicted here, directly correspond to the states and colors from the BTF specification. The metrics for individual process instances include the following:</p>
		<ul>
			<li>
				<i>
					<b>CoreExecutionTime</b>
				</i>: This metric quantifies the amount of time of a process instance between its start and termination in which it is actively executed on a specific processing unit.<br> 
				<img src="images/model_constraints_metric_coreexecutiontime.png"/>
			</li>
			<li>
				<i>
					<b>GrossExecutionTime</b>
				</i>: This metric indicates the time interval between the start moment and the termination moment of a process instance.<br> 
				<img src="images/model_constraints_metric_grossexecutiontime.png"/>
			</li>
			<li>
				<i>
					<b>Lateness</b>
				</i>: This metric indicates whether a process instance misses its deadline. It quantifies the amount of time between the termination moment of the process instance and its deadline. Thus, the resulting lateness is negative and indicates that no deadline miss occurred if the termination moment of the process instance is before the deadline and vice versa.<br> 
				<img src="images/model_constraints_metric_lateness.png"/>
			</li>
			<li>
				<i>
					<b>MemoryAccessTime</b>
				</i>: This metric quantifies the amount of time that is required by a process for transferring data from or to the memory.
			</li>
			<li>
				<i>
					<b>NetExecutionTime</b>
				</i>: The net execution time indicates the actual execution time of a process instance, i.e., the time it is occupying a processing unit. Thus, it quantifies the time from the start moment of a process instance to its termination moment excluding the time the process instance is interfered.<br> 
				<img src="images/model_constraints_metric_netexecutiontime.png"/>
			</li>
			<li>
				<i>
					<b>OsOverhead</b>
				</i>: This metric indicates the amount of execution time that is consumed by functions that are part of the operating system.
			</li>
			<li>
				<i>
					<b>ParkingTime</b>
				</i>: This metric quantifies the amount of time that a process instance spends between its start and termination passively waiting for the access of a resource.<br> 
				<img src="images/model_constraints_metric_parkingtime.png"/>
			</li>
			<li>
				<i>
					<b>PollingTime</b>
				</i>: This metric quantifies the amount of time that a process instance spends between its start and termination actively waiting for the access of a resource.<br> 
				<img src="images/model_constraints_metric_pollingtime.png"/>
			</li>
			<li>
				<i>
					<b>ReadyTime</b>
				</i>: This metric quantifies the amount of time of a process instance between its start and termination in which it is not actively executed on any processing unit.<br> 
				<img src="images/model_constraints_metric_readytime.png"/>
			</li>
			<li>
				<i>
					<b>ResponseTime</b>
				</i>: The response time of a task or ISR instance is defined as the time between the moment of its activation and its termination. Thus, it measures the whole life cycle of a process instance.<br> 
				<img src="images/model_constraints_metric_responsetime.png"/>
			</li>
			<li>
				<i>
					<b>RunningTime</b>
				</i>: This metric quantifies the amount of time of a process instance between its start and termination in which it is actively executed on any processing unit.<br> 
				<img src="images/model_constraints_metric_runningtime.png"/>
			</li>
			<li>
				<i>
					<b>StartDelay</b>
				</i>: This metric quantifies the delay of the start time of a process instance which is defined as the time interval between the activation moment of this process instance and its start moment.<br> 
				<img src="images/model_constraints_metric_startdelay.png"/>
			</li>
			<li>
				<i>
					<b>WaitingTime</b>
				</i>: This metric quantifies the amount of time that a process instance spends between its start and termination passively waiting for an OS event.<br> 
				<img src="images/model_constraints_metric_waitingtime.png"/>
			</li>
		</ul>
		<p>Inter process instance metrics include the following:</p>
		<ul>
			<li>
				<i>
					<b>ActivateToActivate</b>
				</i>: This metric indicates the distance between two successive activations of a task or isr. The 
				<i>ActivateToActivate</i> metric of process instance n quantifies the time between the activation moment of process instance n and that of instance n+1.<br> 
				<img src="images/model_constraints_metric_activatetoactivate.png"/>
			</li>
			<li>
				<i>
					<b>EndToEnd</b>
				</i>: This metric indicates the time interval between two successive ends of a process. The 
				<i>EndToEnd</i> metric of process instance n quantifies the time between the termination moment of process instance n and that of instance n+1.<br> 
				<img src="images/model_constraints_metric_endtoend.png"/>
			</li>
			<li>
				<i>
					<b>EndToStart</b>
				</i>: This metric indicates the time interval between two successive process instances. The 
				<i>EndToStart</i> metric of process instance n quantifies the time between the termination moment of process instance n and the start moment of instance n+1.<br> 
				<img src="images/model_constraints_metric_endtostart.png"/>
			</li>
			<li>
				<i>
					<b>StartToStart</b>
				</i>: This metric indicates the time interval between two successive starts of a process. The 
				<i>StartToStart</i> metric of process instance n quantifies the time between the start moment of process instance n and that of instance n+1.<br> 
				<img src="images/model_constraints_metric_starttostart.png"/>
			</li>
		</ul>
		<p>Count Metrics are metrics that describe absolutely how often system characteristics occur and are defined as follows:</p>
		<ul>
			<li>
				<i>
					<b>Activations</b>
				</i>: This metric quantifies the number of times a process is activated.
			</li>
			<li>
				<i>
					<b>BoundedMigrations</b>
				</i>: This metric quantifies the number of times a process instance starts executing on a processing unit that is different to the processing unit on which the previous process instance terminated.
			</li>
			<li>
				<i>
					<b>CacheHit</b>
				</i>: This metric quantifies the amount of times that data requested by a process is found in the cache memory.
			</li>
			<li>
				<i>
					<b>CacheMiss</b>
				</i>: This metric quantifies the amount of times that data requested by a process is not stored in the cache memory and has to be fetched from somewhere else.
			</li>
			<li>
				<i>
					<b>FullMigrations</b>
				</i>: This metric quantifies the number of times a process instance migrates from one processing unit to another triggered by a schedule point.
			</li>
			<li>
				<i>
					<b>MtaLimitExceeding</b>
				</i>: This metric quantifies the number of times a process is not activated during runtime because this would violate the maximum number of concurrently activated processes (MTA).
			</li>
			<li>
				<i>
					<b>Preemptions</b>
				</i>: This metric quantifies the number of times a process is preempted by another task or ISR.
			</li>
		</ul>
		<p>Frequency Metric groups all metrics that describe the rate in which system characteristics occur and are defined as follows:</p>
		<ul>
			<li>
				<i>
					<b>CacheHitFrequency</b>
				</i>: This metric quantifies how often per unit of time data requested by a process is found in the cache memory.
			</li>
			<li>
				<i>
					<b>CacheMissFrequency</b>
				</i>: This metric quantifies how often per unit of time data requested by a process is not found in the cache memory.
			</li>
		</ul>
		<p>CPU Percentage Metric groups all metrics that describe a ratio between the amount of time a processing unit is in a certain state for a specific process and the maximum capacity of the considered processing unit and are defined as follows:</p>
		<ul>
			<li>
				<i>
					<b>CPUBuffering</b>
				</i>: This metric quantifies the ratio between the amount of time a processing unit is in the state buffering for a specific process and the maximum capacity of the considered processing unit.
			</li>
			<li>
				<i>
					<b>CPULoad</b>
				</i>: This metric quantifies the ratio of the load of a processing unit caused by a process and the maximum capacity of the considered processing unit.
			</li>
			<li>
				<i>
					<b>CPUParking</b>
				</i>: This metric quantifies the ratio between the amount of time a processing unit is in the state parking for a specific process and the maximum capacity of the considered processing unit.
			</li>
			<li>
				<i>
					<b>CPUPolling</b>
				</i>: This metric quantifies the ratio between the amount of time a processing unit is in the state polling for a specific process and the maximum capacity of the considered processing unit. 
			</li>
			<li>
				<i>
					<b>CPUReady</b>
				</i>: This metric quantifies the ratio between the amount of time a processing unit is in the state ready for a specific process and the maximum capacity of the considered processing unit.
			</li>
			<li>
				<i>
					<b>CPURunning</b>
				</i>: This metric quantifies the ratio between the amount of time a processing unit is in the state running for a specific process and the maximum capacity of the considered processing unit.
			</li>
			<li>
				<i>
					<b>CPUWaiting</b>
				</i>: This metric quantifies the ratio between the amount of time a processing unit is in the state waiting for a specific process and the maximum capacity of the considered processing unit.
			</li>
		</ul>
		<p>Percentage Metric groups all metrics that describe a relationship between two system characteristics and are defined as follows: </p>
		<ul>
			<li>
				<i>
					<b>CacheHitRatio</b>
				</i>: This metric quantifies how often data requested by a process is found in the cache memory in comparison to how often it is not found.
			</li>
			<li>
				<i>
					<b>CacheMissRatio</b>
				</i>: This metric quantifies how often data requested by a process is not found in the cache memory in comparison to how often it is found.
			</li>
			<li>
				<i>
					<b>NormalizedLateness</b>
				</i>: This metric quantifies the lateness of a process instance in comparison to the process's maximum response time which is defined by its deadline.
			</li>
			<li>
				<i>
					<b>NormalizedResponseTime</b>
				</i>: This metric quantifies the response time of a process instance in comparison to the process's maximum response time which is defined by its deadline.
			</li>
			<li>
				<i>
					<b>OsOverheadRelative</b>
				</i>: This metric quantifies the amount of execution time that is consumed by functions that are part of the operating system in comparison to net execution time of the process in whose context the functions are called.
			</li>
		</ul>
		<p>An example for a requirement is the deadline for a task. The deadline is specified by an upper limit for the response time of the respective task.</p>


<h3><a id="section3.6.2">3.6.2 </a>Runnable Sequencing Constraints</h3>
		<p>These constraints can be used to define execution orders of runnables or, in other words, the dependencies between runnables. These dependencies can result from data exchange or any functional dependency that is not necessarily visible by other model parameters.</p>
		<p>The following requirements can be specified with this constraint:</p>
		<ul>
			<li>Execution sequence of runnables A  -&gt;B, meaning A has to be finished before B starts</li>
			<li>Scope on certain process/processes, when a runnable is executed multiple times in different process contexts</li>
			<li>Succession of runnables within a process (strict, loose)</li>
			<li>Position of sequence within a process (start, end, any position)</li>
		</ul>
		<p>
			<img src="images/model_constraints_runnable_sequencing.png"/>
		</p>
		<p>A 
			<i>RunnableSequencingConstraint</i> contains a list of 
			<i>ProcessRunnableGroup</i> elements and an enumeration 
			<i>RunnableOrderType</i> describing the basic rule for the sequencing. In general, a runnable sequencing constraint is independent of the processes that execute the runnables. Via the attribute "processScope" it is possible to define that a sequencing constraint is only valid for runnables within just one process or a set of processes.
		</p>
		<p>The 
			<i>ProcessRunnableGroups</i> contain references to runnables that should be sequenced. The sequence is defined by the order of the runnable groups within the sequencing constraint. The order of the runnable references within a group is undefined.
			<br>To sequence two runnables it is consequently necessary to create a 
			<i>RunnableSequencingConstraint</i> with two 
			<i>ProcessRunnableGroups</i>, each referencing one of the runnables.
			<br>To describe that a set of runnables have to be executed before or after another runnable or set of runnables, it is possible to put more than one runnable reference in a group. As already mentioned, the order of the referenced runnables within a 
			<i>ProcessRunnableGroup</i> is unimportant. 
		</p>
		<p>The following picture visualises a 
			<i>RunnableSequencingConstraint</i> and multiple possible runtime situations. The constraint has two runnable groups, each depicted by an ellipsis. In this example, there is just one runnable in each group. The runnables in the groups must be executed in the order of the group ("R1" before "R2"). There is no restriction in which process context the runnables are executed. It is important that the order is correct and that the runnable of one group terminates before the runnable of the next group starts. The exemplary runtime situations shown in the lower part of the figure visualise situations that satisfy this constraint (blue) and those who violate the constraint (red).
		</p>
		<p>
			<img src="images/model_constraints_runnable_sequencing_basic.png"/>
		</p>
		<p>The 
			<i>RunnableSequencingConstraint</i> in the next figure has two processes set as a scope in its second group. That means that the runnable "R3" is allowed to be executed on the processes "P1" or "P3" (blue). But it is only expected to be executed one time in between (red)!
		</p>
		<p>
			<img src="images/model_constraints_runnable_sequencing_scope.png"/>
		</p>
		<p>Each 
			<i>RunnableSequencingConstraint</i> has a 
			<i>RunnableOrderType</i>. It provides the following sequencing modes:
		</p>
		<ul>
			<li>successor</li>
			<li>immediateSuccessorAnySequence</li>
			<li>immediateSuccessorEndSequence</li>
			<li>immediateSuccessorStartSequence</li>
		</ul>
		<p>The meaning of the mode "successor" is that the runnable groups of a sequencing constraint do not have to follow each other directly, i.e., runnables that are not part of the constraint can be executed in between.
			<br>In contrast to this, the modes starting with "immediateSuccessor" express that the runnables referenced by the runnable groups must execute in direct order, so without any runnable in between. With "StartSequence", "AnySequence" and "EndSequence" it is further constrained that the runnables of the constraint have to be executed at the beginning, at the end or at any position in a process.
			<br>Assuming that all runnables are executed on the same process, the mode "immediateSuccessorStartSequence" means that all runnables of the constraint have to be executed in the correct order at the beginning of the process.
			<br>The mode "immediateSuccessorEndSequence" is like "immediateSuccessorStartSequence", but here the runnable sequence must be executed at the end of the process.
		</p>


<h3><a id="section3.6.3">3.6.3 </a>Data Age Constraints</h3>
		<p>Data Age constraints are used to define when the information in a label becomes valid or invalid after its last update. Therefore a runnable and a label has to be set. The information update occurs when the runnable performs a write access on the label. It is possible to define the minimum time after the information of a label update becomes valid. This means that the information shall not be used for further calculations before this time is over. The maximum time on the other hand defines the time after the label update when the information becomes invalid. Beside of time it is possible to define a minimum and maximum cycle. The cycle is related to the activation of the process that executes the runnable. </p>
		<p>
			<img src="images/model_constraints_data_age.png"/>
		</p>
		<ul class="validation-rule">
			<li>DataAgeTime: The 
				<em>Time</em> object in the role of 
				<em>minimumTime</em> must not contain a negative value!
			</li>
			<li>DataAgeTime: The 
				<em>Time</em> object in the role of 
				<em>maximumTime</em> must not contain a negative value!
			</li>
		</ul>


<h3><a id="section3.6.4">3.6.4 </a>Data Coherency Groups</h3>
		<p>A 
			<i>DataCoherencyGroup</i> is used to define data coherency requirements for a group of labels.
			<br>The Direction hereby is used to specify if the labels have to be read or written coherently. Moreover, the scope attribute defines the context of the coherent read or write requirement. Possible scopes are components, processes, and runnables.
		</p>
		<p>
			<img src="images/model_constraints_data_coherency.png"/>
		</p>


<h3><a id="section3.6.5">3.6.5 </a>Data Stability Groups</h3>
		<p>A 
			<i>DataStabilityGroup</i> is used to define that the values of labels have to be kept stable within a given execution context.
			<br>Currently, the following execution contexts are covered by the scope:
		</p>
		<ul>
			<li>Component</li>
			<li>Process</li>
			<li>Runnable</li>
		</ul>
		<p>This means that it has to be guaranteed that the values of labels are identical either within the runnable, the process, or the component in which the denoted labels are accessed.</p>
		<p>
			<img src="images/model_constraints_data_stability.png"/>
		</p>


<h3><a id="section3.6.6">3.6.6 </a>Event Chains</h3>
		<p>The concept for event chains is based on the Timing Augmented Description Language. </p>
		<p>
			<img src="images/model_constraints_eventchain.png"/>
		</p>
		<p>The 
			<i class="Abstract">EventChain</i> consists of 
			<i>EventChainItems</i>. These items are classified in two types:
		</p>
		<ol>
			<li>EventChainReferences -&gt; EventChain: Used to refer to already defined EvenChains.</li>
			<li>EventChainContainers -&gt; SubEventChain: Inner anonymous EventChains, which are only available in the context of the current EventChain.</li>
		</ol>
		<p>An Event Chain object references always two events, a stimulus event and a response event. To define a simple event chain that just contains two events, one event chain object is enough. In this case it would just be a chain that with its stimulus as first event and the response as second event. 
			<br>If more events are required it is necessary to add sub event chains. The stimulus is always the first event of an event chain, the response is always the last event. The events that are defined in the sub event chains are the events in between. 
		</p>
		<p>When adding 
			<i>EventChainItems</i> there are two properties that decide on the semantics of the SubEventChains:
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>EventChainItemType</i>
				</td>
				<td colspan="1" rowspan="1">This property defines how to interpret the subEventChain. There exist two possibilities: 
					<i>sequence</i> and 
					<i>parallel</i>. Sequence means that all the subEventChains are evaluated in the defined order of the list. Parallel path can be alterantive paths or joins.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>minItemsCompleted</i>
				</td>
				<td colspan="1" rowspan="1">Defines how the parallel execution is interpetated. The designer specifies how many elements of the subEventChains must be completed to go to the next step. 
					<i>1</i> represents alternative paths of the EventChain. If the number equals the number of elements in the  
					<i>EventChainItems</i> list all paths must be triggered to continue the event-chain tracking and represents a complete join of all subEventChains
				</td>
			</tr>
		</table>
		<p>
			<strong>Simple structural example for sequence</strong>
		</p>
		<p>
			<img src="images/model_constraints_eventchain_sequence.png" style="width: 750px"/>
		</p>
		<p>
			<strong>Simple structural example for parallel paths</strong>
		</p>
		<p>
			<img src="images/model_constraints_eventchain_parallel.png" style="width: 800px"/>
		</p>
		<p>
			<strong>Structural example how to combine both</strong>
		</p>
		<p>
			<img src="images/model_constraints_eventchain_example.png" style="width: 650px"/>
		</p>
		<p>The picture below shows a simple example for an event chain of four events in a row.
			<br>The top level chain defines the first event (E1) and the last event (E4).
			<br>It contains a number of event chains. They describe the way from E1 to E4. 
			<br>These sub event chains are added as 
			<i>sequence</i> to the parent. 
			<br>For this some rules has to be considered:
			<br>The stimulus of the first child event chain has to be the same as the stimulus of the parent (red in picture).
			<br>The stimulus of other child event chains have to be equal to the response of the previous chain (blue in picture).
			<br>The response of the last child event chain has to be the same as the response of the parent (green in picture).
		</p>
		<p>
			<img src="images/model_constraints_eventchain_segments.png" style="width: 500px"/>
		</p>
		<p>As a stimulus or response event it is either possible to use an Entity Event or an Event Set.
			<br>An Entity Event is a single event regarding to an entity like a task or a runnable. So it can be e.g. the start of a runnable. 
			<br>If a set of events is used, then all events of this group must occur fulfill the event chain. The order in which the events occur is not important. 
		</p>
		<p>
			<img src="images/model_constraints_eventchain_eventgroups.png"/>
		</p>


<h3><a id="section3.6.7">3.6.7 </a>Timing Constraints</h3>


<h4><a id="section3.6.7.1"></a>Synchronization Constraints</h4>
		<p>An 
			<i>EventSynchronizationConstraint</i> describes how tightly the occurrences of a group of events follow each other.
			<br>There must exist a sequence of time windows of width tolerance, such that every occurrence of every event in events belongs to at least one window, and every window is populated by at least one occurrence of every event.
			<br>The parameter 
			<i>multipleOccurrencesAllowed</i> defines, whether for the constraint all occurrences have to be considered or just the subsequent ones.
		</p>
		<p>An 
			<i>EventChainSynchronizationConstraint</i> describes how tightly the occurrences of an event chain follow the occurrences of a different event chain.
			<br>The 
			<i>SynchronizationType</i> defines which parts of the event chains have to be in sync, stimulus or response, and the width of a time window sets the allowed tolerance.
			<br>The parameter 
			<i>multipleOccurrencesAllowed</i> defines, whether for the constraint all occurrences have to be considered or just the subsequent ones.
		</p>
		<p>
			<img src="images/model_constraints_timing_sync.png"/>
		</p>
		<ul class="validation-rule">
			<li>
				<em>SynchronizationConstraint</em>: The 
				<em>Time</em> object in the role of 
				<em>tolerance</em> must not contain a negative value!
			</li>
		</ul>


<h4><a id="section3.6.7.2"></a>Repetition Constraint</h4>
		<p>A 
			<i>RepetitionConstraint</i> describes the distribution of the occurrences of a single event, including jitter.
			<br>Every sequence of span occurrences of event must have a length of at least lower and at most upper time units.
		</p>
		<p>
			<img src="images/model_constraints_timing_repetition.png"/>
		</p>
		<ul class="validation-rule">
			<li>
				<em>RepetitionConstraint</em>: The 
				<em>Time</em> object in the role of 
				<em>lower</em> must not contain a negative value!
			</li>
			<li>
				<em>RepetitionConstraint</em>: The 
				<em>Time</em> object in the role of 
				<em>upper</em> must not contain a negative value!
			</li>
			<li>
				<em>RepetitionConstraint</em>: The 
				<em>Time</em> object in the role of 
				<em>period</em> must not contain a negative value!
			</li>
			<li>
				<em>RepetitionConstraint</em>: The 
				<em>Time</em> object in the role of 
				<em>jitter</em> must not contain a negative value!
			</li>
		</ul>


<h4><a id="section3.6.7.3"></a>Delay Constraint</h4>
		<p>
			<img src="images/model_constraints_timing_delay.png"/>
		</p>
		<ul class="validation-rule">
			<li>
				<em>DelayConstraint</em>: The 
				<em>Time</em> object in the role of 
				<em>lower</em> must not contain a negative value!
			</li>
			<li>
				<em>DelayConstraint</em>: The 
				<em>Time</em> object in the role of 
				<em>upper</em> must not contain a negative value!
			</li>
		</ul>
		<p>A Delay Constraint imposes limits between the occurrences of an event called source and an event called target.
			<br>Every instance of source must be matched by an instance of target within a time window starting at lower and ending at upper time units relative to the source occurrence.
			<br>A 
			<i>MappingType</i> defines whether there is a strong ( 
			<i>OneToOne</i> ), neutral ( 
			<i>Reaction</i> ), or weak ( 
			<i>UniqueReaction</i> ) delay relation between the events:
		</p>
		<ul>
			<li>
				<i>
					<b>OneToOne</b>
				</i>: According to page 18f of 
				<a href="https://itea3.org/project/workpackage/document/download/850/09033-TIMMO-2-USE-WP-2-D11Languagesyntax,semantics,metamodelV2">TIMMO-2-USE Deliverable D11 'Language Syntax, Semantics, Metamodel V2'</a>, a constraint with this mapping type is satisfied if and only if 
				<i>source</i> and 
				<i>target</i> have the same number of occurrences and for each index 
				<i>i</i>, if there is an 
				<i>i</i>-th occurrence of source at time 
				<i>x</i> there is also an 
				<i>i</i>-th occurrence of 
				<i>target</i> at time 
				<i>y</i> such that 
				<i>lower</i> ≤ 
				<i>y</i> - 
				<i>x</i> ≤ 
				<i>upper</i>.<br> This means that the source event and the target event have the same number of occurrences and no stray target occurrences are accepted.
			</li>
		</ul>
		<p>
			<img src="images/model_constraints_delayconstraint_onetoone.png"/>
		</p>
		<ul>
			<li>
				<i>
					<b>Reaction</b>
				</i>: According to page 17f of 
				<a href="https://itea3.org/project/workpackage/document/download/850/09033-TIMMO-2-USE-WP-2-D11Languagesyntax,semantics,metamodelV2">TIMMO-2-USE Deliverable D11 'Language Syntax, Semantics, Metamodel V2'</a>, a constraint with this mapping type is satisfied if and only if for each occurrence 
				<i>x</i> of 
				<i>source</i>, there is an occurrence 
				<i>y</i> of 
				<i>target</i> such that 
				<i>lower</i> ≤ 
				<i>y</i> - 
				<i>x</i> ≤ 
				<i>upper</i>.<br> This means that multiple source event occurrences may be mapped to the same target event and stray target event occurrences are ignored.
			</li>
		</ul>
		<p>
			<img src="images/model_constraints_delayconstraint_reaction.png"/>
		</p>
		<ul>
			<li>
				<i>
					<b>UniqueReaction</b>
				</i>: This mapping type is a mixture of the previous types by specifying that for every occurrence of the source event exactly one target event must occur within the defined time span. Thus, target events may not be shared between source events and stray target events violate the requirement. In contrast to the 
				<i>OneToOne</i> mapping case, the source event is not mapped to the first source event but is dropped as a violation, if a target event is missed.
			</li>
		</ul>
		<p>
			<img src="images/model_constraints_delayconstraint_uniquereaction.png"/>
		</p>


<h4><a id="section3.6.7.4"></a>Event Chain Latency Constraint</h4>
		<p>An 
			<i>EventChainLatencyConstraint</i> defines how long before each response a corresponding stimulus must have occurred ( 
			<i>Age</i> ), or how long after a stimulus a corresponding response must occur ( 
			<i>Reaction</i> ).
			<br>It always refers to an EventChain.
		</p>
		<p>
			<img src="images/model_constraints_timing_latency.png"/>
		</p>
		<ul class="validation-rule">
			<li>
				<em>EventChainLatencyConstraint</em>: The 
				<em>Time</em> object in the role of 
				<em>minimum</em> must not contain a negative value!
			</li>
			<li>
				<em>EventChainLatencyConstraint</em>: The 
				<em>Time</em> object in the role of 
				<em>maximum</em> must not contain a negative value!
			</li>
		</ul>


<h3><a id="section3.6.8">3.6.8 </a>Affinity Constraints</h3>
		<p>Affinity constraints are used to define the mapping of executable objects to each other.
			<br>The objects that can be mapped are:
		</p>
		<ul>
			<li>Runnables</li>
			<li>Processes (Task or ISR)</li>
			<li>Labels</li>
		</ul>
		<p>
			<img src="images/model_constraints_affinity.png"/>
		</p>
		<p>An affinity constraint can either be a pairing or a separation constraint. A pairing constraint contains one amount of objects and a target. The pairing constraints say "All these objects must run together on this target". A separation constraint contains two groups of objects and a target. It says "This group of objects is not allowed to be mapped with the other group of objects on the specific target". So the separation constraint can be used to forbid a combination of objects on a target. It can also be used to say "These objects are not allowed to be mapped on this target". In this case only one group of the separation constraint is used.</p>
		<p>Each affinity constraint has one or more targets. The type of the target depends on the type that should be mapped.</p>


<h4><a id="section3.6.8.1"></a>Data Affinity Constraints</h4>
		<p>A 
			<i>DataConstraint</i> is used to define the mapping of label objects to memory units.
		</p>
		<p>
			<img src="images/model_constraints_affinity_data.png"/>
		</p>


<h4><a id="section3.6.8.2"></a>Process Affinity Constraints</h4>
		<p>A 
			<i>ProcessConstraint</i> is used to define the mapping of process (Task or ISR) objects to processing cores or scheduling units.
		</p>
		<p>
			<img src="images/model_constraints_affinity_process.png"/>
		</p>


<h4><a id="section3.6.8.3"></a>Runnable Affinity Constraints</h4>
		<p>A 
			<i>RunnableConstraint</i> is used to define the mapping of runnable objects to processing cores or scheduling units.
		</p>
		<p>
			<img src="images/model_constraints_affinity_runnable.png"/>
		</p>


<h3><a id="section3.6.9">3.6.9 </a>Physical Section Constraints</h3>
		<p>A 
			<i>PhysicalSectionConstraint</i> is used to to define the mapping of Section objects to Memories. This mapping of Section object to Memory objects specifies that corresponding 
			<strong>PhysicalSectionMapping</strong> associated to this 
			<strong>Section</strong> element can be allocated only in the mapped Memories.
		</p>
		<pre xml:space="preserve"><code>Example: PhysicalSectionConstraint with the below properties has the following semantic:
	name: Ram1_Ram2_PhysicalSectionConstraint
	Memories : RAM1, RAM2
	Section : .abc.reini
Semantic: PhysicalSectionMapping for .abc.reini section can only be allocated either in RAM1 or RAM2 or in both. But not in other Memories.
</code></pre>


<h2><a id="section3.7">3.7 </a>Event Model</h2>
		<p>The event model provides the classes to describe the BTF-Events that can be used for the tracing configuration, for the modeling of event chains and for some timing constraints. </p>
		<p>The top level structure is the following:</p>
		<p>
			<img class="scale" src="images/model_events_event.svg"/>
		</p>
		<p>There are different event classes for the different entity types that can be traced: </p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Entity</th>
				<th colspan="1" rowspan="1">Event Class</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Process (Task, ISR)</td>
				<td colspan="1" rowspan="1">ProcessEvent</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ProcessChain</td>
				<td colspan="1" rowspan="1">ProcessChainEvent</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Stimulus</td>
				<td colspan="1" rowspan="1">StimulusEvent</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable</td>
				<td colspan="1" rowspan="1">RunnableEvent</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Label</td>
				<td colspan="1" rowspan="1">LabelEvent</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ModeLabel</td>
				<td colspan="1" rowspan="1">ModeLabelEvent</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Channel</td>
				<td colspan="1" rowspan="1">ChannelEvent</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Semaphore</td>
				<td colspan="1" rowspan="1">SemaphoreEvent</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Component</td>
				<td colspan="1" rowspan="1">ComponentEvent</td>
			</tr>
		</table>


<h3><a id="section3.7.1">3.7.1 </a>Entity Events</h3>
		<p>
			<img class="scale" src="images/model_events_entity_event.svg"/>
		</p>


<h3><a id="section3.7.2">3.7.2 </a>Trigger Events</h3>
		<p>
			<img class="scale" src="images/model_events_trigger_event.svg"/>
		</p>


<h3><a id="section3.7.3">3.7.3 </a>Process Events</h3>
		<p>In a running system, each entity can have different states. An event trace consists of the events that are visualizing the state-transitions of the traced entities. To define such an event in the model, each kind of event class contains an event-type-enumeration that provides the event-types for the state-transitions of its entity. The following picture shows the possible states of a process: </p>
		<p>
			<img src="images/model_events_process.svg"/>
		</p>
		<p>So for example the event-type-enumeration for a process event contains the events 
			<i>activate</i>, 
			<i>start</i>, 
			<i>resume</i>, ...
		</p>


<h3><a id="section3.7.4">3.7.4 </a>Details</h3>
		<p>A description of the individual events can be found in the following table:</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Event Class</th>
				<th colspan="1" rowspan="1">Event Type</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="12">ProcessEvent</td>
				<td colspan="1" rowspan="1">activate</td>
				<td colspan="1" rowspan="1">The process instance is activated by a stimulus.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1">The process instance is allocated to the core and starts execution for the first time.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">resume</td>
				<td colspan="1" rowspan="1">The preempted process instance continues execution on the same or other core.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">preempt</td>
				<td colspan="1" rowspan="1">The executing process instance is stopped by the scheduler, e.g. because of a higher priority process which is activated.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">poll</td>
				<td colspan="1" rowspan="1">The process instance has requested a resource by polling (active waiting) which is not available.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">run</td>
				<td colspan="1" rowspan="1">The process instance resumes execution after polling (i.e. active waiting) for a resource.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">wait</td>
				<td colspan="1" rowspan="1">The process has requested a non-set OS EVENT (see OSEK 2.2.3 Extended Task Model, WAIT_Event()).</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">poll_parking</td>
				<td colspan="1" rowspan="1">The parking process instance is allocated to the core and again polls (i.e. actively waits) for a resource.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">park</td>
				<td colspan="1" rowspan="1">The active waiting process instance is preemptedby another process.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">release_parking</td>
				<td colspan="1" rowspan="1">The resource which is requested by a parking process instance becomes available, but the parking process stays preempted and changes to READY state.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">release</td>
				<td colspan="1" rowspan="1">The OS EVENT which was requested by a process is set (see OSEK 2.2.3 Extended Task Model, SET_Event()) and the process is ready to proceed execution.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1">The process instance has finished execution.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="4">RunnableEvent</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1">The runnable instance is allocated to the core and starts execution for the first time.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">suspend</td>
				<td colspan="1" rowspan="1">The executing runnable instance is stopped, because the calling process is suspended.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">resume</td>
				<td colspan="1" rowspan="1">The suspended runnable instance continues execution on the same or another core.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">terminate</td>
				<td colspan="1" rowspan="1">The runnable instance has finished execution.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">ComponentEvent</td>
				<td colspan="1" rowspan="1">start</td>
				<td colspan="1" rowspan="1">The execution of the component started, i.e. the first runnable in the list of runnables of the component instance is started.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">end</td>
				<td colspan="1" rowspan="1">The execution of the component completed, i.e. all runnables in the list of runnables of the component instance were executed at least once.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">ChannelEvent</td>
				<td colspan="1" rowspan="1">send</td>
				<td colspan="1" rowspan="1">A process or runnable has just sent data via the channel.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">receive</td>
				<td colspan="1" rowspan="1">A process or runnable has just received data via the channel</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">LabelEvent</td>
				<td colspan="1" rowspan="1">read</td>
				<td colspan="1" rowspan="1">The read event indicates that a label is read by a process or runnable.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">write</td>
				<td colspan="1" rowspan="1">The write event indicates that a label is written by a process or runnable.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="4">ModeLabelEvent</td>
				<td colspan="1" rowspan="1">read</td>
				<td colspan="1" rowspan="1">The read event indicates that a mode label is read.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">write</td>
				<td colspan="1" rowspan="1">The write event indicates that a mode label is written.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">increment</td>
				<td colspan="1" rowspan="1">The increment event indicates that a mode label is written and the new value is greater than the old value.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">decrement</td>
				<td colspan="1" rowspan="1">The decrement event indicates that a mode label is written and the new value is less than the old value.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">SemaphoreEvent</td>
				<td colspan="1" rowspan="1">lock</td>
				<td colspan="1" rowspan="1">The semaphore has been requested by a runnable or process for a specific processing unit and reached the maximum number (usually 1) of assigned users.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">unlock</td>
				<td colspan="1" rowspan="1">The semaphore has been released by a process or runnable for a specific processing unit and can now be assigned to an other user.</td>
			</tr>
		</table>
		<p>If it is required to define an event like "start-event of 
			<strong>some</strong> process" then it is enough to create a object of type 
			<i>ProcessEvent</i> and set the event-type 
			<i>start</i>.
		</p>
		<p>It is also possible to restrict the definition of an event to a special entity. So it can be defined like "start-event of task T_1". Therefore it is possible to reference a process from 
			<i>ProcessEvent</i>. In general, each event class can reference an entity of the corresponding type. In addition to that, each event class provides individual restrictions. So it is possible for 
			<i>ProcessEvent</i> that the event is not only restricted to a special process, it can be also restricted to a core. So that would be like "start-event of task T_1 on core C_2". Another example is the class 
			<i>RunnableEvent</i>, it allows to restrict the event to a runnable, the process that executes the runnable and the core that executes the process. 
		</p>


<h2><a id="section3.8">3.8 </a>Hardware Model</h2>
		<p>The AMALTHEA hardware model is used to describe hardware systems which usually consist of several hierarchical elements which contain processing units, memories, connections etc. It is accessible through the 
			<i>HWModel</i> element and contains following top level elements:
		</p>
		<ul>
			<li>Definitions</li>
			<li>Domains</li>
			<li>Features</li>
			<li>Structures</li>
		</ul>


<h3><a id="section3.8.1">3.8.1 </a>Class Diagrams</h3>


<h4><a id="section3.8.1.1"></a>Hardware model elements</h4>
		<p>
			<img class="scale" src="images/model_hw_main.png"/>
		</p>


<h4><a id="section3.8.1.2"></a>Hardware definitions and features</h4>
		<p>
			<img class="scale" src="images/model_hw_definition.png"/>
		</p>


<h4><a id="section3.8.1.3"></a>Hardware modules and access elements</h4>
		<p>
			<img class="scale" src="images/model_hw_module.png"/>
		</p>


<h4><a id="section3.8.1.4"></a>Hardware paths and destinations</h4>
		<p>
			<img class="scale" src="images/model_hw_access.png"/>
		</p>


<h3><a id="section3.8.2">3.8.2 </a>Element description</h3>
		<p>The following tables describe the different model elements and their attributes in detail. For several elements short examples are attached.</p>


<h4><a id="section3.8.2.1"></a>HwModel</h4>
		<p>The 
			<em>HwModel</em> class is the root element of the hardware model. It always contains one or multiple 
			<em>HwStructures, PowerDomains</em> and 
			<em>FrequencyDomains</em> and optionally different 
			<em>HWFeaturesCategories</em> for the 
			<em>HwModule</em> definitions.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the hardware model</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Definitions</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwDefinition</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Definitions of ProcessingUnits, Memories, Caches and ConnectionHandlers</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Domains</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwDomain</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Frequency- and PowerDomains</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">FeatureCategories</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwFeatureCategory</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">FeatureCategory for the HwModel including HwFeatures</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Structures</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwStructure</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Hierarchical structure of the hardware model</td>
			</tr>
		</table>


<h4><a id="section3.8.2.2"></a>HwDefinition</h4>
		<p>Additional information about the definition concept in general can be found in the User Guide (see <a href="#user-hw-overview">General Hardware Model Overview</a>).</p>


<h5><a id="section3.8.2.2.1"></a>ProcessingUnitDefinition</h5>
		<p>For specifying a compute resource a 
			<em>ProcessingUnitDefinition</em> is created, which is afterwards referenced by the number of 
			<em>ProcessingUnit</em> instances of this kind. A 
			<em>ProcessingUnitDefinition</em> can reference multiple 
			<em>HwFeatures</em> to express different costs for different operations but only one 
			<em>HwFeature</em> per 
			<em>HwFeatureCategory</em>.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the processing unit definition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">PuType</td>
				<td colspan="1" rowspan="1">Enum</td>
				<td colspan="1" rowspan="1">PuType</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Type of the processing unit e.g. (Core, GPU, etc.)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Features</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">HwFeature</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Hardware features of the definition</td>
			</tr>
		</table>


<h5><a id="section3.8.2.2.2"></a>MemoryDefinition</h5>
		<p>For specifying a memory, a 
			<em>MemoryDefinition</em> is created, which is afterwards referenced by the number of 
			<em>Memory</em> instances of this kind.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the memory definition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">AccessLatency</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwLatency</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Constant or distribution of access latency in cycles</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">DataRate</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">DataRate</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Max. data rate for the memory</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Size</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">Size</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Size of the memory</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">MemoryType</td>
				<td colspan="1" rowspan="1">Enum</td>
				<td colspan="1" rowspan="1">MemoryType</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">type of the memory (e.g. DRAM, Flash, SRAM, PCM)</td>
			</tr>
		</table>


<h5><a id="section3.8.2.2.3"></a>CacheDefinition</h5>
		<p>For specifying a cache, a 
			<em>CacheDefinition</em> is created, which is afterwards referenced by the number of 
			<em>Cache</em> instances of this kind.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the memory definition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">AccessLatency</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwLatency</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Constant or distribution of access latency in cycles</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Size</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">Size</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Size of the memory</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">CacheType</td>
				<td colspan="1" rowspan="1">Enum</td>
				<td colspan="1" rowspan="1">CacheType</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Cache type (e.g. data, instruction)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">WriteStrategy</td>
				<td colspan="1" rowspan="1">Enum</td>
				<td colspan="1" rowspan="1">WriteStrategy</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Cache write strategy (e.g. write-back)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Coherency</td>
				<td colspan="1" rowspan="1">Bool</td>
				<td colspan="1" rowspan="1">Bool</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Cache coherency (default = false)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Exclusive</td>
				<td colspan="1" rowspan="1">Bool</td>
				<td colspan="1" rowspan="1">Bool</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Exclusive cache (default = false)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Line Size</td>
				<td colspan="1" rowspan="1">Int</td>
				<td colspan="1" rowspan="1">Int</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Line size in bits</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Hit Rate</td>
				<td colspan="1" rowspan="1">Double</td>
				<td colspan="1" rowspan="1">Double</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Percentage hit rate of the cache(default = 0.0)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">NWays</td>
				<td colspan="1" rowspan="1">Int</td>
				<td colspan="1" rowspan="1">Int</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">N ways associative (default = 0)</td>
			</tr>
		</table>


<h5><a id="section3.8.2.2.4"></a>ConnectionHandlerDefinition</h5>
		<p>For specifying a bus or Interconnect etc., a 
			<em>ConnectionHandlerDefinition</em> is created, which is afterwards referenced by the number of 
			<em>ConnectionHandler</em> instances of this kind.
		</p>
		<p>
			<img class="scale" src="images/hw_connection_handler_parallel_accesses_1.png"/>
		</p>
		<p>The figures shows an example of the attribute 
			<em>MaxConcurrentTransfers</em> with the default value 1. This means that all 
			<em>ConnectionHandlers</em> which are referencing this 
			<em>ConnectionHandlerDefinition</em> can only handle 1 active transfer request at a time. All other requests have to wait until the current transfers has finished.
		</p>
		<p>The next figure shows an example with a number of 
			<em>MaxConcurrentTransfers</em> of 3. In this case the 
			<em>ConnectionHandler</em> can handle up to 3 concurrent requests.
		</p>
		<p>
			<img class="scale" src="images/hw_connection_handler_parallel_accesses_3.png"/>
		</p>
		<p>The value for 
			<em>MaxConcurrentTransfers</em> has to be smaller or equal then the min(initiator ports, responder ports).
		</p>
		<p>The values for 
			<em>DataRate</em>, 
			<em>ReadLatency</em>, and WriteLatency are default values for all 
			<em>ConnectionHandlers</em> of this kind. For a specific 
			<em>InternalConnection</em> in a 
			<em>ConnectionHandler</em> instance other values can be assigned.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the memory definition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SchedPolicy</td>
				<td colspan="1" rowspan="1">Enum</td>
				<td colspan="1" rowspan="1">SchedPolicy</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Enumeration of different scheduling policies</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ReadLatency</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwLatency</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Constant or distribution in cycles for a read access</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">WriteLatency</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwLatency</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Constant or distribution in cycles for a write access</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">DataRate</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">DataRate</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Max. data rate of the connection (value and unit)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">MaxBurstSize</td>
				<td colspan="1" rowspan="1">Int</td>
				<td colspan="1" rowspan="1">Int</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Maximum burst size of a ConnectionHandler (default = 1)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">MaxConcurrentTransfers</td>
				<td colspan="1" rowspan="1">Int</td>
				<td colspan="1" rowspan="1">Int</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Number of concurrent transfers from different initiator to responder ports (default = 1)</td>
			</tr>
		</table>


<h4><a id="section3.8.2.3"></a>HwStructure</h4>
		<p>A 
			<em>HwStructure</em> is a hierarchical element which can contain all kind of 
			<em>HwModules</em>, 
			<em>HwConnections</em> and other 
			<em>HwStructures</em>. Different 
			<em>HwStructures</em> can be connected via one or more 
			<em>HwPorts</em> with other structures or modules of a top level 
			<em>HwStructures</em>. By combining different 
			<em>HwStructures</em> any kind of hierarchical system can be expressed. By setting the structure type attribute (e.g. Cluster, ECU) the structural level in the hardware is directly expressible.
		</p>
		<p>
			<img class="scale" src="images/hw_structure_example.png"/>
		</p>
		<p>The figure shows an example for creating a hierarchy within an E/E-architecture. The 
			<em>HwStructure System</em> (which is called "System") is created as top level structure within the HwModel. It contains three other structures which represents different ECUs. The structures are connected via 
			<em>HwPorts</em>, 
			<em>HwConnections</em> and a 
			<em>ConnectionHandler</em>. Usually structures in the model can be viewed as black boxes which can be connected via 
			<em>HwPorts</em>. 
			<em>ECU3</em> allows a look inside, where additional structures for two SoCs are visible.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the hardware structure</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">StructureType</td>
				<td colspan="1" rowspan="1">Enum</td>
				<td colspan="1" rowspan="1">StructureType</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Defines the type of the structure (e.g. ECU)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Modules</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwModule</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Modules of the structure (e.g. Memory)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Ports</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwPort</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Ports to connect the structure (always delegated Ports)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Structures</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwStructure</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Hardware structure to build hierarchical designs</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Connections</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwConnection</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Connections within a structure</td>
			</tr>
		</table>


<h4><a id="section3.8.2.4"></a>HwDomain</h4>
		<p>
			<img class="scale" src="images/hw_domain_example.png"/>
		</p>
		<p>The figure shows an example for 
			<em>HwDomain</em> (
			<em>FrequencyDomain</em> and a 
			<em>PowerDomain</em>). They are always created at the top level in the root element 
			<em>HwModel</em>. Every basic component is able to reference a 
			<em>FrequencyDomain</em> and a 
			<em>PowerDomain</em>. 
			<em>(Note: The link between domains and modules are only references, there are no visible connections inside the model)</em>
		</p>


<h5><a id="section3.8.2.4.1"></a>FrequencyDomain</h5>
		<p>A 
			<em>FrequencyDomain</em> is inherited from 
			<em>HwDomain</em>. This element describes a frequency domain which can be referenced by all elements of the type 
			<em>HwModule</em> to define the default frequency value for operation. In future the 
			<em>FrequencyDomain</em> should also contain possibleValues which should specify the different frequencies for different operation modes.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the frequency domain</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">DefaultValue</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">Frequency</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Default frequency value</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Clock Gating</td>
				<td colspan="1" rowspan="1">Boolean</td>
				<td colspan="1" rowspan="1">Boolean</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Possibility to power down the domain (default = false)</td>
			</tr>
		</table>


<h5><a id="section3.8.2.4.2"></a>PowerDomain</h5>
		<p>A 
			<em>PowerDomain</em> is inherited from 
			<em>HwDomain</em>. This element describes a power domain which can be referenced by all elements of the type 
			<em>HwModule</em>, to define the default voltage value for operation. In future the 
			<em>PowerDomain</em> should also contain possibleValues which should specify the different voltages for different operation modes.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the power domain</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">DefaultValue</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">Voltage</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Default voltage value</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">PowerGating</td>
				<td colspan="1" rowspan="1">Boolean</td>
				<td colspan="1" rowspan="1">Boolean</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Possibility to power down the domain (default = false)</td>
			</tr>
		</table>


<h4><a id="section3.8.2.5"></a>HwFeature</h4>
		<p>A 
			<em>HwFeature</em> is an abstract element to represent any kind of special functionality of a 
			<em>ProcessingUnitDefinition</em>. 
			<em>HwFeatures</em> could be reused several times by different definitions and organized within 
			<em>HwFeatureCategories</em>. Currently this 
			<em>HwFeatureCategories</em> are directly referenced out of the Software Model in future the cost function (
			<em>Recipes</em>) of an algorithm will be placed in an additional intermediate layer.
			<br>More information can be found in (see <a href="#user-hw">Hardware Concepts</a>).
		</p>
		<p>
			<em>NOTE: The concepts "Recipe" and "Hardware Features" are work in progress. Changes to the already implemented HwFeatures are probable.</em>
		</p>
		<p>
			<img class="scale" src="images/hw_feature_example.png"/>
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the hardware feature</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Value</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">Value</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">assigned factor to the corresponding feature</td>
			</tr>
		</table>


<h5><a id="section3.8.2.5.1"></a>HwFeatureCategory</h5>
		<p>The 
			<em>HwFeatureCategory</em> is an element to collect the same kind of 
			<em>HwFeatures</em> with different values.
			<br>The 
			<em>HwFeatureCategories</em> can be referenced by the 
			<em>ExecutionNeeds</em> in the Software Model.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the hardware feature</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Type</td>
				<td colspan="1" rowspan="1">Enum</td>
				<td colspan="1" rowspan="1">HwFeatureType</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Type to express the purpose of the feature (performance, power, performance_and_power)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Description</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Textual description of the hardware feature</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">HwFeature</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwFeature</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Hardware feature with a factor</td>
			</tr>
		</table>


<h4><a id="section3.8.2.6"></a>HwModule</h4>


<h5><a id="section3.8.2.6.1"></a>ProcessingUnit</h5>
		<p>A 
			<em>ProcessingUnit</em> is a 
			<em>HwModule</em> that can be used to model a wide set of different hardware components like a GPU, hardware accelerator, CPU, etc. The capability and the functionality of a 
			<em>ProcessingUnit</em> are represented by different 
			<em>HwFeatures</em> within the 
			<em>ProcessingUnitDefinition</em>. The 
			<em>ProcessingUnits</em> are the master modules in the model and every 
			<em>ProcessingUnit</em> can has their own access space. The 
			<em>ProcessingUnit</em> can be referenced by 
			<em>AccessPaths</em> and 
			<em>HwAccessElements</em>.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the processing unit instance</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Ports</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwPort</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Ports of the component</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Caches</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">Cache</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Included caches by the Processing Unit e.g. L1 Cache</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">AccessElements</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">AccessElement</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Access element for a specific memory or processing unit</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">FrequencyDomain</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">FrequencyDomain</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Frequency domain which supplies the module with a frequency</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">PowerDomain</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">PowerDomain</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Power domain which supplies the module with a voltage</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Definition</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">ProcessingUnitDefinition</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Definition with all features for the processing unit instance</td>
			</tr>
		</table>


<h5><a id="section3.8.2.6.2"></a>Memory</h5>
		<p>A 
			<em>Memory</em> is a component of type 
			<em>HwModule</em> to express any kind memory like SRAM (Scratchpads), DRAM, Flash, etc. in the model, caches are modeled separately. The 
			<em>Memory</em> element can be referenced as destination by a 
			<em>HwAccessElement</em>.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the memory instance</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Ports</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwPort</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Ports of the component</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">FrequencyDomain</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">FrequencyDomain</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Frequency domain which supplies the module with a frequency</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">PowerDomain</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">PowerDomain</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Power domain which supplies the module with a voltage</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Definition</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">MemoryDefinition</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Definition with all features for the memory instance</td>
			</tr>
		</table>


<h5><a id="section3.8.2.6.3"></a>Cache</h5>
		<p>A 
			<em>Cache</em> is a component of type 
			<em>HwModule</em> to express the special behavior of a 
			<em>Cache</em>. It is used to create cache topologies within a system. The 
			<em>Cache</em> can be referenced by 
			<em>AccessPaths</em> to express if it is a cached or non-cached access. It is also the only 
			<em>HwModule</em> which can be directly contained by a 
			<em>ProcessingUnit</em>.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the cache instance</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Ports</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwPort</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Ports of the component</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">FrequencyDomain</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">FrequencyDomain</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Frequency domain which supplies the module with a frequency</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">PowerDomain</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">PowerDomain</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Power domain which supplies the module with a voltage</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Definition</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">CacheDefinition</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Definition with all features for the cache instance</td>
			</tr>
		</table>


<h5><a id="section3.8.2.6.4"></a>ConnectionHandler</h5>
		<p>A 
			<em>ConnectionHandler</em> is a component of type HwModule which can be used whenever multiple 
			<em>HwConnections, (HwPorts)</em> have to be combined. It is possible to represent whole bus systems or interconnects with a single 
			<em>ConnectionHandler</em>, or elements like small routers within a NoC.
		</p>
		<p>
			<img class="scale" src="images/hw_connection_handler_example.png"/>
		</p>
		<p>The figure shows an example where a 
			<em>ConnectionHandler</em> is used as an interconnect within a SoC. Optional it is possible to model 
			<em>InternalConnections</em> inside a 
			<em>ConnectionHandler</em> to model explicit or restrict different connections. However it is also possible to use default read and write latencies of the whole 
			<em>ConnectionHandlerDefinition</em>, individual latencies can be attached to 
			<em>InternalConnections</em>. A short example where a 
			<em>ConnectionHandler</em> is used as a CAN bus is illustrated in the structure example. For detailed models where all modules connected via 
			<em>HwConnections</em> and different 
			<em>ConnectionHandlers</em>, the 
			<em>ConnectionHandlers</em> should be the only module where contentions in the hardware model can occur. A 
			<em>ConnectionHandler</em> can be referenced by 
			<em>HwAccessPaths</em>.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the connection handler instance</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Ports</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwPort</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Ports of the component</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">InternalConnections</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwConnection</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Internal connection between the ports</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">FrequencyDomain</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">FrequencyDomain</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Frequency domain which supplies the module with a frequency</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">PowerDomain</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">PowerDomain</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Power domain which supplies the module with a voltage</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Definition</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">ConnectionHandlerDefinition</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Definition with all features for the connection handler instance</td>
			</tr>
		</table>


<h4><a id="section3.8.2.7"></a>HwAccessElement</h4>
		<p>A 
			<em>HwAccessElement</em> can be used to specify the access relationship between two 
			<em>ProcessingUnits</em> or a 
			<em>ProcessingUnit</em> and a 
			<em>Memory</em>. With multiple 
			<em>HwAccessElements</em> the whole access or even address space of a 
			<em>ProcessingUnit</em> can be represented. A 
			<em>HwAccessElement</em> represents always the view from a specific 
			<em>ProcessingUnit</em>. There exist two different approaches to express latency or a data rate for a 
			<em>HwAccessElement</em>: 1. directly using latencies or data rates or 2. modeling the exact path to the destination by attaching a 
			<em>HwAccessPath</em> which references the specific connection elements like 
			<em>ConnectionHandlers</em>, 
			<em>HwConnection</em>, etc. For the second approach it is also possible to work directly with addresses.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the address element</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Destination</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">HwDestination</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Destination for the processing unit</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">AccessPaths</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwAccessPath</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Access path to the destination</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ReadLatency</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwLatency</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Read latency to the destination</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">WriteLatency</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwLatency</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Write latency to the destination</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">DataRate</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">DataRate</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Max. data rate to the destination</td>
			</tr>
		</table>


<h4><a id="section3.8.2.8"></a>HwPort</h4>
		<p>
			<em>HwPorts</em> are elements which can be connected via 
			<em>HwConnections</em>. Every module can contain multiple 
			<em>HwPorts</em>. Every communication, input or output is handled via a 
			<em>HwPort</em> of a component. It is only allowed to have one 
			<em>HwConnection</em> per 
			<em>HwPort</em>, except the 
			<em>HwPort</em> is categorized as delegated port which means it is just a hierarchical connection between 
			<em>HwStructures</em>. In this case the ports can have two 
			<em>HwConnections</em>. The second exception is if inside a 
			<em>ConnectionHandler</em>, 
			<em>InternalConnections</em> are used.In this case a 
			<em>HwPort</em> can be directed with a 
			<em>HwConnection</em> and 
			<em>InternalConnections</em>. The following figure shows an example with delegated 
			<em>HwPorts</em> and 
			<em>InternalConnections</em>.
		</p>
		<p>
			<img class="scale" src="images/hw_port_example.png"/>
		</p>
		<p>In case the 
			<em>BitWidth</em> becomes important (e.g. to calculate the amount of data which is transfered over an 
			<em>ConnectionHandler</em>) the minimum 
			<em>BitWidth</em> of all included Ports have to be accounted.
		</p>
		<p>For 
			<em>HwPorts</em> it's always possible to select if the port is an 
			<em>initiator</em> or a 
			<em>responder</em> port. The following example shows that an initiator port is always connected to a responder port (comparable to TLM modeling).
		</p>
		<p>
			<img class="scale" src="images/hw_port_example_i_r.png"/>
		</p>
		<p>In case of a delegated port (which is used as hierarchical port at a 
			<em>HwStructure</em>) the 
			<em>PortType</em> of the module inside the structure is reflected. The following figure shows four different examples. The ports which are delegated are marked grey.
		</p>
		<p>
			<img class="scale" src="images/hw_port_example_i_r_with_delegated_ports.png"/>
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the hardware port</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">BitWidth</td>
				<td colspan="1" rowspan="1">Int</td>
				<td colspan="1" rowspan="1">Int</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Bit width e.g. 32 bit (default = 0)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Priority</td>
				<td colspan="1" rowspan="1">Int</td>
				<td colspan="1" rowspan="1">Int</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Priority of the hardware port (default = 0)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Type</td>
				<td colspan="1" rowspan="1">Enum</td>
				<td colspan="1" rowspan="1">PortType</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Port type (initiator, responder)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Delegated</td>
				<td colspan="1" rowspan="1">Bool</td>
				<td colspan="1" rowspan="1">Bool</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Delegated ports are hierarchical structure ports</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">PortInterface</td>
				<td colspan="1" rowspan="1">Enum</td>
				<td colspan="1" rowspan="1">PortInterface</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Type to express special interfaces for validation</td>
			</tr>
		</table>


<h4><a id="section3.8.2.9"></a>HwConnection</h4>
		<p>A 
			<em>HwConnection</em> is an element to model structural connections between two 
			<em>HwPorts</em>. 
			<em>HwConnections</em> are always placed within 
			<em>HwStructures</em>. It is possible to directly annotate a read and write latency at a 
			<em>HwConnection</em>. 
			<em>HwConnections</em> can be referenced by 
			<em>HwAccessPaths</em>. The HwConnection do not have a reference to a 
			<em>FrequencyDomain</em>, the frequency is always provided by the element which is in front of the 
			<em>HwConnection</em> in the 
			<em>HwAccessPath</em>.
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the hardware connection</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Port1</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">HwPort</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Port1 for the connection</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Port2</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">HwPort</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Port2 for the connection</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ReadLatency</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwLatency</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Constant or distribution in cycles for a read access</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">WriteLatency</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">HwLatency</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Constant or distribution in cycles for a write access</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">DataRate</td>
				<td colspan="1" rowspan="1">Containment</td>
				<td colspan="1" rowspan="1">DataRate</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Max. data rate of the connection (value and unit)</td>
			</tr>
		</table>


<h4><a id="section3.8.2.10"></a>HwAccessPath</h4>
		<p>A 
			<em>HwAccessPath</em> is an element to describe the connection route of a 
			<em>ProcessingUnit</em> to its destination (
			<em>Memory</em> or 
			<em>ProcessingUnit</em>). The 
			<em>HwAccessPath</em> is defined through an ordered list of IPaths interface elements (
			<em>HWConnections, Caches</em> and 
			<em>ConnectionHandlers</em>) and is a containment of an 
			<em>HwAccessElement</em>. The figure shows an example of an 
			<em>HwAccessPath</em>, how a 
			<em>ProcessingUnit</em> is connected via two 
			<em>HwConnections</em> and a 
			<em>ConnectionHandler</em> with a 
			<em>Memory</em>.
		</p>
		<p>
			<img class="scale" src="images/hw_access_path_example.png"/>
		</p>
		<p>In the following example the possible memOffset attribute is explained. Every 
			<em>ProcessingUnit</em> can access a 
			<em>Memory</em> or other 
			<em>ProcessingUnit</em> over a different address. The size of the 
			<em>Memory</em> has to be equal or greater than 
			<em>endAddress</em> minus the 
			<em>startAddress</em>.
		</p>
		<ul>
			<li>memory_size &gt;= endAddress – startAddress</li>
		</ul>
		<p>In the case the the 
			<em>ProcessingUnit</em> should not start at address 0 (from the memory point of view) the 
			<em>memOffset</em> attribute can be used. With help of this attribute the access area for the memory can be changed, the following figure shows an example.
		</p>
		<p>
			<img class="scale" src="images/hw_memory_address_example.png"/>
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Type</th>
				<th colspan="1" rowspan="1">Value</th>
				<th colspan="1" rowspan="1">Mul.</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Name</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Name of the hardware access path</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">PathElements</td>
				<td colspan="1" rowspan="1">Reference</td>
				<td colspan="1" rowspan="1">HwPath</td>
				<td colspan="1" rowspan="1">*</td>
				<td colspan="1" rowspan="1">Path elements for the access path</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">StartAddress</td>
				<td colspan="1" rowspan="1">Long</td>
				<td colspan="1" rowspan="1">Long</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Start address for the memory</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EndAddress</td>
				<td colspan="1" rowspan="1">Long</td>
				<td colspan="1" rowspan="1">Long</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">End address for the memory</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">MemOffset</td>
				<td colspan="1" rowspan="1">Long</td>
				<td colspan="1" rowspan="1">Long</td>
				<td colspan="1" rowspan="1">1</td>
				<td colspan="1" rowspan="1">Offset for accessing only a partition of a memory</td>
			</tr>
		</table>


<h4><a id="section3.8.2.11"></a>Enumerations</h4>
		<p>In the following all enums are listed. In the case an enum is used by any class the default value of that enum is always 
			<em>undefined</em>. That means that in case of an enum there are no default values for interfaces or other kind of types. Moreover only new enums are explicitly mentioned in this report. Enums and classes which are already part of the existing Amalthea meta model are not described.
		</p>
		<p>
			<strong>StructureType:</strong>
		</p>
		<ul>
			<li>_undefined_, System, ECU, Microcontroller, SoC, Cluster, Group, Array, Area, Region</li>
		</ul>
		<p>
			<strong>CacheType:</strong>
		</p>
		<ul>
			<li>_undefined_, instruction, data, unified</li>
		</ul>
		<p>
			<strong>VoltageUnit:</strong>
		</p>
		<ul>
			<li>_undefined_, V, mV, uV</li>
		</ul>
		<p>
			<strong>PortType:</strong>
		</p>
		<ul>
			<li>_undefined_, initiator, responder</li>
		</ul>
		<p>
			<strong>SchedPolicy:</strong>
		</p>
		<ul>
			<li>_undefined_, RoundRobin, FCFS, PriorityBased</li>
		</ul>
		<p>
			<strong>WriteStrategy:</strong>
		</p>
		<ul>
			<li>_undefined_, none, writeback, writethrough</li>
		</ul>
		<p>
			<strong>PuType:</strong>
		</p>
		<ul>
			<li>_undefined_, GPU, CPU, Accelerator</li>
		</ul>
		<p>
			<strong>PortInterfaces:</strong>
		</p>
		<ul>
			<li>_undefined_, custom, can, flexray, lin, most, ethernet, spi, i2c, axi, ahb, apb, swr</li>
		</ul>
		<p>
			<strong>HwFeatureType:</strong>
		</p>
		<ul>
			<li>_undefined_, performance, power, performance_and_power</li>
		</ul>
		<p>
			<strong>MemoryType:</strong>
		</p>
		<ul>
			<li>_undefined_, DRAM, SRAM, FLASH, PCM</li>
		</ul>


<h2><a id="section3.9">3.9 </a>Mapping Model</h2>
		<p>The mapping model is intended to provide tools that use hardware and software models (e.g. code generators) information about the corresponding mappings and allocations. This information contains associations between</p>
		<ul>
			<li>schedulers and executable software: A scheduler manages and distributes executable software like runnables or tasks on its managed processing units</li>
			<li>schedulers and processing units: A scheduler can manage one or more processing units and deploy computations on these</li>
			<li>data and memories: Data (such as functions, variables, heap etc) is mapped on static and volatile memories</li>
		</ul>
		<p>Note the mapping model is the only sub model of Amalthea with an attribute in the root element. The 
			<em>Address Mapping Type</em> defines the interpretation of used addresses in the mapping model. Additional information can be found in the 
			<em>MemoryMapping</em> section.
		</p>


<h3><a id="section3.9.1">3.9.1 </a>Overview</h3>
		<p>The Meta Model specifying the Mapping Model is shown below.</p>
		<p>
			<img class="scale" src="images/model_mapping_overview.svg"/>
		</p>


<h4><a id="section3.9.1.1"></a>MappingModel</h4>
		<p>The 
			<i>MappingModel</i> serves as a container for each of the mapping rules, i.e. 
			<i>Allocations</i> (executable software and processing units which are allocated to schedulers) and 
			<i>Mappings</i> (labels and software which is mapped to memories).
		</p>


<h3><a id="section3.9.2">3.9.2 </a>Allocations</h3>
		<p>
			<img class="scale" src="images/model_mapping_allocation.svg"/>
		</p>


<h4><a id="section3.9.2.1"></a>SchedulerAllocation</h4>
		<p>The 
			<i>SchedulerAllocation</i> describes the allocation of  a 
			<i>Scheduler</i> to processing units. This class consists of references to the respective 
			<i>Scheduler</i>, which is specified within an existing OS model, and a processing units, which is specified in a hardware model. Schedulers with algorithm "Grouping" are not allocated since they take no decisions and produce no overhead.
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>scheduler</i>
				</td>
				<td colspan="1" rowspan="1">The scheduler (that is specified in more detail).</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>responsibility</i>
				</td>
				<td colspan="1" rowspan="1">Defines the processing units the scheduler is responsible for. On these units the scheduler takes decisions. Multiple schedulers can be responsible for one processing unit because of hierarchies. Child-schedulers only take decisions, if they parent-schedulers allows them to (e.g. hypervisors with virtual machines which execute an own operating system). Tasks allocated to this scheduler execute on the intersection between affinity and the responsibility of the scheduler. If this is null the configuration is invalid. If the intersection results in multiple cores, the task can migrate.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>executingPU</i>
				</td>
				<td colspan="1" rowspan="1">Defines on which processing unit the scheduling algorithm is actually executed to consider the overhead.</td>
			</tr>
		</table>


<h4><a id="section3.9.2.2"></a>RunnableAllocation</h4>
		<p>The 
			<i>RunnableAllocation</i> is used to associate a 
			<i>Runnable</i>, specified within an existing software model, with a 
			<i>Scheduler</i>.
		</p>


<h4><a id="section3.9.2.3"></a>TaskAllocation</h4>
		<p>The 
			<i>TaskAllocation</i> is used to associate a 
			<i>Task</i> with its 
			<i>TaskScheduler</i>.
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>task</i>
				</td>
				<td colspan="1" rowspan="1">The task  (that is specified in more detail).</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>scheduler</i>
				</td>
				<td colspan="1" rowspan="1">Specifies the unique allocation to the scheduler of the task.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>affinity</i>
				</td>
				<td colspan="1" rowspan="1">Specifies the possible processing units the task can run. If only one unit is specified, the task runs on this core. If multiple cores are specified, the task can migrate between the units. The task executes on the intersection between affinity and the responsibility of the scheduler. If this is null the configuration is invalid. If the intersection results in multiple cores, the task can migrate.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>schedulingParameters</i>
				</td>
				<td colspan="1" rowspan="1">Used to assign scheduling parameters for this specific allocation. For details see chapter "Scheduling Parameters" in OS Model.</td>
			</tr>
		</table>


<h4><a id="section3.9.2.4"></a>ISRAllocation</h4>
		<p>The 
			<i>ISRAllocation</i> is used to associate an 
			<i>ISR</i> with an 
			<i>InterruptConroller</i>. The attribute 'priority' can be used to assign a value for this specific allocation.
		</p>


<h3><a id="section3.9.3">3.9.3 </a>Mappings</h3>


<h4><a id="section3.9.3.1"></a>MemoryMapping</h4>
		<p>The 
			<i>MemoryMapping</i> is a class, describing the mapping of parts of the software model to 
			<i>Memory</i>. It is used to associate specializations of the 
			<i>AbstractMemoryElement</i> (i.e. 
			<i>Label</i>, 
			<i>Runnable</i>, 
			<i>TaskPrototype</i> and 
			<i>Process</i>). The target memory is specified by a reference to an explicit 
			<i>Memory</i> within an existing hardware model. The position in memory can also be defined as address here. If the address is a absolute memory address, a offset address from the memories first address, or if the address information is not expected at all is defined by the 
			<i>Memory Address Mapping Type</i> enumeration in the root element of the 
			<i>Mapping Model</i>. The  Additional attributes, e.g. to supply further information for a code generator, may be described by the containment attributeList.
		</p>


<h4><a id="section3.9.3.2"></a>PhysicalSectionMapping</h4>
		<p>The 
			<em>PhysicalSectionMapping</em> class (can also be called as 
			<strong>Physical Memory Section</strong> ) describes the following:
		</p>
		<ul>
			<li>mapping of various 
				<strong>Section</strong> elements to a specific 
				<strong>Memory</strong>
			</li>
			<li>mapping various 
				<strong>Label and Runnable</strong> elements to a Physical Memory Section
			</li>
			<li>description of memory address location where the Physical Memory Section is allocated</li>
		</ul>
		<p>Note for additional information (see <a href="#user-memsection">User Guide &gt; Concepts &gt; Memory Sections</a>)</p>


<h2><a id="section3.10">3.10 </a>OS Model</h2>
		<p>This part of the AMALTHEA model describes the provided functionality of an operating system. Therefore the concepts of scheduling, overheads, and semaphores are supported, which are described in detail in the following chapter.</p>
		<p>
			<img src="images/model_os_overview.svg"/>
		</p>


<h3><a id="section3.10.1">3.10.1 </a>Operating System</h3>
		<p>The basic element in the OS Model is the operating system. There can be multiple operating systems in one model. The operating system type can be used to describe a generic operating system. It is also possible to use the vendor operating system type to define a vendor specific OS. An operating system contains a number of task schedulers and interrupt controllers. A task scheduler controls the execution of a task on one or multiple processor cores. An interrupt controller is the controller for the execution of ISRs and can be also mapped to multiple cores. The mapping of tasks and ISRs to their controller and the mapping of the controller to the cores can be done in the Mapping Model. An operating system can also contain a description of the overhead it produces. For this there is a more detailed explanation below.</p>
		<p>
			<img src="images/model_os_operatingsystem.png"/>
		</p>


<h3><a id="section3.10.2">3.10.2 </a>Scheduler, Scheduler Definitions, and their Parameters</h3>
		<p>Schedulers refer to a 
			<i>definition</i> which specifies the scheduling algorithm that decides if and when to schedule a processes. Each scheduler definition may refer to algorithm and process parameters (type is a 
			<i>SchedulingParameterDefinition</i>). Algorithm parameters are set per scheduler whereas process parameters may have different values per process allocation (task or ISR). Each scheduler can have 
			<i>schedulingParameters</i> which assign values to the algorithm parameters of their definition, i.e., a deferrable server scheduler should have a value for the algorithm parameter 
			<i>capacity</i>. Schedulers can have computation items (a subset of the runnable items) that characterize the runtime behavior (algorithmic overhead) of the scheduler.
		</p>
		<p>
			<img src="images/model_os_scheduler.svg"/>
		</p>
		<p>There are additional attributes in the scheduler definition to define the behavior of the scheduler in a hierarchy (parent and child schedulers):</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>requiresParentScheduler</i>
				</td>
				<td colspan="1" rowspan="1">
					<i>boolean</i> attribute indicating whether the scheduler requires a parent scheduler, defaults to 
					<ins>false</ins>.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>passesParametersUpwards</i>
				</td>
				<td colspan="1" rowspan="1">
					<i>boolean</i> attribute that specifies that scheduler parameters set for a 
					<i>TaskAllocation</i> will be passed on to the parent scheduler (if this scheduler does not have a parameter with this name), defaults to 
					<ins>false</ins>.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>hasExactlyOneChild</i>
				</td>
				<td colspan="1" rowspan="1">
					<i>boolean</i> attribute that indicates if the scheduler can schedule only one schedulable entity or if it can schedule multiple ones, defaults to 
					<ins>false</ins>.
				</td>
			</tr>
		</table>


<h4><a id="section3.10.2.1"></a>Scheduler Definition</h4>
		<p>A scheduler definition is contained in the OS Model. There may be multiple scheduler definitions in the model. The definition has a name which is also used to uniquely identify standard scheduler definitions (like OSEK, EarliestDeadlineFirst, etc.) There is a number of standard scheduler definitions that are known in AMLATHEA they can be added automatically to each model and should not be changed. Scheduler definitions refer to algorithm and process parameters. Algorithm parameters can be set for each scheduler that uses the scheduler definition. Process parameters can be set for scheduler associations or task allocations.</p>


<h4><a id="section3.10.2.2"></a>Scheduling Parameter Definition and Scheduling Parameter</h4>
		<p>Scheduling parameter definitions are contained in the OS Model an may be referred to by multiple scheduler definitions. They have a type, can consist of many values (default is false), can be mandatory (default is true), and may provide a default value that shall be used if they are not mandatory. Scheduling parameters are key value pairs where the key is the definition and the value is some literal of type 
			<i>Value</i>. The type specified in the scheduling parameter definition dictaes possible literals of their value, e.g. type 
			<i>Integer</i> allows 
			<i>BigInteger</i>, 
			<i>long</i>, and 
			<i>integer</i> literals. Standard scheduler definitions have only 
			<i>mandatory</i> parameters (if there is no default value provided).
		</p>
		<p>
			<img src="images/model_os_scheduling_parameters.svg"/>
		</p>


<h4><a id="section3.10.2.3"></a>Standard Scheduler Definitions</h4>
		<p>The following gives a tabular overview of the standard scheduler definitions supported by AMLATHEA. The user can also define custom schedulers and parameters, but they may not be supported by tools importing AMALTHEA models.</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Scheduling Algorithm</th>
				<th colspan="2" rowspan="1">Description and Parameters</th>
			</tr>
			<tr>
				<td colspan="3" rowspan="1" style="background:#e6ffe6;">Fixed Priority</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">
					<b>OSEK</b>
				</td>
				<td colspan="2" rowspan="1">OSEK compliant Scheduling. A fixed priority preemptive scheduling algorithm with task groups. Tasks belonging to the same task group are scheduled cooperatively (they do not preempt each other), preemptive otherwise. Tasks with the same priority also behave cooperatively.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">Process parameters</td>
				<td colspan="1" rowspan="1">
					<i>priority</i> [1] Integer: The priority of the process (a higher value means a higher priority).
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>taskGroup</i> [1] Integer: The OSEK task group number (if for two processes the number is equal, that means they are in the same task group).
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">
					<b>FixedPriorityPreemptive</b>
				</td>
				<td colspan="2" rowspan="1">Fixed Priority Preemptive Scheduling (e.g. AUTOSAR), same as OSEK but without task groups.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Process parameters</td>
				<td colspan="1" rowspan="1">
					<i>priority</i> [1] Integer: The priority of the process (a higher value means a higher priority).
				</td>
			</tr>
			<tr>
				<td colspan="3" rowspan="1" style="background:#e6ffe6;">Dynamic Priority</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">
					<b>EarliestDeadlineFirst</b>
				</td>
				<td colspan="2" rowspan="1">Earliest Deadline First (EDF): Task with the closest deadline in relation to the current point in time will be scheduled next. First introduced in: Liu, Chung Laung, and James W. Layland. "Scheduling algorithms for multiprogramming in a hard-real-time environment." Journal of the ACM (JACM) 20.1 (1973): 46-61.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Process parameters</td>
				<td colspan="1" rowspan="1">
					<i>deadline</i> [1] Time: The time after each activation at which the process must finish.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="3">
					<b>PriorityBasedRoundRobin</b>
				</td>
				<td colspan="2" rowspan="1">Round Robin scheduling algorithm assignes equally sized time slices to each process that it schedules. The priority describes the order in which the processes will be executed. If two processes have the same priority, the order of these two is random (non-deterministic).</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Algorithm parameters</td>
				<td colspan="1" rowspan="1">
					<i>timeSliceLength</i> [1] Time: Length of each time slice.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Process parameters</td>
				<td colspan="1" rowspan="1">
					<i>priority</i> [1] Integer: The priority of the process (a higher value means a higher priority).
				</td>
			</tr>
			<tr>
				<td colspan="3" rowspan="1" style="background:#e6ffe6;">Proportionate Fair (Pfair)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">
					<b>PfairPD2</b>
				</td>
				<td colspan="2" rowspan="1">Proportionate Fair PD<sup>2</sup> Scheduling (Pfair-PD<sup>2</sup>)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Algorithm parameters</td>
				<td colspan="1" rowspan="1">
					<i>quantSize</i> [0..1] Time = 1ns: Length of the minimum schedulable time slot used in Pfair scheduling. It is assumed that execution times are an integer multiple of this time slot length.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">
					<b>PartlyPfairPD2</b>
				</td>
				<td colspan="2" rowspan="1">Partly Proportionate Fair PD<sup>2</sup> Scheduling (PPfair-PD<sup>2</sup>)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Algorithm parameters</td>
				<td colspan="1" rowspan="1">
					<i>quantSize</i> [0..1] Time = 1ns: Length of the minimum schedulable time slot used in Pfair scheduling. It is assumed that execution times are an integer multiple of this time slot length.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">
					<b>EarlyReleaseFairPD2</b>
				</td>
				<td colspan="2" rowspan="1">Early Release Fair PD<sup>2</sup> Scheduling (ERfair-PD<sup>2</sup>)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Algorithm parameters</td>
				<td colspan="1" rowspan="1">
					<i>quantSize</i> [0..1] Time = 1ns: Length of the minimum schedulable time slot used in Pfair scheduling. It is assumed that execution times are an integer multiple of this time slot length.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">
					<b>PartlyEarlyReleaseFairPD2</b>
				</td>
				<td colspan="2" rowspan="1">Partly Early Release Fair PD<sup>2</sup> Scheduling (P-ERfair-PD<sup>2</sup>)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Algorithm parameters</td>
				<td colspan="1" rowspan="1">
					<i>quantSize</i> [0..1] Time = 1ns: Length of the minimum schedulable time slot used in Pfair scheduling. It is assumed that execution times are an integer multiple of this time slot length.
				</td>
			</tr>
			<tr>
				<td colspan="3" rowspan="1" style="background:#e6ffe6;">Reservation Based Server</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="4">
					<b>GroupingServer</b>
				</td>
				<td colspan="2" rowspan="1">This is not a scheduler algorithm. Schedulers using this definition act as a logical grouping of tasks/child-schedulers, e.g. a partition for some tasks for budget accounting reasons. This scheduler does not take any scheduling decisions, and a parent scheduler is mandatory.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">Algorithm parameters</td>
				<td colspan="1" rowspan="1">
					<i>capacity</i> [1] Time: The fixed budget that can be used by processes. It will be replenished periodically.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>period</i> [1] Time: Amount of time after which the capacity will be replenished.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Definition attributes</td>
				<td colspan="1" rowspan="1">☑ requires parent scheduler <br> ☑ passes parameters upwards <br> ☐ has exactly one child</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="4">
					<b>DeferrableServer</b>
				</td>
				<td colspan="2" rowspan="1">Deferrable Server (DS): provides a fixed budget, in which the budget replenishment is done periodically. First introduced in: Strosnider, Jay K., John P. Lehoczky, and Lui Sha. "The deferrable server algorithm for enhanced aperiodic responsiveness in hard real-time environments." IEEE Transactions on Computers 44.1 (1995): 73-91.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">Algorithm parameters</td>
				<td colspan="1" rowspan="1">
					<i>capacity</i> [1] Time: The fixed budget that can be used by processes. It will be replenished periodically.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>period</i> [1] Time: Amount of time after which the capacity will be replenished.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Defintion attributes</td>
				<td colspan="1" rowspan="1">☑ requires parent scheduler <br> ☐ passes parameters upwards <br> ☑ has exactly one child</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="4">
					<b>PollingPeriodicServer</b>
				</td>
				<td colspan="2" rowspan="1">Polling Server (PS): provides a fixed budget periodically that is only available at pre-defined times. If the process is not using the budget at that point in time the budget is lost.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">Algorithm parameters</td>
				<td colspan="1" rowspan="1">
					<i>capacity</i> [1] Time: The fixed budget that can be used by processes (usually directly after it has been replenished). The capacity will be consumed even if there is no process using it. It will be replenished periodically.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>period</i> [1] Time: Amount of time after which the capacity will be replenished.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Defintion attributes</td>
				<td colspan="1" rowspan="1">☑ requires parent scheduler <br> ☐ passes parameters upwards <br> ☑ has exactly one child</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="4">
					<b>SporadicServer</b>
				</td>
				<td colspan="2" rowspan="1">Sporadic Server (SS): provides a fixed budget, in which the budget replenishment is performed with a pre-defined replenishment delay after it was consumed. First introduced in: Sprunt, Brinkley, Lui Sha, and John Lehoczky. "Aperiodic task scheduling for hard-real-time systems." Real-Time Systems 1.1 (1989): 27-60.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">Algorithm parameters</td>
				<td colspan="1" rowspan="1">
					<i>capacity</i> [1] Time: The fixed budget that can be used by processes. It will be replenished after the specified amount of time has passed since it has last been consumed.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>replenishmentDelay</i> [1] Time: Amount of time after which the capacity will be replenished after it has last been consumed.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Defintion attributes</td>
				<td colspan="1" rowspan="1">☑ requires parent scheduler <br> ☐ passes parameters upwards <br> ☑ has exactly one child</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="4">
					<b>ConstantBandwidthServer</b>
				</td>
				<td colspan="2" rowspan="1">Constant Bandwidth Server (CBS): provides a fixed utilization for executing jobs, in which the deadline for execution is independent on the execution time of jobs. First introduced in: Abeni, Luca, and Giorgio Buttazzo. "Integrating multimedia applications in hard real-time systems." Proceedings 19th IEEE Real-Time Systems Symposium (Cat. No. 98CB36279). IEEE, 1998.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">Algorithm parameters</td>
				<td colspan="1" rowspan="1">
					<i>capacity</i> [1] Time: The fixed budget that can be used by processes. It will be replenished periodically.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>period</i> [1] Time: Amount of time after which the capacity will be replenished.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Defintion attributes</td>
				<td colspan="1" rowspan="1">☑ requires parent scheduler <br> ☐ passes parameters upwards <br> ☑ has exactly one child</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="4">
					<b>ConstantBandwidthServerWithCapacitySharing</b>
				</td>
				<td colspan="2" rowspan="1">Constant Bandwidth Server (CBS) with capacity sharing (CASH). Consumes residual slack from other servers (work conserving).</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="2">Algorithm parameters</td>
				<td colspan="1" rowspan="1">
					<i>capacity</i> [1] Time: The fixed budget that can be used by processes. It will be replenished periodically.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>period</i> [1] Time: Amount of time after which the capacity will be replenished.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Defintion attributes</td>
				<td colspan="1" rowspan="1">☑ requires parent scheduler <br> ☐ passes parameters upwards <br> ☑ has exactly one child</td>
			</tr>
		</table>


<h5><a id="section3.10.2.3.1"></a>Further information</h5>
		<p>Details regarding proportionate fair (
			<strong>Pfair</strong>) scheduling and the variants of the 
			<strong>PD<sup>2</sup> Pfair</strong> algorithm can be found in the dissertation "Effcient and Flexible Fair Scheduling of Real-time Tasks on Multiprocessors" by Anand Srinivasan (see 
			<a href="https://www.cs.unc.edu/~anderson/diss/srinidiss.pdf">dissertation</a> at University of North Carolina at Chapel Hill).
		</p>
		<p>An overview regarding 
			<strong>Reservation Servers</strong> is given in the lecture "Resource Reservation Servers" by Jan Reineke (see 
			<a href="https://embedded.cs.uni-saarland.de/lectures/realtimesystems/resourceReservationServers.pdf">lecture</a> at Saarland University).
		</p>


<h4><a id="section3.10.2.4"></a>Scheduler Association</h4>
		<p>A hierarchy of schedulers can be specified with intermediate objects of class 
			<i>SchedulerAssociation</i>. If set, the parent scheduler takes the initial decision who is executing.  If the child-scheduler is not a grouping of tasks, it can take scheduling decisions if permission is granted by the parent. The association also contains the relevant scheduling parameters for the scheduler in the hierarchical context.
		</p>
		<p>
			<img src="images/model_os_scheduler_association.svg"/>
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>parent</i>
				</td>
				<td colspan="1" rowspan="1">Refers to the parent scheduler</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>child</i>
				</td>
				<td colspan="1" rowspan="1">Derived attribute that is computed based on the containment reference "parentAssociation" from 
					<i>Scheduler</i> to 
					<i>SchedulerAssociation</i>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>schedulingParameters</i>
				</td>
				<td colspan="1" rowspan="1">See chapter "Scheduling Parameters"</td>
			</tr>
		</table>


<h3><a id="section3.10.3">3.10.3 </a>Os Overhead</h3>
		<p>It is possible to define the overhead that is produced by an operating system. The defined overhead can be assigned to an operating system definition. Each overhead information is defined as a set of instructions that has to be executed when the corresponding OS function is used. The instructions can be either a constant set or a deviation of instructions. It is possible to define the overhead for the ISR category one and two and for a number of operating system API functions.</p>
		<p>
			<img src="images/model_os_osoverhead.png"/>
		</p>


<h4><a id="section3.10.3.1"></a>ISR Overhead</h4>
		<ul>
			<li>ISR category 1 &amp; 2: Describes the overhead for ISRs of category one and two by adding a set of instructions that is executed at start and terminate of the ISR </li>
		</ul>


<h4><a id="section3.10.3.2"></a>API Overhead</h4>
		<p>There exists also an overhead for API calls. The following API calls are considered:</p>
		<ul>
			<li>API Activate Task: Runtime overhead for the activation of a task or ISR by another task or ISR (inside the activating process)</li>
			<li>API Terminate Task: Runtime for explicit task termination call (inside a task)</li>
		</ul>
		<ul>
			<li>API Schedule: Runtime for task scheduling (on scheduling request)</li>
		</ul>
		<ul>
			<li>API Request Resource: Runtime overhead for requesting a semaphore (inside a runnable)</li>
			<li>API Release Resource: Runtime overhead for releasing a semaphore (inside a runnable)</li>
		</ul>
		<ul>
			<li>API Set Event: Runtime overhead for requesting an OS event (inside a task or ISR)</li>
			<li>API Wait Event: Runtime overhead for waiting for an OS event (inside a task or ISR)</li>
			<li>API Clear Event: Runtime overhead for clearing an OS event (inside a task or ISR)</li>
		</ul>
		<ul>
			<li>API Send Message: Runtime overhead for cross-core process activation or event (inside a task or ISR) </li>
			<li>API Enforced Migration: Runtime overhead for migrating from one scheduler to another scheduler (inside a task or ISR)</li>
		</ul>
		<ul>
			<li>API Suspend OsInterrupts</li>
			<li>API Resume OsInterrupts</li>
		</ul>
		<ul>
			<li>API Request Spinlock</li>
			<li>API Release Spinlock</li>
		</ul>
		<ul>
			<li>API SenderReceiver Read</li>
			<li>API SenderReceiver Write</li>
		</ul>
		<ul>
			<li>API SynchronousServerCallPoint</li>
		</ul>
		<ul>
			<li>API IOC Read</li>
			<li>API IOC Write</li>
		</ul>


<h3 id="os-data-consistency"><a id="section3.10.4">3.10.4 </a>OS Data Consistency</h3>
		<p>The 
			<i>OsDataConsistency</i> class provides a way to configure an automatic data consistency mechanism of an operating system. It is used to cover the following two use cases:
		</p>
		<ul>
			<li>Provide a configuration for external tools that perform a data consistency calculation based on the stated information.</li>
			<li>Provide the results of a performed data consistency calculation which then have to be considered by external tools (e.g. by timing simulation).</li>
		</ul>
		<p>
			<img src="images/model_os_data_consistency.png"/>
		</p>
		<p>To distinguish the different use cases and to consequently also indicate the workflow progress for achieving data consistency, 
			<i>OsDataConsistencyMode</i> allows to define the general configuration of the data consistency. The following modes are available:
		</p>
		<ol>
			<li>noProtection: data stability and coherency is NOT automatically ensured.</li>
			<li>automaticProtection: data stability and coherency HAS TO BE ensured according configuration either via custom protection or via model elements.
				<ol>
					<li>customProtection: data stability and coherency IS ensured according configuration but not via model elements.</li>
					<li>handeldByModelElements: data stability and coherency IS ensured via model elements.</li>
				</ol>
			</li>
		</ol>
		<p>The 
			<i>DataStability</i> class defines for which sequence of runnables data has to be kept stable. Furthermore, it can be stated whether all data is considered for stability or just those accessed multiple times.
		</p>
		<p>DataStabilityLevel:</p>
		<ul>
			<li>
				<i>period</i>			- between consecutive activations
			</li>
			<li>
				<i>process</i>			- within a Task or ISR
			</li>
			<li>
				<i>scheduleSection</i>	- between Schedule points (explizit schedule points, begin and end of process)
			</li>
			<li>
				<i>runnable</i>			- within a Runnable
			</li>
		</ul>
		<p>The 
			<i>NonAtomicDataCoherency</i> class defines for which sequence of runnables data has to be kept coherent. Like for data stability it can be stated whether all data is considered for coherency or just those accessed multiple times.
		</p>


<h3><a id="section3.10.5">3.10.5 </a>Semaphore</h3>
		<p>With this object, a semaphore can be described which limits the access of several processes to one resource at the same time.</p>
		<p>
			<img src="images/model_os_semaphore.png"/>
		</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Attribute</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>name</i>
				</td>
				<td colspan="1" rowspan="1">Name of semaphore (inherited from ReferableBaseObject)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>semaphoreType</i>
				</td>
				<td colspan="1" rowspan="1">Defines how the semaphore is implemented</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>initialValue</i>
				</td>
				<td colspan="1" rowspan="1">Initial number of processes that access the semaphore</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>maxValue</i>
				</td>
				<td colspan="1" rowspan="1">Maximum number of processes that can concurrently access the semaphore</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>priorityCeilingPrototcol</i>
				</td>
				<td colspan="1" rowspan="1">Defines if the priority ceiling protocol is activated. If it is activated, a process that accesses the semaphore gets a higher priority as the processes that can also access the same semaphore</td>
			</tr>
		</table>


<h2><a id="section3.11">3.11 </a>PropertyConstraints Model</h2>
		<p>The scope of the Property Constraints model is to limit the design space by providing information about the specific hardware properties that parts of the software rely on, i.e. what properties or features have to be supplied by the respective hardware in order to be a valid mapping or allocation target.</p>
		<p>This information comprises</p>
		<ul>
			<li>Core allocation constraints, which describe the constraints on cores.</li>
			<li>Memory mapping constraints, which describe the constraints on memories.</li>
		</ul>


<h3><a id="section3.11.1">3.11.1 </a>Structure</h3>
		<p>The figure below shows the Property Constraints model. In order to provide a better understanding of the model, interconnections between software model elements are not shown in this figure.</p>
		<p>
			<img src="images/model_propertyconstraints_overview.png"/>
		</p>


<h3><a id="section3.11.2">3.11.2 </a>CoreAllocationConstraint</h3>
		<p>The 
			<i>CoreAllocationConstraint</i> is an abstract class for describing constraints which affect the selection of a suitable 
			<i>Core</i>.
		</p>


<h4><a id="section3.11.2.1"></a>RunnableAllocationConstraint</h4>
		<p>The 
			<i>RunnableAllocationConstraint</i> is a specialization of the 
			<i>CoreAllocationConstraint</i>. It is used to specify constraints on 
			<i>Core</i> elements which are used in 
			<i>Runnable</i> to 
			<i>Core</i> allocations.
		</p>


<h4><a id="section3.11.2.2"></a>ProcessAllocationConstraint</h4>
		<p>The 
			<i>ProcessAllocationConstraint</i> is a specialization of the 
			<i>CoreAllocationConstraint</i>. It is used to specify constraints on 
			<i>Core</i> elements which are used in the allocation of Process's specializations (i.e. 
			<i>Task</i> and 
			<i>ISR</i>), to 
			<i>Cores</i>.
		</p>


<h4><a id="section3.11.2.3"></a>ProcessPrototypeAllocationConstraint</h4>
		<p>The same as ProcessAllocationConstraint but for process prototypes in an earlier phase of the development.</p>


<h3><a id="section3.11.3">3.11.3 </a>MemoryMappingConstraint</h3>
		<p>The 
			<i>MemoryMappingConstraint</i> is an abstract class for describing constraints which affect the selection of a suitable 
			<i>Memory</i>. The actual constraint on the core is described by the 
			<i>AbstractElementMappingConstraint</i>.
		</p>


<h4><a id="section3.11.3.1"></a>AbstractElementMappingConstraint</h4>
		<p>The 
			<i>AbstractElementMappingConstaint</i> is a specialization of the 
			<i>MappingConstraint</i>. It is used to specify constraints on 
			<i>Memory</i> elements which are used in the mapping of 
			<i>AbstractMemoryElement</i> specializations (i.e. 
			<i>Label</i>, 
			<i>Runnable</i>, 
			<i>TaskPrototype</i> or 
			<i>Process</i>) to 
			<i>Memories</i>.
		</p>


<h3><a id="section3.11.4">3.11.4 </a>Classifications</h3>
		<p>The specializations 
			<i>CoreClassification</i> and 
			<i>MemoryClassification</i> are used to describe the features that a hardware element (
			<i>Core</i> or 
			<i>Memory</i>) needs to provide in order to be a valid target. This is done by references to Classifiers, conditions (requires vs. excludes) and the kind of grouping (all of them vs. at least one of them).
		</p>


<h3><a id="section3.11.5">3.11.5 </a>Example</h3>
		<p>
			<img src="images/model_propertyconstraints_example.png"/>
		</p>


<h2><a id="section3.12">3.12 </a>Stimuli Model</h2>
		<p>The Stimuli Model contains stimulus and clock objects.</p>
		<p>
			<img class="scale" src="images/model_stimuli.png"/>
		</p>


<h3><a id="section3.12.1">3.12.1 </a>Stimuli</h3>
		<p>
			<img class="scale" src="images/model_stimuli_stimuli.png"/>
		</p>
		<p>A stimulus is responsible to activate processes. The following different types are available:</p>
		<ul>
			<li>
				<strong>SingleStimulus</strong>: Activates the process only once.
			</li>
			<li>
				<strong>ArrivalCurveStimulus</strong>: A list of time-borders in which a specified number of occurrences are expected.
			</li>
			<li>
				<strong>PeriodicStimulus</strong>: Periodic activations based on an offset, a recurrence and (optionally) a jitter.
			</li>
			<li>
				<strong>PeriodicSyntheticStimulus</strong>: Defines a periodically triggered stimuli depending on a defined list of occurrence times.
			</li>
			<li>
				<strong>PeriodicBurstStimulus</strong>: Defines a periodic burst pattern of the process.
			</li>
			<li>
				<strong>RelativePeriodicStimulus</strong>: Periodic activation based on offset and a recurrence.<br>In contrast to PeriodicStimulus the recurrence is relative to the last occurrence and a deviation is mandatory. 
			</li>
			<li>
				<strong>VariableRateStimulus</strong>: Periodic activations based on other events, like rotation speed.
			</li>
			<li>
				<strong>InterProcessStimulus</strong>: Activations based on an explicit inter-process activation.<br>Contains a Counter element if activation is either shifted and / or happening every n<sup>th</sup> time.
			</li>
			<li>
				<strong>EventStimulus</strong>: Activation triggered by an event, defined in the event model.<br>Contains a Counter element if activation is either shifted and / or happening every n<sup>th</sup> time.
			</li>
			<li>
				<strong>CustomStimulus</strong>: To describe own custom types of activations, including properties.
			</li>
		</ul>
		<ul class="validation-rule">
			<li>
				<em>PeriodicStimulus</em>: The 
				<em>Time</em> object in the role of 
				<em>offset</em> must not contain a negative value!
			</li>
			<li>
				<em>PeriodicStimulus</em>: The 
				<em>Time</em> object in the role of 
				<em>recurrence</em> must not contain a negative value!
			</li>
			<li>
				<em>PeriodicBurstStimulus</em>: The 
				<em>Time</em> object in the role of 
				<em>offset</em> must not contain a negative value!
			</li>
			<li>
				<em>PeriodicBurstStimulus</em>: The 
				<em>Time</em> object in the role of 
				<em>recurrence</em> must not contain a negative value!
			</li>
			<li>
				<em>PeriodicSyntheticStimulus</em>: The 
				<em>Time</em> object in the role of 
				<em>offset</em> must not contain a negative value!
			</li>
			<li>
				<em>PeriodicSyntheticStimulus</em>: The 
				<em>Time</em> object in the role of 
				<em>recurrence</em> must not contain a negative value!
			</li>
			<li>
				<em>TimestampList</em>: The 
				<em>Time</em> objects in the role of 
				<em>timestamps</em> must not contain a negative value!
			</li>
			<li>
				<em>SingleStimulus</em>: The 
				<em>Time</em> object in the role of 
				<em>occurrence</em> must not contain a negative value!
			</li>
			<li>
				<em>ArrivalCurveEntry</em>: The 
				<em>Time</em> object in the role of 
				<em>lowerTimeBorder</em> must not contain a negative value!
			</li>
			<li>
				<em>ArrivalCurveEntry</em>: The 
				<em>Time</em> object in the role of 
				<em>upperTimeBorder</em> must not contain a negative value!
			</li>
		</ul>


<h4><a id="section3.12.1.1"></a>Single</h4>
		<p>
			<em>Single</em> allows to specify an activation at a single relative point in time. The single activation occurs after the time units specified by 
			<em>occurrence</em>.
		</p>
		<p>
			<img src="images/model_stimuli_single.png" style="width:600px"/>
		</p>


<h4><a id="section3.12.1.2"></a>Arrival Curves</h4>
		<p>An arrival curve is described as a list of time-borders in which a specified number of activations are expected. The picture below shows an example for this. In the first picture there is a number of occurrences on a timeline.</p>
		<p>
			<img src="images/model_stimuli_arrival_curve_1.png" style="width:500px"/>
		</p>
		<p>In the picture below every distance between two activations is measured. The minimum and the maximum distance is added to the table as time-border for the occurrence of two activations. This means that after one activations there has to be at least a gap of one time-unit before the next activations can occur. It also means that there will be always a second activations within eight time units after the last activations. Basically this would be enough to describe an Arrival Curve Stimulus. But it is possible to create a more precise stimulus by describing additional time borders for greater number of occurrences. This is shown in the steps below. </p>
		<p>
			<img src="images/model_stimuli_arrival_curve_2.png" style="width:400px"/>
		</p>
		<p>The same as for two activations in the picture above is done here for three activations. Like already mentioned above, this is an additional restriction for occurrence of an activations. </p>
		<p>
			<img src="images/model_stimuli_arrival_curve_3.png" style="width:400px"/>
		</p>
		<p>And for four activations:</p>
		<p>
			<img src="images/model_stimuli_arrival_curve_4.png" style="width:400px"/>
		</p>
		<p>The picture below shows the table as arrival curve graph. The red line is the upper-time-border that shows the latest time where the activations will occur. The green line shows the earliest possible time where the activations can occur. </p>
		<p>
			<img src="images/model_stimuli_arrival_curve_5.png" style="width:600px"/>
		</p>


<h4><a id="section3.12.1.3"></a>Common properties of fixed periodic stimuli</h4>
		<p>The abstract class 
			<em>FixedPeriodic</em> defines the common attributes of 
			<em>Periodic</em>, 
			<em>PeriodicSynthetic</em> and 
			<em>PeriodicBurst</em>. In general all period based Stimuli specify periodic occurrences based on an offset and a recurrence. The first occurrence happens after the time units specified by 
			<em>offset</em>, and then every following occurrence happens after the time units specified by 
			<em>recurrence</em>. This means, in general, an occurrence of instance i is happening at time t = 
			<em>offset</em> + i * 
			<em>recurrence</em>.
		</p>
		<p>The following figure shows a 
			<em>Periodic</em> Stimulus example with only a fix offset and recurrence time. 
		</p>
		<p>
			<img src="images/model_stimuli_periodic.png" style="width:650px"/>
		</p>


<h4><a id="section3.12.1.4"></a>Periodic </h4>
		<p>In addition to the standard periodic behavior the 
			<em>Periodic</em> Stimulus can be extended by a 
			<em>Jitter</em> e.g. an Gaussian deviation. The activation time of each occurrence jitters according to the values of the distribution as depicted in the following figure. Depending on the 
			<em>Jitter</em> distribution the upper bound of the current and the lower bound of the next activation can be close to each other or even overlap. The 
			<em>minDistance</em> value allows the user to define the minimum distance between the current and the next activation.
		</p>
		<p>
			<img src="images/model_stimuli_periodic_jitter.png" style="width:650px"/>
		</p>
		<p>The recurrence of a 
			<em>Periodic</em> Stimulus is absolute. This means that a recurrence of 10ms points exactly to the next activation every 10ms. The 
			<em>Jitter</em> describes the deviation of the occurrence around this absolute value.     
		</p>


<h4><a id="section3.12.1.5"></a>PeriodicSynthetic</h4>
		<p>
			<em>PeriodicSynthetic</em> allows to specify a periodic activation of trigger patterns. It is defined by a list of List of 
			<em>occurrenceTimes</em>, a period 
			<em>recurrence</em>, and an 
			<em>offset</em>. Each time value in 
			<em>occurrenceTimes</em> specifies a single activation at a relative point in time. The moment in time these time values are relative and is defined the following way: an activation of instance i is triggered at time t = 
			<em>offset</em> + floor(i / m) * 
			<em>recurrence</em> + 
			<em>occurrenceTimes</em>[i modulo m].
		</p>
		<p>The following figure shows a 
			<em>Synthetic</em> Stimulus example with two periodic activations after the time units T1 and T2.
		</p>
		<p>
			<img src="images/model_stimuli_synthetic.png"/>
		</p>


<h4><a id="section3.12.1.6"></a>PeriodicBurst</h4>
		<p>The 
			<em>PeriodicBurst</em> Stimulus specifies a set of burst activations that are periodically repeated. This means that multiple activations occur very close to each other and this recurs in a periodic matter. The burst pattern has a fixed recurrence period and every burst results in multiple activations. 
		</p>
		<p>
			<img src="images/model_stimuli_periodic_burst.png" style="width:700px"/>
		</p>
		<p>The number of occurrences per burst are specified via 
			<em>occurrenceCount</em>. The 
			<em>occurrenceMinDinstance</em> defines the minimal distance between them. The 
			<em>burstLength</em> defines the maximum time the burst pattern can last. If (number of occurrences – 1) multiplied with the minimum distance between activations is bigger than the 
			<em>burstLength</em> only the number of activations that fit into the 
			<em>burstLength</em> are executed. 
		</p>


<h4><a id="section3.12.1.7"></a>RelativePeriodic </h4>
		<p>In contrast to the 
			<em>Periodic</em> Stimulus the 
			<em>RelativePeriodic</em> Stimulus allows to specify relative recurrences. The next activation depends on the current activation time and the added deviation for the next step. The 
			<em>lower</em> and 
			<em>upperBound</em> are specified in the 
			<em>nextOccurrence</em> deviation similar to the 
			<em>Jitter</em> specification in the 
			<em>Periodic</em> Stimulus.       
		</p>
		<p>
			<img src="images/model_stimuli_periodic_relative.png" style="width:700px"/>
		</p>


<h4><a id="section3.12.1.8"></a>VariableRateStimulus</h4>
		<p>With the 
			<em>VariableRate</em> Stimulus the description of task activation based on e.g. the crankshaft rotation speed or other adaptive variable rate activations.
		</p>
		<p>The 
			<em>step</em> has to be defined as a base value for the following specifications.<br>
			<br>In the deviation 
			<em>occurrencesPerStep</em> the lower and upper frequency of the variable rate are described. The distribution can be used to describe the standard frequency occurrences. The user can describe that the frequency is distributed e.g. uniformly over the complete frequency band or as another example the occurrences happens mostly at the 
			<em>Boundaries</em> of the frequency band that can be specified with the 
			<em>CornerCase</em> 
			<em>samplingType</em> in the distribution.<br>
			<br>The user can set 
			<em>maxDecrease</em> and 
			<em>maxIncrease</em> values to describe the number of additional respectively reduced task activations that can occur within a predefined time 
			<em>step</em>. With these values, the maximum acceleration and maximum deceleration of the stimuli can be calculated.
		</p>
		<p>
			<img src="images/model_stimuli_variablerate.png" style="width:700px"/>
		</p>
		<p>An additional feature for the 
			<em>variableRate</em> Stimulus is the description of 
			<em>simulationScenario</em> that specifies the progression of the 
			<em>variableRate</em> over time.
			<br>In contrast to the generic specification via statistical values the scenario defines the computation via the 
			<em>samplingOffset</em> and 
			<em>samplingRecurrence</em> property that is modified by a factor based on a 
			<em>clock</em>.
		</p>


<h3><a id="section3.12.2">3.12.2 </a>Clocks</h3>
		<p>The 
			<em>Clock</em> is triggered based on logical clocks rather than the simulation time, thus providing a dynamic trigger pattern for a simulation. 
			<em>Clock</em> defines the (variable) rate at which a stimulus will be fired. This rate follows a certain pattern defined by the subclasses: 
			<em>ClockFunction</em> and 
			<em>ClockStepList</em>.
		</p>
		<p>
			<img class="scale" src="images/model_stimuli_clocks.png"/>
		</p>


<h4><a id="section3.12.2.1"></a>ClockFunction</h4>
		<p>A clock function defines the clock period change via a continuous function. There are two functions available: 
			<em>Sine</em> and 
			<em>Triangle</em>. They can be chosen by setting the 
			<em>curveType</em> property.
		</p>
		<p>In the sine clock function the clock period increases and decreases smoothly following a sine wave pattern. The figure below depicts the attributes used to define the sine wave. Note that the sine wave always lies above the x-axis. Adding a positive or negative 
			<em>x-Offset</em> will shift the wave horizontally. The clock fires a stimulus whenever the area under the sine curve is a multiple of one (an integral value). If used in a 
			<em>Scenario</em> this factor can be defined via the 
			<em>samplingRecurrence</em> attribute. As can be seen, the size of the area can be influenced by the 
			<em>yOffset</em> and 
			<em>peakToPeak</em> attributes. In the example shown in the figure the first stimulus is fired at 1.3s, second at 2.06s and so on.
		</p>
		<p>
			<img src="images/model_stimuli_clocks_sine.png" style="width:850px"/>
		</p>
		<p>The triangle clock function increases and decreases at a constant rate. The shape of this clock function is governed by the same attributes as the sine wave, only the underlying mathematical definition is different. In the example figure below, the first activation occurs at 0.828s, the second at 1.464s and so on.</p>
		<p>
			<img src="images/model_stimuli_clocks_triangle.png" style="width:650px"/>
		</p>


<h4><a id="section3.12.2.2"></a>ClockStepList</h4>
		<p>The list of clock steps defines the clock period change via a step function. Each 
			<em>ClockStep</em> of that function is defined by a 
			<em>frequency</em> and a 
			<em>time</em> stamp. The optional period attribute of the clock step list can be used to repeat the pattern (exactly like the recurrence in the 
			<em>PeriodicSynthetic</em> stimulus). If the period is not set, the clock rate will remain the same after the last clock step change. Considering the clock steps: &lt;1Hz, 1s&gt;, &lt;3Hz, 3s&gt;, &lt;2Hz, 5s&gt;, &lt;0Hz, 6s&gt;, &lt;2Hz, 7s&gt;, a sampling recurrence of 2, and a period of 9s, the clock step function will result in the plot depicted in the following figure.
		</p>
		<p>
			<img src="images/model_stimuli_clocks_steplist.png" style="width:750px"/>
		</p>


<h4><a id="section3.12.2.3"></a>Example</h4>
		<p>The engine crankshaft is a good example in which Clocks can be used to model the behavior. Let's suppose a scenario in which a stimulus is triggered each time the rotating crankshaft reaches a specific angle.</p>
		<p>In this example, the engine speed steeply increases from 3000rpm to 6000rpm in 5s, then the speed again decreases to 3000rpm in 5s. An stimulus shall be triggered when the engine crankshaft reaches 30 degrees. Triggering should repeat every two rotations.</p>
		<p>Steeply increasing and decreasing pattern fits to the triangle clock function. The equations below show the calculations for the triangle clock function. 
			<em>xOffset</em> is added to make the triangle wave begin at the desired engine speed of 3000rpm:
		</p>
		<ul>
			<li>
				<em>yOffset</em> = min.ticks = 3000rpm = 50rps = 50Hz
			</li>
			<li>
				<em>peakToPeak</em> = max.ticks – min.ticks = 6000rpm – 3000rpm = 50Hz
			</li>
			<li>
				<em>period</em> = 2 * risingSteepTime = 2 * 5s = 10s
			</li>
			<li>
				<em>xOffset</em> = risingSteepTime / 2 = 2.5s
			</li>
		</ul>
		<p>
			<img src="images/model_stimuli_clocks_triangle_example.png" style="width:750px"/>
		</p>
		<p>Task shall be triggered when the engine crankshaft reaches 30 degrees. Triggering should repeat for every two rotations. The scenario configuration for this example can then be derived as follows:</p>
		<ul>
			<li>
				<em>samplingOffset</em> = firstTriggerAngle = 30 
				<sup>o</sup> / 360 
				<sup>o</sup> = 0.0833
			</li>
			<li>
				<em>samplingRecurrence</em> = everySecondRotation = 2
			</li>
		</ul>
		<p>
			<img src="images/model_stimuli_clocks_triangle_example_scenario.png" style="width:750px"/>
		</p>
		<p>The engine crankshaft reaches 30 degrees at 1.66ms. From then on, the crankshaft completes 2 rotations at 41.49ms and 4 rotations at 81ms.</p>


<h3><a id="section3.12.3">3.12.3 </a>Mode Value List and Execution Condition</h3>
		<p>It is possible to change mode label values when a stimulus is executed. The mode labels and their new values are stored in the 
			<strong>set-mode-value-list</strong>. Via an 
			<strong>execution-condition</strong> modes also determine if a stimulus is executed.
		</p>
		<p>
			<img class="scale" src="images/model_stimuli_modevaluelist.png"/>
		</p>
		<ul class="validation-rule">
			<li> 
				<em>ModeValue</em>: The 
				<em>value</em> string must be a valid element of the corresponding 
				<em>Mode</em>!
			</li>
		</ul>
		<p>The 
			<strong>set-mode-value-list</strong> indicates: Each time the stimulus is executed all mode labels in this list are set to the corresponding value. 
		</p>
		<p>The 
			<strong>execution-condition</strong> is used to determine if a stimulus is executed.
		</p>


<h2><a id="section3.13">3.13 </a>Software Model</h2>
		<p>The AMALTHEA software model is central accessible through the 
			<i>SWModel</i> element. 
		</p>


<h3><a id="section3.13.1">3.13.1 </a>Memory Information</h3>
		<p>Analyzing and mapping the software structure to available memories needs additional information of the included elements. This type of information targets the consumed size of memory of an element, represented by the 
			<i>size</i> attribute of type 
			<i>DataUnit</i>. The element 
			<i>AbstractMemoryElement</i> is a generalized element that provides this data. The following image shows the structure and also the elements of the software model that are extending 
			<i>AbstractMemoryElement</i> (the overview picture is only showing the hierarchy and not possible relationships between the elements):
		</p>
		<p>
			<img class="scale" src="images/model_sw_memory_inf.png"/>
		</p>


<h3><a id="section3.13.2">3.13.2 </a>Labels</h3>
		<p>The label element represents a data element. It is directly located in a defined area of a given memory.
			<br>It can be used as a parameter, a temporarily existing variable or representing a  constant value.
		</p>
		<p>
			<img src="images/model_sw_label.png"/>
		</p>
		<p>The following attributes are describing a label:</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>name</i>
				</td>
				<td colspan="1" rowspan="1">The name represented as String value (derived from 
					<i>AbstractElementMemoryInformation</i>)
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>displayName</i>
				</td>
				<td colspan="1" rowspan="1">In addition to the name attribute, which must be unique, a label can also be described by an additional and optional display name. The displayName attribute must not be unique. It can be used for example to represent specification data, which can be different from the unique name (like a symbol) of an available software build.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>dataType</i>
				</td>
				<td colspan="1" rowspan="1">Reference to the data type definition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>constant</i>
				</td>
				<td colspan="1" rowspan="1">Boolean value to represent, if label is representing a constant value</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>bVolatile</i>
				</td>
				<td colspan="1" rowspan="1">Boolean value to mark a label as volatile</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>dataStability</i>
				</td>
				<td colspan="1" rowspan="1">Enumeration value to represent the data stability needs of the label. If set, it overwrites the global settings stated by the 
					<i>OsDataConsistency</i>, otherwise it inherits them (see <a href="#os-data-consistency">OS Data Consistency</a>).
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>stabilityLevel</i>
				</td>
				<td colspan="1" rowspan="1">Enumeration value to represent the data stability level of the label. If set, it overwrites the global settings stated by the 
					<i>OsDataConsistency</i>, otherwise it inherits them (see <a href="#os-data-consistency">OS Data Stability</a>).
				</td>
			</tr>
		</table>


<h3><a id="section3.13.3">3.13.3 </a>Channels</h3>
		<p>The channel element has two different characteristics: it represents a data element in memory and also a way how runnables transmit larger amounts of data. A typical applications is the streaming of video data where a continuous sequence of images is sent in smaller chunks.</p>
		<p>
			<img src="images/model_sw_channel.png"/>
		</p>
		<p>The following attributes are describing a label:</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>name</i>
				</td>
				<td colspan="1" rowspan="1">The name represented as String value (derived from 
					<i>AbstractElementMemoryInformation</i>)
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>displayName</i>
				</td>
				<td colspan="1" rowspan="1">In addition to the name attribute, which must be unique, a label can also be described by an additional and optional display name. The displayName attribute must not be unique. It can be used for example to represent specification data, which can be different from the unique name (like a symbol) of an available software build.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>elementType</i>
				</td>
				<td colspan="1" rowspan="1">Reference to the data type definition of a single element</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>defaultElements</i>
				</td>
				<td colspan="1" rowspan="1">Number of elements initially in the channel (at start-up)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>maxElements</i>
				</td>
				<td colspan="1" rowspan="1">Depth of channel (maximum number of elements that may be stored)</td>
			</tr>
		</table>


<h3><a id="section3.13.4">3.13.4 </a>Data Types</h3>


<h4><a id="section3.13.4.1"></a>General Information</h4>
		<p>The AMALTHEA data model supports meta information for data types. Therefore the element 
			<i>TypeDefinition</i> exists in the software part of the model. It consists of the name and size to define a data type. 
			<i>BaseTypeDefinition</i> has the additional possibility to define the representation of these data types in a target environment (e.g. AUTOSAR), represented by the 
			<i>Alias</i> element.
		</p>
		<p>The compound data types are data structures, based on given or defined base types.
			<br>In the literature they are also often named composite or derived types 
			<a href="https://en.wikipedia.org/wiki/Data_type">see Wiki</a>.
			<br>The result of this type of definition is an own data type, which can be used as base data types.
			<br>They can consist of static structures or dynamic ones, like arrays or stacks.
		</p>
		<p>
			<img src="images/model_sw_type_system.png"/>
		</p>
		<p>The following compound data type definitions are currently supported:</p>
		<ul>
			<li>Pointer: Holds a reference to another type using its memory address</li>
			<li>Array: Contains a number of elements of the same data type. The size of an array can be fixed or expandable.</li>
			<li>Struct: Contains other data types in a structured way, often called fields or members.  The fields can be accessed by their name.</li>
		</ul>


<h4><a id="section3.13.4.2"></a>Sample</h4>
		<p>In the picture below a small sample is modeled containing the following information:</p>
		<ul>
			<li>Boolean type with size of 8 bits and alias for AR (Boolean) and C (bool)</li>
			<li>Char16 type with size of 16 bits and alias for AR (Char16) and C (short)</li>
			<li>charArray consists of 4 elements of type Char16</li>
			<li>"hello world struct" with the attribute name (charArray) and valid (Boolean)</li>
		</ul>
		<p>Note: The picture shows the element types for better understanding!</p>
		<p>
			<img class="gray" src="images/model_sw_type_sample.png"/>
		</p>


<h3><a id="section3.13.5">3.13.5 </a>Activations</h3>
		<p>Activations are used to specify the intended activation behavior of 
			<i>Runnables</i> and 
			<i>ProcessPrototypes</i>. Typically they are defined before the creation of tasks (and the runnable to task mappings). So if there are no tasks defined, or if the mapping of runnables to tasks is not done, this is a way to document when the runnables should be executed.  
			<br>Activations are independent of other top level elements in the AMALTHEA model. Single, periodic, sporadic, event or custom (free textual description only, no predefined semantic) activation pattern can be defined. This information can be used in the following development steps to create tasks, stimuli and the mappings to dedicated hardware.
		</p>
		<p>
			<img src="images/model_sw_activation.png"/>
		</p>
		<ul class="validation-rule">
			<li>
				<em>PeriodicActivation</em>: The 
				<em>Time</em> object in the role of 
				<em>min</em> must not contain a negative value!
			</li>
			<li>
				<em>PeriodicActivation</em>: The 
				<em>Time</em> object in the role of 
				<em>max</em> must not contain a negative value!
			</li>
			<li>
				<em>PeriodicActivation</em>: The 
				<em>Time</em> object in the role of 
				<em>offset</em> must not contain a negative value!
			</li>
			<li>
				<em>PeriodicActivation</em>: The 
				<em>Time</em> object in the role of 
				<em>deadline</em> must not contain a negative value!
			</li>
			<li>
				<em>SingleActivation</em>: The 
				<em>Time</em> object in the role of 
				<em>min</em> must not contain a negative value!
			</li>
			<li>
				<em>SingleActivation</em>: The 
				<em>Time</em> object in the role of 
				<em>max</em> must not contain a negative value!
			</li>
		</ul>


<h3><a id="section3.13.6">3.13.6 </a>Tasks / ISR</h3>
		<p>The following figure shows the structure which describes 
			<i>Tasks</i> and Interrupt Service Routines (
			<i>ISR</i>) in the AMALTHEA software model. The abstract class 
			<i>Process</i> generalizes ISRs and Tasks and provides the common attributes like the activation that is at runtime level represented by a 
			<i>Stimulus</i>. A 
			<i>Task</i> or 
			<i>ISR</i> contains 
			<i>calls</i> either to other Tasks (via inter process activation) or Runnables. These types of 
			<i>calls</i> are included in the 
			<i>activityGraph</i> attribute.
		</p>
		<p>
			<img class="scale" src="images/model_sw_task_isr.png"/>
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>name</i>
				</td>
				<td colspan="1" rowspan="1">Name of the process</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>stimuli</i>
				</td>
				<td colspan="1" rowspan="1">Reference to one or more 
					<i>Stimuli</i> representing the different types of possible activations of this 
					<i>Process</i>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>activityGraph</i>
				</td>
				<td colspan="1" rowspan="1">List of activities (e.g. runnable calls, label accesses). This specifies the behavior of the process. The objects will be executed in the same order they are stored in the list.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>preemption</i>
				</td>
				<td colspan="1" rowspan="1">Defines the preemption of a task by higher priority tasks.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>multipleTaskActivationLimit</i>
				</td>
				<td colspan="1" rowspan="1">Defines the maximum number of existing instances from the same task at any time, which is checked for load limitation reasons when a task is activated. If the multipleTaskActivationLimit is exeeded, the activation is ignored. See the "BTF Example" (User Guide &gt; Examples) for an multipleTaskActivationLimit of 3.</td>
			</tr>
		</table>


<h3><a id="section3.13.7">3.13.7 </a>Runnables and Services</h3>
		<p>Both elements, runnables and services, are an abstraction of an executable entity. They are both represented by the 
			<i>Runnable</i> element and are distinguished by using the service attribute of type boolean.
			<br>Unlike tasks, which are activated in the context for the operating system, runnables are called by tasks or other runnables.
		</p>
		<p>Runnables and Services in the AMALTHEA model can have call parameters. It is possible to specify the arguments of a service call and potential data dependencies. Based on these types of information, an additional analysis can be performed.</p>


<h3><a id="section3.13.8">3.13.8 </a>Runnables</h3>
		<p>The next picture shows the general structure of the 
			<i>Runnable</i> element.
		</p>
		<p>
			<img src="images/model_sw_runnable_overview.png"/>
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>callback</i>
				</td>
				<td colspan="1" rowspan="1">
					<i>True</i> if a runnable is used as a callback
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>service</i>
				</td>
				<td colspan="1" rowspan="1">
					<i>True</i> if 
					<i>Runnable</i> element can be seen in a service or global function manner. In more detail, the 
					<i>Runnable</i> is only called from other 
					<i>Runnables</i> and not directly from a 
					<i>Task</i> context.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>activations</i>
				</td>
				<td colspan="1" rowspan="1">Although runnables in the simulation can only be called by tasks, it is possible to specify activation patterns for a runnable.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>executionCondition</i>
				</td>
				<td colspan="1" rowspan="1">It is possible to specify an execution condition for a runnable (depending on modes).</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>activityGraph</i>
				</td>
				<td colspan="1" rowspan="1">Top level object containing 
					<i>ActivityGraphItem</i> objects, representing runtime, label accesses, other 
					<i>Runnable</i> accesses. The possibilities are described below.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>tags</i>
				</td>
				<td colspan="1" rowspan="1">Can be used to annotate or group special kind of 
					<i>Runnables</i>
				</td>
			</tr>
		</table>


<h3><a id="section3.13.9">3.13.9 </a>Activity Graph</h3>
		<p>A 
			<i>ActivityGraph</i> is the root container of 
			<i>ActivityGraphItems</i>. In addition some of the items can also contain sub items. These items are implementing the interface 
			<i>IActivityGraphItemContainer</i>.
		</p>
		<p>
			<img src="images/model_sw_activitygraph_item_container.png"/>
		</p>
		<p>The following picture shows the structure of a 
			<i>Activity Graph</i>. The 
			<i>Activity Graph Items</i> are used to define detailed behavior. With the 
			<i>Switches</i> it is possible to define alternative execution paths. The elements of the graph are executed in the order they are stored in the data model. 
		</p>
		<p>
			<img src="images/model_sw_activitygraph_structure.png"/>
		</p>


<h3><a id="section3.13.10">3.13.10 </a>Activity Graph Items</h3>
		<p>The 
			<i>ActivityGraphItems</i> are describing the detailed behavior of a 
			<i>Process</i> or 
			<i>Runnable</i>. This can be either an abstraction of runtime or representing access to other elements like 
			<i>Runnables</i>, 
			<i>Labels</i>, and 
			<i>Semaphores</i>. An overview of the different possibilities is given in the next pictures.
		</p>
		<p>
			<img src="images/model_sw_activity_graph_items.svg"/>
		</p>


<h4><a id="section3.13.10.1"></a>Groups</h4>
		<p>A 
			<i>Group</i> is used to structure the 
			<i>ActivityGraphItems</i>. 
		</p>
		<p>
			<img src="images/model_sw_activity_graph_items__group.svg"/>
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>ordered</i>
				</td>
				<td colspan="1" rowspan="1">
					<i>boolean</i> attribute that indicates if the execution order of the contained elements is 
					<ins>fixed</ins> (default) or random.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>interruptible</i>
				</td>
				<td colspan="1" rowspan="1">
					<i>boolean</i> attribute that specifies whether the group 
					<ins>can be interrupted</ins> (default).<br>If set to false the group cannot be interrupted (neither by interrupts nor by other higher priority tasks).
				</td>
			</tr>
		</table>
		<p>Some hints regarding 
			<ins>non-interruptible</ins> groups:
		</p>
		<ul>
			<li>they usually should be very short, so the system remains responsive</li>
			<li>they may not have nested groups among their contained items (this would result in a validation error)</li>
			<li>they should not be used for resource access synchronization across cores – there are Semaphores for that purpose</li>
			<li>they directly correspond to the sections between 
				<i>SuspendAllInterrupts</i> and 
				<i>ResumeAllInterrupts</i> calls in AUTOSAR
			</li>
		</ul>


<h4><a id="section3.13.10.2"></a>While Loop</h4>
		<p>A 
			<i>WhileLoop</i> enables to represent repetitions of activity graph items within an activity graph. These repeated items are contained in 
			<i>items</i> (from 
			<i>ActivityGraphItemContainer</i>). They will be repeated as long as the 
			<i>condition</i> is evaluated to be 
			<strong>true</strong>. In order to enter the while loop at all, the condition must initially be 
			<strong>true</strong>.
		</p>
		<p>
			<img src="images/model_sw_activity_graph_items__whileloop.svg"/>
		</p>


<h4><a id="section3.13.10.3"></a>Switch</h4>
		<p>Switches can be used to define different execution paths within an activity graph. A 
			<i>Switch</i> corresponds to 
			<i>if-else</i> or 
			<i>switch-case</i> statements in a programming language. It uses the evaluated 
			<i>ConditionDisjunction</i> to decide which entry will be executed. The first fulfilled condition determines the path to execute.
			<br>A 
			<i>SwitchEntry</i> object is used to represent an execution path. A condition is defined for each entry (via 
			<i>ConditionDisjunction</i>).
			<br>At the 
			<i>Switch</i> it is also possible to define a default path, which is executed if none of the conditions of the 
			<i>SwitchEntries</i> is true.
		</p>
		<p>
			<img src="images/model_sw_activity_graph_items__switch.svg"/>
		</p>


<h4><a id="section3.13.10.4"></a>Probability Switch</h4>
		<p>Each entry (path) of a 
			<i>ProbabilitySwitch</i> has a probability-value. As the name indicates, this is the value that defines the probability that the path is executed. It is computed as a fraction of its value divided by the sum of all 
			<i>ProbabilitySwitchEntries</i> in the surrounding switch.
		</p>
		<p>
			<img src="images/model_sw_activity_graph_items__probability_switch.png"/>
		</p>


<h4><a id="section3.13.10.5"></a>Ticks</h4>
		<p>
			<i>Ticks</i> allow to specify the required execution "time" in a basic way. They are the equivalent of cycles in the hardware domain and the execution time can easily be calculated if the frequency of the executing 
			<i>ProcessingUnit</i> (PU) is known.
			<br>Detailed definition: see <a href="#basics-ticks">Ticks</a>
		</p>


<h4><a id="section3.13.10.6"></a>Execution Need</h4>
		<p>
			<i>ExecutionNeed</i> allows to specify the required execution "time" in a more abstract way. Multiple 
			<i>NeedEntries</i> can be used to specify execution characteristics. There is a map of default entries and (optional) maps of entries for specific hardware types (e.g. FPGA). These extended entries are also implemented as a map with a processing unit definition as the key.
		</p>
		<p>
			<img src="images/model_sw_activity_graph_items__execution_need.png"/>
		</p>
		<p>A simple approach (equivalent to the 
			<i>RunnableInstructions</i> in older versions of the AMALTHEA model) is the specification of the "number of generic instructions" that have to be executed. Together with the hardware feature "instructions per cycle (IPC)" and the frequency of a processing unit it permits the calculation of the execution time on a specific processing unit.
		</p>
		<p>
			<img src="images/model_sw_hw_features_executionneed.png"/>
		</p>
		<p>With the generic concept of 
			<i>ExecutionNeeds</i> it is also possible to describe more detailed characteristics, e.g. instruction mixes of floating point operations, integer operations, load/store operations, etc., or any other relevant aspect.
		</p>


<h4><a id="section3.13.10.7"></a>Calls and AUTOSAR communication</h4>
		<p>
			<img class="scale" src="images/model_sw_activity_graph_items__calls.png"/>
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>RunnableCall</i>
				</td>
				<td colspan="1" rowspan="1">The activation of another 
					<i>Runnable</i>.
				</td>
			</tr>
			<tr/>
			<tr>
				<td colspan="1" rowspan="1">
					<i>SenderReceiverCommunication</i>
				</td>
				<td colspan="1" rowspan="1">An abstract description for sender-receiver-communication (it can be read or write).</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>ServerCall</i>
				</td>
				<td colspan="1" rowspan="1">An abstract description for client/server communication. It refers to a required runnable that describes the called server operation</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>SynchronousServerCall</i>
				</td>
				<td colspan="1" rowspan="1">A synchronous server call with defined waiting behaviour.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>AsynchronousServerCall</i>
				</td>
				<td colspan="1" rowspan="1">An asynchronous server call with (optional) specification of result runnable.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>GetResultsServerCall</i>
				</td>
				<td colspan="1" rowspan="1">Get the result of a previous asynchronous server call (with defined blocking behaviour).</td>
			</tr>
		</table>


<h4><a id="section3.13.10.8"></a>Label Access</h4>
		<p>
			<img class="scale" src="images/model_sw_activity_graph_items__label_access.png"/>
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>access</i>
				</td>
				<td colspan="1" rowspan="1">The type of access is represented using the values of 
					<i>LabelAccessEnum</i>.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>data</i>
				</td>
				<td colspan="1" rowspan="1">Describes the access to an existent 
					<i>Label</i> (set as reference).
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>dataStability</i>
				</td>
				<td colspan="1" rowspan="1">Describes the data stability needs. If set, it overwrites the label settings, otherwise it inherits them (see <a href="#os-data-consistency">OS Data Consistency</a>).</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>implementation</i>
				</td>
				<td colspan="1" rowspan="1">Describes how a label access is implemented:	<ul><li>
					<strong>explicit</strong>: also known as "direct" </li><li>
					<strong>implicit</strong>: also known as "optimized"</li><li>
					<strong>timed</strong></li></ul>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>statistic</i>
				</td>
				<td colspan="1" rowspan="1">Defines the frequency of the label access.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>transmissionPolicy</i>
				</td>
				<td colspan="1" rowspan="1">The following attributes reflect the computing demand (time) depending on data: <ul><li> 
					<strong>chunkSize</strong>: Size of a part of an element, maximum is the element size. </li><li> 
					<strong>chunkProcessingTicks</strong>: Number of ticks that will be executed to process one chunk (algorithmic overhead). </li></ul> The next attribute specifies the amount of data actually accessed by a runnable (required to analyze memory bandwidth demands): <ul><li> 
					<strong>transmitRatio</strong>: Specify the ratio of each element that is actually transmitted by the runnable in percent. Value must be between [0, 1], default value is 1.0 . </li></ul>
				</td>
			</tr>
		</table>


<h4><a id="section3.13.10.9"></a>Channel Access</h4>
		<p>
			<img src="images/model_sw_activity_graph_items__channel_access.png"/>
		</p>
		<p>Common attributes:</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>data</i>
				</td>
				<td colspan="1" rowspan="1">Describes the access (
					<i>ChannelSend</i> or 
					<i>ChannelReceive</i>) to an existent 
					<i>Channel</i> (set as reference).
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>elements</i>
				</td>
				<td colspan="1" rowspan="1">Maximum number of elements that are transmitted.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>transmissionPolicy</i>
				</td>
				<td colspan="1" rowspan="1">The following attributes reflect computing demand (time) depending on data: <ul><li> 
					<strong>chunkSize</strong>: Size of a part of an element, maximum is the element size. </li><li> 
					<strong>chunkProcessingTicks</strong>: Number of ticks that will be executed to process one chunk (algorithmic overhead). </li></ul> The next attribute specifies the amount of data actually accessed by a runnable (required to analyze memory bandwidth demands): <ul><li> 
					<strong>transmitRatio</strong>: Specify the ratio of each element that is actually transmitted by the runnable in percent. Value must be between [0, 1], default value is 1.0 . </li></ul>
				</td>
			</tr>
		</table>
		<p>Receive attributes:</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>receiveOperation</i>
				</td>
				<td colspan="1" rowspan="1">The type of an operation is defined by LIFO or FIFO, Read or Take: <ul><li> 
					<strong>LIFO</strong>: last-in, first-out </li><li> 
					<strong>FIFO</strong>: first-in, first-out </li><li> 
					<strong>Read</strong>: reads elements (without modifying the channel content) </li><li> 
					<strong>Take</strong>: removes the received elements </li></ul>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>elementIndex</i>
				</td>
				<td colspan="1" rowspan="1">Position (index) in channel at which the operation is effective. Zero is the default and denotes the oldest (FIFO) or newest element (LIFO) in the channel.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>lowerBound</i>
				</td>
				<td colspan="1" rowspan="1">Minimum number of elements returned by the operation. The value must be in the range [0,n], with n is the maximum number of elements that are received. Default value is n.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>dataMustBeNew</i>
				</td>
				<td colspan="1" rowspan="1">Specify if the operation must only return elements that are not previously read by the runnable. Default value is false.</td>
			</tr>
		</table>


<h4><a id="section3.13.10.10"></a>Semaphore Access</h4>
		<p>
			<img src="images/model_sw_activity_graph_items__semaphore_access.png"/>
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>SemaphoreAccess</i>
				</td>
				<td colspan="1" rowspan="1">Represents an access of a Semaphore. The type of access is defined using the 
					<i>SemaphoreAccessEnum</i> values. The 
					<i>Semaphore</i> itself is set as a reference to an existent one.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>access</i>
				</td>
				<td colspan="1" rowspan="1">Defines the type of access (request, exclusive, release).</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>waitingBehaviour</i>
				</td>
				<td colspan="1" rowspan="1">Defines if the process is blocking the core when it waits (active) or not (passive).</td>
			</tr>
		</table>


<h4><a id="section3.13.10.11"></a>Mode Label Access</h4>
		<p>
			<img src="images/model_sw_activity_graph_items__mode_label_access.png"/>
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>ModeLabelAccess</i>
				</td>
				<td colspan="1" rowspan="1">Describes the access to an existing 
					<i>ModeLabel</i> (set as reference). The type of access is represented using the values of 
					<i>ModeLabelAccessEnum</i>: <ul><li>
					<strong>read</strong>: indicates that the behavior of the runnable is influenced by the current value of the 
					<i>ModeLabel</i>.</li><li>
					<strong>set</strong>: represents the change of a mode label. The defined 
					<i>value</i> is set.</li><li>
					<strong>increment</strong> / 
					<strong>decrement</strong>: changes a mode label. The value is increased / decreased by 
					<i>step</i>. In case of an 
					<i>EnumMode</i> the next / previous literal is set (according to 
					<i>step</i> limited by the range of literals).</li></ul>
				</td>
			</tr>
		</table>
		<ul class="validation-rule">
			<li> 
				<em>ModeLabelAccess</em>: The 
				<em>value</em> string must be a valid element of the corresponding 
				<em>Mode</em>!
			</li>
		</ul>


<h4><a id="section3.13.10.12"></a>Custom Event Trigger</h4>
		<p>The 
			<i>Custom Event Trigger</i> references an event of type 
			<i>Custom Event</i>. The execution of a 
			<i>Custom Event Trigger</i> entry triggers the corresponding event that can be observed by an 
			<i>Event Stimulus</i>.  
		</p>
		<p>
			<img src="images/model_sw_activity_graph_items__triggers.png"/>
		</p>


<h4><a id="section3.13.10.13"></a>Enforced Migration</h4>
		<p>Each task is controlled by at least one task scheduler. A task scheduler is the resource owner of one or multiple processor cores (The task scheduler decides on which of its cores the task is executed). The 
			<i>Enforced Migration</i> forces the task to switch to another task scheduler. Therefore the 
			<i>Enforced Migration</i> entry contains a reference to the new task scheduler.
		</p>
		<p>This element is used as a short notation to simplify the simulation of different design possibilities. It should normally be modeled as two separate tasks and an inter process trigger.</p>


<h4><a id="section3.13.10.14"></a>Inter Process Trigger</h4>
		<p>The 
			<i>Inter Process Trigger</i> references a stimulus of type 
			<i>Inter Process Stimulus</i>. The execution of an 
			<i>Inter Process Trigger</i> entry triggers the processes that are mapped to this stimulus.  
		</p>


<h4><a id="section3.13.10.15"></a>Schedule Point</h4>
		<p>At a 
			<i>Schedule Point</i>, the process calls the scheduler that currently administrates it. This is used for cooperative task scheduling (see OSEK Specification 2.2.3, 2005).
		</p>


<h4><a id="section3.13.10.16"></a>Terminate Process</h4>
		<p>If a 
			<i>Terminate Process</i> is reached during the execution of a 
			<i>Activity Graph</i>, the 
			<i>Task</i> or 
			<i>ISR</i> terminates immediately. It is not required to insert this element at the end of a 
			<i>Activity Graph</i>. It can be used to define an execution path (by using 
			<i>Switches</i>) that terminates a process.   
		</p>


<h4><a id="section3.13.10.17"></a>Wait/Clear/Set Event</h4>
		<p>The AMALTHEA Software Model contains a list of 
			<i>OS-Event</i> objects. These can be used for task synchronization. Elements are  
			<i>Wait Event</i>, 
			<i>Clear Event</i> and 
			<i>Set Event</i>. 
		</p>
		<p>
			<img src="images/model_sw_osevents.png"/>
		</p>
		<p>With 
			<i>Wait Event</i> the process waits for a number of events (defined in the 
			<i>Event Mask</i>) to be set. Here it can be defined if the process waits just for one of the 
			<i>OS-Events</i> (maskType = OR) or for all of them (maskType = AND). The 
			<i>waiting behaviour</i> defines if the process is blocking the core when it waits (active) or not (passive). 
		</p>
		<p>
			<i>Set Event</i> sets/fires a list of 
			<i>OS-Events</i>. Here it is possible to define a context for the 
			<i>OS-Event</i>. If a process is referenced, then the 
			<i>OS-Events</i> are set just for this process.
		</p>
		<p>The execution of a 
			<i>Clear Event</i> entry unsets all referenced 
			<i>OS-Events</i>. 
		</p>
		<p>For more information about OS-Events, see the OSEK Specification 2.2.3, 2005. </p>


<h4><a id="section3.13.10.18"></a>Statistical Values</h4>
		<p>
			<img src="images/model_sw_statistic.png"/>
		</p>
		<p>It is possible to add to different elements (as shown in the picture above) different types of statistical values. These values can be used to describe in more detail the following behaviors:</p>
		<ul>
			<li>
				<i>RunEntityCallStatistic</i>: Can be used to describe in more detail the dynamic call behavior of a 
				<i>RunnableCall</i>. The value is representing how often the call is performed.
			</li>
			<li>
				<i>LabelAccessStatistic</i>: Describes in more detail the dynamic behavior accessing a 
				<i>Label</i> by having cache misses or how often a read/write is performed.
			</li>
		</ul>


<h3><a id="section3.13.11">3.13.11 </a>Modes</h3>
		<p>The next diagram shows the overall picture, the sub chapters describe the details.</p>
		<p>
			<img class="scale" src="images/model_sw_modes_overview.png"/>
		</p>
		<p>The actual state of a Mode is represented by a 
			<i>ModeLabel</i> or a 
			<i>LocalModeLabel</i>.
			<br>The (global) mode labels are mainly used in 
			<i>Mode Conditions</i> to describe the conditional execution of a 
			<i>Runnable</i> or a 
			<i>Stimulus</i>.
			<br>Local mode labels are defined in the context of an executable and can be modified in the activity graph.
			<br>Both types of mode labels can be used to determine which path should be executed in a 
			<i>Switch</i> statement or how often the body of a 
			<i>WhileLoop</i> should be repeated.
		</p>


<h3><a id="section3.13.12">3.13.12 </a>Mode Labels</h3>
		<p>
			<img class="scale" src="images/model_sw_modes.png"/>
		</p>
		<p>The 
			<i>Mode</i> element denotes the type and the possible values of a specific system state. The subclasses 
			<i>EnumMode</i> and 
			<i>NumericMode</i> describe the values that are allowed for the corresponding 
			<i>ModeLabel</i>. In case of a 
			<i>EnumMode</i> the 
			<i>initialValue</i> has to be the name of one of the contained 
			<i>ModeLiterals</i>. For 
			<i>NumericMode</i> the 
			<i>initialValue</i> has to be the string representation of an integer. 
		</p>
		<p>Both 
			<i>Mode Label</i> elements are a concrete representation of a specific 
			<i>Mode</i>. They are described using the following attributes:
		</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>name</i>
				</td>
				<td colspan="1" rowspan="1">Name of the mode label</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>displayName</i>
				</td>
				<td colspan="1" rowspan="1">In addition to the name attribute, which must be unique, a mode label can also be described by an additional and optional display name. The displayName attribute must not be unique. It can be used for example to represent specification data, which can be different from the unique name (like a symbol) of an available software build.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>mode</i>
				</td>
				<td colspan="1" rowspan="1">Reference to the corresponding 
					<i>Mode</i> definition
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>initialValue</i>
				</td>
				<td colspan="1" rowspan="1">String representation of the initial value (of a mode label)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>defaultValue</i>
				</td>
				<td colspan="1" rowspan="1">String representation of the default value (of a local mode label)</td>
			</tr>
		</table>


<h4><a id="section3.13.12.1"></a>Mode Changes</h4>
		<p>The value of a (global) mode label can be changed using the set-mode-value-list of a 
			<i>Stimulus</i>.
		</p>
		<p>Another possibility is a write access within an 
			<i>Activity Graph</i> via a 
			<i>Mode Label Access</i> or 
			<i>Local Mode Label Assignment</i>.
		</p>


<h4><a id="section3.13.12.2"></a>Mode Conditions</h4>
		<p>Mode conditions allow to specify dedicated states of the overall system. 
			<br>Depending on the condition evaluation switches can be executed or stimuli can be influenced.
			<br>The ModeValueMap represents the system state that has to be provided as an external input, e.g. from a simulation or analysis tool.
		</p>
		<p>
			<img class="scale" src="images/model_sw_modecondition.png"/>
		</p>


<h3><a id="section3.13.13">3.13.13 </a>Local Mode Labels</h3>
		<p>Local mode labels are defined in the context of an executable (Task, ISR or Runnable).</p>
		<p>The class diagram shows the abstract class 
			<strong>LocalModeValue</strong> that provides the connection between a local mode label and a value source.
		</p>
		<p>
			<img class="scale" src="images/model_sw_local_mode_value.png"/>
		</p>
		<p>Possible value sources:</p>
		<ul>
			<li>Constants (integer values or mode literals)</li>
			<li>Values of other mode labels</li>
			<li>Fill levels of channels</li>
			<li>Arithmetic expressions</li>
		</ul>
		<p>The subclasses are used for comparison and assignment.</p>
		<p>
			<img class="scale" src="images/model_sw_local_mode_value_hierarchy.png"/>
		</p>


<h4><a id="section3.13.13.1"></a>Local Mode Label Assignment</h4>
		<p>The 
			<i>Local Mode Label Assignment</i> offers a number of possibilities to change the value of a local mode label. Values can be constant, the copied value of another mode label or even the result of an arithmetic expression.
		</p>
		<p>The 
			<i>Mode Label Assignment</i> simply provides a way to copy the content of a local mode label to a global one.
		</p>
		<p>
			<img class="scale" src="images/model_sw_mode_assignment.png"/>
		</p>


<h4><a id="section3.13.13.2"></a>Local Mode Conditions</h4>
		<p>Local mode conditions are available where local mode labels are accessible. That means they can be used in 
			<i>Switch</i> or  
			<i>WhileLoop</i> statements in the activity graph of an executable.
		</p>
		<p>
			<img class="scale" src="images/model_sw_local_mode_condition.png"/>
		</p>


<h4><a id="section3.13.13.3"></a>Local mode label examples</h4>
		<p>The following example shows a local mode label "loop1" that represents a numeric mode called "Counter". It is defined in the scope of the runnable "ABSCalculation". This scope is also seen in all references to the local mode label where the qualified name "ABSCalculation.loop1" has to be used. The value of the local mode label is modified and checked by several items of the activity graph: the value is set, checked in the loop condition of a while loop and decremented in the loop body. The last line shows that it is also possible to store the value of a local mode label in a (global) mode label.</p>
		<p>
			<img class="scale" src="images/model_sw_local_mode_label_counter.png"/>
		</p>
		<p>The local mode labels of an executable are available only during the execution. The next part of the example shows how to initialize local mode labels of the called runnable as part of the runnable call. This feature allows to set the context of a specific invocation and the runnable can react accordingly (e.g. by executing different paths of the activity graph).</p>
		<p>
			<img class="scale" src="images/model_sw_local_mode_label_call_context.png"/>
		</p>


<h3><a id="section3.13.14">3.13.14 </a>Process Prototypes</h3>
		<p>
			<img class="scale" src="images/model_sw_process_prototype.png"/>
		</p>
		<p>In addition to the Task elements, the AMALTHEA model contains an element process prototype.
			<br>This prototype can be used to define raw data of a task. It can be used to specify access to
			<br>labels (read, write) or other runnables/functions as possible with the normal task, but not the
			<br>order of the access. These prototypes are then processed by different algorithms. The algorithms are creating the tasks, are filling, verifying or modifying the data based on their different checks. The final result of this processing are tasks, which are corresponding to the data of the prototypes.
		</p>
		<p>
			<img src="images/process_prototypes.png"/>
		</p>
		<p>These tasks are representing the current state and can be further processed, for example to generate code or further simulation. With the process prototypes available in the model, it is possible to define the structure of the software in an early development phase. The implementation at that moment is open and not yet completed, but the general idea can be verified.
			<br>Another issue can be the distribution to a multi-core system, coming from a single-core system. Therefore the activity graph can be analyzed and computed to get the right order and parallelization of the elements and dependencies.
		</p>


<h3><a id="section3.13.15">3.13.15 </a>Process Chains</h3>
		<p>The following figure shows the structure which describes 
			<i>Process Chains</i> in the AMALTHEA software model. A process chain is used to group task and isrs together which are executing after each other and represent an end-to-end data processing path. The processes inside a process chain are connected via 
			<i>Inter Process Activations</i>.
		</p>
		<p>
			<img src="images/model_sw_process_chain.png"/>
		</p>
		<p>The following attributes are describing a process chain:</p>
		<table class="minimal" style="padding:10px; border:1px solid black; background:#f8f8f8">
			<tr>
				<th colspan="1" rowspan="1">Name</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>name</i>
				</td>
				<td colspan="1" rowspan="1">Name of the process chain</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<i>processes</i>
				</td>
				<td colspan="1" rowspan="1">List of tasks and isrs which are included in the process chain</td>
			</tr>
		</table>


<h3><a id="section3.13.16">3.13.16 </a>Custom Entities</h3>
		<p>
			<img src="images/model_custom_entity.png"/>
		</p>
		<p>The 
			<i>CustomEntity</i> element defines a way to add not yet available elements of the software model in a generic way. The only contained attribute defines the type of the entity by setting it as a 
			<i>String</i>. Additional properties can be set using the 
			<i>CustomAttributes</i>.
		</p>


<h3><a id="section3.13.17">3.13.17 </a>Section</h3>
		<p>Section (Virtual Memory Section) is used to group the memory elements (Labels, Runnables). This is achieved by associating the 
			<strong>Section</strong> element to 
			<strong>Label</strong> &amp; 
			<strong>Runnable</strong> elements
		</p>
		<p>Below are properties of Section element:</p>
		<ul>
			<li>name</li>
			<li>asilLevel</li>
		</ul>
		<p>
			<img src="images/model_section.png"/>
		</p>
		<p>With this type of information available, the complexity of mapping software components to memories can be reduced. The next picture gives an overview about the general idea of the mapping with Sections.</p>
		<p>
			<img src="images/model_section_memory.png"/>
		</p>


<h3><a id="section3.13.18">3.13.18 </a>Data Dependencies and Runnable Parameters</h3>


<h4><a id="section3.13.18.1"></a>Overview</h4>
		<p>The purpose of following model elements is to describe a high level data flow. Parameters of runnables (or services) and specific call arguments allow to model a behavior that depends on the call tree but the detailed computation and the control flow within a runnable are not taken into account. Therefore only "potential" influences are modeled. The following picture shows this data flow with dashed lines.</p>
		<p>
			<img src="images/model_sw_dataflow_overview.png"/>
		</p>


<h4><a id="section3.13.18.2"></a>Elements with data dependency</h4>
		<p>The data flow is specified with "depends on" references. Elements that can specify a dependency are:</p>
		<ul>
			<li>
				<i>
					<b>LabelAccess</b>
				</i> of type "WRITE"
			</li>
			<li>
				<i>
					<b>CallArgument</b>
				</i> that refers to an "IN" (or "INOUT") parameter
			</li>
			<li>
				<i>
					<b>RunnableParameter</b>
				</i> with direction "OUT" (or "INOUT")
			</li>
		</ul>
		<p>
			<img src="images/model_sw_depends_on.png"/>
		</p>


<h4><a id="section3.13.18.3"></a>Data Dependency</h4>
		<p>A data dependency defines the elements that can influence a value that is written or transferred. Possible origins are:</p>
		<ul>
			<li>
				<i>
					<b>Label</b>
				</i>
			</li>
			<li>
				<i>
					<b>RunnableParameter</b>
				</i> with direction "IN" (or "INOUT")
			</li>
			<li>
				<i>
					<b>CallArgument</b>
				</i> that refers to an "OUT" (or "INOUT") parameter
			</li>
		</ul>
		<p>
			<img src="images/model_sw_data_dependency.png"/>
		</p>
</article>


<article>
<h1><a id="section4">4 </a>Developer Guide</h1>


<h2><a id="section4.1">4.1 </a>Overview of Features and Plug-ins</h2>


<h3><a id="section4.1.1">4.1.1 </a>Features</h3>
		<p>There are two top-level features of the AMALTHEA Tool Platform, the AMALTHEA Tool Platform and the AMALTHEA Tool Platform SDK features. The non-SDK feature contains everything you need to run the AMALTHEA tools and models. If you like to develop new tools on top of the models or extend the models you may need the SDK. It contains beside the runtime all sources.</p>
		<p>The top-level feature itself contains basic platform plug-ins and tools as well as several sub-features. These are</p>
		<ul>
			<li>APP4MC Platform – Platform (includes all features and 3rd party libraries).</li>
			<li>APP4MC Docu – Basic Help (is extended by loading other features).</li>
			<li>APP4MC Examples – Examples that can be added by the example wizard.</li>
		</ul>
		<ul>
			<li>AMALTHEA Models – AMALTHEA models (EMF) and utility functions.</li>
			<li>AMALTHEA Edit – AMALTHEA model edit support.</li>
			<li>AMALTHEA Editors – Editors for the models.</li>
		</ul>
		<ul>
			<li>APP4MC Validation – Model validations (can be selected and executed on demand).</li>
			<li>AMALTHEA Visualizations – Model visualizations (show additional info on selected model element).</li>
			<li>AMALTHEA Converters – Independent feature for AMALTHEA model migration.</li>
		</ul>
		<ul>
			<li>AMALTHEA Workflow Common – Basic elements to define workflows on the model.</li>
			<li>AMALTHEA Workflow – Defining workflows (based on MWE2 workflow engine).</li>
			<li>AMALTHEA Workflow Scripting – Defining workflows (based on EASE scripting).</li>
		</ul>
		<ul>
			<li>APP4MC Tracing – Record, analyze and transform runtime traces of the embedded system.</li>
		</ul>
		<ul>
			<li>AMALTHEA Import – Import of the models.</li>
			<li>AMALTHEA Export – Exports of the models.</li>
		</ul>
		<p>
			<img src="images/app4mc_platform_features.png"/>
		</p>
		<p>For all features there also exists an SDK containing the sources. If you install the AMALTHEA Tool Platform SDK, it contains all features as SDKs.</p>


<h3><a id="section4.1.2">4.1.2 </a>Plug-ins</h3>
		<p>The plug-ins are organized in various namespaces. The ids of most plug-ins containing models are within the namespace 
			<code>org.eclipse.app4mc.amalthea.model</code>, whereas examples can be found in plug-ins named 
			<code>app4mc.example</code>.
		</p>


<h2><a id="section4.2">4.2 </a>Model Visualization</h2>


<h3><a id="section4.2.1">4.2.1 </a>Visualization framework</h3>
		<p>The plug-in 
			<code>org.eclipse.app4mc.visualization.ui</code> provides a small framework to visualize model elements. It contains a view part 
			<code>VisualizationPart</code> that can be opened via
		</p>
		<ul>
			<li> 
				<i>Window &rarr; Show View &rarr; Other... &rarr; APP4MC &rarr; APP4MC Visualizations</i>, 
			</li>
			<li> or via right click on an element and selecting 
				<i>Open APP4MC Visualization</i>.
			</li>
		</ul>
		<p>Via the context menu it is also possible to open multiple instances of the 
			<code>VisualizationPart</code>.
		</p>
		<p>On selecting a model element, the VisualizationPart is updated to render a corresponding visualization. The visualization to render is searched in the ModelVisualizationRegistry OSGi service. If multiple visualizations are registered, the first one will be selected by default, unless the user has selected another visualization before.</p>
		<p>The visualization view has 3 buttons in the toolbar:</p>
		<ol>
			<li>
				<b>Visualization dropdown</b><br>The dropdown contains all available visualizations for the current active selection. A click on the image will reload the visualization.
			</li>
			<li>
				<b>Pin visualization</b><br>The selection handling will be disabled so the visualization gets not updated on model selection changes.
			</li>
			<li>
				<b>Select model element</b><br>Selects the current visualized model element in the model editor. Useful for example if a visualization is pinned and the selection in the model editor changed.
			</li>
		</ol>
		<p>
			<img src="images/visualization-view.png"/>
		</p>
		<p>The whole red area can be used to render the visualization.</p>


<h3><a id="section4.2.2">4.2.2 </a>Contributing a new model visualization</h3>
		<p>To contribute a new visualization to the framework, the followings steps have to be done:</p>
		<ol>
			<li>Create a new plug-in for the visualization contribution.<br><br></li>
			<li>Add at least the following dependencies:
				<ul>
					<li>Required Plug-ins
						<ul>
							<li>
								<strong>org.eclipse.jface</strong><br>(to be able to contribute to the view)
							</li>
						</ul>
					</li>
					<li>Imported Packages
						<ul>
							<li>
								<strong>org.eclipse.app4mc.amalthea.model</strong><br>(to get access to the model element that should be rendered)
							</li>
							<li>
								<strong>org.eclipse.app4mc.visualization.ui.registry</strong><br>(needed to import the necessary interface)
							</li>
							<li>
								<strong>org.osgi.service.component.annotations</strong>: In the properties, select Minimum Version as 
								<strong>1.3.0</strong> inclusive<br>(needed to get access to the OSGi DS annotations)<br><br>
							</li>
						</ul>
					</li>
				</ul>
			</li>
			<li>Create a new Visualization implementation that follows this pattern:</li>
		</ol>
		<pre xml:space="preserve"><code>@Component(property= {
		"name=Runnable Visualization",
		"description=Render the name of the Runnable"
})
public class SampleVisualization implements Visualization {
	
	@PostConstruct
	public void createVisualization(Runnable runnable, Composite parent) {
		Label label = new Label(parent, SWT.NONE);
		label.setText(runnable.getName());
	}
}
</code></pre>
		<p><!-- --></p>
		<p>To register the Visualization implementation the framework utilizes OSGi DS. This means:</p>
		<ul>
			<li>The class needs to implement 
				<strong>Visualization</strong> (only a marker interface needed for OSGi service injection)
			</li>
		</ul>
		<pre xml:space="preserve"><code>It is mandatory to place this class inside a user defined package (i.e., other than default package)
</code></pre>
		<p><!-- --></p>
		<ul>
			<li>The class needs to be annotated with 
				<strong>@Component</strong> (ensure DS annotation support is enabled in your workspace)
			</li>
		</ul>
		<pre xml:space="preserve"><code>To enable DS annotation for the entire workspace,enable the following option in your eclipse workspace at:
Window -&gt; Preferences -&gt; Plug-in Development -&gt; DS Annotations -&gt; "Enable descriptors from annotated sources" 
</code></pre>
		<p><!-- --></p>
		<p>Once above steps are followed, visualization plugin contents should look like below:</p>
		<p>
			<img class="gray_scale" src="images/visualization-plugin-content.png"/>
		</p>
		<p>The Visualization will automatically be registered in the 
			<strong>ModelVisualizationRegistry</strong> with the appropriate meta-data. The meta-data is extracted from the class definition and the method annotated with 
			<strong>@PostConstruct</strong>. Additionally information can be provided via component properties on the 
			<strong>@Component</strong> annotation.
		</p>
		<p>The following component properties are supported:</p>
		<dl>
			<dt>id</dt>
			<dd>Defaults to the fully qualified class name of the service.
				<br>Used to uniquely identify the last selected visualization.
			</dd>
		</dl>
		<dl>
			<dt>name</dt>
			<dd>Defaults to the simple class name of the service.
				<br>Used in the visualization dropdown as label of the menu item.
			</dd>
		</dl>
		<dl>
			<dt>description</dt>
			<dd>Defaults to null.
				<br>Used in the visualization dropdown as tooltip of the menu item.
			</dd>
		</dl>
		<dl>
			<dt>type</dt>
			<dd>Defaults to the type of the first parameter of the @PostConstruct method.
				<br>Used to register the visualizations for a given model type.
				<br>
				<b>Note: It is not recommended to override the type configuration.</b>
			</dd>
		</dl>
		<p>The rendering is triggered via Eclipse injection mechanisms. Therefore a method annotated with 
			<b>@PostConstruct</b> needs to be created. This method needs at least two parameters in the following order:
		</p>
		<ol>
			<li>
				<b>Model type</b> or 
				<b>java.util.List&lt;Model type&gt;</b><br>The first parameter needs to be the type or a List of the type that should be handled by this Visualization.
			</li>
			<li>
				<b>Composite</b><br>The parent Composite on which the rendering should be performed.  
			</li>
		</ol>
		<p>So the following method signatures would be valid for Visualizations for Runnable model elements:</p>
		<pre xml:space="preserve"><code>@PostConstruct
public void createVisualization(Runnable runnable, Composite parent) {}

@PostConstruct
public void createVisualization(List&lt;Runnable&gt; runnable, Composite parent) {}
</code></pre>
		<p><!-- --></p>
		<p>You can specify additional parameters that should be injected. Only the first parameter has a semantic to be able to extract the model type for which the Visualization is implemented.</p>
		<p>Additionally a method annotated with 
			<strong>@PreDestroy</strong> can be added that gets called before the Visualization is disposed. This gives the opportunity to clean up resources if necessary.
		</p>
		<p>As the service instance creation is done by the OSGi Service Component Runtime, the following information needs to be considered with regards to injection:</p>
		<ol>
			<li>You can use @Reference to get other OSGi services injected.</li>
			<li>There is no field or constructor injection available via Eclipse injection.<br>(usage of @Inject on fields or constructors will not work)</li>
			<li>In general you should not use fields/members to store rendering related information on an instance level.</li>
		</ol>


<h2><a id="section4.3">4.3 </a>Model Validation</h2>


<h3><a id="section4.3.1">4.3.1 </a>Validation framework</h3>
		<p>APP4MC contains a flexible framework based on standard EMF validations.</p>
		<p>The main plugins:</p>
		<dl>
			<dt>org.eclipse.app4mc.validation.core</dt>
			<dd>Basic interfaces and helper classes to organize and execute validations.</dd>
		</dl>
		<dl>
			<dt>org.eclipse.app4mc.validation.ui</dt>
			<dd>User interface components: profile selection dialog, marker helper.</dd>
		</dl>
		<dl>
			<dt>org.eclipse.app4mc.amalthea.validations</dt>
			<dd>AMALTHEA standard profile and validations</dd>
		</dl>


<h3><a id="section4.3.2">4.3.2 </a>Validations</h3>
		<p>Validations have to implement the IValidation interface. Additional information is specified with annotations:</p>
		<ul>
			<li>@Validation</li>
		</ul>
		<p>Example:</p>
		<p>
			<img src="images/code_validation_1.png"/>
		</p>


<h3><a id="section4.3.3">4.3.3 </a>Profiles</h3>
		<p>Profiles have to implement the IProfile interface. Details are specified with the following annotations:</p>
		<ul>
			<li>@Profile</li>
			<li>@ProfileGroup</li>
			<li>@ValidationGroup</li>
		</ul>
		<p>Example:</p>
		<p>
			<img src="images/code_profile_1.png"/>
		</p>
		<p>
			<img src="images/code_profile_2.png"/>
		</p>


<h2><a id="section4.4">4.4 </a>Model Workflow</h2>


<h3><a id="section4.4.1">4.4.1 </a>Introduction</h3>
		<p>The APP4MC AMALTHEA platform provides the option to define a workflow on a model with different steps. AMALTHEA provides a simple API for implementing such a workflow. The definition of the workflow can be done either in plain Java or any other language, which is able to access Java classes.</p>
		<p>The 
			<a href="https://www.eclipse.org/ease/">EASE</a> framework provides a scripting environment inside of Eclipse with different script engines like  Rhino (JavaScript), Jython or Groovy. AMALTHEA provides a sample and some convenient helpers based on EASE to define and execute such a workflow.
		</p>
		<p>As an alternative APP4MC provides also an implementation for the 
			<a href="http://www.eclipse.org/Xtext/documentation/302_configuration.html">Modeling Workflow Engine 2 (MWE2)</a>, coming from the Xtext framework. The definition of the workflow can be done in a textual syntax from MWE2, containing different components which are working on the given model.
		</p>
		<p>AMALTHEA provides several plugins for this purpose:</p>
		<dl>
			<dt>org.eclipse.app4mc.amalthea.workflow.core</dt>
			<dd>Includes basic API and some predefined workflow components, which can be used independent from any framework.</dd>
		</dl>
		<dl>
			<dt>org.eclipse.app4mc.amalthea.workflow.ease</dt>
			<dd>Provides some helper modules for EASE</dd>
		</dl>
		<dl>
			<dt>org.eclipse.app4mc.amalthea.workflow.mwe2</dt>
			<dd>Provides basic classes for usage with MWE2</dd>
		</dl>


<h3><a id="section4.4.2">4.4.2 </a>General Structure</h3>
		<p>The plugin 
			<i>org.eclipse.app4mc.amalthea.workflow.core</i> provides a general abstract class 
			<code>org.eclipse.app4mc.amalthea.workflow.core.WorkflowComponent</code> which can be used to extend in the case to provide or implement an own workflow step.
		</p>
		<p>
			<img src="images/uml_workflow_component.png"/>
		</p>
		<p>It provides the following features:</p>
		<ul>
			<li>Defines the constant 
				<code>AMALTHEA_SLOT</code>, which can be used to store and retrieve the AMALTHEA model from the 
				<code>org.eclipse.app4mc.amalthea.workflow.core.Context</code>.
			</li>
			<li>Provides some convenient methods to retrieve the model from the context, get a copy of the model or store the model in the context.</li>
		</ul>
		<p>The interface 
			<code>org.eclipse.app4mc.amalthea.workflow.core.Context</code> provides convenient methods to store and retrieve data in a 
			<code>org.eclipse.app4mc.amalthea.workflow.core.WorkflowComponent</code>.
		</p>
		<p>
			<img src="images/uml_context.png"/>
		</p>
		<p>The class 
			<code>org.eclipse.app4mc.amalthea.workflow.core.DefaultContext</code> is a default implementation using an internal 
			<code>java.util.HashMap</code> to store the data.
		</p>
		<p>
			<img src="images/uml_default_context.png"/>
		</p>
		<p>A sample workflow implementation with two components 
			<code>WorkfklowComponent1</code> and 
			<code>WorkflowComponent2</code> can look like the following structure.
		</p>
		<p>Both classes are extending 
			<code>org.eclipse.app4mc.amalthea.workflow.core.WorkflowComponent</code>.
		</p>
		<p>
			<img src="images/uml_workflow_overview.png"/>
		</p>
		<p>The next step is to create a 
			<i>WorkflowDefinition</i>, which needs to do the following steps:
		</p>
		<ol>
			<li>Create an instance of a 
				<code>org.eclipse.app4mc.amalthea.workflow.core.Context</code> using the 
				<code>org.eclipse.app4mc.amalthea.workflow.core.DefaultContext</code>
			</li>
			<li>Create an instance of 
				<code>WorkflowComponent1</code> and configure it if needed with the proper setter methods
			</li>
			<li>Call the 
				<i>run</i> method of 
				<code>WorkflowComponent1</code> and pass the context
			</li>
			<li>Create an instance of 
				<code>WorkflowComponent2</code> and configure it if needed with the proper setter methods
			</li>
			<li>Call the 
				<i>run</i> method of 
				<code>WorkflowComponent2</code> and pass the context
			</li>
		</ol>
		<p>Therefore using the context, data can be shared between the different workflow component implementations.
			<br>The following diagram is showing this flow in more detail:
		</p>
		<p>
			<img src="images/uml_workflow_overview_sequence.png"/>
		</p>


<h3 id="workflow-basic-components"><a id="section4.4.3">4.4.3 </a>Available Basic Components</h3>
		<p>The APP4MC AMALTHEA platform ships with some available workflow steps, which can be used out of the box.</p>


<h4><a id="section4.4.3.1"></a>Model Reader</h4>
		<p>The component 
			<code>org.eclipse.app4mc.amalthea.workflow.component.ModelReader</code> reads a given list of files containing AMALTHEA models. The result model is stored in the 
			<code>AMALTHEA_SLOT</code> as default. Please refer the JavaDoc for more details.
		</p>
		<p>
			<img src="images/uml_model_reader.png"/>
		</p>
		<p>Simple configuration inside of a workflow can look like the following:</p>
		<pre xml:space="preserve"><code>ModelReader reader = new ModelReader();
reader.addFileName("path to file");
reader.run(ctx);
</code></pre>
		<p><!-- --></p>


<h4><a id="section4.4.3.2"></a>Model Writer</h4>
		<p>The component 
			<code>org.eclipse.app4mc.amalthea.workflow.component.ModelWriter</code> writes a given AMALTHEA model to either one file or several files. As default the current available model in the 
			<code>AMALTHEA_SLOT</code> is taken.
			<br>The following parameters are available to set:
		</p>
		<ul>
			<li>
				<code>boolean singleFile</code> default 
				<code>true</code>
			</li>
			<li>
				<code>String</code> 
				<code>outputDir</code>
			</li>
			<li>
				<code>String</code> 
				<code>fileName</code>, if output is set to split files the different models are separated by an additional suffix in the name indicating the contained model.
			</li>
		</ul>
		<p>
			<img src="images/uml_model_writer.png"/>
		</p>
		<p>Sample configuration inside of a workflow:</p>
		<pre xml:space="preserve"><code>ModelWriter writer = new ModelWriter();
writer.setOutputDir("path to dir");
writer.setFileName("output.amxmi");
writer.run(ctx);
</code></pre>
		<p><!-- --></p>


<h4><a id="section4.4.3.3"></a>Add Schedule Points</h4>
		<p>The component 
			<code>org.eclipse.app4mc.amalthea.workflow.component.AddSchedulePoints</code> modifies a given model (default in the 
			<code>AMALTHEA_SLOT</code>) in that way, that in the 
			<code>org.eclipse.app4mc.amalthea.model.sw.SWModel</code> the contained 
			<code>org.eclipse.app4mc.amalthea.model.sw.Task</code> elements are checked if the preemption is set to cooperative. If this is the case, it will add between the elements of the 
			<code>org.eclipse.app4mc.amalthea.model.sw.CallGraph</code> new elements of type 
			<code>org.eclipse.app4mc.amalthea.model.sw.SchedulePoint</code>.
		</p>
		<p>
			<img src="images/uml_add_schedule_points.png"/>
		</p>
		<p>Sample configuration inside of a workflow:</p>
		<pre xml:space="preserve"><code>AddSchedulePoints addSchedulePoints = new AddSchedulePoints();
addSchedulePoints.run(ctx);
</code></pre>
		<p><!-- --></p>


<h3><a id="section4.4.4">4.4.4 </a>EASE modules</h3>
		<p>The purpose of using EASE is to provide one way to define and run a workflow for a model.
			<br>Therefore APP4MC provides some helper methods to be used in the 
			<a href="https://www.eclipse.org/ease/">EASE</a> scripting environment.
			<br>The modules are provided by the plugin 
			<i>org.eclipse.app4mc.amalthea.workflow.
				<strong>ease</strong>
			</i>.
		</p>


<h4><a id="section4.4.4.1"></a>Workflow Module</h4>
		<p>The workflow module provides some helpers regarding running a APP4MC workflow definition based on EASE.
			<br>The general module can be loaded with the following line:
		</p>
		<pre xml:space="preserve"><code>loadModule('/APP4MC/Workflow')
</code></pre>
		<p>EASE opens an own Eclipse console by default to show the output of the executed script when using right click and 
			<i>Run as -&gt; EASE Script</i>. Therefore if you are using Log4J for your logging, you can use the following provided methods to configure dedicated Log4J Loggers to use also the EASE console for output.
		</p>
		<p>The following overview gives an overview about the available helper methods:</p>
		<table class="minimal">
			<tr>
				<th colspan="1" rowspan="1">Method</th>
				<th colspan="1" rowspan="1">Params</th>
				<th colspan="1" rowspan="1">Description</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">addLoggerToConsole</td>
				<td colspan="1" rowspan="1">String loggerName</td>
				<td colspan="1" rowspan="1">Adds a Log4J logger to the output of the current used output of the EASE script engine.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">addLoggerToConsole</td>
				<td colspan="1" rowspan="1">String loggerName, String pattern</td>
				<td colspan="1" rowspan="1">Adds a Log4J logger to the output of the current used output of the EASE script engine with a given pattern, see 
					<code>org.apache.log4j.PatternLayout</code> for more details
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">endWorkflow</td>
				<td colspan="1" rowspan="1">-</td>
				<td colspan="1" rowspan="1">Basic finish actions to be performed, should be called at the end</td>
			</tr>
		</table>


<h3><a id="section4.4.5">4.4.5 </a>MWE2 Workflow</h3>
		<p>The plugin 
			<i>org.eclipse.app4mc.amalthea.workflow.
				<strong>mwe2</strong>
			</i> provides a general class 
			<code>org.eclipse.app4mc.amalthea.workflow.base.AmaltheaWorkflow</code> which can be used to extend in the case to provide or implement an own workflow step based on 
			<a href="http://www.eclipse.org/Xtext/documentation/302_configuration.html">Modeling Workflow Engine 2 (MWE2)</a>.
			<br>It provides the following features:
		</p>
		<ul>
			<li>Extends 
				<code>org.eclipse.emf.mwe.core.lib.WorkflowComponentWithModelSlot</code>
			</li>
			<li>Defines the constant AMALTHEA_SLOT, which can be used to store and retrieve the AMALTHEA model from the 
				<code>org.eclipse.emf.mwe.core.WorkflowContext</code>.
			</li>
			<li>Provides some convenient methods to retrieve the model from the context, get a copy of the model or store the model in the context.</li>
		</ul>
		<p>
			<img src="images/uml_workflow_component_mwe2.png"/>
		</p>
		<p>To use the AMALTHEA model workflow component, currently the following dependencies are needed in addition to the AMALTHEA model plugins:</p>
		<ul>
			<li>org.eclipse.app4mc.amalthea.workflow.mwe2</li>
			<li>org.eclipse.emf.mwe2.lib</li>
			<li>org.eclipse.emf.mwe2.launch</li>
			<li>org.apache.log4j</li>
		</ul>


<h4><a id="section4.4.5.1"></a>MWE2 Components</h4>
		<p>The APP4MC AMALTHEA platform ships with some available workflow steps for usage together with MWE2.
			<br>Note: To use the components below as shown in the corresponding configurations, the classes must be imported!
		</p>


<h5><a id="section4.4.5.1.1"></a>Reader</h5>
		<p>The component 
			<code>org.eclipse.app4mc.amalthea.workflow.mwe2.util.AmaltheaReader</code> reads a given list of files containing AMALTHEA models. The result model is stored in the 
			<i>AMALTHEA_SLOT</i> as default.
		</p>
		<p>
			<img src="images/uml_model_reader_mwe2.png"/>
		</p>
		<p>Sample configuration inside of a workflow:</p>
		<pre xml:space="preserve"><code>component = AmaltheaReader {
	fileName = "${base}/model/AMALTHEA_Democar_MappingExample.amxmi"
	fileName = "${base}/model/AMALTHEA_Democar_MappingExample-hw.amxmi"
}
</code></pre>


<h5><a id="section4.4.5.1.2"></a>Writer</h5>
		<p>The component 
			<code>org.eclipse.app4mc.amalthea.workflow.mwe2.util.AmaltheaWriter</code> writes a given AMALTHEA model to either one file or several files. As default the current available model in the 
			<i>AMALTHEA_SLOT</i> is taken.
			<br>The following parameters are available to set:
		</p>
		<ul>
			<li>boolean singleFile default true</li>
			<li>String outputDir</li>
			<li>String fileName, if output is set to split files the different models are separated by an additional suffix in the name indicating the contained model.</li>
		</ul>
		<p>
			<img src="images/uml_model_writer_mwe2.png"/>
		</p>
		<p>Sample configuration inside of a workflow:</p>
		<pre xml:space="preserve"><code>component = AmaltheaWriter {
	fileName = "createtasks"
	singleFile = true
	outputDir = "${base}/workflow-output"
}
</code></pre>


<h5><a id="section4.4.5.1.3"></a>Add Schedule Points</h5>
		<p>The component 
			<code>org.eclipse.app4mc.amalthea.workflow.mwe2.util.AddSchedulePoints</code> modifies a given model (default in the AMALTHEA_SLOT) in that way, that in the 
			<code>org.eclipse.app4mc.amalthea.model.SWModel</code> the contained 
			<code>org.eclipse.app4mc.amalthea.model.Task</code> elements are checked if the preemption is set to cooperative. If this is the case, it will add between the elements of the 
			<code>org.eclipse.app4mc.amalthea.model.CallGraph</code> new elements of type 
			<code>org.eclipse.app4mc.amalthea.model.SchedulePoint</code>.
		</p>
		<p>
			<img src="images/uml_add_schedule_points_mwe2.png"/>
		</p>
		<p>Sample configuration inside of a workflow:</p>
		<pre xml:space="preserve"><code>component = AddSchedulePoints {
}
</code></pre>


<h3><a id="section4.4.6">4.4.6 </a>Current Limitations / Open Points</h3>
		<p>As there are two options available (Basic Java/EASE and MWE2 based) for running a workflow, there are currently also some limitations existent. The following table should help you to chose the right base:</p>
		<table class="classic">
			<tr>
				<th colspan="1" rowspan="1">Use Case</th>
				<th colspan="1" rowspan="1">Supported in MWE2</th>
				<th colspan="1" rowspan="1">Supported in EASE</th>
				<th colspan="1" rowspan="1">Reason</th>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Loading of AMALTHEA model files (with cross document references) using workflow/script file</td>
				<td colspan="1" rowspan="1" style="text-align:center;color:red">
					<strong>no</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align:center;color:green">
					<strong>yes</strong>
				</td>
				<td colspan="1" rowspan="1"><ul><li> 
					<strong>MWE2</strong>: Separate Java runtime is started by MWE2, Sphinx relies in running Eclipse instance </li><li> 
					<strong>EASE</strong>: Makes use of the runtime from runtime workbench</li></ul>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Using workflow components which are available in the runtime (i.e. workflow component classes which are already available in plugins as a part of the runtime product)</td>
				<td colspan="1" rowspan="1" style="text-align:center;color:green">
					<strong>yes</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align:center;color:green">
					<strong>yes</strong>
				</td>
				<td colspan="1" rowspan="1"><ul><li> 
					<strong>MWE2</strong>: Separate runtime is started by MWE2 and if plugin (containing workflow component) is added as dependency then its classes are loaded </li><li> 
					<strong>EASE</strong>: Makes use of the runtime from runtime workbench and has access to all classes </li></ul>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Defining custom workflow components (Java classes) and using them in the workflow/script file located in the same workspace</td>
				<td colspan="1" rowspan="1" style="text-align:center;color:green">
					<strong>yes</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align:center;color:green">
					<strong>yes</strong>
				</td>
				<td colspan="1" rowspan="1"><ul><li> 
					<strong>MWE2</strong>: Custom workflow component objects can be directly created in MWE2 script file(as in Java) and there is no restriction [irrespective of whether there is constructor] </li><li> 
					<strong>EASE</strong>: As the runtime from the launched workbench (runtime workbench) is used, custom Java classes available in the workspace are not part of the classpath. For creation of objects of custom workflow components (Java classes): EASE JVM module 
					<code>createInstance</code> API should be used by specifying the absolute path of the Java class </li></ul>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Using Java classes (available in the runtime workspace from other plugins --&gt; these classes are not part of runtime workbench) inside custom workflow component Java classes</td>
				<td colspan="1" rowspan="1" style="text-align:center;color:green">
					<strong>yes</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align:center;color:green">
					<strong>yes</strong>
				</td>
				<td colspan="1" rowspan="1"><ul><li> 
					<strong>MWE2</strong>: works perfectly (just like native) </li><li> 
					<strong>EASE</strong>: works, for creation of object from custom Java classes, EASE JVM module is used, which compiles the used Java classes and creates objects of them </li></ul>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Using classes (API) from 3rd party libraries (added in the classpath of the plugin)inside custom workflow component java classes</td>
				<td colspan="1" rowspan="1" style="text-align:center;color:green">
					<strong>yes</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align:center;color:green">
					<b>yes(*)</b>
				</td>
				<td colspan="1" rowspan="1"><ul><li> 
					<strong>MWE2</strong>: As new Java runtime is created, all the required plugins &amp; jars are added in the classpath </li><li> 
					<strong>EASE</strong>:  The runtime from workbench and the jars from the classpath of a plugin (created newly in the runtime workbench) are loaded by EASE. </li></ul>
				</td>
			</tr>
		</table>
		<p>*: This feature is only available for EASE versions newer than 0.3.0. Older versions will fail with an exception java.lang.NoClassDefFoundError: &lt;your used class from 3rd party lib&gt;</p>
		<p>Sample for using EASE JVM module to load a class from the same workspace:</p>
		<pre xml:space="preserve"><code>var labelsCreationComponent = createInstance("workspace://com.ease.example/src/org/eclipse/app4mc/amalthea/example/workflow/components/CreateLabelsComponent.java")
</code></pre>


<h3><a id="section4.4.7">4.4.7 </a>Adding a new workflow component</h3>
		<p>Below you will find a sample how to add and implement a new workflow component.</p>


<h3><a id="section4.4.8">4.4.8 </a>Create project</h3>
		<ol>
			<li>Add a new plugin project with the name 
				<i>my.sample.workflow</i>
			</li>
			<li>Open the 
				<i>MANIFEST.MF</i> in the META-INF folder.
			</li>
			<li>Switch to the tab Dependencies to add the following plugin dependencies: org.eclipse.app4mc.amalthea.workflow.core</li>
			<li>Add a new class 
				<code>my.sample.workflow.HelloWorld</code>, which is extending 
				<code>org.eclipse.app4mc.amalthea.workflow.core.WorkflowComponent</code>.
			</li>
			<li>Implement something in the 
				<code>runInternal(Context ctx) throws WorkflowException</code> method (see sample below).
			</li>
		</ol>
		<pre xml:space="preserve"><code>@Override
protected void runInternal(Context ctx) throws WorkflowException {
	// some checking if sw model is available
	if (null == getAmaltheaModel(ctx).getSwModel()) {
		throw new WorkflowException("No proper SWModel available!");
	}
	this.log.info("Number of tasks in model: " + getAmaltheaModel(ctx).getSwModel().getTasks().size());
}
</code></pre>
		<p><!-- --></p>


<h4><a id="section4.4.8.1"></a>Execute the new component in the available sample</h4>
		<p>The previous created class 
			<code>my.sample.workflow.HelloWorld</code> should be added to a workflow.
			<br>Therefore we are using the provided sample project from APP4MC 
			<i>org.eclipse.app4mc.amalthea.example.democar.mapping</i>.
			<br>Before starting with the next steps, we need to start a new runtime from the existing workspace, so that the plugin 
			<i>my.sample.workflow</i> is already loaded.
		</p>
		<p>
			<strong>Note:</strong> If you want to use the classes from the plugin 
			<i>my.sample.workflow</i> in a EASE script located in the same workspace, you can create an instance of it at runtime using the JVM module of EASE. Please consider the EASE documentation for more details.
		</p>
		<ol>
			<li>Add the AMALTHEA democar samples to your workspace (File – New – Example – Democar Examples)</li>
			<li>Go to the project 
				<i>org.eclipse.app4mc.amalthea.example.democar.mapping</i>.
			</li>
			<li>Open the 
				<i>sample_workflow.js</i> located in the workflow folder.
			</li>
			<li>Add to the imports: 
				<code>importPackage(my.sample.workflow)</code>
			</li>
			<li>Add to the logger configs: 
				<code>addLoggerToConsole("my.sample.workflow")</code>
			</li>
			<li>Add the First snippet below after the first AmaltheaReader component and before the CreateTasks component.</li>
			<li>Run the script by doing a right click -&gt; Run As -&gt; EASE Script</li>
		</ol>
		<pre xml:space="preserve"><code>var ctx = new DefaultContext()

//Reader
var reader = new ModelReader()
reader.addFileName(MODEL_LOCATION1)
reader.addFileName(MODEL_LOCATION2)
reader.run(ctx)

var hw = new HelloWorld()
hw.run(ctx)

//create tasks based on initial model
//result is saved in modelslot createtasks
var createTasks = new CreateTasks()
createTasks.run(ctx)
</code></pre>
		<p><!-- --></p>


<h2><a id="section4.5">4.5 </a>Model Migration</h2>


<h3><a id="section4.5.1">4.5.1 </a>Technologies used</h3>
		<p>For migration of AMALTHEA models, plane java approach has been used (
			<em>non EMF</em>) along with the following 3rd party libraries :
		</p>
		<ul>
			<li>JDOM 2</li>
			<li>JAXEN</li>
			<li>XALAN</li>
			<li>XERCES</li>
		</ul>


<h3><a id="section4.5.2">4.5.2 </a>Framework for model migration</h3>
		<p>Using the above specified technologies, eclipse plugin based framework for model migration is developed.</p>
		<ul>
			<li>
				<em>
					<strong>org.eclipse.app4mc.amalthea.converters.common</strong>
				</em>  plugin consists of 
				<em>Model migration framework</em>
			</li>
		</ul>


<h3><a id="section4.5.3">4.5.3 </a>Components of Model Migration Framework</h3>
		<ul>
			<li>Converters</li>
			<li>Cache Builders</li>
			<li>Pre Processor</li>
			<li>Post Processor</li>
		</ul>
		<p>Detailed description of each component can be found below:</p>
		<p>
			<strong>Converters:</strong> This component is responsible for converting the model (xmi) content from one version to another. A Converter component is executed for selected model files and the corresponding referred model files for migration (
			<em>each execution is w.r.t. specific model file</em>).
		</p>
		<blockquote>
			<p>First version of APP4MC was 0.7.0</p>
		</blockquote>
		<blockquote>
			<p>From version 0.9.3 of APP4MC, there will not be any support for migration of AMALTHEA models based on ITEA releases (itea.103, itea.110, itea.111).</p>
		</blockquote>
		<p>
			<strong>Cache Builders:</strong> This component is responsible for building the required cache, by querying the input models or storing the necessary information - &gt; before executing the Converters for specific migration step (
			<em>e.g. 0.9.0 to 0.9.1</em>)
			<br>Scope of each Cache Builder component is only during a step of model migration (
			<em>e.g. 0.9.0 to 0.9.1</em>)
		</p>
		<blockquote>
			<p>Each Cache Builder component is tightly coupled to a specific AMALTHEA model version.</p>
		</blockquote>
		<p>
			<strong>Pre Processor:</strong> This component is responsible for fetching/modifying specific information before invocation of Cache Builders/Converters components.
		</p>
		<blockquote>
			<p>This component is tightly coupled to input version of the AMALTHEA model files which are selected (explicitly/implicitly) for model migration. Each Pre-Processor component is executed only once for the input model files, irrespective of number of migration steps.</p>
		</blockquote>
		<p>
			<strong>Post Processor:</strong> This component is responsible for adding/modifying specific information after invocation of Cache Builders/Converters components for a specific migration step (
			<em>e.g. 0.9.0 to 0.9.1</em>)
		</p>
		<blockquote>
			<p>This component is tightly coupled to input and output version of the AMALTHEA model files which are selected (explicitly/implicitly) for model migration.</p>
		</blockquote>
		<p>
			<em>Example how Post-Processor's are invoked:</em>
		</p>If Post-Processor is defined with input-model-versions :0.9.0, 0.9.1 and output version 0.9.2.In case if the migration is invoked from 0.9.0 to 0.9.2 for the specified AMALTHEA models.Following migration steps are to be performed internally:
		<ul>
			<li>0.9.0 to 0.9.1</li>
			<li>0.9.1 to 0.9.2</li>
		</ul>
		<blockquote>
			<p>In this case post-processor is invoked after migration step 0.9.1 to 0.9.2 </p>
		</blockquote>
		<p>Flexibility of post-processors is, they are defined in a generalized way to specify in the direction which they should be invoked as a part of model migration.</p>


<h4><a id="section4.5.3.1"></a>Model migration sequence</h4>
		<p>Sequence in which various components are invoked during model migration</p>
		<p>
			<img class="gray_scale" src="images/model_migration_sequence_diagram.png"/>
		</p>


<h3 id="meta-model-changes"><a id="section4.5.4">4.5.4 </a>AMALTHEA meta model changes</h3>
		<p>Based on the changes in AMALTHEA meta model across various releases, below description contains the differences in detail which are considered for model migration.</p>
		<p>
			<em>
				<span style="color:brown">Hint: Model extensions (that do not require migration) are not listed here.</span>
			</em>
		</p>


<h4><a id="section4.5.4.1"></a>Version APP4MC 2.0.0 to APP4MC 2.1.0</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 2.0.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 2.1.0)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/2.0.0</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/2.1.0</td>
			</tr>
		</table>
		<p>
			<strong>Following Class is extended:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>New attribute</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SWModel</td>
				<td colspan="1" rowspan="1">ChannelFillCondition</td>
				<td colspan="1" rowspan="1">relation</td>
				<td colspan="1" rowspan="1">Value is set to "GREATER_THAN_OR_EQUAL" to preserve former semantics.</td>
			</tr>
		</table>


<h4><a id="section4.5.4.2"></a>Version APP4MC 1.2.0 to APP4MC 2.0.0</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 1.2.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 2.0.0)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/1.2.0</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/2.0.0</td>
			</tr>
		</table>
		<p>
			<strong>Following Classes are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name in 1.2.0</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>2.0.0</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>SchedulingParameters</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">SchedulingParameter</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>ParameterExtension</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">SchedulingParameter</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<em>Algorithm</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>(abstract class)</em>
				</td>
				<td colspan="1" rowspan="1">-</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<em>InterruptSchedulingAlgorithm</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>(abstract class)</em>
				</td>
				<td colspan="1" rowspan="1">-</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>PriorityBased</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<em>TaskSchedulingAlgorithm</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>(abstract class)</em>
				</td>
				<td colspan="1" rowspan="1">-</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<em>FixedPriority</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>(abstract class)</em>
				</td>
				<td colspan="1" rowspan="1">-</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>FixedPriorityPreemptive</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>FixedPriorityPreemptiveWithBudgetEnforcement</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>OSEK</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>DeadlineMonotonic</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>RateMonotonic</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<em>Pfair</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>(abstract class)</em>
				</td>
				<td colspan="1" rowspan="1">-</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>PfairPD2</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>PartlyPFairPD2</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>EarlyReleaseFairPD2</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>PartlyEarlyReleaseFairPD2</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<em>DynamicPriority</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>(abstract class)</em>
				</td>
				<td colspan="1" rowspan="1">-</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>LeastLocalRemainingExecutionTimeFirst</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>EarliestDeadlineFirst</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>PriorityBasedRoundRobin</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<em>ReservationBasedServer</em>
				</td>
				<td colspan="1" rowspan="1">
					<em>(abstract class)</em>
				</td>
				<td colspan="1" rowspan="1">-</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>DeferrableServer</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>PollingPeriodicServer</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition;<br>name: 
					<strong>PollingServer</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>SporadicServer</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>ConstantBandwidthServer</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>ConstantBandwidthServerWithCASH</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition;<br>name: 
					<strong>ConstantBandwidthServerWithCapacitySharing</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Grouping</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition;<br>name: 
					<strong>GroupingServer</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<strong>UserSpecificSchedulingAlgorithm</strong>
				</td>
				<td colspan="1" rowspan="1">removed</td>
				<td colspan="1" rowspan="1">corresponding SchedulerDefinition and SchedulingParameterDefinition</td>
			</tr>
		</table>
		<p>
			<strong>Below references are changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name and Type (1.2.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name and Type (2.0.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">OSModel</td>
				<td colspan="1" rowspan="1">TaskScheduler</td>
				<td colspan="1" rowspan="1">
					<strong>schedulingAlgorithm</strong> 
					<em>(
						<strong>Algorithm</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">
					<strong>definition</strong> 
					<em>(
						<strong>SchedulerDefinition</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">containment reference to Algorithm is changed to a reference to SchedulerDefinition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">OSModel</td>
				<td colspan="1" rowspan="1">SchedulerAssociation</td>
				<td colspan="1" rowspan="1">schedulingParameters 
					<em>(
						<strong>SchedulingParameters</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">schedulingParameters 
					<em>(
						<strong>SchedulingParameter</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">containment reference is changed to new class</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">OSModel</td>
				<td colspan="1" rowspan="1">SchedulerAssociation</td>
				<td colspan="1" rowspan="1">
					<strong>parameterExtensions</strong> 
					<em>(
						<strong>ParameterExtension</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">
					<strong>schedulingParameters</strong> 
					<em>(
						<strong>SchedulingParameter</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">containment reference is changed to new class</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">MappingModel</td>
				<td colspan="1" rowspan="1">TaskAllocation</td>
				<td colspan="1" rowspan="1">schedulingParameters 
					<em>(
						<strong>SchedulingParameters</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">schedulingParameters 
					<em>(
						<strong>SchedulingParameter</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">containment reference is changed to new class</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">MappingModel</td>
				<td colspan="1" rowspan="1">TaskAllocation</td>
				<td colspan="1" rowspan="1">
					<strong>parameterExtensions</strong> 
					<em>(
						<strong>ParameterExtension</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">
					<strong>schedulingParameters</strong> 
					<em>(
						<strong>SchedulingParameter</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">containment reference is changed to new class</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SWModel</td>
				<td colspan="1" rowspan="1">WhileLoop</td>
				<td colspan="1" rowspan="1">condition 
					<em>(
						<strong>ModeConditionDisjunction</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">condition 
					<em>(
						<strong>ConditionDisjunction</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">containment reference is changed to generalized class</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SWModel</td>
				<td colspan="1" rowspan="1">Runnable</td>
				<td colspan="1" rowspan="1">executionCondition 
					<em>(
						<strong>ModeConditionDisjunction</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">executionCondition 
					<em>(
						<strong>ConditionDisjunction</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">containment reference is changed to generalized class</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">StimuliModel</td>
				<td colspan="1" rowspan="1">Stimulus</td>
				<td colspan="1" rowspan="1">executionCondition 
					<em>(
						<strong>ModeConditionDisjunction</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">executionCondition 
					<em>(
						<strong>ConditionDisjunction</strong>)
					</em>
				</td>
				<td colspan="1" rowspan="1">containment reference is changed to generalized class</td>
			</tr>
		</table>
		<p>
			<strong>Following Enums are renamed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name in 1.2.0</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Changed Class name in 2.0.0</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Container</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Condition</td>
				<td colspan="1" rowspan="1">CombinatorialCondition</td>
				<td colspan="1" rowspan="1">Classification</td>
			</tr>
		</table>


<h4><a id="section4.5.4.3"></a>Version APP4MC 1.1.0 to APP4MC 1.2.0</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 1.1.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 1.2.0)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/1.1.0</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/1.2.0</td>
			</tr>
		</table>


<h4><a id="section4.5.4.4"></a>Version APP4MC 1.0.0 to APP4MC 1.1.0</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 1.0.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 1.1.0)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/1.0.0</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/1.1.0</td>
			</tr>
		</table>


<h4><a id="section4.5.4.5"></a>Version APP4MC 0.9.9 to APP4MC 1.0.0</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.9.9)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 1.0.0)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.9</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/1.0.0</td>
			</tr>
		</table>
		<p>
			<strong>Following Classes are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name in 0.9.9</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>1.0.0</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">MeasurementModel</td>
				<td colspan="1" rowspan="1">removed ( + log entry)</td>
				<td colspan="1" rowspan="1">use Amalthea trace database (ATDB) instead</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Measurement</td>
				<td colspan="1" rowspan="1">
					<em>abstract class</em>
				</td>
				<td colspan="1" rowspan="1">-</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EventChainMeasurement</td>
				<td colspan="1" rowspan="1">removed (as sub element)</td>
				<td colspan="1" rowspan="1">-</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">TaskMeasurement</td>
				<td colspan="1" rowspan="1">removed (as sub element)</td>
				<td colspan="1" rowspan="1">-</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">RunnableMeasurement</td>
				<td colspan="1" rowspan="1">removed (as sub element)</td>
				<td colspan="1" rowspan="1">-</td>
			</tr>
		</table>
		<p>
			<strong>Following Enums are changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Enum literal in 0.9.9</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>1.0.0</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ProcessEventType.deadline</td>
				<td colspan="1" rowspan="1">removed ( + log entry)</td>
				<td colspan="1" rowspan="1">default; manual fix reqiured</td>
			</tr>
		</table>


<h4><a id="section4.5.4.6"></a>Version APP4MC 0.9.8 to APP4MC 0.9.9</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.9.8)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.9.9)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.8</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.9</td>
			</tr>
		</table>


<h4><a id="section4.5.4.7"></a>Version APP4MC 0.9.7 to APP4MC 0.9.8</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.9.7)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.9.8)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.7</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.8</td>
			</tr>
		</table>


<h4><a id="section4.5.4.8"></a>Version APP4MC 0.9.6 to APP4MC 0.9.7</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.9.6)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.9.7)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.6</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.7</td>
			</tr>
		</table>
		<p>
			<strong>Following Classes behavior is changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Amalthea sub-model</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Changed behavior in 0.9.7</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Component</td>
				<td colspan="1" rowspan="1">componentsModel</td>
				<td colspan="1" rowspan="1">Component has reference to ports and its type is change to new type ComponentPort.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ComponentPort</td>
				<td colspan="1" rowspan="1">componentsModel</td>
				<td colspan="1" rowspan="1">ComponentPort has reference to ComponentInterface.</td>
			</tr>
		</table>
		<p>
			<strong>Following Classes are renamed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name in 0.9.6</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Changed Class name in 0.9.7</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Amalthea sub-model</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">CallGraph</td>
				<td colspan="1" rowspan="1">ActivityGraph</td>
				<td colspan="1" rowspan="1">sw</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">CallGraphItem</td>
				<td colspan="1" rowspan="1">ActivityGraphItem</td>
				<td colspan="1" rowspan="1">sw</td>
			</tr>
		</table>
		<p>
			<strong>Below references are changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.9.6)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.9.7)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (in 0.9.6)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (in 0.9.7)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ports</td>
				<td colspan="1" rowspan="1">ports</td>
				<td colspan="1" rowspan="1">Port</td>
				<td colspan="1" rowspan="1">ComponentPort</td>
				<td colspan="1" rowspan="1">Component</td>
				<td colspan="1" rowspan="1">componentsModel</td>
				<td colspan="1" rowspan="1">ports reference is changed to new type ComponentPort</td>
			</tr>
		</table>
		<p>
			<strong>Below references are renamed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.9.6)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.9.7)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (in 0.9.6)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (in 0.9.7)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">tasks</td>
				<td colspan="1" rowspan="1">processes</td>
				<td colspan="1" rowspan="1">AbstractProcess</td>
				<td colspan="1" rowspan="1">AbstractProcess</td>
				<td colspan="1" rowspan="1">Component</td>
				<td colspan="1" rowspan="1">ComponentsModel</td>
				<td colspan="1" rowspan="1">tasks reference is renamed to processes</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">callGraph</td>
				<td colspan="1" rowspan="1">activityGraph</td>
				<td colspan="1" rowspan="1">CallGraph</td>
				<td colspan="1" rowspan="1">ActivityGraph</td>
				<td colspan="1" rowspan="1">Process</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">callGraph reference is renamed to activityGraph</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">callGraph</td>
				<td colspan="1" rowspan="1">activityGraph</td>
				<td colspan="1" rowspan="1">CallGraph</td>
				<td colspan="1" rowspan="1">ActivityGraph</td>
				<td colspan="1" rowspan="1">Runnable</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">callGraph reference is renamed to activityGraph</td>
			</tr>
		</table>


<h4><a id="section4.5.4.9"></a>Version APP4MC 0.9.5 to APP4MC 0.9.6</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.9.5)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.9.6)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.5</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.6</td>
			</tr>
		</table>
		<p>
			<strong>Following Classes behavior is changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Amalthea sub-model</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Changed behavior in 0.9.6</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">RunnableCall</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">RunnableCall has reintroduced the reference to Counter as an attribute.It is possible now to create counter for RunnableCall.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">AbstractEventChain</td>
				<td colspan="1" rowspan="1">constraints</td>
				<td colspan="1" rowspan="1">Now only one type of EvenChainItems are possible.EventchainItemType indicates if it is sequence or parallel</td>
			</tr>
		</table>
		<p>
			<strong>Following Classes are renamed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name in 0.9.5</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Changed Class name in 0.9.6</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Amalthea sub-model</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ModeCondition</td>
				<td colspan="1" rowspan="1">ModeValueCondition</td>
				<td colspan="1" rowspan="1">sw, stimuli</td>
			</tr>
		</table>
		<p>
			<strong>Below references are changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.9.5)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.9.6)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (in 0.9.5)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (in 0.9.6)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">segments</td>
				<td colspan="1" rowspan="1">items</td>
				<td colspan="1" rowspan="1">EventChainItem</td>
				<td colspan="1" rowspan="1">EventChainItem</td>
				<td colspan="1" rowspan="1">AbstractEventChain</td>
				<td colspan="1" rowspan="1">constraints</td>
				<td colspan="1" rowspan="1">segments reference is renamed to items</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">strands</td>
				<td colspan="1" rowspan="1">items</td>
				<td colspan="1" rowspan="1">EventChainItem</td>
				<td colspan="1" rowspan="1">EventChainItem</td>
				<td colspan="1" rowspan="1">AbstractEventChain</td>
				<td colspan="1" rowspan="1">constraints</td>
				<td colspan="1" rowspan="1">strands reference is renamed to items</td>
			</tr>
		</table>


<h4><a id="section4.5.4.10"></a>Version APP4MC 0.9.4 to APP4MC 0.9.5</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.9.4)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.9.5)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.4</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.5</td>
			</tr>
		</table>
		<p>
			<strong>Below references are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">runnableItems</td>
				<td colspan="1" rowspan="1">RunnableItem</td>
				<td colspan="1" rowspan="1">Runnable</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">runnableItems reference has been removed and replaced with new attribute CallGraph to provide all child elements same as Task.</td>
			</tr>
		</table>
		<p>
			<strong>Following Classes are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name in 0.9.4</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">CallSequence</td>
				<td colspan="1" rowspan="1">Equivalent element is Group in 0.9.5</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">RunnableModeSwitch</td>
				<td colspan="1" rowspan="1">Equivalent element is ModeSwitch in 0.9.5</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">RunnableProbabilitySwitch</td>
				<td colspan="1" rowspan="1">Equivalent element is ProbabilitySwitch in 0.9.5</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">GraphEntryBase</td>
				<td colspan="1" rowspan="1">Equivalent element is CallGraphItem in 0.9.5</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">RunnableItem</td>
				<td colspan="1" rowspan="1">Equivalent element is CallGraphItem in 0.9.5</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ClockSinusFunction</td>
				<td colspan="1" rowspan="1">Equivalent is ClockFunction in 0.9.5 with a new attribute type curvetype=sine</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ClockTriangleFunction</td>
				<td colspan="1" rowspan="1">Equivalent is ClockFunction in 0.9.5 with a new attribute type curvetype=triangle</td>
			</tr>
		</table>
		<p>
			<strong>Following Classes are renamed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name in 0.9.4</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Changed Class name in 0.9.5</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Amalthea sub-model</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ClockMultiplierList</td>
				<td colspan="1" rowspan="1">ClockStepList</td>
				<td colspan="1" rowspan="1">stimuli</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ClockMultiplierListEntry</td>
				<td colspan="1" rowspan="1">ClockStep</td>
				<td colspan="1" rowspan="1">stimuli</td>
			</tr>
		</table>
		<p>
			<strong>Following Classes behavior is changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Amalthea sub-model</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Changed behavior in 0.9.5</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">Runnable class has a new attribute callGraph. It is now possible to have all the child elements same as Task or Process</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Scenario</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">Reference 
					<em>recurrence</em> (Time) is replaced by 
					<em>samplingRecurrence</em> (non negative double)
				</td>
			</tr>
		</table>
		<p>
			<strong>Below references are changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.9.4)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.9.5)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (in 0.9.4)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (in 0.9.5)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">runnableItems</td>
				<td colspan="1" rowspan="1">callGraph</td>
				<td colspan="1" rowspan="1">RunnableItem</td>
				<td colspan="1" rowspan="1">CallGraph</td>
				<td colspan="1" rowspan="1">Runnable</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">runnableItems reference has been removed and replaced with new attribute CallGraph to provide all child elements same as Task.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">graphEntries</td>
				<td colspan="1" rowspan="1">items</td>
				<td colspan="1" rowspan="1">GraphEntryBase</td>
				<td colspan="1" rowspan="1">CallGraphItem</td>
				<td colspan="1" rowspan="1">CallGraph</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">graphEntries reference has been changed to items of type CallGraphItem.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">items</td>
				<td colspan="1" rowspan="1">items</td>
				<td colspan="1" rowspan="1">RunnableItem</td>
				<td colspan="1" rowspan="1">CallGraphItem</td>
				<td colspan="1" rowspan="1">Group</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">items reference has been changed to elements of type CallGraphItem</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">entries</td>
				<td colspan="1" rowspan="1">entries</td>
				<td colspan="1" rowspan="1">ClockMultiplierListEntry</td>
				<td colspan="1" rowspan="1">ClockStep</td>
				<td colspan="1" rowspan="1">ClockStepList</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">entries reference has been changed to type ClockStep</td>
			</tr>
		</table>


<h4><a id="section4.5.4.11"></a>Version APP4MC 0.9.3 to APP4MC 0.9.4</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.9.3)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.9.4)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.3</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.4</td>
			</tr>
		</table>
		<p>
			<strong>Below Enum Literals are changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Enum Name</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Literal name (version APP4MC 0.9.3)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Literal name (version APP4MC 0.9.4)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">PortInterface</td>
				<td colspan="1" rowspan="1">ABH</td>
				<td colspan="1" rowspan="1">AHB</td>
			</tr>
		</table>
		<p>
			<strong>Below references are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">deadine</td>
				<td colspan="1" rowspan="1">Time</td>
				<td colspan="1" rowspan="1">Runnable</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">deadline attribute has been removed and an equivalent RunnableRequirement object is created in the ConstraintsModel.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">disablingModeValueList</td>
				<td colspan="1" rowspan="1">ModeValueDisjunction</td>
				<td colspan="1" rowspan="1">Stimulus</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">disablingModeValueList reference has been completely removed.</td>
			</tr>
		</table>
		<p>
			<strong>Following Classes are renamed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name in 0.9.3</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Changed Class name in 0.9.4</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Amalthea sub-model</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ModeValueDisjunction</td>
				<td colspan="1" rowspan="1">ModeConditionDisjunction</td>
				<td colspan="1" rowspan="1">sw, stimuli</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ModeValueDisjunctionEntry</td>
				<td colspan="1" rowspan="1">ModeConditionDisjunctionEntry</td>
				<td colspan="1" rowspan="1">sw, stimuli</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ModeValueConjunction</td>
				<td colspan="1" rowspan="1">ModeConditionConjunction</td>
				<td colspan="1" rowspan="1">sw, stimuli</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">DataPlatformMapping</td>
				<td colspan="1" rowspan="1">Alias</td>
				<td colspan="1" rowspan="1">sw</td>
			</tr>
		</table>
		<p>
			<strong>Following Classes behavior is changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Amalthea sub-model</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Changed behavior in 0.9.4</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Mode</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">Mode is changed as abstract class. Mode has two subclasses NumericMode and EnumMode. All the Mode objects from Amalthea 0.9.3 are converted as EnumMode objects in 0.9.4</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ModeValue</td>
				<td colspan="1" rowspan="1">sw, stimuli</td>
				<td colspan="1" rowspan="1">ModeValue is an abstract class derived into ModeAssignment and ModeCondition</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ModeValueDisjunctionEntry</td>
				<td colspan="1" rowspan="1">sw, stimuli</td>
				<td colspan="1" rowspan="1">It is now changed as an interface ModeConditionDisjunctionEntry. This interface is realized as ModeCondition &amp; ModeConditionConjunction.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Runnable</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">Runnable class has a new attribute executionCondition.</td>
			</tr>
		</table>
		<p>
			<strong>Below references are changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.9.3)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.9.4)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (in 0.9.3)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (in 0.9.4)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">enablingModeValueList</td>
				<td colspan="1" rowspan="1">executionCondition</td>
				<td colspan="1" rowspan="1">ModeValueDisjunction</td>
				<td colspan="1" rowspan="1">ModeConditionDisjunction</td>
				<td colspan="1" rowspan="1">Stimulus</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">enablingModeValueList reference is now changed to executionCondition.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">entries</td>
				<td colspan="1" rowspan="1">entries</td>
				<td colspan="1" rowspan="1">ModeValue</td>
				<td colspan="1" rowspan="1">ModeCondition</td>
				<td colspan="1" rowspan="1">ModeValueDisjunction(in 0.9.3), ModeConditionDisjunction(in 0.9.4)</td>
				<td colspan="1" rowspan="1">sw, stimuli</td>
				<td colspan="1" rowspan="1">ModeValue is now changed to ModeCondition.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">value</td>
				<td colspan="1" rowspan="1">value</td>
				<td colspan="1" rowspan="1">ModeLiteral</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">ModeValueMapEntry, ModeValue</td>
				<td colspan="1" rowspan="1">sw, stimuli</td>
				<td colspan="1" rowspan="1">value is changed from ModeLiteral reference to a String (containing only modeLiteral name)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">valueProvider</td>
				<td colspan="1" rowspan="1">label</td>
				<td colspan="1" rowspan="1">ModeLabel</td>
				<td colspan="1" rowspan="1">ModeLabel</td>
				<td colspan="1" rowspan="1">ModeValue (can be ModeCondition or ModeAssignment)</td>
				<td colspan="1" rowspan="1">sw, stimuli</td>
				<td colspan="1" rowspan="1">valueProvider reference is changed to a label</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">condition</td>
				<td colspan="1" rowspan="1">condition</td>
				<td colspan="1" rowspan="1">ModeValueDisjunction</td>
				<td colspan="1" rowspan="1">ModeConditionDisjunction</td>
				<td colspan="1" rowspan="1">ModeSwitchEntry</td>
				<td colspan="1" rowspan="1">sw, stimuli</td>
				<td colspan="1" rowspan="1">condition type is changed to new reference class type ModeConditionDisjunction</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">initialValue</td>
				<td colspan="1" rowspan="1">initialValue</td>
				<td colspan="1" rowspan="1">ModeLiteral</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">ModeLabel</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">initialValue is changed from ModeLiteral reference to a String (containing only modeLiteral name) additional attribute mode is created and it is referring to the Mode which was containing ModeLiteral</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">access</td>
				<td colspan="1" rowspan="1">access</td>
				<td colspan="1" rowspan="1">LabelAccessEnum</td>
				<td colspan="1" rowspan="1">ModeLabelAccessEnum</td>
				<td colspan="1" rowspan="1">ModeLabelAccess</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">access is now a reference to enum type ModeLabelAccessEnum enhanced to support Enum mode.If literal "write" was used now it is changed to "set".</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">modeValue</td>
				<td colspan="1" rowspan="1">value</td>
				<td colspan="1" rowspan="1">ModeLiteral</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">ModeLabelAccess</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">value is changed from ModeLIteral reference to a String (containing only modeLiteral name)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">dataMapping</td>
				<td colspan="1" rowspan="1">aliases</td>
				<td colspan="1" rowspan="1">DataPlatformMapping</td>
				<td colspan="1" rowspan="1">Alias</td>
				<td colspan="1" rowspan="1">BaseTypeDefinition</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">dataMapping is renamed to avoid mixup with mapping to memory</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">platformName</td>
				<td colspan="1" rowspan="1">target</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">DataPlatformMapping (in 0.9.3), Alias (in 0.9.4)</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">platformName attribute is renamed to target</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">platformType</td>
				<td colspan="1" rowspan="1">alias</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">String</td>
				<td colspan="1" rowspan="1">DataPlatformMapping (in 0.9.3), Alias (in 0.9.4)</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">platformType attribute is renamed to alias</td>
			</tr>
		</table>


<h4><a id="section4.5.4.12"></a>Version APP4MC 0.9.2 to APP4MC 0.9.3</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.9.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.9.3)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.2</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.3</td>
			</tr>
		</table>
		<p>
			<strong>Below Classes are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class Name (version APP4MC 0.9.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Deviation</td>
				<td colspan="1" rowspan="1">Depending on the type of generic used for Deviation element, contents are migrated as IContinuousValueDeviation or IDiscreteValueDeviation or ITimeDeviation</td>
			</tr>
		</table>
		<p>
			<strong>Following Class names are changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name in 0.9.2</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Changed Class name in 0.9.3</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Amalthea sub-model</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">OsInstructions</td>
				<td colspan="1" rowspan="1">OsOverhead</td>
				<td colspan="1" rowspan="1">os</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">OsAPIInstructions</td>
				<td colspan="1" rowspan="1">OsAPIOverhead</td>
				<td colspan="1" rowspan="1">os</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">OsISRInstructions</td>
				<td colspan="1" rowspan="1">OsISROverhead</td>
				<td colspan="1" rowspan="1">os</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">LatencyConstant</td>
				<td colspan="1" rowspan="1">DiscreteValueConstant</td>
				<td colspan="1" rowspan="1">hw</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">LatencyDeivation</td>
				<td colspan="1" rowspan="1">DiscreteValueBetaDistribution DiscreteValueBoundaries DiscreteValueGaussDistribution DiscreteValueStatistics DiscreteValueUniformDistribution DiscreteValueWeibullEstimatorsDistribution</td>
				<td colspan="1" rowspan="1">os</td>
			</tr>
		</table>
		<p>
			<strong>Following Classes behavior is changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>Class name</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Amalthea sub-model</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>Changed behavior in 0.9.3</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ExecutionNeed</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">Till 0.9.2 ExecutionNeed element was used to specify the runtime information and also additional behaviour e.g: Performance etc., <br>Based on the latest change in 0.9.3, runtime information should be represented with Ticks element and additional information w.r.t. Performance etc., can be represented using ExecutionNeed element</td>
			</tr>
		</table>
		<p>
			<strong>Below references are changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name(version APP4MC 0.9.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name(version APP4MC 0.9.3)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (in 0.9.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (in 0.9.3)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">occurencesPerStep</td>
				<td colspan="1" rowspan="1">occurencesPerStep</td>
				<td colspan="1" rowspan="1">Deviation&lt;DoubleObject&gt;</td>
				<td colspan="1" rowspan="1">IContinuousValueDeviation</td>
				<td colspan="1" rowspan="1">VariableRateActivation</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">As there is a change in the Type of this reference from Deviation&lt;DoubleObject&gt; to IContinousValueDeviation. Content is migrated to the new elements.<br> Following elements are supported as Type: BoundedContinuousValueDistribution  ContinuousValueBetaDistribution ContinuousValueBoundaries ContinuousValueConstant ContinuousValueGaussDistribution ContinuousValueHistogram ContinuousValueStatistics ContinuousValueUniformDistribution ContinuousValueWeibullEstimatorsDistribution TruncatedContinuousValueDistribution</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">activationDeviation</td>
				<td colspan="1" rowspan="1">activation</td>
				<td colspan="1" rowspan="1">Deviation&lt;Time&gt;</td>
				<td colspan="1" rowspan="1">ITimeDeviation</td>
				<td colspan="1" rowspan="1">SporadicActivation</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">As there is a change in the Type of this reference from Deviation&lt;Time&gt; to ITimeDeviation. Content is migrated to the new elements.<br> Following elements are supported as Type : TimeBetaDistribution TimeBoundaries TimeConstant TimeGaussDistribution TimeHistogram TimeStatistics TimeUniformDistribution TimeWeibullEstimatorsDistribution</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">chunkProcessingInstructions</td>
				<td colspan="1" rowspan="1">chunkProcessingTicks</td>
				<td colspan="1" rowspan="1">EInt</td>
				<td colspan="1" rowspan="1">EInt</td>
				<td colspan="1" rowspan="1">ChannelReceive ChannelSend LabelAccess</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">reference name changed from chunkProcessingInstructions to chunkProcessingTicks</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">computationItems</td>
				<td colspan="1" rowspan="1">computationItems</td>
				<td colspan="1" rowspan="1">ExecutionNeed</td>
				<td colspan="1" rowspan="1">Ticks</td>
				<td colspan="1" rowspan="1">TaskScheduler InterruptController</td>
				<td colspan="1" rowspan="1">os</td>
				<td colspan="1" rowspan="1">ExecutionNeed elements with HwFeatureCategory Instructions, are converted as Ticks with default or extended (based on the way ExecutionNeed was defined earlier)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">items</td>
				<td colspan="1" rowspan="1">items</td>
				<td colspan="1" rowspan="1">ExecutionNeed</td>
				<td colspan="1" rowspan="1">ExecutionNeed</td>
				<td colspan="1" rowspan="1">Group</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">ExecutionNeed elements with HwFeatureCategory Instructions are converted as Ticks. If HwFeatureCategory is other than Instructions, then content of the specific entry is retained as ExecutionNeed <br>(In 0.9.3 ExecutionNeed does not support Extended entries )</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">runnableitems</td>
				<td colspan="1" rowspan="1">runnableitems</td>
				<td colspan="1" rowspan="1">ExecutionNeed</td>
				<td colspan="1" rowspan="1">ExecutionNeed</td>
				<td colspan="1" rowspan="1">Runnable</td>
				<td colspan="1" rowspan="1">sw</td>
				<td colspan="1" rowspan="1">ExecutionNeed elements with HwFeatureCategory Instructions are converted as Ticks. If HwFeatureCategory is other than Instructions, then content of the specific entry is retained as ExecutionNeed <br>(In 0.9.3 ExecutionNeed does not support Extended entries )</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">jitter</td>
				<td colspan="1" rowspan="1">jitter</td>
				<td colspan="1" rowspan="1">Deviation&lt;Time&gt;</td>
				<td colspan="1" rowspan="1">ITimeDeviation</td>
				<td colspan="1" rowspan="1">PeriodicStimulus</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">As there is a change in the Type of this reference from Deviation&lt;Time&gt; to ITimeDeviation. Content is migrated to the new elements.<br> Following elements are supported as Type : TimeBetaDistribution TimeBoundaries TimeConstant TimeGaussDistribution TimeHistogram TimeStatistics TimeUniformDistribution TimeWeibullEstimatorsDistribution</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">nextOccurrence</td>
				<td colspan="1" rowspan="1">nextOccurrence</td>
				<td colspan="1" rowspan="1">Deviation&lt;Time&gt;</td>
				<td colspan="1" rowspan="1">ITimeDeviation</td>
				<td colspan="1" rowspan="1">RelativePeriodicStimulus</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">As there is a change in the Type of this reference from Deviation&lt;Time&gt; to ITimeDeviation. Content is migrated to the new elements.<br> Following elements are supported as Type : TimeBetaDistribution TimeBoundaries TimeConstant TimeGaussDistribution TimeHistogram TimeStatistics TimeUniformDistribution TimeWeibullEstimatorsDistribution</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">occurencesPerStep</td>
				<td colspan="1" rowspan="1">occurencesPerStep</td>
				<td colspan="1" rowspan="1">Deviation&lt;DoubleObject&gt;</td>
				<td colspan="1" rowspan="1">IContinuousValueDeviation</td>
				<td colspan="1" rowspan="1">VariableRateStimulus</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">As there is a change in the Type of this reference from Deviation&lt;DoubleObject&gt; to IContinousValueDeviation. Content is migrated to the new elements.<br> Following elements are supported as Type: BoundedContinuousValueDistribution  ContinuousValueBetaDistribution ContinuousValueBoundaries ContinuousValueConstant ContinuousValueGaussDistribution ContinuousValueHistogram ContinuousValueStatistics ContinuousValueUniformDistribution ContinuousValueWeibullEstimatorsDistribution TruncatedContinuousValueDistribution</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">maxIncreasePerStep</td>
				<td colspan="1" rowspan="1">maxIncreasePerStep</td>
				<td colspan="1" rowspan="1">DoubleObject</td>
				<td colspan="1" rowspan="1">Double</td>
				<td colspan="1" rowspan="1">VariableRateStimulus</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">Double value is migrated as a attribute</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">maxDecreasePerStep</td>
				<td colspan="1" rowspan="1">maxDecreasePerStep</td>
				<td colspan="1" rowspan="1">DoubleObject</td>
				<td colspan="1" rowspan="1">Double</td>
				<td colspan="1" rowspan="1">VariableRateStimulus</td>
				<td colspan="1" rowspan="1">stimuli</td>
				<td colspan="1" rowspan="1">Double value is migrated as a attribute</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">osOverheads</td>
				<td colspan="1" rowspan="1">osOverheads</td>
				<td colspan="1" rowspan="1">OsInstructions</td>
				<td colspan="1" rowspan="1">OsOverhead</td>
				<td colspan="1" rowspan="1">OSModel</td>
				<td colspan="1" rowspan="1">os</td>
				<td colspan="1" rowspan="1">References are updated accordingly</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">apiSendMessage apiTerminateTask apiSchedule apiRequestResource apiReleaseResource apiSetEvent apiWaitEvent apiClearEvent apiActivateTask apiEnforcedMigration apiSuspendOsInterrupts apiResumeOsInterrupts apiRequestSpinlock apiReleaseSpinlock apiSenderReceiverRead apiSenderReceiverWrite apiSynchronousServerCallPoint apiIocRead apiIocWrite</td>
				<td colspan="1" rowspan="1">apiSendMessage apiTerminateTask apiSchedule apiRequestResource apiReleaseResource apiSetEvent apiWaitEvent apiClearEvent apiActivateTask apiEnforcedMigration apiSuspendOsInterrupts apiResumeOsInterrupts apiRequestSpinlock apiReleaseSpinlock apiSenderReceiverRead apiSenderReceiverWrite apiSynchronousServerCallPoint apiIocRead apiIocWrite</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">Ticks</td>
				<td colspan="1" rowspan="1">OsAPIInstructions</td>
				<td colspan="1" rowspan="1">os</td>
				<td colspan="1" rowspan="1">Instructions elements are converted to Ticks. <br>InstructionsConstant is converted to DiscreteValueConstant. <br>InstructionsDeviation is converted to one of the following type 
					<em>(based on conversion criteria)</em>: <br> DiscreteValueBetaDistribution DiscreteValueBoundaries DiscreteValueGaussDistribution DiscreteValueStatistics DiscreteValueUniformDistribution DiscreteValueWeibullEstimatorsDistribution
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">preExecutionOverhead postExecutionOverhead</td>
				<td colspan="1" rowspan="1">preExecutionOverhead postExecutionOverhead</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">Ticks</td>
				<td colspan="1" rowspan="1">OsISRInstructions</td>
				<td colspan="1" rowspan="1">os</td>
				<td colspan="1" rowspan="1">Instructions elements are converted to Ticks. <br>InstructionsConstant is converted to DiscreteValueConstant. <br>InstructionsDeviation is converted to one of the following type 
					<em>(based on conversion criteria)</em>: <br> DiscreteValueBetaDistribution DiscreteValueBoundaries DiscreteValueGaussDistribution DiscreteValueStatistics DiscreteValueUniformDistribution DiscreteValueWeibullEstimatorsDistribution
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">runtimeDeviation</td>
				<td colspan="1" rowspan="1">runtimeDeviation</td>
				<td colspan="1" rowspan="1">Deviation&lt;Time&gt;</td>
				<td colspan="1" rowspan="1">ITimeDeviation</td>
				<td colspan="1" rowspan="1">Measurement</td>
				<td colspan="1" rowspan="1">MeasurementModel</td>
				<td colspan="1" rowspan="1">As there is a change in the Type of this reference from Deviation&lt;Time&gt; to ITimeDeviation. Content is migrated to the new elements.<br> Following elements are supported as Type : TimeBetaDistribution TimeBoundaries TimeConstant TimeGaussDistribution TimeHistogram TimeStatistics TimeUniformDistribution TimeWeibullEstimatorsDistribution</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">cycles</td>
				<td colspan="1" rowspan="1">value</td>
				<td colspan="1" rowspan="1">Long</td>
				<td colspan="1" rowspan="1">Long</td>
				<td colspan="1" rowspan="1">LatencyConstant</td>
				<td colspan="1" rowspan="1">hw</td>
				<td colspan="1" rowspan="1">LatencyConstant is changed to DiscreteValueConstant, reference name changed from cycles to value</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">cycles</td>
				<td colspan="1" rowspan="1">value</td>
				<td colspan="1" rowspan="1">Deviation</td>
				<td colspan="1" rowspan="1">Deviation&lt;DoubleObject&gt;</td>
				<td colspan="1" rowspan="1">LatencyDeviation</td>
				<td colspan="1" rowspan="1">hw</td>
				<td colspan="1" rowspan="1">LatencyDeviation is changed to DiscreteValueBetaDistribution DiscreteValueBoundaries DiscreteValueGaussDistribution DiscreteValueStatistics DiscreteValueUniformDistribution DiscreteValueWeibullEstimatorsDistribution. In 0.9.3, intermediate cycles element is removed. Content of it is merged as a part of the Distribution</td>
			</tr>
		</table>


<h4><a id="section4.5.4.13"></a>Version APP4MC 0.9.1 to APP4MC 0.9.2</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.9.1)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.9.2)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.1</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.2</td>
			</tr>
		</table>


<h4><a id="section4.5.4.14"></a>Version APP4MC 0.9.0 to APP4MC 0.9.1</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.9.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.9.1)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.0</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.1</td>
			</tr>
		</table>
		<p>
			<strong>Below Classes are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class Name (version APP4MC 0.9.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">TimeObject</td>
				<td colspan="1" rowspan="1">Equivalent element of this class in 0.9.1 is Time</td>
			</tr>
		</table>


<h4><a id="section4.5.4.15"></a>Version APP4MC 0.8.3 to APP4MC 0.9.0</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.8.3)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.9.0)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.8.3</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.9.0</td>
			</tr>
		</table>
		<p>
			<strong>Below Classes/Interfaces behaviour is changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class Name (version APP4MC 0.8.3)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Changes in behavior (as per 0.9.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Memory</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">Memory and Cache are two different elements. Memory can be defined only inside a HwStructure where as Cache can be defined inside HwStructure and ProcessingUnit</td>
				<td colspan="1" rowspan="1">Memory element of 0.8.3 is converted either as a Memory element or Cache element based on the type specified for MemoryType element. If the type is specified as 
					<strong>CACHE</strong>, then Memory object 
					<em class="from 0.8.3">_ is converted as 
						<strong>Cache</strong> element and in other cases it is converted as 
						<strong>Memory</strong>. <br>
						<strong>Note:</strong> _In 0.8.3, Memory element could be contained inside a ComplexNode, as a part of migration : If there is not a possibility to define either a Cache or Memory inside a specific element then it is added as a part of the corresponding parent HwStructure element
					</em>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">HwPort</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">HwPort and ComplexPort elements from 0.8.3 are represented as HwPort in 0.9.0.</td>
				<td colspan="1" rowspan="1">For both HwPort and ComplexPort elements, HwPort object is created. Based on the value of attribute master on HwPort or ComplexPort : portType is set either as initiator 
					<em class="if master=true">_ or responder _(if master=false)</em>
				</td>
			</tr>
		</table>
		<p>
			<strong>Below Classes are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class Name (version APP4MC 0.8.3)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">RunnableInstructions</td>
				<td colspan="1" rowspan="1">SWModel, OSModel</td>
				<td colspan="1" rowspan="1">Equivalent element of this class in 0.9.0 is ExecutionNeed.
					<strong>default</strong> InstructionsConstant,InstructionsDeviation are converted as NeedEntry and the key refers to HwFeatureCategory "Instructions"
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">RunnableInstructionsEntry</td>
				<td colspan="1" rowspan="1">SWModel, OSModel</td>
				<td colspan="1" rowspan="1">Equivalent element of this class in 0.9.0 is ExecutionNeedExtended. Key attribute of ExecutionNeedExtended refer to 
					<strong>ProcessingUnitDefintion</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ECUType</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">There is no equivalent element in 0.9.0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">MicroControllerType</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">There is no equivalent element in 0.9.0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SystemType</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">There is no equivalent element in 0.9.0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">HWAccessPath</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">There is no equivalent element in 0.9.0. Only LatencyAccessPath is migrated</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">HWComponent</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">There is no equivalent element in 0.9.0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">NestedComponent</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">There is no equivalent element in 0.9.0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">PreScaler</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">There is no equivalent element in 0.9.0. Based on to which HW element PreScaler is added ,Quartz of the corresponding element is fetched : value of 
					<strong>clockRatio</strong> is multiplied with the Frequency value of the Quartz and a new FrequencyDomain object is created which contains the obtained Frequency value. Created FrequencyDomain will contain clockratio value in suffix of the name
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Quartz</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">Equivalent element of this class in 0.9.0 is FrequencyDomain.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Pin</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">There is no equivalent element in 0.9.0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">MemoryType</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">Equivalent element of this class in 0.9.0 is MemoryDefinition. If type is specified as 
					<strong>Cache</strong>, then corresponding element is migrated as 
					<strong>CacheDefinition</strong>, in other cases it will be MemoryDefinition
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">CoreType</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">Equivalent element of this class in 0.9.0 is ProcessingUnitDefinition.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">NetworkType, Bus, Bridge, CrossbarSwitch</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">Equivalent element of these classes in 0.9.0 is ConnectionHandlerDefinition.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">LatencyAccessPath</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">Equivalent element of this class in 0.9.0 is HwAccessElement. If the source element of the LatencyAccessPath is Core, in the corresponding ProcessingUnit : HwAccessElement is created and the destination of it is set based on the destination of LatencyAccessPath 
					<em>(Note: Destination of HwAccessElement can only be Memory or ProcessingUnit)</em>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">System</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">Equivalent element of this class in 0.9.0 is HwStructure. StructureType is set as System</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ECU</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">Equivalent element of this class in 0.9.0 is HwStructure. StructureType is set as ECU</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">MicroController</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">Equivalent element of this class in 0.9.0 is HwStructure. StructureType is set as Microcontroller</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Core</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">Equivalent element of this class in 0.9.0 is ProcessingUnit</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Network</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">Equivalent element of this class in 0.9.0 is ConnectionHandler</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ComplexPort</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">There is no equivalent element in 0.9.0</td>
			</tr>
		</table>
		<p>
			<strong>Below references are removed/changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name(version APP4MC 0.8.3)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">memories</td>
				<td colspan="1" rowspan="1">Memory</td>
				<td colspan="1" rowspan="1">TargetMemory</td>
				<td colspan="1" rowspan="1">ConstraintsModel</td>
				<td colspan="1" rowspan="1">If the Memory object as per 0.8.3 is still Memory in 0.9.0, then reference is unchanged. If Memory in 0.8.3 is migrated as Cache based on the type of MemoryType 
					<em>(as CACHE in 0.8.3)</em> , corresponding reference is removed
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">memories</td>
				<td colspan="1" rowspan="1">Memory</td>
				<td colspan="1" rowspan="1">PhysicalSectionConstraint</td>
				<td colspan="1" rowspan="1">ConstraintsModel</td>
				<td colspan="1" rowspan="1">If the Memory object as per 0.8.3 is still Memory in 0.9.0, then reference is unchanged. If Memory in 0.8.3 is migrated as Cache based on the type of MemoryType 
					<em>(as CACHE in 0.8.3)</em> , corresponding reference is removed
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">memory</td>
				<td colspan="1" rowspan="1">Memory</td>
				<td colspan="1" rowspan="1">PhysicalSectionMapping</td>
				<td colspan="1" rowspan="1">MappingModel</td>
				<td colspan="1" rowspan="1">If the Memory object as per 0.8.3 is still Memory in 0.9.0, then reference is unchanged. If Memory in 0.8.3 is migrated as Cache based on the type of MemoryType 
					<em>(as CACHE in 0.8.3)</em> , corresponding reference is removed
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">memory</td>
				<td colspan="1" rowspan="1">Memory</td>
				<td colspan="1" rowspan="1">MemoryMapping</td>
				<td colspan="1" rowspan="1">MappingModel</td>
				<td colspan="1" rowspan="1">If the Memory object as per 0.8.3 is still Memory in 0.9.0, then reference is unchanged. If Memory in 0.8.3 is migrated as Cache based on the type of MemoryType 
					<em>(as CACHE in 0.8.3)</em> , corresponding reference is removed
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">cores</td>
				<td colspan="1" rowspan="1">Core</td>
				<td colspan="1" rowspan="1">TargetCore</td>
				<td colspan="1" rowspan="1">ConstraintsModel</td>
				<td colspan="1" rowspan="1">instead of Core object, variable Type is updated to corresponding ProcessingUnit element</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">hardwareContext</td>
				<td colspan="1" rowspan="1">ComplexNode</td>
				<td colspan="1" rowspan="1">CPUPercentageRequirementLimit</td>
				<td colspan="1" rowspan="1">ConstraintModel</td>
				<td colspan="1" rowspan="1">variable Type is changed to ProcessingUnit. In 0.8.3 models if an element was referring to any other ComplexNode other than Core, corresponding reference will be removed</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">core</td>
				<td colspan="1" rowspan="1">Core</td>
				<td colspan="1" rowspan="1">ProcessEvent</td>
				<td colspan="1" rowspan="1">EventModel</td>
				<td colspan="1" rowspan="1">variable name is changed from core to processingUnit.Type of the reference is changed to ProcessingUnit</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">core</td>
				<td colspan="1" rowspan="1">Core</td>
				<td colspan="1" rowspan="1">ProcessChainEvent</td>
				<td colspan="1" rowspan="1">EventModel</td>
				<td colspan="1" rowspan="1">variable name is changed from core to processingUnit.Type of the reference is changed to ProcessingUnit</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">core</td>
				<td colspan="1" rowspan="1">Core</td>
				<td colspan="1" rowspan="1">RunnableEvent</td>
				<td colspan="1" rowspan="1">EventModel</td>
				<td colspan="1" rowspan="1">variable name is changed from core to processingUnit.Type of the reference is changed to ProcessingUnit</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">core</td>
				<td colspan="1" rowspan="1">Core</td>
				<td colspan="1" rowspan="1">SemaphoreEvent</td>
				<td colspan="1" rowspan="1">EventModel</td>
				<td colspan="1" rowspan="1">variable name is changed from core to processingUnit.Type of the reference is changed to ProcessingUnit</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">cores</td>
				<td colspan="1" rowspan="1">Core</td>
				<td colspan="1" rowspan="1">MicroController</td>
				<td colspan="1" rowspan="1">HWModel</td>
				<td colspan="1" rowspan="1">variable name is changed from cores to modules.Type of the reference is changed to ProcessingUnit. MicroController class is changed to HwStructure</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">responsibility</td>
				<td colspan="1" rowspan="1">Core</td>
				<td colspan="1" rowspan="1">SchdulerAllocation</td>
				<td colspan="1" rowspan="1">MappingModel</td>
				<td colspan="1" rowspan="1">Type is changed from Core to ProcessingUnit</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">executingCore</td>
				<td colspan="1" rowspan="1">Core</td>
				<td colspan="1" rowspan="1">SchdulerAllocation</td>
				<td colspan="1" rowspan="1">MappingModel</td>
				<td colspan="1" rowspan="1">variable name is changed from executingCore to executingPU. Type is changed from Core to ProcessingUnit</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">coreAffinity</td>
				<td colspan="1" rowspan="1">Core</td>
				<td colspan="1" rowspan="1">TaskAllocation</td>
				<td colspan="1" rowspan="1">MappingModel</td>
				<td colspan="1" rowspan="1">variable name is changed from coreAffinity to affinity. Type is changed from Core to ProcessingUnit</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">items, runnableItems, computationItems</td>
				<td colspan="1" rowspan="1">RunnableInstructions</td>
				<td colspan="1" rowspan="1">Group, Runnable, Scheduler</td>
				<td colspan="1" rowspan="1">SWModel, OSModel</td>
				<td colspan="1" rowspan="1">Type is changed from RunnableInstructions to ExecutionNeed</td>
			</tr>
		</table>


<h4><a id="section4.5.4.16"></a>Version APP4MC 0.8.2 to APP4MC 0.8.3</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.8.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.8.3)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.8.2</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.8.3</td>
			</tr>
		</table>
		<p>
			<strong>Below Classes/Interfaces behaviour is changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class Name (version APP4MC 0.8.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Changes in behavior (as per 0.8.3)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ModeSwitch, RunnableModelSwitch</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">valueProvider (
					<em>of ModeLabel reference</em>) is removed and is associated to ModeValue element.
				</td>
				<td colspan="1" rowspan="1">valueProvider (
					<em>of ModeLabel reference</em>) is removed and is associated to ModeValue element, which is created inside ModeValueDisjunction element contained in ModeSwitch, RunnableModeSwitch
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ModeSwitchEntry</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">values (
					<em>of type list of ModeLiteral</em>) is removed and is as ModeValue element inside ModeValueDisjunction class.
				</td>
				<td colspan="1" rowspan="1">values (
					<em>of type list of ModeLiteral</em>) is removed and each element in the list is associated as ModeValue element, which is created inside ModeValueDisjunction element contained in ModeSwitch, RunnableModeSwitch
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">PeriodicStimulus</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">stimulusDevaiation, offset, clock elements are removed</td>
				<td colspan="1" rowspan="1">For migration, below points are to be considered:<ul><li>If 
					<strong>clock value is set</strong> for PeriodicStimuls, then this PeriodicStimulus will be migrated as VariableRateStimulus.	<ul><li>clock, recurrence elements are moved from PeriodicStimulus to Scenario element, contained inside VariableRateStimulus.</li>			<li>offset element value is moved as a customProperty for Scenario element</li>		</ul>	</li><li>If 
					<strong>clock value is not set</strong> for PeriodicStimuls, then type of the element will not be changed.	<ul><li>stimulsDeviation element is renamed as jitter.</li></ul>	</li></ul>
				</td>
			</tr>
		</table>
		<p>
			<strong>Below Classes are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class Name (version APP4MC 0.8.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">FInterfacePort</td>
				<td colspan="1" rowspan="1">Components Model</td>
				<td colspan="1" rowspan="1">FinterfacePort is replaced by InterfacePort class. As a part of model migration, in Components model -&gt; type attribute for the definition of FInterfacePort is changed from "am:FInterfacePort" to "am:InterfacePort",  and new type (InterfacePort) is also updated for references of FInterfacePort</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SyntheticStimulus</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">SyntheticStimulus is replaced by PeriodicSyntheticStimulus class. As a part of model migration, in Stimuli model -&gt; type attribute for the definition of FInterfacePort is changed from "am:SyntheticStimulus" to "am:PeriodicSyntheticStimulus",  and new type (PeriodicSyntheticStimulus) is also updated for references of SyntheticStimulus</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SporadicStimulus</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">SporadicStimulus is replaced by RelativePeriodicStimulus class. As a part of model migration, in Stimuli model -&gt; type attribute for the definition of SporadicStimulus is changed from "am:SporadicStimulus" to "am:RelativePeriodicStimulus",  and new type (RelativePeriodicStimulus) is also updated for references of SporadicStimulus</td>
			</tr>
		</table>
		<p>
			<strong>Below references are removed/changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">activationDeviation</td>
				<td colspan="1" rowspan="1">Deviation</td>
				<td colspan="1" rowspan="1">VariableRateActivation</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">activationDeviation element is removed from the VariableRateActivation element</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">valueProvider</td>
				<td colspan="1" rowspan="1">ModeLabel</td>
				<td colspan="1" rowspan="1">ModeSwitch, RunnableModeSwitch</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">valueProvider (
					<em>ModeLabel reference</em>) is removed directly from 
					<em>
						<strong>ModeSwitch, RunnableModelSwitch</strong>
					</em> elements and associated to each ModeValue element -&gt;&gt; which is created inside condition element (
					<em>of type ModeValueDisJunction</em>)
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">values</td>
				<td colspan="1" rowspan="1">ModeLiteral</td>
				<td colspan="1" rowspan="1">ModeSwitch, RunnableModeSwitch</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">values list is removed directly from  
					<em>
						<strong>ModeSwitch, RunnableModelSwitch</strong>
					</em> and associated inside condition element (
					<em>of type ModeValueDisJunction</em>) as different ModeValue elements (
					<em>Note: Each element in values List is created a separate ModeValue element inside condition element</em>)
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">period</td>
				<td colspan="1" rowspan="1">Time</td>
				<td colspan="1" rowspan="1">SyntheticStimulus</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">period element is changed to recurrence</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">triggerTimes</td>
				<td colspan="1" rowspan="1">TimeStampList</td>
				<td colspan="1" rowspan="1">SyntheticStimulus</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">triggerTimes element is removed from SyntheticStimulus. Content of TriggerTimes element -&gt; 
					<strong>timeStamps list</strong> is migrated as occurrenceTimes element inside SyntheticStimulus
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">stimulusDeviation</td>
				<td colspan="1" rowspan="1">Deviation</td>
				<td colspan="1" rowspan="1">SporadicStimulus</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">stimulusDeviation element is changed as nextOccurrence</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">numberOfEvents</td>
				<td colspan="1" rowspan="1">Integer</td>
				<td colspan="1" rowspan="1">ArrivalCurveEntry</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">numberOfEvents element is changed as  numberOfOccurrences</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">stimulusDeviation</td>
				<td colspan="1" rowspan="1">Deviation</td>
				<td colspan="1" rowspan="1">ArrivalCurveStimulus, SingleStimulus, CustomStimulus, InterProcessStimulus, EventStimulus, SyntheticStimulus</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">stimulusDeviation element is removed from SingleStimulus</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">activation</td>
				<td colspan="1" rowspan="1">Time</td>
				<td colspan="1" rowspan="1">SingleStimulus</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">activation element is changed as occurrence</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">stimulusDeviation</td>
				<td colspan="1" rowspan="1">Deviation</td>
				<td colspan="1" rowspan="1">PeriodicStimulus</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">If clock value is 
					<strong>not set</strong> for PeriodicStimulus, in this case stimulusDeviation element is changed as jitter.
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">recurrence, clock</td>
				<td colspan="1" rowspan="1">Time</td>
				<td colspan="1" rowspan="1">PeriodicStimulus</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">If clock value is 
					<strong>set</strong> for PeriodicStimulus, in this case both recurrence and clock are removed directly from PeriodicStimulus and their values are added inside Scenario element -&gt; contained inside PeriodicStimulus(
					<em>which will be migrated to VariableRateStimulus as a part of migration</em>)
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">offset</td>
				<td colspan="1" rowspan="1">Time</td>
				<td colspan="1" rowspan="1">PeriodicStimulus</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">If clock value is 
					<strong>set</strong> for PeriodicStimulus, in this case offset element is removed directly from PeriodicStimulus and its value is added inside Scenario element -&gt; contained inside PeriodicStimulus(
					<em>which will be migrated to VariableRateStimulus as a part of migration</em>) as a CustomProperty with name "offset"
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">stimulusDeviation</td>
				<td colspan="1" rowspan="1">Deviation</td>
				<td colspan="1" rowspan="1">PeriodicStimulus</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">If clock value is 
					<strong>set</strong> then stimulusDeviation element is removed from PeriodicStimulus
				</td>
			</tr>
		</table>


<h4><a id="section4.5.4.17"></a>Version APP4MC 0.8.1 to APP4MC 0.8.2</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.8.1)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.8.2)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.8.1</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.8.2</td>
			</tr>
		</table>


<h4><a id="section4.5.4.18"></a>Version APP4MC 0.8.0 to APP4MC 0.8.1</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.8.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.8.1)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.8.0</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.8.1</td>
			</tr>
		</table>
		<p>
			<strong>Below Classes/Interfaces behaviour is changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class Name (version APP4MC 0.8.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Changes in behavior (as per 0.8.1)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SubEventChain</td>
				<td colspan="1" rowspan="1">Constraints Model</td>
				<td colspan="1" rowspan="1">SubEventChain class (in 0.8.0) is replaced by EventChainContainer class (in 0.8.1). EventChainContainer class is modelled to contain SubEventChain elements (in 0.8.1) which are non referable child EventChain elements.</td>
				<td colspan="1" rowspan="1"><ul><li>In amxmi file, xsi:type with "am:SubEventChain" is replaced with "am:EventChainContainer".</li><li>If sub EventChain elements are referred inside EventChainReference or inside TimingConstraints 
					<i>(e.g: EventChainLatencyConstraint or EventChainSynchronizationConstraint)</i>:<ul><li> Then corresponding reference is removed and the reference String is stored in a CustomProperty of the corresponding element</li></ul></li></ul>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Quartz</td>
				<td colspan="1" rowspan="1">Hardware Model</td>
				<td colspan="1" rowspan="1">Quartz is not extending ComplexNode class. In addition below are the other changes w.r.t. Quartz: <ul><li>It is no longer possible to have nested Quartz elements</li><li>All Quartz elements should be present in single list, which is part of HwSystem class</li></ul></td>
				<td colspan="1" rowspan="1"><ul><li>Per each amxmi file, from HWModel all Quartz elements are collected (
					<i>both root and sub Quartz elements</i>) and are added in a central list which is part of HwSystem.</li><ul><li> Quartz element definitions are removed from the other HW elements 
					<i>(which are sub-classes of ComplexNode)</i> </li></ul></ul>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ModeValueListEntry</td>
				<td colspan="1" rowspan="1">Stimuli model</td>
				<td colspan="1" rowspan="1">ModeValueListEntry class is having two sub-classes ModeValue and ModeValueConjunction</td>
				<td colspan="1" rowspan="1">ModeValue type is associated to all the ModeValueListEntry elements</td>
			</tr>
		</table>
		<p>
			<strong>Below Classes are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class Name (version APP4MC 0.8.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">CoreAllocation</td>
				<td colspan="1" rowspan="1">Mapping Model</td>
				<td colspan="1" rowspan="1">CoreAllocation is replaced by SchedulerAllocation. As a part of model migration, In Mapping model references of CoreAllocation are changed as SchedulerAllocation. Also the "core" attribute/tag of it is renamed to "responsibility"</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SchedulingHWUnit</td>
				<td colspan="1" rowspan="1">OS model</td>
				<td colspan="1" rowspan="1">SchedulingHWUnit reference is removed from Scheduler</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SchedulingSWUnit</td>
				<td colspan="1" rowspan="1">OS model</td>
				<td colspan="1" rowspan="1">SchedulingSWUnit reference is removed from Scheduler and content of Instructions is copied to the corresponding ComputationItem elements of type RunnableInstructions</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ArrivalCurve</td>
				<td colspan="1" rowspan="1">Stimuli model</td>
				<td colspan="1" rowspan="1">This class is renamed to ArrivalCurveStimulus. Element type is updated at both definition and references in amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">InterProcess</td>
				<td colspan="1" rowspan="1">Stimuli model</td>
				<td colspan="1" rowspan="1">This class is renamed to InterProcessStimulus. Element type is updated at both definition and references in amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Periodic</td>
				<td colspan="1" rowspan="1">Stimuli model</td>
				<td colspan="1" rowspan="1">This class is renamed to PeriodicStimulus. Element type is updated at both definition and references in amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">PeriodicEvent</td>
				<td colspan="1" rowspan="1">Stimuli model</td>
				<td colspan="1" rowspan="1">This class is renamed to VariableRateStimulus. Element type is updated at both definition and references in amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Single</td>
				<td colspan="1" rowspan="1">Stimuli model</td>
				<td colspan="1" rowspan="1">This class is renamed to SingleStimulus. Element type is updated at both definition and references in amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Sporadic</td>
				<td colspan="1" rowspan="1">Stimuli model</td>
				<td colspan="1" rowspan="1">This class is renamed to SporadicStimulus. Element type is updated at both definition and references in amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Synthetic</td>
				<td colspan="1" rowspan="1">Stimuli model</td>
				<td colspan="1" rowspan="1">This class is renamed to SyntheticStimulus. Element type is updated at both definition and references in amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">InterProcessActivation</td>
				<td colspan="1" rowspan="1">SW model</td>
				<td colspan="1" rowspan="1">This class is renamed to InterProcessTrigger. Element type is updated at both definition and references in amxmi file</td>
			</tr>
		</table>
		<p>
			<strong>Below references are removed/changed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">coreAllocation</td>
				<td colspan="1" rowspan="1">CoreAllocation</td>
				<td colspan="1" rowspan="1">MappingModel</td>
				<td colspan="1" rowspan="1">Mapping Model</td>
				<td colspan="1" rowspan="1">coreAllocation tag name is renamed to schedulerAllocation. Equivalent of CoreAllocation is SchedulerAllocation element</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">priority</td>
				<td colspan="1" rowspan="1">integer</td>
				<td colspan="1" rowspan="1">TaskAllocation</td>
				<td colspan="1" rowspan="1">Mapping Model</td>
				<td colspan="1" rowspan="1">priority attribute is removed from TaskAllocation and its corresponding value is copied to priority attribute of the SchedulingParameters</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">xAccessPattern</td>
				<td colspan="1" rowspan="1"> String</td>
				<td colspan="1" rowspan="1">MemoryType</td>
				<td colspan="1" rowspan="1">HW model</td>
				<td colspan="1" rowspan="1">xAccessPattern attribute and its value present in MemoryType element are removed from the amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">parameter</td>
				<td colspan="1" rowspan="1">AlgorithmParameter</td>
				<td colspan="1" rowspan="1">Scheduler</td>
				<td colspan="1" rowspan="1">OS model</td>
				<td colspan="1" rowspan="1">parameter tag name is changed to parameterExtensions (
					<em>Also changed variable Type here is : ParameterExtensions</em>)
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">scheduleUnitPriority</td>
				<td colspan="1" rowspan="1">integer</td>
				<td colspan="1" rowspan="1">Scheduler</td>
				<td colspan="1" rowspan="1">OS model</td>
				<td colspan="1" rowspan="1">scheduleUnitPriority attribute is removed</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">delay</td>
				<td colspan="1" rowspan="1">Time</td>
				<td colspan="1" rowspan="1">SchedulingHWUnit</td>
				<td colspan="1" rowspan="1">OS model</td>
				<td colspan="1" rowspan="1">delay tag is removed</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">instructions</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">SchedulingSWUnit</td>
				<td colspan="1" rowspan="1">OS model</td>
				<td colspan="1" rowspan="1">"instructions" tag is removed from the SchedulingSWUnit and each "instructions" tag content is copied as a "default" tag of computationItems (of type RunnableInstructions)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">schedulingUnit</td>
				<td colspan="1" rowspan="1">SchedulingUnit</td>
				<td colspan="1" rowspan="1">Scheduler</td>
				<td colspan="1" rowspan="1">OS model</td>
				<td colspan="1" rowspan="1">schedulingUnit tag is removed. And the contents of SchedulingSWUnit are migrated to ComputationItem's</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">trigger</td>
				<td colspan="1" rowspan="1">TriggerEvent</td>
				<td colspan="1" rowspan="1">EventStimulus</td>
				<td colspan="1" rowspan="1">Event model</td>
				<td colspan="1" rowspan="1">renamed to triggeringEvents</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">activation</td>
				<td colspan="1" rowspan="1">Activation</td>
				<td colspan="1" rowspan="1">Runnable</td>
				<td colspan="1" rowspan="1">SW model</td>
				<td colspan="1" rowspan="1">renamed to activations</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">deadline</td>
				<td colspan="1" rowspan="1">Time</td>
				<td colspan="1" rowspan="1">PeriodicActivation</td>
				<td colspan="1" rowspan="1">SW model</td>
				<td colspan="1" rowspan="1">deadline attribute is removed</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">trigger</td>
				<td colspan="1" rowspan="1">TriggerEvent</td>
				<td colspan="1" rowspan="1">EventActivation</td>
				<td colspan="1" rowspan="1">SW model</td>
				<td colspan="1" rowspan="1">renamed to triggeringEvents</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">priority</td>
				<td colspan="1" rowspan="1">integer</td>
				<td colspan="1" rowspan="1">Process</td>
				<td colspan="1" rowspan="1">SW model</td>
				<td colspan="1" rowspan="1">priority attribute is removed</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">osekTaskGroup</td>
				<td colspan="1" rowspan="1">integer</td>
				<td colspan="1" rowspan="1">Task</td>
				<td colspan="1" rowspan="1">SW model</td>
				<td colspan="1" rowspan="1">osekTaskGroup attribute is removed</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">quartzes</td>
				<td colspan="1" rowspan="1">List of Quartz</td>
				<td colspan="1" rowspan="1">Core<br>ECU<br>HwComponent<br>Memory<br>Microcontroller<br>Network</td>
				<td colspan="1" rowspan="1">Hardware Model</td>
				<td colspan="1" rowspan="1">All Quartz elements from these model elements are moved to HwSystem element. <br><b>Note:</b>If there are nested Quartz elements, they are flattened and stored inside a single list</td>
			</tr>
		</table>


<h4><a id="section4.5.4.19"></a>Version APP4MC 0.7.2 to APP4MC 0.8.0</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.7.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.8.0)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.7.2</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.8.0</td>
			</tr>
		</table>
		<p>
			<strong>Below references are removed from storage format (amxmi):</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.7.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">mode</td>
				<td colspan="1" rowspan="1">Mode</td>
				<td colspan="1" rowspan="1">ModeValueProvider</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">mode is made as a derived variable and transient property is set to it, as a result it will not be serialized into the model file. Based on the selection of ModeLiteral (in ModeValueProvider element) mode element will be considered accordingly.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">osDataConsistency</td>
				<td colspan="1" rowspan="1">OsDataConsistency</td>
				<td colspan="1" rowspan="1">OSModel</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">OsDataConsistency element is shifted from OSModel to OperatingSystem element. As a part of migration, osDataConsistency element content is copied inside each OperatingSystem element</td>
			</tr>
		</table>
		<p>
			<strong>Below references names are changed :</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.7.2)</em>
					</strong>
				</td>
				<th colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.8.0)</em>
					</strong>
				</th>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">mapping</td>
				<td colspan="1" rowspan="1">memoryMapping</td>
				<td colspan="1" rowspan="1">Mapping (in 0.7.2) -&gt; MemoryMapping (in 0.8.0)</td>
				<td colspan="1" rowspan="1">MappingModel</td>
				<td colspan="1" rowspan="1">Mapping model</td>
				<td colspan="1" rowspan="1">As there is a change in the reference name (from mapping to memoryMapping) in metamodel --&gt;  corresponding XML tag names in amxmi are changed from mapping to memoryMapping, type attribute is removed from memoryMapping XML tag as MemoryMapping is a concrete class</td>
			</tr>
		</table>
		<p>
			<strong>Below Classes/Interfaces are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class Name (version APP4MC 0.7.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ModeValueProvider (Interface)</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">Content present inside ModeValueProvider class is moved to ModeLabel. Reference to Mode element is made as derived variable, and it automatically populated based on the selection of ModeLiteral.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SignedTimeObject</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">Equivalent of this element is TimeObject in APP4MC 0.8.0. There is no change in the storage format.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SignedTime</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">Equivalent of this element is Time in APP4MC 0.8.0. There is no change in the storage format.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Mapping</td>
				<td colspan="1" rowspan="1">Mapping Model</td>
				<td colspan="1" rowspan="1">This interface is removed from the model. MemoryMapping is equivalent of this model element in APP4MC 0.8.0. As a part of model migration type attribute is removed from the tag which is defining MemoryMapping.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">AbstractElementMapping</td>
				<td colspan="1" rowspan="1">Mapping Model</td>
				<td colspan="1" rowspan="1">MemoryMapping is equivalent of this model element in APP4MC 0.8.0. As a part of model migration type attribute is removed from the tag which is defining MemoryMapping.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">AbstractElementMemoryInformation</td>
				<td colspan="1" rowspan="1">HW Model</td>
				<td colspan="1" rowspan="1">AbstractMemoryElement is the equivalent of this model element in APP4MC 0.8.0. There is no change in the storage format.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ProbabiltitySwitch</td>
				<td colspan="1" rowspan="1">HW Model</td>
				<td colspan="1" rowspan="1">ProbabiltitySwitch class is changed to ProbabilitySwitch (typo corrected in the class name). ProbabilitySwitch is the equivalent of this model element in APP4MC 0.8.0</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">AllocationConstraint</td>
				<td colspan="1" rowspan="1">PropertyConstraints Model</td>
				<td colspan="1" rowspan="1">AllocationConstraint class is changed to CoreAllocationConstraint. In CoreAllocationConstraint -&gt; reference to HwCoreConstraint element is removed, based on this change -&gt; during model migration CustomProperty is created with key as "hwConstraint (element removed during Migration of Model to 0.8.0 version)" and value as the XML content of "hwConstraint" element.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">MappingConstraint</td>
				<td colspan="1" rowspan="1">PropertyConstraints Model</td>
				<td colspan="1" rowspan="1">MappingConstraint class is changed to MemoryMappingConstraint. In MemoryMappingConstraint -&gt; reference to HwMemmoryConstraint element is removed, based on this change -&gt; during model migration CustomProperty is created with key as "hwConstraint (element removed during Migration of Model to 0.8.0 version)" and value as the XML content of "hwConstraint" element.</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">HwCoreConstraint, HwCoreConjunction, HwCoreProperty</td>
				<td colspan="1" rowspan="1">PropertyConstraints Model</td>
				<td colspan="1" rowspan="1">These elements are removed from the model. As a reference XML content is stored as a CustomProperty inside CoreAllocationConstraint</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">HwMemoryConstraint, HwMemoryConjunction, HwMemoryProperty</td>
				<td colspan="1" rowspan="1">PropertyConstraints Model</td>
				<td colspan="1" rowspan="1">These elements are removed from the model. As a reference XML content is stored as a CustomProperty inside MemoryMappingConstraint</td>
			</tr>
		</table>
		<p>
			<strong>Below are the changes in the datatype of elements:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable datatype (version APP4MC 0.7.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable datatype (version APP4MC 0.8.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">instructionsPerCycle</td>
				<td colspan="1" rowspan="1">int</td>
				<td colspan="1" rowspan="1">float</td>
				<td colspan="1" rowspan="1">CoreType</td>
				<td colspan="1" rowspan="1">HW model</td>
				<td colspan="1" rowspan="1">int is converted to float</td>
			</tr>
		</table>


<h4><a id="section4.5.4.20"></a>Version APP4MC 0.7.1 to APP4MC 0.7.2</h4>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.7.1)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.7.2)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.7.1</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.7.2</td>
			</tr>
		</table>
		<p>
			<strong>Below are the changes in the reference names:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.7.1)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Changed Variable Name (version APP4MC 0.7.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">runnables</td>
				<td colspan="1" rowspan="1">group</td>
				<td colspan="1" rowspan="1">RunnablePairingConstraint</td>
				<td colspan="1" rowspan="1">Constraints Model</td>
				<td colspan="1" rowspan="1">xml tag "runnables" present inside "RunnablePairingConstraint" object is changed to "group" in amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">processes</td>
				<td colspan="1" rowspan="1">group</td>
				<td colspan="1" rowspan="1">ProcessPairingConstraint</td>
				<td colspan="1" rowspan="1">Constraints Model</td>
				<td colspan="1" rowspan="1">xml tag "processes" present inside "ProcessPairingConstraint" object is changed to "group" in amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">labels</td>
				<td colspan="1" rowspan="1">group</td>
				<td colspan="1" rowspan="1">DataPairingConstraint</td>
				<td colspan="1" rowspan="1">Constraints Model</td>
				<td colspan="1" rowspan="1">xml tag "labels" present inside "DataPairingConstraint" object is changed to "group" in amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">initalValue</td>
				<td colspan="1" rowspan="1">initialValue</td>
				<td colspan="1" rowspan="1">Semaphore</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">xml attribute "initalValue" present inside "Semaphore" object is changed to "initialValue" in amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">arrivalCurveEntries</td>
				<td colspan="1" rowspan="1">entries</td>
				<td colspan="1" rowspan="1">ArrivalCurve</td>
				<td colspan="1" rowspan="1">Stimuli Model</td>
				<td colspan="1" rowspan="1">xml tag "arrivalCurveEntries" present inside "ArrivalCurve" object is changed to "entries" in amxmi file</td>
			</tr>
		</table>
		<p>
			<strong>Below are the changes in the reference Types:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (version APP4MC 0.7.1)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (version APP4MC 0.7.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">instructions</td>
				<td colspan="1" rowspan="1">OsExecutionInstructions</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">SchedulingSWUnit</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">type of the instructions tag in amxmi is updated either to InstructionsConstant or InstructionsDeviation based on if the type in input is : OsExecutionInstructionsConstant or OsExecutionInstructionsDeviation</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">apiSendMessage</td>
				<td colspan="1" rowspan="1">OsExecutionInstructions</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">OsAPIInstructions</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">type of the apiSendMessage tag in amxmi is updated either to InstructionsConstant or InstructionsDeviation based on if the type in input is : OsExecutionInstructionsConstant or OsExecutionInstructionsDeviation</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">apiTerminateTask</td>
				<td colspan="1" rowspan="1">OsExecutionInstructions</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">OsAPIInstructions</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">type of the apiTerminateTask tag in amxmi is updated either to InstructionsConstant or InstructionsDeviation based on if the type in input is : OsExecutionInstructionsConstant or OsExecutionInstructionsDeviation</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">apiSchedule</td>
				<td colspan="1" rowspan="1">OsExecutionInstructions</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">OsAPIInstructions</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">type of the apiSchedule tag in amxmi is updated either to InstructionsConstant or InstructionsDeviation based on if the type in input is : OsExecutionInstructionsConstant or OsExecutionInstructionsDeviation</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">apiRequestResource</td>
				<td colspan="1" rowspan="1">OsExecutionInstructions</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">OsAPIInstructions</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">type of the apiRequestResource tag in amxmi is updated either to InstructionsConstant or InstructionsDeviation based on if the type in input is : OsExecutionInstructionsConstant or OsExecutionInstructionsDeviation</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">apiReleaseResource</td>
				<td colspan="1" rowspan="1">OsExecutionInstructions</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">OsAPIInstructions</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">type of the apiReleaseResource tag in amxmi is updated either to InstructionsConstant or InstructionsDeviation based on if the type in input is : OsExecutionInstructionsConstant or OsExecutionInstructionsDeviation</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">apiSetEvent</td>
				<td colspan="1" rowspan="1">OsExecutionInstructions</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">OsAPIInstructions</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">type of the apiSetEvent tag in amxmi is updated either to InstructionsConstant or InstructionsDeviation based on if the type in input is : OsExecutionInstructionsConstant or OsExecutionInstructionsDeviation</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">apiWaitEvent</td>
				<td colspan="1" rowspan="1">OsExecutionInstructions</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">OsAPIInstructions</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">type of the apiWaitEvent tag in amxmi is updated either to InstructionsConstant or InstructionsDeviation based on if the type in input is : OsExecutionInstructionsConstant or OsExecutionInstructionsDeviation</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">apiClearEvent</td>
				<td colspan="1" rowspan="1">OsExecutionInstructions</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">OsAPIInstructions</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">type of the apiClearEvent tag in amxmi is updated either to InstructionsConstant or InstructionsDeviation based on if the type in input is : OsExecutionInstructionsConstant or OsExecutionInstructionsDeviation</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">apiActivateTask</td>
				<td colspan="1" rowspan="1">OsExecutionInstructions</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">OsAPIInstructions</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">type of the apiActivateTask tag in amxmi is updated either to InstructionsConstant or InstructionsDeviation based on if the type in input is : OsExecutionInstructionsConstant or OsExecutionInstructionsDeviation</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">apiEnforcedMigration</td>
				<td colspan="1" rowspan="1">OsExecutionInstructions</td>
				<td colspan="1" rowspan="1">Instructions</td>
				<td colspan="1" rowspan="1">OsAPIInstructions</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">type of the apiEnforcedMigration tag in amxmi is updated either to InstructionsConstant or InstructionsDeviation based on if the type in input is : OsExecutionInstructionsConstant or OsExecutionInstructionsDeviation</td>
			</tr>
		</table>
		<p>
			<strong>Below are the changes in the relation of elements:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Relation (version APP4MC 0.7.1)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Relation (version APP4MC 0.7.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">memory</td>
				<td colspan="1" rowspan="1">Memory</td>
				<td colspan="1" rowspan="1">containment</td>
				<td colspan="1" rowspan="1">association</td>
				<td colspan="1" rowspan="1">HwMemoryProperty</td>
				<td colspan="1" rowspan="1">PropertyConstraints model</td>
				<td colspan="1" rowspan="1">memory objects containment is changed as association relation. As a result definition of Memory object should not be present inside HwMemoryProperty, rather only reference of memory should be present inside HwMemoryProperty.  Model migration is performed in the following way for this change : Memory elements definition from HwMemoryProperty tag are moved to HW Model (Note: addition of Memory (from PropertyConstraints model) to HW model happens only if Memory with this name is not existing in the model scope)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">core</td>
				<td colspan="1" rowspan="1">Core</td>
				<td colspan="1" rowspan="1">containment</td>
				<td colspan="1" rowspan="1">association</td>
				<td colspan="1" rowspan="1">HwCoreProperty</td>
				<td colspan="1" rowspan="1">PropertyConstraints model</td>
				<td colspan="1" rowspan="1">core objects containment is changed as association relation. As a result definition of Core object should not be present inside HWCoreProperty, rather only reference of core should be present inside HWCoreProperty.  Model migration is performed in the following way for this change : Core elements definition from HwCoreProperty tag are moved to HW Model (Note: addition of Memory (from PropertyConstraints model) to HW model happens only if Memory with this name is not existing in the model scope)</td>
			</tr>
		</table>
		<p>
			<strong>Below are the changes in Enum elements:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Enum Name</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Enum Literal (version APP4MC 0.7.1)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Enum Literal (version APP4MC 0.7.2)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">Preemption</td>
				<td colspan="1" rowspan="1">unknown</td>
				<td colspan="1" rowspan="1">-</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">unknown literal is removed from Preemption. Model Migration will replace "unknown" literal with the default literal</td>
			</tr>
		</table>
		<p>
			<strong>Below references are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.7.1)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">samplingType</td>
				<td colspan="1" rowspan="1">SamplingType</td>
				<td colspan="1" rowspan="1">Deviation</td>
				<td colspan="1" rowspan="1">Hardware Model  Stimuli MOdel  OS Model  Software Model</td>
				<td colspan="1" rowspan="1">In 0.7.2, samplingType attribute is shifted from Deviation to Boundaries element.As a part of Model migration -&gt; samplingType content is removed from Deviation and associated to the corresponding Distribution of type Boundaries. If Boundaries element is not present inside Deviation as a distribution, corresponding samplingType data is skipped during model migration</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">coreTypeDefinitions</td>
				<td colspan="1" rowspan="1">CoreType</td>
				<td colspan="1" rowspan="1">PropertyConstraintsModel</td>
				<td colspan="1" rowspan="1">Property Constraints Model</td>
				<td colspan="1" rowspan="1">coreTypeDefinitions objects are removed from the PropertyConstraintsModel tag and are associated to HW Model (Note: addition of CoreType to HW model happens only if CoreType with this name is not existing in the model scope. If there exists CoreType element with the same name in "PropertyConstraintsModel" and in "HW Model" --&gt; the one from PropertyConstraintsModel will be removed and the one from HW Model will be referred accordingly inside Core element etc.,)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">memoryTypeDefinitions</td>
				<td colspan="1" rowspan="1">MemoryType</td>
				<td colspan="1" rowspan="1">PropertyConstraintsModel</td>
				<td colspan="1" rowspan="1">Property Constraints Model</td>
				<td colspan="1" rowspan="1">memoryTypeDefinitions objects are removed from the PropertyConstraintsModel tag and are associated to HW Model (Note: addition of MemoryType to HW model happens only if MemoryType with this name is not existing in the model scope . If there exists MemoryType element with the same name in "PropertyConstraintsModel" and in "HW Model" --&gt; the one from PropertyConstraintsModel will be removed and the one from HW Model will be referred accordingly inside MemoryElement element etc.,)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">tags</td>
				<td colspan="1" rowspan="1">Tag</td>
				<td colspan="1" rowspan="1">ComponentsModel, HWModel, SWModel</td>
				<td colspan="1" rowspan="1">Components Model, Hardware Model, Software Model</td>
				<td colspan="1" rowspan="1">Tag objects are removed from the ComponentsModel,HWModel,SWModel tags and their content is shifted to CommonElements Model (Note: CommonElements model is contained inside Amalthea root node)</td>
			</tr>
		</table>
		<p>
			<strong>Below Classes are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class Name (version APP4MC 0.7.1)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">TargetProcess</td>
				<td colspan="1" rowspan="1">Constraints Model</td>
				<td colspan="1" rowspan="1">Content is removed from the model. There is no equivalent of this model element in APP4MC 0.7.2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">TargetCallSequence</td>
				<td colspan="1" rowspan="1">Constraints Model</td>
				<td colspan="1" rowspan="1">Content is removed from the model. There is no equivalent of this model element in APP4MC 0.7.2</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">OsExecutionInstructions, OsExecutionInstructionsDeviation, OsExecutionInstructionsConstant</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">Replacement elements are : Instructions,InstructionsDeviation,InstructionsConstant. As there is no change in the content of these elements(when compared to previous elements) -&gt; during model migration corresponding old type names are replaced with the new model elements</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ProbabilityGroup</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">ProbabilityGroup is replaced with RunnableProbabilitySwitch</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ProbabilityRunnableItem</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">ProbabilityRunnableItem is replaced wtih ProbabilitySwitchEntry</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">DeviationRunnableItem</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">Content of DeviationRunnableItem i.e RunnableItem is moved directly inside the Group as a part of "items" list</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">EventConfigElement, EventConfigLink</td>
				<td colspan="1" rowspan="1">Config Model</td>
				<td colspan="1" rowspan="1">Both EventConfigElement and EventConfigLink objects are converted as EventConfig objects (As EventConfigElement &amp; EventConfigLink classes are removed from the MetaModel – as per the semantics equivalent class for both of them is EventConfig). In case of migrating EventConfigElement – If definition of EntityEvent element is present as a sub-element -&gt; it is moved to Events Model and the corresponding reference to EntityEvent is established inside EventConfig using attribute "event"</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">OsBuffering</td>
				<td colspan="1" rowspan="1">OS Model</td>
				<td colspan="1" rowspan="1">OsBuffering elements are migrated as OsDataConsistency elements. Below steps describe the criteria considered for migration of data : 
					<img class="gray_scale" src="images/osbuffering_migration_071_072.png"/>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">LabelBufferring</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">LabelBufferring elements are migrated as DataStability elements. Below steps describe the criteria considered for migration of data :<br>  -  If LabelBuffering value is "buffered" then the corresponding value of "dataStability" is set as "CustomProtection"<br>	-  If LabelBuffering value is "notBuffered" then the corresponding value of "dataStability" is set as "noProtection" <br>-  If LabelBuffering value is "
					<em>undefined</em>" (default) then the corresponding value of "dataStability" is set as "
					<em>undefined</em>" (default)
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">LabelAccessBufferring</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">LabelAccessBufferring elements are migrated as DataStability elements. Below steps describe the criteria considered for migration of data :<br>  -  If LabelAccessBufferring value is "inherited" then the corresponding value of "dataStability" is set as "inherited"<br>	-  If LabelAccessBufferring value is "buffered" then the corresponding value of "dataStability" is set as "customProtection" <br>	-  If LabelAccessBufferring value is "notBuffered" then the corresponding value of "dataStability" is set as "noProtection" <br>-  If LabelAccessBufferring value is "
					<em>undefined</em>" (default) then the corresponding value of "dataStability" is set as "
					<em>undefined</em>" (default)
				</td>
			</tr>
			<tr/>
		</table>


<h4><a id="section4.5.4.21"></a>Version APP4MC 0.7.0 to APP4MC 0.7.1</h4>
		<p>Below are the changes in the meta model from APP4MC 0.7.0 to APP4MC 0.7.1</p>
		<p>
			<strong>Change in the namespace:</strong> 
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace (version APP4MC 0.7.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA Namespace  (version APP4MC 0.7.1)</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.7.0</td>
				<td colspan="1" rowspan="1">http://app4mc.eclipse.org/amalthea/0.7.1</td>
			</tr>
		</table>
		<p>
			<strong>Root Tag in AMALTHEA model amxmi file</strong>: It is recommended to have "Amalthea" as a root tag in amxmi file.
		</p>
		<p>Based on the above statement, if the AMALTHEA model file is having sub-model tag as root element (e.g. SWModel or HWModel etc.,), as a part of model migration -&gt; root element is changed as "Amalthea" tag and the content of sub-model is copied inside it. </p>Input model (containing SWModel as the root tag):
		<pre xml:space="preserve"><code> "&lt;am:SWModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:am="http://app4mc.eclipse.org/amalthea/0.7.0"&gt;
  &lt;labels/&gt;
&lt;/am:SWModel&gt;"
</code></pre>		Output model (after model migration):
		<pre xml:space="preserve"><code>&lt;am:Amalthea xmlns:am="http://app4mc.eclipse.org/amalthea/0.7.0" xmlns:xmi="http://www.omg.org/XMI"&gt;
  &lt;swModel&gt;
    &lt;labels /&gt;
  &lt;/swModel&gt;
&lt;/am:Amalthea&gt; 
</code></pre>
		<p>
			<strong>Below are the changes in the reference names:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name (version APP4MC 0.7.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Changed Variable Name (version APP4MC 0.7.1)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">graphEntries</td>
				<td colspan="1" rowspan="1">items</td>
				<td colspan="1" rowspan="1">ModeSwitchEntry</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">xml tag "graphEntries" present inside "ModeSwitchEntry" object is changed to "items" in amxmi file</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">value</td>
				<td colspan="1" rowspan="1">values</td>
				<td colspan="1" rowspan="1">ModeSwitchEntry</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">xml tag "value" present inside "ModeSwitchEntry" object is changed to "values" in amxmi file</td>
			</tr>
		</table>
		<p>
			<strong>Below are the changes in the reference Types:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (version APP4MC 0.7.0)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type (version APP4MC 0.7.1)</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">size</td>
				<td colspan="1" rowspan="1">Long</td>
				<td colspan="1" rowspan="1">DataSize</td>
				<td colspan="1" rowspan="1">MemoryType</td>
				<td colspan="1" rowspan="1">HW Model, PropertyConstraintsModel</td>
				<td colspan="1" rowspan="1">Attribute "size" is migrated as "DataSize" object. Long value of "size" is migrated to "value" of DataSize. As the DataSizeUnit info is not available, "unit" value is not set</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">size</td>
				<td colspan="1" rowspan="1">DataUnit</td>
				<td colspan="1" rowspan="1">DataSize</td>
				<td colspan="1" rowspan="1">AbstractElementMemoryInformation</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">"size" of type "DataUnit" is migrated as "DataSize" object. Int value of "numberBits" attribute is migrated to "value" of DataSize, "unit" attribute is set as "bit" of type DataSizeUnit</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">size</td>
				<td colspan="1" rowspan="1">DataUnit</td>
				<td colspan="1" rowspan="1">DataSize</td>
				<td colspan="1" rowspan="1">BaseTypeDefinition</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">"size" of type "DataUnit" is migrated as "DataSize" object. Int value of "numberBit" attribute is migrated to "value" of DataSize, "unit" attribute is set as "bit" of type DataSizeUnit</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">frequency</td>
				<td colspan="1" rowspan="1">EInt</td>
				<td colspan="1" rowspan="1">Frequency</td>
				<td colspan="1" rowspan="1">Quartz</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">Attribute "frequency" of type EInt is migrated as "Frequency" object. "frequency" EInt value is migrated to "value" EDouble of DataSize. As the FrequencyUnit info is not available, "unit" value is not set</td>
			</tr>
		</table>
		<p>
			<strong>Below references are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Name</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Variable Type</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class containing Variable</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">size</td>
				<td colspan="1" rowspan="1">DataUnit</td>
				<td colspan="1" rowspan="1">Section</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">Content is removed from the model as size can't be specified for "Section" (considered as virtual memory section)</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">labels</td>
				<td colspan="1" rowspan="1">[0-*] Label</td>
				<td colspan="1" rowspan="1">Section</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">Content is removed from the model. As per APP4MC 0.7.1 semantics, Label object has the association to the Section inside which it can be allocated</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">runEntities</td>
				<td colspan="1" rowspan="1">[0-*] Runnable</td>
				<td colspan="1" rowspan="1">Section</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">Content is removed from the model. As per APP4MC 0.7.1 semantics, Runnable object has the association to the Section inside which it can be allocated</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">groupingType</td>
				<td colspan="1" rowspan="1">RunnableGroupingType</td>
				<td colspan="1" rowspan="1">ProcessRunnableGroup</td>
				<td colspan="1" rowspan="1">Constraints Model</td>
				<td colspan="1" rowspan="1">Content is removed from the model</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">entries</td>
				<td colspan="1" rowspan="1">[0-*] ProcessRunnableGroupEntry</td>
				<td colspan="1" rowspan="1">ProcessRunnableGroup</td>
				<td colspan="1" rowspan="1">Constraints Model</td>
				<td colspan="1" rowspan="1">Content is removed from the model. Runnable object belonging to the ProcessRunnableGroupEntry is associated to the runnables list contained at the ProcessRunnableGroup object</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">default</td>
				<td colspan="1" rowspan="1">EBoolean</td>
				<td colspan="1" rowspan="1">ModeSwitchEntry</td>
				<td colspan="1" rowspan="1">SW Model</td>
				<td colspan="1" rowspan="1">Content removed from the model. If several ModeSwitchEntry objects contain attribute "default" as "true", then first ModeSwitchEntry which has "default" as "true" is converted to "ModeSwitchDefault" object</td>
			</tr>
		</table>
		<p>
			<strong>Below Classes are removed:</strong>
		</p>
		<table class="classic" style="margin-left:40px">
			<tr>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Class Name</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>AMALTHEA sub model</em>
					</strong>
				</td>
				<td colspan="1" rowspan="1">
					<strong>
						<em>Model Migration behavior</em>
					</strong>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SchedulerPairingConstraint</td>
				<td colspan="1" rowspan="1">Constraints Model</td>
				<td colspan="1" rowspan="1">Content is removed from the model. There is no equivalent of this model element in APP4MC 0.7.1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SchedulerSeparationConstraint</td>
				<td colspan="1" rowspan="1">Constraints Model</td>
				<td colspan="1" rowspan="1">Content is removed from the model. There is no equivalent  of this model element in APP4MC 0.7.1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ProcessRunnableGroupEntry</td>
				<td colspan="1" rowspan="1">Constraints Model</td>
				<td colspan="1" rowspan="1">This element is removed from the model, but the Runnables associated to it are associated to ProcessRunnableGroup object</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">OrderConstraint</td>
				<td colspan="1" rowspan="1">Constraints Model</td>
				<td colspan="1" rowspan="1">Content is removed from the model. There is no equivalent of this model element in APP4MC 0.7.1</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">AgeConstraint</td>
				<td colspan="1" rowspan="1">Constraints model</td>
				<td colspan="1" rowspan="1">Content is migrated as EventChainLatencyConstraint element with LatencyType as "Age"</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">ReactionConstraint</td>
				<td colspan="1" rowspan="1">Constraints model</td>
				<td colspan="1" rowspan="1">Content is migrated as EventChainLatencyConstraint element with LatencyType as "Reaction"</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SynchronisationConstraint</td>
				<td colspan="1" rowspan="1">Constraints model</td>
				<td colspan="1" rowspan="1">Content is migrated as EventSynchronizationConstraint element</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SectionMapping</td>
				<td colspan="1" rowspan="1">Mapping Model</td>
				<td colspan="1" rowspan="1">Content is removed from the model. As per 0.7.1, there is a possibility to specify PhysicalSectionMapping element i.e. defining mapping of various Section elements to Memory</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">SectionMappingConstraint</td>
				<td colspan="1" rowspan="1">Property Constraints Model</td>
				<td colspan="1" rowspan="1">Content is removed from the model.As per 0.7.1, there is a possibility to specify PhysicalSectionConstraint element i.e. defining possibility of Section allocation across various Memories</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">DataUnit</td>
				<td colspan="1" rowspan="1">Sw model</td>
				<td colspan="1" rowspan="1">Content is migrated as DataSize. Attribute "unit" is set as DataSizeUnit of type "bit"</td>
			</tr>
		</table>


<h2><a id="section4.6">4.6 </a>Model Utilities</h2>
		<p>The model utilities provide implementations for typical usage scenarios:</p>
		<dl>
			<dt>
				<strong>
					<a href="javadoc/model/package-summary.html">General Helper Classes</a>
				</strong>
			</dt>
			<dd>Support for search and delete</dd>
		</dl>
		<dl>
			<dt>
				<strong>
					<a href="javadoc/model/builder/package-summary.html">Builder Classes</a>
				</strong>
			</dt>
			<dd>Support for Groovy-like builders (Xtend2)</dd>
		</dl>
		<dl>
			<dt>
				<strong>
					<a href="javadoc/model/io/package-summary.html">I/O Classes</a>
				</strong>
			</dt>
			<dd>Support for loading and storing of models</dd>
		</dl>
		<dl>
			<dt>
				<strong>
					<a href="javadoc/model/util/package-summary.html">Utilities</a>
				</strong>
			</dt>
			<dd>Model utilities</dd>
		</dl>
		<p>
			<i>Common</i>
		</p>
		<ul>
			<li>
				<a href="javadoc/model/util/ModelUtil.html">ModelUtil</a>
			</li>
			<li>
				<a href="javadoc/model/util/FactoryUtil.html">FactoryUtil</a>
			</li>
			<li>
				<a href="javadoc/model/util/CustomPropertyUtil.html">CustomPropertyUtil</a>
			</li>
			<li>
				<a href="javadoc/model/util/TimeUtil.html">TimeUtil</a>
			</li>
		</ul>
		<p>
			<i>Specific</i>
		</p>
		<ul>
			<li>
				<a href="javadoc/model/util/SoftwareUtil.html">Software Utilities</a>  -  Activity graph traversal, accesses, calls
			</li>
			<li>
				<a href="javadoc/model/util/RuntimeUtil.html">Runtime Utilities</a>  -  Runtime, utilization, ticks
			</li>
			<li>
				<a href="javadoc/model/util/DeploymentUtil.html">Deployment Utilities</a>  -  Mapping of tasks to cores and data to memory
			</li>
			<li>
				<a href="javadoc/model/util/HardwareUtil.html">Hardware Utilities</a>  -  Access paths and latencies
			</li>
		</ul>
		<p>
			<b>
				<i>Scope</i>
			</b>
		</p>
		<p>The model utilities are part of the model plugin.</p>


<h2><a id="section4.7">4.7 </a>Model Details</h2>


<h3><a id="section4.7.1">4.7.1 </a>Qualified name</h3>
		<p>The following image shows the logical dependency between the name segments and describe the used notations. The details differ in terms of delimiters and encoding of the segments.</p>
		<p>
			<img src="images/dev_model_qualified_name.png"/>
		</p>


<h3><a id="section4.7.2">4.7.2 </a>Unique ID generation</h3>
		<p>AMALTHEA uses a named based schema to reference other elements inside of a model.
			<br>A custom implementation is used instead of the standard EMF mechanism, which uses an index based implementation.
			<br>The target element id is identified by the following schema:
		</p>
		<pre xml:space="preserve"><code>java.net.URLEncoder.encode(&lt;name of element&gt;, StandardCharsets.UTF_8.toString)) + "?type=" + &lt;element&gt;.eClass.name
</code></pre>
		<p>Samples:</p>
		<p>Refering to a Runnable element with name foo in a RunnableCall looks like the following snippet:</p>
		<pre xml:space="preserve"><code>&lt;items xsi:type="am:RunnableCall" runnable="foo?type=Runnable" /&gt;
</code></pre>


<h3><a id="section4.7.3">4.7.3 </a>Interfaces and base objects</h3>
		<p>Several interfaces and abstract classes are defined in the common model.
			<br>They provide basic common functionality for all objects, which are extending it, like the possibility to add 
			<i>CustomAttributes</i> or 
			<i>Tags</i>. Tags are available at different elements with the purpose to group them together or to annotate them.
		</p>
		<p>
			<img class="scale" src="images/model_common_interfaces_base_objects.png"/>
		</p>


<h3><a id="section4.7.4">4.7.4 </a>Derived references</h3>
		<p>Some derived references are introduces to simplify a multi-level navigation. They are read only.</p>
		<table>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1" style="text-align:center">Reference</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>ISystem</code>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>innerPorts</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>QualifiedPort</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>HwStructure</code>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>innerPorts</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>HwPort</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>HwPath</code>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>source</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>ProcessingUnit</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>HwPath</code>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>destination</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>HwDestination</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>TaskScheduler</code>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>childSchedulers</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>TaskScheduler</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>TaskScheduler</code>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>parentScheduler</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>TaskScheduler</code>
				</td>
			</tr>
		</table>


<h3><a id="section4.7.5">4.7.5 </a>Transient back pointers</h3>
		<p>AMALTHEA maintains a number of back pointers in the model. These transient references of an object 'point back' to the object referring to it. </p>


<h4><a id="section4.7.5.1"></a>Container references</h4>
		<p>Container references provide an easier access to the eContainer of an object.</p>
		<p>The following references are specified as opposite references and can be modified.
			<br>By the prefix "containing" they clearly indicate that a containment is changed.
		</p>
		<table>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">Container reference</td>
				<td colspan="1" rowspan="1" style="text-align: right;">Containment reference</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Component</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingComponent</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>ports</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>ComponentPort</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>EnumMode</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingMode</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>literals</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>ModeLiteral</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>HwFeatureCategory</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingCategory</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>features</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>HwFeature</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>HwAccessElement</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingAccessElement</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>accessPath</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>HwAccessPath</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>RunnableCall</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingCall</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>arguments</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>CallArgument</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>ISystem</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingSystem</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>componentInstances</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>ComponentInstance</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>ISystem</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingSystem</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>connectors</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Connector</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Namespace</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>previousSegment</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>nextSegments</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Namespace</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Runnable</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingRunnable</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>parameters</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>RunnableParameter</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>ComponentInterface</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingInterface</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>subInterfaces</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>SubInterface</code>
				</td>
			</tr>
		</table>
		<p>The following references are specified as opposite references.</p>
		<table>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">Container reference (read only)</td>
				<td colspan="1" rowspan="1" style="text-align: right;">Reference</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>ProcessingUnit</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>source</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>accessElements</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>HwAccessElement</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>TaskScheduler</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>child</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>parentAssociation</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>SchedulerAssociation</code>
				</td>
			</tr>
		</table>
		<p>The following container references are a special case. Because of the nested structure of sub elements the access to a dedicated container object is computed by traversing multiple eContainer references.</p>
		<table>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">Container reference (read only)</td>
				<td colspan="1" rowspan="1" style="text-align: right;">Containment reference</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Runnable</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingRunnable</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>activityGraph ...</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>ActivityGraphItem</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Process</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingProcess</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>activityGraph ...</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>ActivityGraphItem</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>ActivityGraph</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingActivityGraph</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>items ...</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>ActivityGraphItem</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Runnable</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>containingRunnable</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>...</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>DataDependency</code>
				</td>
			</tr>
		</table>


<h4><a id="section4.7.5.2"></a>References (via inverse index)</h4>
		<p>The inverse index allows easier and faster navigation, at the expense of greater memory consumption.
			<br>The index is built on demand. 
		</p>
		<p>The data model has some intermediate objects to express the call of a runnable or the access to a label.
			<br>These objects are containments of 
			<i>Task</i> or 
			<i>Runnable</i> and can have additional attributes. The back pointers support an easy way to answer queries like "Which tasks call runnable x ?" or "Which functions read label y ?".
		</p>
		<table>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">Back pointer (read only)</td>
				<td colspan="1" rowspan="1" style="text-align: right;">Reference</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>LabelAccess</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>labelAccesses</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>data</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Label</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>ChannelAccess</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>channelAccesses</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>data</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Channel</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>SemaphoreAccess</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>semaphoreAccesses</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>semaphore</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Semaphore</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>RunnableCall</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>runnableCalls</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>runnable</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Runnable</code>
				</td>
			</tr>
		</table>
		<p>All elements with memory representation (e.g. labels, runnables) can be mapped to a memory via a MemoryMapping. The back pointers provides a list of all mapping elements that refer to a specific memory or a specific MemoryElement.</p>
		<table>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">Back pointer (read only)</td>
				<td colspan="1" rowspan="1" style="text-align: right;">Reference</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>MemoryMapping</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>mappings</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>memory</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Memory</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>MemoryMapping</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>mappings</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>abstractElement</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>AbstractMemoryElement</code>
				</td>
			</tr>
		</table>
		<p>Labels and runnables can be located in exactly one section. The back pointer provides a list of all elements that are assigned to a specific section.</p>
		<table>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">Back pointer (read only)</td>
				<td colspan="1" rowspan="1" style="text-align: right;">Reference</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Label</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>labels</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>section</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Section</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Runnable</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>runnables</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>section</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Section</code>
				</td>
			</tr>
		</table>
		<p>CustomEvent and InterProcessStimulus can have explicit triggers. The pointer is established from CustomEventTrigger and InterProcessTrigger. The back pointers provides easier access to the triggering runnables / processes.</p>
		<table>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">Back pointer (read only)</td>
				<td colspan="1" rowspan="1" style="text-align: right;">Reference</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>CustomEventTrigger</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>explicitTriggers</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>event</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>CustomEvent</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>InterProcessTrigger</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>explicitTriggers</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>stimulus</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>InterProcessStimulus</code>
				</td>
			</tr>
		</table>
		<p>Components define lists of included software elements (e.g. labels, runnables, semaphores). The back pointer provides access to all referring components.</p>
		<table>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">Back pointer (read only)</td>
				<td colspan="1" rowspan="1" style="text-align: right;">Reference</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Component</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>referringComponents</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>labels</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Label</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Component</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>referringComponents</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>runnables</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Runnable</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Component</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>referringComponents</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>processes</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>AbstractProcess</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Component</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>referringComponents</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>semaphores</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Semaphore</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Component</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>referringComponents</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>osEvents</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>OsEvent</code>
				</td>
			</tr>
		</table>
		<p>Allocations refer to a scheduler (Scheduler, TaskScheduler, InterruptController). The back pointer provides access from the scheduler to the allocations.</p>
		<table>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">Back pointer (read only)</td>
				<td colspan="1" rowspan="1" style="text-align: right;">Reference</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>SchedulerAllocation</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>schedulerAllocations</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>scheduler</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Scheduler</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>RunnableAllocation</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>runnableAllocations</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>scheduler</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Scheduler</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>TaskAllocation</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>taskAllocations</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>scheduler</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>TaskScheduler</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>ISRAllocation</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>isrAllocations</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>controller</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>InterruptController</code>
				</td>
			</tr>
		</table>
		<p>Some other useful back references.</p>
		<table>
			<tr>
				<td colspan="1" rowspan="1"/>
				<td colspan="1" rowspan="1">Back pointer (read only)</td>
				<td colspan="1" rowspan="1" style="text-align: right;">Reference</td>
				<td colspan="1" rowspan="1"/>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>Process</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>affectedProcesses</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>stimuli</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Stimulus</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>ITaggable</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>taggedObjects</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>tags</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Tag</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>SchedulerAssociation</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>childAssociations</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>parent</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>TaskScheduler</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>INamespaceMember</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>memberObjects</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>namespace</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>Namespace</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>IComponentStructureMember</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>memberObjects</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>structure</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>ComponentStructure</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>HwConnection</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>connections</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>port1</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>HwPort</code>
				</td>
			</tr>
			<tr>
				<td colspan="1" rowspan="1">
					<code>HwConnection</code>
				</td>
				<td colspan="1" rowspan="1" style="color:green">← 
					<strong>connections</strong>
				</td>
				<td colspan="1" rowspan="1" style="text-align: right;">
					<strong>port2</strong> &rarr;
				</td>
				<td colspan="1" rowspan="1">
					<code>HwPort</code>
				</td>
			</tr>
		</table>


<h4><a id="section4.7.5.3"></a>Implementation</h4>
		<p>
			<b>Xcore:</b>
		</p>
		<p>A derived back pointer is computed by 
			<span>
				<strong>AmaltheaIndex.getInverseReferences(...)</strong>
			</span>.
			<br>The visiblity in the generated code and in the user interface is controlled by 
			<span>
				<strong>@GenModel</strong>
			</span> annotations.
		</p>
		<p>Example</p>
		<pre xml:space="preserve"><code>class Runnable extends AbstractMemoryElement
{	...	
	// back pointer (readonly)
	@GenModel(documentation="&lt;p&gt;&lt;b&gt;Returns an &lt;em&gt;immutable&lt;/em&gt; list of callers (RunnableCalls).&lt;/b&gt;&lt;/p&gt;")
	@GenModel(propertyCategory="Read only", propertyFilterFlags="org.eclipse.ui.views.properties.expert")
	refers transient readonly volatile derived RunnableCall[] runnableCalls get {
		AmaltheaIndex.getInverseReferences(this, AmaltheaPackage.eINSTANCE.runnable_RunnableCalls,
			#{AmaltheaPackage.eINSTANCE.runnableCall_Runnable} )
	}
</code></pre>
		<p><!-- --></p>


<h4><a id="section4.7.5.4"></a>User Interface</h4>
		<p>
			<img src="images/model_transient_backpointer_ui.png"/>
		</p>


<h2><a id="section4.8">4.8 </a>AMALTHEA Model Definition</h2>


<h3><a id="section4.8.1">4.8.1 </a>Ecore</h3>
		<p>The AMALTHEA model is specified with the Eclipse Modeling Framework (EMF). Eclipse/Java developers can use the AMALTHEA Platform where the generated Java classes of the model are included. The underlying Xcore definition of the model is part of the model plugin.</p>
		<p>Both definitions (the original 
			<strong>Xcore file</strong> and the derived 
			<strong>Ecore files</strong>) can be found 
			<a href="zip/ecore-definitions.zip">here</a>.
		</p>


<h3><a id="section4.8.2">4.8.2 </a>XML Schema Definition (XSD)</h3>
		<p>For developers that are not using Java or Eclipse, the specification is also provided in the XML and XSD format. The 
			<strong>XML related files</strong> can be found 
			<a href="zip/xml-definitions.zip">here</a>.
		</p>
		<p>The AMALTHEA model refers to the Ecore model definition (http://www.eclipse.org/emf/2002/Ecore).
			<br>This definition (generated automatically during conversion) is also stored in the archive.
		</p>
		<p>---</p>
		<p>The Franca model has no longer a direct connection but still can be used to describe interfaces.</p>
		<p>Franca is only available as Ecore file. To generate an XSD schema open the AMALTHEA Tool Platform and do the following steps:</p>
		<p>Open the Plug-Ins View by selecting 
			<i>Window -&gt; Show View -&gt; Other</i> and select Plug-Ins View in the folder Plug-in Development:
		</p>
		<p>
			<img src="images/show_plugins_view.png"/>
		</p>
		<p>Select the plug-in 
			<i>org.franca.core</i> and import it as 
			<i>Binary Project</i>:
		</p>
		<p>
			<img src="images/import_franca-core.png"/>
		</p>
		<p>Open the model folder in the imported project, do a right click on the "franca.genmodel" file and select "Export Model".</p>
		<p>
			<img src="images/export_model.png"/>
		</p>
		<p>Select the entry "XML Schema for XMI" in the first wizard page.</p>
		<p>
			<img src="images/export_wizard1.png"/>
		</p>
		<p>Navigate to the last wizard page, select "org.franca.core.franca" and click finish.</p>
		<p>
			<img src="images/export_wizard2.png"/>
		</p>
		<p>Now there the file "francaXMI.xsd" in the model folder.</p>


<h2><a id="section4.9">4.9 </a>AMALTHEA Trace Database</h2>
		<p>The new AMALTHEA Trace DataBase (ATDB) primarily used to represent a runtime trace in a database format. As part of the rework, ATDB can also be used to calculate derived metrics from the trace data it holds. Since it is intended to be used in conjunction with AMALTHEA, the calculable metrics are a subset of the metrics found in AMALTHEA. However, the database schema allows for arbitrary events, entities, properties, and metrics.</p>
		<p>The database is stored as 
			<a href="http://www.sqlite.org/">SQLite Database</a> with extension 
			<strong>.atdb</strong>. It provides the data tables and several views to make the data contained in the data base more user-accessible. For performance reasons, there are some indices to speed up the access times. The general database structure and views will be described in the following sections.
		</p>


<h3><a id="section4.9.1">4.9.1 </a>Database Structure</h3>
		<p>The database schema is defined completely static. Depending on the detail of data to be stored some of the tables are optional (they can be temporary to calculate metrics and do not need to be persisted). The following tables are defined:</p>
		<ul>
			<li>Default:
				<ul>
					<li>MetaInformation</li>
					<li>Entity</li>
					<li>EntityType</li>
					<li>EntityInstance</li>
					<li>EventType</li>
					<li>Property</li>
					<li>PropertyValue</li>
					<li>Event</li>
					<li>Metric</li>
					<li>EntityMetricValue</li>
					<li>EntityInstanceMetricValue</li>
					<li>EntityMetricInstanceValue</li>
				</ul>
			</li>
			<li>Optional:
				<ul>
					<li>TraceEvent</li>
					<li>RunnableInstanceEventInfo</li>
					<li>ProcessInstanceEventInfo</li>
					<li>EventChainInstanceInfo</li>
				</ul>
			</li>
		</ul>
		<p>The database schema as Entity Relationship diagram:</p>
		<p>
			<img src="images/atdb_db_schema.svg"/>
		</p>


<h4><a id="section4.9.1.1"></a>Core Tables</h4>
		<p>The core tables refer to all white tables from the picture, without them, the database would not be meaningful. So these are mandatory to contain datasets.</p>


<h5><a id="section4.9.1.1.1"></a>MetaInformation</h5>
		<p>This table contains simple key-value pairs containing information about the trace, how it was recorded, how long it is, etc. It may also contain other information, e.g., the file name(s) of the related AMALTHEA model.</p>
		<ul>
			<li>Columns
				<ul>
					<li>name: text – Primary Key</li>
					<li>value: text – unique</li>
				</ul>
			</li>
		</ul>
		<p>So far, commonly used names include the following:</p>
		<ul>
			<li>
				<strong>dbVersion</strong>: version of the ATDB schema with syntax "v#.#.#". Current version is "v1.0.0"
			</li>
			<li>
				<strong>eventsWritten</strong>: number of events stored in the database
			</li>
			<li>
				<strong>input</strong>: path to the file, from which the information was produced
			</li>
			<li>
				<strong>timeBase</strong>: time unit in which time-values are stored
			</li>
		</ul>


<h5><a id="section4.9.1.1.2"></a>Entity</h5>
		<p>The entity table contains information about all artifacts used in the database. This may include things that are not visible in the underlying trace, e.g., event chains.</p>
		<ul>
			<li>Columns
				<ul>
					<li>id: integer – Primary Key</li>
					<li>name: text – unique, the name of the entity</li>
					<li>entityTypeId: integer – Foreign Key, reference to entityType.id</li>
				</ul>
			</li>
		</ul>


<h5><a id="section4.9.1.1.3"></a>EntityType</h5>
		<p>In order to classify entities, this table contains datasets about their types. These types can be referenced in the entityTypeId column of the entity table.</p>
		<ul>
			<li>Columns
				<ul>
					<li>id: integer – Primary Key</li>
					<li>name: text – unique, the name of the entity type</li>
				</ul>
			</li>
		</ul>
		<p>Currently, the following type names are commonly used (also see BTF specification):</p>
		<ul>
			<li>
				<strong>T</strong>: task
			</li>
			<li>
				<strong>I</strong>: interrupt service routine
			</li>
			<li>
				<strong>R</strong>: runnable
			</li>
			<li>
				<strong>EC</strong>: event chain
			</li>
			<li>
				<strong>SIM</strong>: simulation
			</li>
			<li>
				<strong>STI</strong>: stimulus
			</li>
			<li>
				<strong>ECU</strong>: electronic control unit
			</li>
			<li>
				<strong>Processor</strong>: micro controller
			</li>
			<li>
				<strong>C</strong>: core
			</li>
			<li>
				<strong>M</strong>: memory
			</li>
			<li>
				<strong>SCHED</strong>: scheduler
			</li>
			<li>
				<strong>SIG</strong>: label/signal
			</li>
			<li>
				<strong>SEM</strong>: semaphore
			</li>
			<li>
				<strong>EVENT</strong>: operating system event (used for synchronization)
			</li>
		</ul>
		<p>This table may contain more entity types as long as they are unique within this table.</p>


<h5><a id="section4.9.1.1.4"></a>EntityInstance</h5>
		<p>Entities may be instantiated multiple times. In a trace this may be the time span between the start and terminate event of a runnable entity. For a periodic time stimulus an instance represents the nth occurence of the time stimulus. In order to differentiate between these instances this table holds two values which act as a unique identification for entity instances. They will be referenced from various entity-instance-specific tables.</p>
		<ul>
			<li>Columns
				<ul>
					<li>entityId: integer – Foreign Key, references an entity</li>
					<li>sqcnr: integer – strictly sequential counting number (starting with 0) that will be counted up per unique entityId</li>
					<li>
						<strong>Compound Primary Key</strong>: entityId, sqcnr
					</li>
				</ul>
			</li>
		</ul>


<h5><a id="section4.9.1.1.5"></a>EventType</h5>
		<p>Similar to entity types this table contains types of events that can be referenced from the event and trace event tables. This also represents the connection between which events shall be observed (the ones in the event table) and which events are actually in the trace (the ones in the trace event table). The commonly used event type names are the intersection between the events from AMALTHEA and the events from the BTF specification. Just like for entity types, this table may contain additional event types (unique).</p>
		<ul>
			<li>Columns
				<ul>
					<li>id: integer – Primary Key</li>
					<li>name: text – unique, the name of the event type</li>
				</ul>
			</li>
		</ul>


<h4><a id="section4.9.1.2"></a>Auxillary Data Tables</h4>
		<p>Additional information about entities which may help to understand and analyze the trace can be provided in auxillary tables. They are represented in yellow in the above data base schema diagram. Some information in these tables can be derived from the trace, e.g., the runnable to task mapping, other data (like event chains and events) will be sourced from the original AMALTHEA model.</p>


<h5><a id="section4.9.1.2.1"></a>Property</h5>
		<p>A table for all possible properties that an entity may have in the database.</p>
		<ul>
			<li>Columns
				<ul>
					<li>id: integer – Primary Key</li>
					<li>name: text – unique, the name of the property</li>
					<li>type: text – the type of the property</li>
				</ul>
			</li>
		</ul>
		<p>Currently, the following property names with their types are used:</p>
		<ul>
			<li>
				<strong>simultionDuration</strong>: time – the duration of the simulation that produced the trace, time is a double value, the global time unit can be specified in MetaInformation, if not specified defaults to nano seconds
			</li>
			<li>
				<strong>initialValue</strong>: object – the initial value of a signal/label at the begin of the trace
			</li>
			<li>
				<strong>processors</strong>: entityIdRef – multi-valued reference to other entities acting as processors for this entity
			</li>
			<li>
				<strong>cores</strong>: entityIdRef – multi-valued reference to other entities acting as cores for this entity
			</li>
			<li>
				<strong>systemStartTime</strong>: time – the start time of the trace (the time from which the trace was simulated or measured)
			</li>
			<li>
				<strong>frequencyInHz</strong>: long – the clock frequency, e.g. of a core, usually an integer
			</li>
			<li>
				<strong>stimuli</strong>: entityIdRef – multi-valued reference to other entities acting as stimuli for this entity
			</li>
			<li>
				<strong>executingCore</strong>: entityIdRef – reference to an other entity acting as the executing core for this entity
			</li>
			<li>
				<strong>runnables</strong>: entityIdRef – multi-valued reference to other entities acting as runnables for this entity
			</li>
			<li>
				<strong>readSignals</strong>: entityIdRef – multi-valued reference to other entities acting as labels/signals that are read by this entity
			</li>
			<li>
				<strong>writtenSignals</strong>: entityIdRef – multi-valued reference to other entities acting as labels/signals that are written by this entity
			</li>
			<li>
				<strong>systemStopTime</strong>: time – the stop time of the trace (the time until the trace was simulated or measured)
			</li>
			<li>
				<strong>ecItems</strong>: entityIdRef – multi-valued reference to other event chain entities acting as items for this event chain entity
			</li>
			<li>
				<strong>ecStimulus</strong>: eventIdRef – reference to an event acting as the stimulus for this event chain entity (multiple values represent an event set)
			</li>
			<li>
				<strong>ecResponse</strong>: eventIdRef – reference to an event acting as the response for this event chain entity (multiple values represent an event set)
			</li>
			<li>
				<strong>ecMinItemsCompleted</strong>: long – the number of items in a parallel event chain that are required for an instance to be considered complete; do not set this property, if you want to represent a sequential event chain
			</li>
		</ul>


<h5><a id="section4.9.1.2.2"></a>PropertyValue</h5>
		<p>Here, the actual properties are set for entities. Multiple property values are represented with a strictly sequential counting number (sqcnr). In case of ordered multiple values, this acts as the index of the value within the list of values.</p>
		<ul>
			<li>Columns
				<ul>
					<li>entityId: integer – Foreign Key, the id of the entity for which a row in this table holds a property value</li>
					<li>propertyId: integer – Foreign Key, the id of the property for which a row in this table holds a value</li>
					<li>sqcnr: integer – strictly sequential counting number (starting with 0) that will be counted up for each unique entityId – propertyId pair</li>
					<li>value: text – text representation of the value of the property</li>
					<li>
						<strong>Compound Primary Key</strong>: entityId, propertyId, sqcnr
					</li>
				</ul>
			</li>
		</ul>


<h5><a id="section4.9.1.2.3"></a>Event</h5>
		<p>Observable event specifications directly sourced from an AMALTHEA model can be stored in this table. Since event sets are handled via multi-valued properties, this table directly corresponds the abstract EntityEvent meta-class from AMALTHEA. The description field is left out. The name, eventType, and entity columns directly match the AMALTHEA pendants. The subtype-specific references in the EntityEvents are abstractly represented by the sourceEntity in this table. The events contained in this table are referenced in event chain entities.</p>
		<ul>
			<li>Columns
				<ul>
					<li>id: integer – Primary Key</li>
					<li>name: text – unique, the name of the event</li>
					<li>eventTypeId: integer – Foreign Key, reference to the type of this event</li>
					<li>entityId: integer – Foreign Key, reference to the entity that shall experience this event</li>
					<li>sourceEntityId: integer – Foreign Key, reference to the source entity that shall emit this event</li>
				</ul>
			</li>
		</ul>


<h4><a id="section4.9.1.3"></a>Metric Tables</h4>
		<p>Derived information about entities and their instances which can be calculated (via metrics) based on an event trace may be stored in metric tables. In the above diagram these tables are colored in green.</p>


<h5><a id="section4.9.1.3.1"></a>Metric</h5>
		<p>Similar to Property, this table contains the name and dimension for metrics which are referenced by the other metric tables. Commonly used metrics per entity type are defined in the Requirements section of the AMALTHEA data model.</p>
		<ul>
			<li>Columns
				<ul>
					<li>id: integer – Primary Key</li>
					<li>name: text – unique, the name of the metric</li>
					<li>dimension: text – the dimension of the metric (e.g. time, count, percentage, ...)</li>
				</ul>
			</li>
		</ul>


<h5><a id="section4.9.1.3.2"></a>EntityMetricValue</h5>
		<p>Contains entity-specific values for given metrics.</p>
		<ul>
			<li>Columns
				<ul>
					<li>entityId: integer – Foreign Key, the id of the entity for which the metric was calculated</li>
					<li>metricId: integer – Foreign Key, the id of the metric that was calculated for the entity</li>
					<li>value: text – textual representation of the metric's value</li>
					<li>
						<strong>Compound Primary Key</strong>: entityId, metricId
					</li>
				</ul>
			</li>
		</ul>


<h5><a id="section4.9.1.3.3"></a>EntityInstaneMetricValue</h5>
		<p>Contains entity-instance-specific values for given metrics.</p>
		<ul>
			<li>Columns
				<ul>
					<li>entityId: integer – the entity id of the entity instance</li>
					<li>entityInstance: integer – the instance number of the entity</li>
					<li>metricId: integer – Foreign Key, the id of the metric that was calculated for the entity instance</li>
					<li>value: text – textual representation of the metric's value</li>
					<li>
						<strong>Compound Primary Key</strong>: entityId, entityInstance, metricId
					</li>
					<li>
						<strong>Compound Foreign Key</strong>: entityId, entityInstance of EntityInstance
					</li>
				</ul>
			</li>
		</ul>


<h5><a id="section4.9.1.3.4"></a>EntityMetricInstanceValue</h5>
		<p>Contains entity-specific values for given metrics. The sqcnr can be used to represent instances which are not differentiated by entity instances (e.g. by a constant sized time frame). Metrics like the average core load based on time slices can be stored here.</p>
		<ul>
			<li>Columns
				<ul>
					<li>entityId: integer – Foreign Key, the id of the entity for which the metric instance was calculated</li>
					<li>metricId: integer – Foreign Key, the id of the metric whose instance was calculated for the entity</li>
					<li>sqcnr: integer – strictly sequential counting number (starting with 0) that will be counted up for each unique entityId – metricId pair</li>
					<li>value: text – textual representation of the metric instance's value</li>
					<li>
						<strong>Compound Primary Key</strong>: entityId, metricId, sqcnr
					</li>
				</ul>
			</li>
		</ul>


<h4><a id="section4.9.1.4"></a>Optional Tables</h4>
		<p>Depending on how much information shall be exchanged/contained in this data base the following tables do not have to be stored (they can be declared as TEMPORARY). They can, however, be quite usefull in calculating metrics about entities in a structured and comprehensive way. Once the metrics are calculated, there is no reference back to these optional tables. So, they do not have to remain in the data base. Since these tables represent a full event trace, omitting them can greatly reduce the size of the data base.</p>


<h5><a id="section4.9.1.4.1"></a>TraceEvent</h5>
		<p>Opposite to the observable events, this table is used to store all events directly from a BTF trace (in timestamp ascending order). For multiple events happening at the same timestamp there is a strictly sequential counting number. All other columns of this table correspond to a typical event line in a BTF trace.</p>
		<ul>
			<li>Columns
				<ul>
					<li>timestamp: integer – point in time at which the event occurred</li>
					<li>sqcnr: integer – strictly sequential counting number (starting with 0) that will be counted up for each unique timestamp</li>
					<li>entityId: integer – the entity id of the entity instance</li>
					<li>entityInstance: integer – the instance number of the entity</li>
					<li>sourceEntityId: integer – the entity id of the source entity instance</li>
					<li>entityInstance: integer – the instance number of the source entity</li>
					<li>eventTypeId: integer – Foreign Key, the id of the event's type</li>
					<li>value: text – in BTF this column is called 
						<em>Note</em>, for signal/label write events this may hold the written value
					</li>
					<li>
						<strong>Compound Primary Key</strong>: timestamp, sqcnr
					</li>
					<li>
						<strong>Compound Foreign Key</strong>: entityId, entityInstance of EntityInstance
					</li>
					<li>
						<strong>Compound Foreign Key</strong>: sourceEntityId, sourceEntityInstance of EntityInstance
					</li>
				</ul>
			</li>
		</ul>


<h5><a id="section4.9.1.4.2"></a>RunnableInstanceTraceInfo</h5>
		<p>Derived information about runnable events for easier metric calculation. All values are derived from TraceEvent. The event counts per runnable instance stored in this table help to determine if the runnable instance is completely captured within the trace.</p>
		<ul>
			<li>Columns
				<ul>
					<li>entityId: integer – the id of the runnable instance</li>
					<li>entityInstance: integer – the instance number of the runnable</li>
					<li>[RunnableEventType]EventCount: integer – the count of the respective event type for the runnable instance</li>
					<li>isComplete: boolean – derived from the event counts for each runnable instance, will be TRUE if the instance is completely captured in the trace, FALSE otherwise</li>
					<li>
						<strong>Compound Primary Key</strong>: entityId, entityInstance
					</li>
					<li>
						<strong>Compound Foreign Key</strong>: entityId, entityInstance of EntityInstance
					</li>
				</ul>
			</li>
		</ul>


<h5><a id="section4.9.1.4.3"></a>ProcessInstanceTraceInfo</h5>
		<p>Derived information about process (task or ISR) events for easier metric calculation. All values are derived from TraceEvent. The event counts per process instance stored in this table help to determine if the process instance is completely captured within the trace.</p>
		<ul>
			<li>Columns
				<ul>
					<li>entityId: integer – the id of the processs instance</li>
					<li>entityInstance: integer – the instance number of the process</li>
					<li>[ProcessEventType]EventCount: integer – the count of the respective event type for the process instance</li>
					<li>isComplete: boolean – derived from the event counts for each process instance, will be TRUE if the instance is completely captured in the trace, FALSE otherwise</li>
					<li>
						<strong>Compound Primary Key</strong>: entityId, entityInstance
					</li>
					<li>
						<strong>Compound Foreign Key</strong>: entityId, entityInstance of EntityInstance
					</li>
				</ul>
			</li>
		</ul>


<h5><a id="section4.9.1.4.4"></a>EventChainInstanceInfo</h5>
		<p>Derived information about event chain instances for easier metric calculation. All values are derived from event chain entities (and their properties) and TraceEvent. This table connects the event chain instances in EntityInstance to their corresponding stimulus and response events (via Compound Foreign Key) in TraceEvent. Since event chains can be subject to EventChainLatencyConstraints and there are only two types of instances considered (age and reaction) this table holds information about whether the event chain instance is age, reaction, or both.</p>
		<ul>
			<li>Columns
				<ul>
					<li>entityId: integer – the id of the event chain instance</li>
					<li>entityInstance: integer – the instance number of the event chain</li>
					<li>stimulusTimestamp: integer – the timestamp of the stimulus event of this event chain instance</li>
					<li>stimulusSqcnr: integer – the sqcnr of the stimulus timestamp</li>
					<li>responseTimestamp: integer – the timestamp of the response event of this event chain instance</li>
					<li>responseSqcnr: integer – the sqcnr of the response timestamp</li>
					<li>isAge: boolean – TRUE if this event chain instance represents the age</li>
					<li>isReaction: boolean – TRUE if this event chain instance represents the reaction</li>
					<li>
						<strong>Compound Primary Key</strong>: entityId, entityInstance
					</li>
					<li>
						<strong>Compound Foreign Key</strong>: entityId, entityInstance of EntityInstance
					</li>
					<li>
						<strong>Compound Foreign Key</strong>: stimulusTimestamp, stimulusSqcnr of TraceEvent
					</li>
					<li>
						<strong>Compound Foreign Key</strong>: responseTimestamp, responseSqcnr of TraceEvent
					</li>
				</ul>
			</li>
		</ul>


<h3><a id="section4.9.2">4.9.2 </a>Database Views</h3>
		<p>In order to better comprehend the contents of the database, SQLite offers the definition of views, which can be used to display the tables in a more readable way. With the help of views, the database contents can be presented in a standard database browser without knowing the meaning or significance of the table values – this is conveyed in views. This section will describe the views, which in turn can be understood as database tables, and how they are derived from the persisted tables from above. The 
			<em>how</em> will also be given as SQL statements.
		</p>


<h4><a id="section4.9.2.1"></a>Core Views</h4>
		<p>The core tables include MetaInformation, Entity, EntityType, EntityInstance, and EventType. Since these tables only contain a small number of columns which are comprehensible on their own, there are no views defined for the core tables.</p>


<h4><a id="section4.9.2.2"></a>Auxillary Data Views</h4>
		<p>The auxillary data tables contain more columns and refer to other tables to some extent. The following views are defined for ausillary tables:</p>


<h5><a id="section4.9.2.2.1"></a>vProperty</h5>
		<p>This view shows the entity names and property names, with their corresponding values (multiple values are shown in one value entry, where the values are concatenated). In addition they also show the entity and property type names.</p>
		<ul>
			<li>Columns
				<ul>
					<li>entityName: text – name of the entity with the property value</li>
					<li>entityType: text – name of the entity type of the entity</li>
					<li>propertyName: text – name of the property</li>
					<li>propertyType: text – type of the property</li>
					<li>value: text – value of the property, if there are multiple values: comma-seperated values</li>
				</ul>
			</li>
		</ul>
		<p>The corresponding SQL query to generate the view:</p>
		<pre xml:space="preserve"><code>SELECT
  (SELECT name FROM entity WHERE id = propertyValue.entityId) AS entityName,
  (SELECT name FROM entityType WHERE id = (SELECT entityTypeId FROM entity WHERE id = propertyValue.entityId)) AS entityType,
  (SELECT name FROM property WHERE id = propertyValue.propertyId) AS propertyName,
  (SELECT type FROM property WHERE id = propertyValue.propertyId) AS propertyType,
  (GROUP_CONCAT(CASE
    WHEN propertyValue.propertyId IN (SELECT id FROM property WHERE type = 'entityIdRef') THEN
      (SELECT name FROM entity WHERE id = propertyValue.value)
    WHEN propertyValue.propertyId IN (SELECT id FROM property WHERE type = 'eventIdRef') THEN
      (SELECT name FROM event WHERE id = propertyValue.value)
    ELSE
      propertyValue.value
  END, ', ')) AS value
FROM propertyValue GROUP BY entityId, propertyId ORDER BY entityId, propertyId
</code></pre>


<h5><a id="section4.9.2.2.2"></a>vEvent</h5>
		<p>The observable event specification refers to EventType and Entity. This view resolves the referenced ids and presents the events in an understandable way.</p>
		<ul>
			<li>Columns
				<ul>
					<li>name: text – name of the observable event</li>
					<li>eventType: text – name of the type of the observalbe event</li>
					<li>entityName: text – name of the entity that shall be subject to the observable event</li>
					<li>entityType: text – name of the type of the entity</li>
					<li>sourceEntityName: text – name of the source entity that is responsible for the observable event</li>
					<li>sourceEntityType: text – name of the type of the source entity</li>
				</ul>
			</li>
		</ul>
		<p>The corresponding SQL query to generate the Event view:</p>
		<pre xml:space="preserve"><code>SELECT
  name,
  (SELECT name FROM eventType WHERE id = eventTypeId) AS eventType,
  (SELECT name FROM entity WHERE id = entityId) AS entityName,
  (SELECT name FROM entityType WHERE id =
    (SELECT entityTypeId FROM entity WHERE id = event.entityId)
  ) AS entityType,
  (SELECT name FROM entity WHERE id = sourceEntityId) AS sourceEntityName,
  (SELECT name FROM entityType WHERE id =
    (SELECT entityTypeId FROM entity WHERE id = event.sourceEntityId)
  ) AS sourceEntityType
FROM event
</code></pre>


<h5><a id="section4.9.2.2.3"></a>vEventChainEntity</h5>
		<p>As a special case, event chains are also stored as entities, however, they never act as a subject or source entity in the trace event table. In order to better present and highlight them among all other entities, this view provides a comprehensive representation of all event chain entities.</p>
		<ul>
			<li>Columns
				<ul>
					<li>eventChainName: text – name from entity</li>
					<li>stimulus: text – name(s) of the observable stimulus event(s)</li>
					<li>response: text – name(s) of the observable response event(s)</li>
					<li>items: text – names of all event chain items</li>
					<li>minItemsCompleted: integer – number of parallel items that shall be completed until an instance of this event chain is considered complete</li>
					<li>isParallel: boolean – TRUE if the property with the name 'minItemsCompleted' is set</li>
				</ul>
			</li>
		</ul>
		<p>The corresponding SQL query to generate the event chain entity view:</p>
		<pre xml:space="preserve"><code>SELECT
  name AS eventChainName,
  (SELECT GROUP_CONCAT(name, ', ') FROM event  WHERE id IN (SELECT value FROM propertyValue WHERE entityId = ecEntity.id AND
    propertyId = (SELECT id FROM property WHERE name = 'ecStimulus'))) AS stimulus,
  (SELECT GROUP_CONCAT(name, ', ') FROM event  WHERE id IN (SELECT value FROM propertyValue WHERE entityId = ecEntity.id AND
    propertyId = (SELECT id FROM property WHERE name = 'ecResponse'))) AS response,
  (SELECT GROUP_CONCAT(name, ', ') FROM entity WHERE id IN (SELECT value FROM propertyValue WHERE entityId = ecEntity.id AND
    propertyId = (SELECT id FROM property WHERE name = 'ecItems'   ))) AS items,
  (SELECT value FROM propertyValue WHERE entityId = ecEntity.id AND propertyId =
    (SELECT id FROM property WHERE name = 'ecMinItemsCompleted')) AS minItemsCompleted,
  EXISTS(SELECT value FROM propertyValue WHERE entityId = ecEntity.id AND propertyId =
    (SELECT id FROM property WHERE name = 'ecMinItemsCompleted')) AS isParallel
FROM entity AS ecEntity WHERE entityTypeId = (SELECT id FROM entityType WHERE entityType.name = 'EC')
</code></pre>


<h4><a id="section4.9.2.3"></a>Metric Views</h4>
		<p>The metric views resolve the entity and metric ids into the corresponding names and displays them. The three metric views are thus very similar.</p>


<h5><a id="section4.9.2.3.1"></a>vEntityMetricValue</h5>
		<p>This view presents non-instance-specific entity metrics.</p>
		<ul>
			<li>Columns
				<ul>
					<li>entityName: text – name of the entity for which this metric is stored</li>
					<li>entityType: text – name of the type of the entity</li>
					<li>metricName: text – name of the metric</li>
					<li>value: text – from EntityMetricValue</li>
				</ul>
			</li>
		</ul>
		<p>The corresponding SQL query to generate the entity metric value view:</p>
		<pre xml:space="preserve"><code>SELECT
  (SELECT name FROM entity WHERE id = entityMetricValue.entityId) AS entityName,
  (SELECT name FROM entityType WHERE id =
    (SELECT entityTypeId FROM entity WHERE id = entityMetricValue.entityId)
  ) AS entityType,
  (SELECT name FROM metric WHERE id = entityMetricValue.metricId) AS metricName,
  entityMetricValue.value
FROM entityMetricValue
ORDER BY entityId, metricId
</code></pre>


<h5><a id="section4.9.2.3.2"></a>vEntityInstanceMetricValue</h5>
		<p>A representation of the entity instance-specific metrics is given with this view.</p>
		<ul>
			<li>Columns
				<ul>
					<li>entityName: text – name of the entity for which this metric is stored</li>
					<li>entityType: text – name of the type of the entity</li>
					<li>entityInstance: integer – from EntityInstanceMetricValue</li>
					<li>metricName: text – name of the metric</li>
					<li>value: text – from EntityInstanceMetricValue</li>
				</ul>
			</li>
		</ul>
		<p>The corresponding SQL query to generate the entity instance metric value view:</p>
		<pre xml:space="preserve"><code>SELECT
  (SELECT name FROM entity WHERE id = entityInstanceMetricValue.entityId) AS entityName,
  (SELECT name FROM entityType WHERE id =
    (SELECT entityTypeId FROM entity WHERE id = entityInstanceMetricValue.entityId)
  ) AS entityType,
  entityInstanceMetricValue.entityInstance,
  (SELECT name FROM metric WHERE id = entityInstanceMetricValue.metricId) AS metricName,
  entityInstanceMetricValue.value
FROM entityInstanceMetricValue
ORDER BY entityId, entityInstance, metricId
</code></pre>


<h5><a id="section4.9.2.3.3"></a>vEntityMetricInstanceValue</h5>
		<p>This view shows entity metrics that are not grouped by entity instances but by metric instances.</p>
		<ul>
			<li>Columns
				<ul>
					<li>entityName: text – name of the entity for which this metric is stored</li>
					<li>entityType: text – name of the type of the entity</li>
					<li>metricName: text – name of the metric</li>
					<li>sqcnr: integer – from EntityMetricInstanceValue</li>
					<li>value: text – from EntityMetricInstanceValue</li>
				</ul>
			</li>
		</ul>
		<p>The corresponding SQL query to generate the entity metric instance value view:</p>
		<pre xml:space="preserve"><code>SELECT
  (SELECT name FROM entity WHERE id = entityMetricInstanceValue.entityId) AS entityName,
  (SELECT name FROM entityType WHERE id =
    (SELECT entityTypeId FROM entity WHERE id = entityMetricInstanceValue.entityId)
  ) AS entityType,
  (SELECT name FROM metric WHERE id = entityMetricInstanceValue.metricId) AS metricName,
  entityMetricInstanceValue.sqcnr,
  entityMetricInstanceValue.value
FROM entityMetricInstanceValue
ORDER BY entityId, metricId, sqcnr
</code></pre>


<h4><a id="section4.9.2.4"></a>Optional Views</h4>
		<p>These views are derived from optional tables. So they may not be persisted in the database file.</p>


<h5><a id="section4.9.2.4.1"></a>vTraceEvent</h5>
		<p>The trace event table itself is not readable like the BTF since all the references are ids. This view therefore offers a more BTF-like trace event table.</p>
		<ul>
			<li>Columns
				<ul>
					<li>timestamp: integer – from TraceEvent</li>
					<li>sqcnr: integer – from TraceEvent</li>
					<li>entityName: text – name of the entity that is subject to the trace event</li>
					<li>entityType: text – name of the type of the entity</li>
					<li>entityInstance: integer – from TraceEvent</li>
					<li>sourceEntityName: text – name of the source entity that is responsible for the trace event</li>
					<li>sourceEntityType: text – name of the type of the source entity</li>
					<li>sourceEntityInstance: integer – from TraceEvent</li>
					<li>eventType: text – name of the type of the trace event</li>
					<li>value: text – from TraceEvent</li>
				</ul>
			</li>
		</ul>
		<p>The corresponding SQL query to generate the TraceEvent view:</p>
		<pre xml:space="preserve"><code>SELECT
  traceEvent.timestamp,
  traceEvent.sqcnr,
  (SELECT name FROM entity WHERE id = traceEvent.entityId) AS entityName,
  (SELECT name FROM entityType WHERE id =
    (SELECT entityTypeId FROM entity WHERE id = traceEvent.entityId)
  ) AS entityType,
  traceEvent.entityInstance,
  (SELECT name FROM entity WHERE id = traceEvent.sourceEntityId) AS sourceEntityName,
  (SELECT name FROM entityType WHERE id =
    (SELECT entityTypeId FROM entity WHERE id = traceEvent.sourceEntityId)
  ) AS sourceEntityType,
  traceEvent.sourceEntityInstance,
  (SELECT name FROM eventType WHERE id = traceEvent.eventTypeId) AS eventType,
  traceEvent.value
FROM traceEvent
</code></pre>


<h5><a id="section4.9.2.4.2"></a>vRunnableInstanceRuntimeTraceEvent</h5>
		<p>This provides a filtered view on TraceEvent where the subject entity is a runnable.</p>
		<ul>
			<li>Columns
				<ul>
					<li>timestamp: integer – from TraceEvent</li>
					<li>sqcnr: integer – from TraceEvent</li>
					<li>runnableName: text – name of the runnable entity</li>
					<li>entityInstance: integer – from TraceEvent</li>
					<li>sourceEntityName: text – name of the source entity that is responsible for the runnable trace event</li>
					<li>sourceEntityInstance: integer – from TraceEvent</li>
					<li>eventType: text – name of the type of the runnable trace event</li>
				</ul>
			</li>
		</ul>
		<p>The corresponding SQL query to generate the runnable instance TraceEvent view:</p>
		<pre xml:space="preserve"><code>SELECT
  timestamp,
  sqcnr,
  (SELECT name FROM entity WHERE id = entityId) AS runnableName,
  entityInstance,
  (SELECT name FROM entity WHERE id = sourceEntityId) AS sourceEntityName,
  sourceEntityInstance,
  (SELECT name FROM eventType WHERE id = eventTypeId) AS eventType
FROM (
  SELECT timestamp, sqcnr, entityId, entityInstance, sourceEntityId, sourceEntityInstance, eventTypeId
  FROM traceEvent WHERE
    eventTypeId IN (SELECT id FROM eventType WHERE name IN ('start', 'resume', 'terminate', 'suspend')) AND
    entityId IN (SELECT id FROM entity WHERE entityTypeId IN
      (SELECT id FROM entityType WHERE name IN ('R'))
    )
  GROUP BY entityId, entityInstance, timestamp, sqcnr
)
</code></pre>


<h5><a id="section4.9.2.4.3"></a>vProcessInstanceRuntimeTraceEvent</h5>
		<p>This provides a filtered view on TraceEvent where the subject entity is a process (Task or ISR).</p>
		<ul>
			<li>Columns
				<ul>
					<li>timestamp: integer – from TraceEvent</li>
					<li>sqcnr: integer – from TraceEvent</li>
					<li>processName: text – name of the process entity</li>
					<li>entityInstance: integer – from TraceEvent</li>
					<li>sourceEntityName: text – name of the source entity that is responsible for the process trace event</li>
					<li>sourceEntityInstance: integer – from TraceEvent</li>
					<li>eventType: text – name of the type of the process trace event</li>
				</ul>
			</li>
		</ul>
		<p>The corresponding SQL query to generate the process instance TraceEvent view:</p>
		<pre xml:space="preserve"><code>SELECT
  timestamp,
  sqcnr,
  (SELECT name FROM entity WHERE id = entityId) AS processName,
  entityInstance,
  (SELECT name FROM entity WHERE id = sourceEntityId) AS sourceEntityName,
  sourceEntityInstance,
  (SELECT name FROM eventType WHERE id = eventTypeId) AS eventType
FROM (
  SELECT timestamp, sqcnr, entityId, entityInstance, sourceEntityId, sourceEntityInstance, eventTypeId
  FROM traceEvent WHERE
    eventTypeId IN (SELECT id FROM eventType WHERE name IN ('activate', 'start', 'resume', 'run', 'terminate',
      'preempt', 'poll', 'wait', 'poll_parking', 'park', 'release_parking', 'release', 'boundedmigration',
      'fullmigration', 'mtalimitexceeded')) AND
    entityId IN (SELECT id FROM entity WHERE entityTypeId IN
      (SELECT id FROM entityType WHERE name IN ('T', 'I'))
    )
  GROUP BY entityId, entityInstance, timestamp, sqcnr
)
</code></pre>


<h5><a id="section4.9.2.4.4"></a>vRunnableInstanceTraceInfo/vProcessInstanceTraceInfo</h5>
		<p>These two views directly represent the instance trace info tables, except that the entityId is resolved to the name of the entity.</p>


<h5><a id="section4.9.2.4.5"></a>vEventChainInstanceInfo</h5>
		<p>This view maps event chain, stimulus event, and response event entities to their corresponding names, which makes the EventChainInstanceInfo table more comprehensible.</p>
		<ul>
			<li>Columns
				<ul>
					<li>eventChainName: text – name of the event chain entity</li>
					<li>ecInstance: integer – entityInstance from eventChainInstanceInfo</li>
					<li>stimulusTimestamp: integer – timestamp of the stimulus event for this event chain instance</li>
					<li>stimulusEntityName: text – name of the entity that is subject to the stimulus event</li>
					<li>stimulusEntityInstance: integer – instance of the stimulus entity</li>
					<li>stimulusEvent: text – name of the type of the stimulus event</li>
					<li>responseTimestamp: integer – timestamp of the response event for this event chain instance</li>
					<li>responseEntityName: text – name of the entity that is subject to the response event</li>
					<li>responseEntityInstance: integer – instance of the response entity</li>
					<li>responseEvent: text – name of the type of the response event</li>
					<li>latencyType: text – either 'age', 'reaction', or 'age/reaction'</li>
				</ul>
			</li>
		</ul>
		<p>The corresponding SQL query to generate the EventChainInstanceInfo view:</p>
		<pre xml:space="preserve"><code>SELECT
  (SELECT name FROM entity WHERE id = entityId) AS eventChainName,
  entityInstance AS ecInstance,
  stimulusTimestamp,
  (SELECT name FROM entity WHERE id = (SELECT entityId FROM traceEvent WHERE timestamp = stimulusTimestamp AND
    sqcnr = stimulusSqcnr)) AS stimulusEntityName,
  (SELECT entityInstance FROM traceEvent WHERE timestamp = stimulusTimestamp AND sqcnr = stimulusSqcnr) AS stimulusEntityInstance,
  (SELECT name FROM eventType WHERE id = (SELECT eventTypeId FROM traceEvent WHERE timestamp = stimulusTimestamp AND
    sqcnr = stimulusSqcnr)) AS stimulusEvent,
  responseTimestamp,
  (SELECT name FROM entity WHERE id = (SELECT entityId FROM traceEvent WHERE timestamp = responseTimestamp AND
    sqcnr = responseSqcnr)) AS responseEntityName,
  (SELECT entityInstance FROM traceEvent WHERE timestamp = responseTimestamp AND
    sqcnr = responseSqcnr) AS responseEntityInstance,
  (SELECT name FROM eventType WHERE id = (SELECT eventTypeId FROM traceEvent WHERE timestamp = responseTimestamp AND
    sqcnr = responseSqcnr)) AS responseEvent,
  (CASE WHEN isAge AND isReaction THEN 'age/reaction' WHEN isAge THEN 'age' WHEN isReaction THEN 'reaction' END) AS latencyType
FROM eventChainInstanceInfo
</code></pre>
</article>


<article>
<h1><a id="section5">5 </a>Platform Extensions</h1>


<h2><a id="section5.1">5.1 </a>Overview</h2>
		<p>There are additional features of the APP4MC platform that are not included in the standard product. They can be installed in the current environment via "Install new software...".</p>


<h3><a id="section5.1.1">5.1.1 </a>Available Extensions</h3>
		<p>
			<b>EMF Viewers</b>
		</p>
		<p>
			<b>Additional examples how to extend the IDE</b>
		</p>
		<ul>
			<li>Custom visualizations</li>
			<li>Custom validations</li>
			<li>Custom editor actions</li>
		</ul>
		<p>
			<b>Model Transformation</b>
		</p>
		<ul>
			<li>Framework and examples</li>
			<li>Transformation of AMALTHEA to Linux code</li>
			<li>Transformation of AMALTHEA to ROS2 code</li>
			<li>Transformation of AMALTHEA to SystemC code</li>
		</ul>
		<p>
			<b>SystemC Timing Simulation</b>
		</p>


<h2><a id="section5.2">5.2 </a>EMF Model Viewers</h2>
		<p>The viewers allow to visualize the structure of any EMF model. This applies to the definition of a model (meta model) as well as to the interlinked elements of the model content.</p>


<h3><a id="section5.2.1">5.2.1 </a>Meta Model Explorer</h3>
		<p>The central element of the 
			<i>Meta Model Explorer</i> is a list view that can be opened via 
			<b>Window &gt; Show view</b>. It provides the possibility to visualize the elements of an EMF meta model. The list of available meta models contains all registered EMF models of the current runtime environment. For convenience there is also a button to register (external) Ecore files.
		</p>
		<p style="text-align: center;">
			<img src="images/emf-viewers_meta-model-explorer_1.png"/>
		</p>
		<p>All elements (classes, interfaces, enumerations) of the selected meta model are shown in a filtered list. The context menu offers different graphical visualizations that will be opened in separate viewer (see next section).</p>
		<p style="text-align: center;">
			<img src="images/emf-viewers_meta-model-explorer_2.png"/>
		</p>
		<p>A double click on a list item shows an additional tree view with the hierarchy (sub classes and super classes) and all the attributes of the item. Multiple views can be opened in parallel.</p>
		<p style="text-align: center;">
			<img src="images/emf-viewers_meta-model-explorer_3.png"/>
		</p>


<h3><a id="section5.2.2">5.2.2 </a>Graphical Viewer</h3>
		<p>The 
			<i>Graphical Viewer</i> shows SVG diagrams generated with PlantUML (https://plantuml.com). PlantUML is available as Eclipse plugin and will be installed automatically. The generation also requires GraphViz (http://www.graphviz.org/) that has to be installed manually.
		</p>
		<p style="text-align: center;">
			<img src="images/emf-viewers_toolchain.png"/>
		</p>
		<p>The generated diagrams are SVG files that are rendered by the browser component of SWT. The elements are also HTML links and can be used to navigate to diagrams of the same type but with a different selected element.</p>
		<p>Some example diagrams:</p>
		<p>
			<b>Class Hierarchy</b>
		</p>
		<p style="text-align: center;">
			<img src="images/emf-viewers_graphical_hierarchy.png"/>
		</p>
		<p>
			<b>Class References</b>
		</p>
		<p style="text-align: center;">
			<img src="images/emf-viewers_graphical_references.png"/>
		</p>
		<p>
			<b>Class Hierarchy + Content</b>
		</p>
		<p style="text-align: center;">
			<img src="images/emf-viewers_graphical_content.png"/>
		</p>


<h3><a id="section5.2.3">5.2.3 </a>Installation via P2 update site</h3>
		<pre xml:space="preserve"><code>https://download.eclipse.org/app4mc/components/tools/emf-viewers/snapshot/p2repo
</code></pre>
		<p style="text-align: center;">
			<img src="images/emf-viewers_updatesite.png"/>
		</p>


<h2><a id="section5.3">5.3 </a>Additional Examples</h2>


<h3><a id="section5.3.1">5.3.1 </a>IDE Extensions</h3>
		<p>Several APP4MC examples are already included in the APP4MC product.
			<br>They can be installed with the "New Examples Wizard" (New &gt; Example...).
		</p>
		<p style="text-align: center;">
			<img src="images/examples_standard.png"/>
		</p>
		<p>There are additional examples for 
			<strong>developers</strong> who want to extend the APP4MC platform.
		</p>
		<p>The new example projects will be created as Plugin Projects in the current workspace. They can be modified and then tested in a separate runtime IDE.</p>
		<ul>
			<li>
				<b>IDE Actions example</b>
				<ul>
					<li>creates a new action for all elements in the model editor that allow custom attributes</li>
				</ul>
			</li>
		</ul>
		<ul>
			<li>
				<b>IDE Validations example</b>
				<ul>
					<li>provides additional validations that can be checked on demand</li>
				</ul>
			</li>
		</ul>
		<ul>
			<li>
				<b>IDE Visualizations example</b>
				<ul>
					<li>provides a demo visualization for elements that have a name attribute</li>
				</ul>
			</li>
		</ul>
		<p>
			<strong>Installation via update site</strong>
		</p>
		<pre xml:space="preserve"><code>https://download.eclipse.org/app4mc/updatesites/releases/2.1.0
https://download.eclipse.org/app4mc/updatesites/snapshot
</code></pre>
		<p style="text-align: center;">
			<img src="images/examples_updatesite.png"/>
		</p>
		<p>
			<strong>How to use ...</strong>
		</p>
		<p>
			<img src="images/examples_installer.png"/>
		</p>


<h2><a id="section5.4">5.4 </a>Model Transformation</h2>


<h3><a id="section5.4.1">5.4.1 </a>Transformation Framework</h3>
		<p>The transformation framework provides basic classes to perform transformations of EMF models. There are two possibilities: model-to-model (M2M) or model-to-test (M2T). The included examples show both cases.</p>
		<p>
			<strong>Installation via P2 update site</strong>
		</p>
		<pre xml:space="preserve"><code>https://download.eclipse.org/app4mc/components/addon/transformation/snapshot/p2repo
</code></pre>
		<p style="text-align: center;">
			<img src="images/transformation_framework_updatesite.png"/>
		</p>


<h3><a id="section5.4.2">5.4.2 </a>Generation of synthetic loads</h3>
		<p>The synthetic load generator (SLG) is a tool to generate synthetic C code that can be executed on a target platform. The generated code performs memory accesses and consumes runtime according to the specifications in the model. This allows the use of estimated or measured profiles for components that are not (yet) implemented. These generated parts of the system can run on the real hardware and enable early findings regarding the timing behavior of the overall system.</p>
		<p>
			<strong>Installation via P2 update site</strong>
		</p>
		<pre xml:space="preserve"><code>https://download.eclipse.org/app4mc/components/addon/transformation.slg/snapshot/p2repo/
</code></pre>
		<p style="text-align: center;">
			<img src="images/transformation_slg_updatesite.png"/>
		</p>


<h3><a id="section5.4.3">5.4.3 </a>Generation of SystemC code for simulation</h3>
		<p>The general timing simulation approach of an AMALTHEA model using APP4MC.sim is shown below. It consists of two steps, namely, transformation and simulation. The (model-to-text) 
			<b>transformation</b> step takes an AMALTHEA model as input and generates APP4MC.sim-specific code based on that model.
		</p>
		<p style="text-align: center;">
			<img class="scale" src="images/app4mcsim-flow.png"/>
		</p>
		<p>For a more detailed description of tool setup and usage please read section "SystemC Timing Simulation".</p>
		<p>
			<strong>Installation via P2 update site</strong>
		</p>
		<pre xml:space="preserve"><code>https://download.eclipse.org/app4mc/components/addon/transformation.sim.app4mc/snapshot/p2repo/
</code></pre>
		<p style="text-align: center;">
			<img src="images/transformation_sim_updatesite.png"/>
		</p>


<h2><a id="section5.5">5.5 </a>SystemC Timing Simulation  </h2>
		<p>APP4MC.sim is a simulation framework for effective and early analysis of the runtime behavior of AMALTHEA models. It allows the consideration of software aspects and also the investigation of effects caused by concurrent accesses to shared hardware resources, especially memory in multi-core architectures. At its core, APP4MC.sim is based on the SystemC library with TLM extensions, which provides a solid foundation due to its widespread use and large user community.</p>
		<p style="text-align: center;">
			<img class="scale" src="images/app4mcsim-flow.png"/>
		</p>
		<p>External links:</p>
		<p>
			<b>General introduction</b>
		</p>
		<ul>
			<li>
				<a href="https://gitlab.eclipse.org/eclipse/app4mc/org.eclipse.app4mc.tools.simulation/-/wikis/Introduction/Dynamic-analysis-of-Amalthea-models-with-APP4MC.sim">Dynamic analysis of Amalthea models with APP4MC.sim</a>
			</li>
		</ul>
		<p>
			<b>Step-by-step guide for the timing simulation of AMALTHEA models using APP4MC.sim</b>
		</p>
		<ul>
			<li>
				<a href="https://www.eclipse.org/app4mc/doc-app4mc.sim/#transformation-guide">Transformation Guide (including tool setup)</a>
			</li>
		</ul>
		<ul>
			<li>
				<a href="https://www.eclipse.org/app4mc/doc-app4mc.sim/#simulation-guide">Simulation Guide (including tool setup)</a>
			</li>
		</ul>
</article>


<article>
<h1><a id="section6">6 </a>Release Notes</h1>


<h2><a id="section6.1">6.1 </a>Eclipse APP4MC 2.2.0 (Jul 2022)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (2.1.0 -&gt; 2.2.0)</li>
			<li>New utility functions (Stimuli event model)</li>
		</ul>
		<p>Product</p>
		<ul>
			<li>Updated Runnable dependencies visualization</li>
			<li>Validations:
				<ul>
					<li>New APP4MC.sim validations</li>
					<li>Duplicate ID check moved to EMF invariants (available as live validation)</li>
				</ul>
			</li>
			<li>Extended help: Installable platform extensions</li>
			<li>Several bug fixes</li>
		</ul>
		<p>Recommended Java runtime is 
			<strong>Java 11</strong>.<br>Minimum is Java 8 (with limitations if JavaFX is not included).
		</p>


<h2><a id="section6.2">6.2 </a>Eclipse APP4MC 2.1.0 (Apr 2022)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (2.0.0 -&gt; 2.1.0)</li>
		</ul>
		<p>Model</p>
		<ul>
			<li>Extended ChannelFillCondition (attribute: relation)</li>
			<li>Extended relational operators (&lt;=, &gt;=)</li>
			<li>Added support for local mode labels</li>
			<li>Added ModeLabelEvent</li>
		</ul>
		<p>Product</p>
		<ul>
			<li>New visualizations:
				<ul>
					<li>Runnable dependencies</li>
					<li>Namespace members</li>
				</ul>
			</li>
			<li>Validations: New APP4MC.sim validations</li>
			<li>Better handling of model compress / uncompress</li>
			<li>New preference settings (editor preferences)</li>
			<li>Several bug fixes</li>
		</ul>
		<p>Recommended Java runtime is 
			<strong>Java 11</strong>.<br>Minimum is Java 8 (with limitations if JavaFX is not included).
		</p>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/2.1.0/bugs">Release 2.1.0 issues</a>
			</em>
		</p>


<h2><a id="section6.3">6.3 </a>Eclipse APP4MC 2.0.0 (Nov 2021)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (1.2.0 -&gt; 2.0.0)</li>
		</ul>
		<p>Model</p>
		<ul>
			<li>Support for user extendible and clear scheduler definitions</li>
			<li>Extended condition handling</li>
			<li>New channel fill condition </li>
		</ul>
		<p>Product</p>
		<ul>
			<li>New framework to extend model editor actions
				<ul>
					<li>New model processing actions (e.g. cleanup)</li>
					<li>New creation of standard scheduler definitions</li>
				</ul>
			</li>
			<li>Compress / uncompress of model files via context menu</li>
			<li>Several bug fixes</li>
		</ul>
		<p>Developer resources</p>
		<ul>
			<li>Amalthea components (model, validation, migration) are available at 
				<a href="https://search.maven.org/search?q=app4mc">Maven Central</a>
			</li>
		</ul>
		<p>Recommended Java runtime is 
			<strong>Java 11</strong>.<br>Minimum is Java 8 (with limitations if JavaFX is not included).
		</p>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/2.0.0/bugs">Release 2.0.0 issues</a>
			</em>
		</p>


<h2><a id="section6.4">6.4 </a>Eclipse APP4MC 1.2.0 (Jul 2021)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (1.1.0 -&gt; 1.2.0)</li>
		</ul>
		<p>Model extensions</p>
		<ul>
			<li>Activity graph
				<ul>
					<li>added WhileLoop</li>
					<li>introduced non-interruptible groups </li>
				</ul>
			</li>
			<li>Added nested elements (map) in custom properties</li>
		</ul>
		<p>Product</p>
		<ul>
			<li>Improved Amalthea Model Editor</li>
			<li>Improved transformation BTF -&gt; ATDB</li>
			<li>New model transformations (via "Install New Software...")</li>
			<li>New UI to start model transformations</li>
			<li>Several bug fixes</li>
		</ul>
		<p>Developer resources</p>
		<ul>
			<li>Amalthea components (model, validation, migration) are now available at 
				<a href="https://search.maven.org/search?q=app4mc">Maven Central</a>
			</li>
		</ul>
		<p>Recommended Java runtime is 
			<strong>Java 11</strong>.<br>Minimum is Java 8 (with limitations if JavaFX is not included).
		</p>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/1.2.0/bugs">Release 1.2.0 issues</a>
			</em>
		</p>


<h2><a id="section6.5">6.5 </a>Eclipse APP4MC 1.1.0 (Apr 2021)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (1.0.0 -&gt; 1.1.0)</li>
		</ul>
		<p>Product</p>
		<ul>
			<li>Improved handling of models in the Amalthea Model Editor
				<ul>
					<li>model loading on demand</li>
					<li>faster loading of (large) models</li>
					<li>improved resolution of cross-file references</li>
				</ul>
			</li>
			<li>Reduced dependencies of the Amalthea model<br>(allows easier use in non Eclipse environments)</li>
			<li>Removed "Amalthea no-load nature"<br>(no longer required because of model loading on demand)</li>
			<li>New visualization of scheduler mapping</li>
			<li>Validations: New APP4MC.sim validations</li>
			<li>Several bug fixes</li>
		</ul>
		<p>Recommended Java runtime is 
			<strong>Java 11</strong>.<br>Minimum is Java 8 (with limitations if JavaFX is not included).
		</p>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/1.1.0/bugs">Release 1.1.0 issues</a>
			</em>
		</p>


<h2><a id="section6.6">6.6 </a>Eclipse APP4MC 1.0.0 (Nov 2020)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.9.9 -&gt; 1.0.0)</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>Removed MeasurementModel (deprecated since 0.9.9 and replaced by new ATDB)</li>
			<li>Removed ProcessEventType 'deadline'</li>
		</ul>
		<p>Product</p>
		<ul>
			<li>New Amalthea Trace Database (ATDB)</li>
			<li>New transformations BTF -&gt; ATDB, ATDB -&gt; Amalthea</li>
			<li>Extended Metrics Viewer</li>
			<li>Several bug fixes</li>
		</ul>
		<p>UI</p>
		<ul>
			<li>Added possibility to refresh a pinned visualization</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/1.0.0/bugs">Release 1.0.0 issues</a>
			</em>
		</p>


<h2><a id="section6.7">6.7 </a>Eclipse APP4MC 0.9.9 (Jul 2020)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.9.8 -&gt; 0.9.9)</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>Data types: Struct and StructEntry are tagable</li>
			<li>MeasurementModel is deprecated</li>
		</ul>
		<p>Product</p>
		<ul>
			<li>Trace data and metrics: Extended definition of Amalthea Trace Database (Preview)</li>
			<li>Validations: New INCHRON validations, extended documentation</li>
		</ul>
		<p>UI</p>
		<ul>
			<li>Model Explorer no longer expands model files</li>
			<li>Migration dialog supports recursive operation on folders</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.9.9/bugs">Release 0.9.9 issues</a>
			</em>
		</p>


<h2><a id="section6.8">6.8 </a>Eclipse APP4MC 0.9.8 (Apr 2020)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.9.7 -&gt; 0.9.8)</li>
		</ul>
		<p>Product</p>
		<ul>
			<li>Eclipse target platform is updated to IDE 2019-12</li>
			<li>New (extendable) visualization framework</li>
			<li>Standard visualizations for runnables and deviations</li>
			<li>Additional example models</li>
			<li>EMF model viewers are available as update site</li>
			<li>...</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.9.8/bugs">Release 0.9.8 issues</a>
			</em>
		</p>


<h2><a id="section6.9">6.9 </a>Eclipse APP4MC 0.9.7 (Jan 2020)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.9.6 -&gt; 0.9.7)</li>
			<li>Added virtual folders in component model tree view</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>Introduced namespaces and component structures</li>
			<li>New model element to describe hierarchical interfaces</li>
			<li>Model cleanup (simplified component ports)</li>
		</ul>
		<p>Product</p>
		<ul>
			<li>Restructured migration component (also available as headless jar)</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.9.7/bugs">Release 0.9.7 issues</a>
			</em>
		</p>


<h2><a id="section6.10">6.10 </a>Eclipse APP4MC 0.9.6 (Oct 2019)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.9.5 -&gt; 0.9.6)</li>
			<li>New "no-load" nature (avoids model loading while moving/copying model files)</li>
			<li>Multi-line strings are supported in the editor (for selected string attributes)</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>Extended ModeConditions (allow the comparison of two mode labels)</li>
			<li>Refined EventChain definition (to explicitly describe fork-join, alternative, etc.)</li>
			<li>Counter added to RunnableCall</li>
		</ul>
		<p>Build infrastructure</p>
		<ul>
			<li>Split git repository and independent build job for model migration component</li>
			<li>Changed to tycho-pomless maven builds</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.9.6/bugs">Release 0.9.6 issues</a>
			</em>
		</p>


<h2><a id="section6.11">6.11 </a>Eclipse APP4MC 0.9.5 (Jul 2019)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.9.4 -&gt; 0.9.5)</li>
			<li>New validation framework</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>Consolidated call graph: items of tasks and runnables are unified, call sequences are removed</li>
			<li>Simplified clock definitions (used in scenarios of variable rate stimuli)</li>
			<li>Limited frequency values to non negative (value &gt;= 0)</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.9.5/bugs">Release 0.9.5 issues</a>
			</em>
		</p>


<h2><a id="section6.12">6.12 </a>Eclipse APP4MC 0.9.4 (Apr 2019)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.9.3 -&gt; 0.9.4)</li>
			<li>Optimized model search</li>
			<li>New validation framework (preview)</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>Extended modes to allow the handling of counters (integer values, comparison, increment, decrement)</li>
			<li>Uniform use of execution conditions (for stimuli, runnables, mode switches)</li>
			<li>Model cleanup (removed runnable deadlines, distinct naming)</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.9.4/bugs">Release 0.9.4 issues</a>
			</em>
		</p>


<h2><a id="section6.13">6.13 </a>Eclipse APP4MC 0.9.3 (Jan 2019)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.9.2 -&gt; 0.9.3)</li>
			<li>Optimized model search</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>Introduced "Ticks" as base concept for required computation effort</li>
			<li>Simplified "Execution Needs" (no specific entries for different processing units)</li>
			<li>Reworked distributions (discrete, continuous, time) without generics</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.9.3/bugs">Release 0.9.3 issues</a>
			</em>
		</p>


<h2><a id="section6.14">6.14 </a>Eclipse APP4MC 0.9.2 (Oct 2018)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.9.1 -&gt; 0.9.2)</li>
			<li>New model search dialog</li>
			<li>New model builders (with a Groovy-like builder pattern)</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>Small extensions in the hardware model</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.9.2/bugs">Release 0.9.2 issues</a>
			</em>
		</p>


<h2><a id="section6.15">6.15 </a>Eclipse APP4MC 0.9.1 (Jul 2018)</h2>
		<p>General</p>
		<ul>
			<li>New Eclipse Oxygen.3a based product (compatible with Java 8, Java 9 and Java 10)</li>
			<li>License change from EPL-1.0 to EPL-2.0</li>
		</ul>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.9.0 -&gt; 0.9.1)</li>
			<li>New implementation of transient back references</li>
			<li>Unified approach for fast name search and mass delete</li>
			<li>Updated model utilities</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>New concept of DataDependency (to describe potential data dependencies)</li>
			<li>New possibility to specify RunnableParameters and CallArguments</li>
		</ul>


<h2><a id="section6.16">6.16 </a>Eclipse APP4MC 0.9.0 (Apr 2018)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.8.3 -&gt; 0.9.0)</li>
			<li>Updated model utilities</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>
				<strong>New hardware model</strong>
			</li>
			<li>New concept of ExecutionNeed (replaces the former RunnableInstructions)</li>
		</ul>
		<i>Note: This is the first implementation of the new hardware model. It will be extended in the next version and (minor) changes are expected</i>.


<h2><a id="section6.17">6.17 </a>Eclipse APP4MC 0.8.3 (Jan 2018)</h2>
		<p>General</p>
		<ul>
			<li>New Eclipse Neon.3 based product</li>
		</ul>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.8.2 -&gt; 0.8.3)</li>
			<li>Updated model utilities</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>New mode conditions (logical AND)</li>
			<li>New timing requirement (end to start)</li>
			<li>Reworked Stimuli definitions</li>
			<li>New reference to port for client server and sender receiver communication</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.8.3/bugs">Release 0.8.3 issues</a>
			</em>
		</p>


<h2><a id="section6.18">6.18 </a>Eclipse APP4MC 0.8.2 (Oct 2017)</h2>
		<p>General</p>
		<ul>
			<li>Model changes (extensions)</li>
			<li>New graphical editors (based on Sirius)</li>
		</ul>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.8.1 -&gt; 0.8.2)</li>
			<li>New model utilities</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>New runnable item to get the result of an asynchronous request</li>
			<li>New possibility to specify the label access implementation</li>
			<li>New measurement model</li>
			<li>New component event</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.8.2/bugs">Release 0.8.2 issues</a>
			</em>
		</p>


<h2><a id="section6.19">6.19 </a>Eclipse APP4MC 0.8.1 (Jul 2017)</h2>
		<p>General</p>
		<ul>
			<li>Model changes (extension and harmonization)</li>
			<li>Improved model handling</li>
			<li>New tooling: EMF Graphical Viewer</li>
		</ul>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.8.0 -&gt; 0.8.1)</li>
			<li>New support for compressed model files (zip)</li>
			<li>More back references</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>Extended Schedulers (hierarchical, reservation based)</li>
			<li>Extend Semaphore definition (types)</li>
			<li>Consistent naming of Triggers, Activations and Stimuli</li>
			<li>New elements for data driven computation (conditions, triggers)</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.8.1/bugs">Release 0.8.1 issues</a>
			</em>
		</p>


<h2><a id="section6.20">6.20 </a>Eclipse APP4MC 0.8.0 (Apr 2017)</h2>
		<p>General</p>
		<ul>
			<li>Model changes (mainly to simplify handling)</li>
			<li>Improved tooling: model utilities</li>
			<li>New UI components: Multicore Wizard, Task-Visualizer (draft version)</li>
		</ul>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.7.2 -&gt; 0.8.0)</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>Simplified model handling: Mapping Model, Modes, Time</li>
			<li>New classifiers to annotate Core and Memory</li>
			<li>Reworked Property Constraints</li>
			<li>Extended OS Overheads</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.8.0/bugs">Release 0.8.0 issues</a>
			</em>
		</p>


<h2><a id="section6.21">6.21 </a>Eclipse APP4MC 0.7.2 (Jan 2017)</h2>
		<p>General</p>
		<ul>
			<li>Smaller product definition (optional parts can be installed via update sites)</li>
			<li>Harmonized model API</li>
		</ul>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.7.1 -&gt; 0.7.2)</li>
			<li>Improved back references</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>New core-specific runtimes (instructions) for runnables</li>
			<li>New model elements for streaming communication (Channels)*</li>
			<li>New Transmission Policy for communication (e.g. label accesses) </li>
			<li>New Event-based Stimulus</li>
			<li>New Data Consistency needs</li>
			<li>New Counters for InterProcessActivation and EventStimulus</li>
			<li>Harmonized model elements to describe probability</li>
			<li>Storage of common elements (e.g. tags) in one central location</li>
		</ul>
		<p>Bug fixes / Improvements</p>
		<ul>
			<li>Model migration (ISR call graph, Section names, cross document references)</li>
			<li>Back references (Memory -&gt; Mapping, Scheduler -&gt; CoreAllocation)</li>
		</ul>
		<p>Documentation</p>
		<ul>
			<li>New model elements: Physical memory sections, Channels</li>
			<li>New examples</li>
		</ul>* =  
		<i>Experimental feature (first modeling attempt that may change in future versions)</i>.
		<p>
			<em>For details see 
				<a href="https://projects.eclipse.org/projects/automotive.app4mc/releases/0.7.2/bugs">Release 0.7.2 issues</a>
			</em>
		</p>


<h2><a id="section6.22">6.22 </a>Eclipse APP4MC 0.7.1 (Oct 2016)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (0.7.0 -&gt; 0.7.1)</li>
			<li>Improved update of opposite references</li>
			<li>Storage of default values is enabled by default</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>New distribution "Beta Distribution"</li>
			<li>New stimuli type "Synthetic" (to "replay" activations from a hardware trace)</li>
			<li>New DataStabilityGroup</li>
			<li>Introduced SamplingType as new attribute for Deviation</li>
			<li>Introduced physical memory sections (PhysicalSectionConstraint, PhysicalSectionMapping)</li>
			<li>Reworked AffinityConstraints (removed Scheduler constraints, added Data constraints)</li>
			<li>Reworked Event / Event-Chain Constraints</li>
			<li>Reworked RunnableSequencingConstraints</li>
			<li>New types for DataSizes and DataRates</li>
		</ul>
		<p>
			<em>For details see 
				<a href="https://bugs.eclipse.org/bugs/buglist.cgi?product=App4mc&amp;target_milestone=0.7.1">Bugzilla entries for 0.7.1</a>
			</em>
		</p>


<h2><a id="section6.23">6.23 </a>Eclipse APP4MC 0.7.0 (Jul 2016)</h2>
		<p>Model handling</p>
		<ul>
			<li>Model migration support (itea1.1.0 -&gt; itea1.1.1 -&gt; 0.7.0)</li>
			<li>Simplified model creation wizard</li>
			<li>One consolidated model</li>
			<li>Additional opposite references (transient) to ease model navigation</li>
			<li>Scripting support for workflows (based on Eclipse EASE)</li>
		</ul>
		<p>Model changes</p>
		<ul>
			<li>Removed 'attributes' and 'features' from hardware model</li>
			<li>Replaced generic 
				<i>ProcessAllocation</i> with specific 
				<i>ISRAllocation</i> and 
				<i>TaskAllocation</i>
			</li>
			<li>New 
				<i>BigInteger</i> values for 
				<i>CustomAttributes</i>
			</li>
			<li>Some renamed classes and attributes (details in the help)</li>
		</ul>
		<p>Model structure</p>
		<ul>
			<li>Removed direct dependency to Franca (replaced by implicit reference by interface name)</li>
		</ul>
		<p>Documentation</p>
		<ul>
			<li>Updated model documentation / class diagrams</li>
			<li>New developer guide regarding Model Migration Framework</li>
			<li>New developer guide regarding Workflows</li>
		</ul>
</article>


<article>
<h1><a id="section7">7 </a>Roadmap</h1>
		<p>Current topics:</p>
		<ul>
			<li>Model changes (e.g. for heterogeneous hardware, Autosar adaptive)</li>
			<li>Model validation</li>
			<li>Model utilities</li>
			<li>Interactive help (visualization of model and meta model structure)</li>
		</ul>
		<p>All new releases are provided by 
			<a href="https://projects.eclipse.org/projects/automotive.app4mc">Eclipse APP4MC</a>.
		</p>
</article>

<!--  - - - - - - - - - -   Articles    - - - - - - - - - -  -->
    </div>
  </div>

</body>

</html>
