<p>
This page gives an overview about Henshin-related projects.
</p>

<h2>Overview</h2>

<p>Henshin has been used at academic institutions at 15 countries, one international space institution, and one company in the satellite industry. Please contact us if you know more!</p>

<ul>
<li><strong>Austria:</strong>  Vienna University of Technology <sup>[ <a href="https://link.springer.com/chapter/10.1007/978-3-319-42064-6_6">http</a> ]</sup></li>
<li><strong>Canada:</strong>  University of Toronto <sup>[ <a href="https://dl.acm.org/doi/pdf/10.1145/2568225.2568267">http</a> ]</sup></li></li>
<li><strong>Denmark:</strong>  Technical University of Denmark <sup>[ <a href="https://link.springer.com/article/10.1007/s10270-016-0546-9">http</a> ]</sup></li>
<li><strong>France:</strong>  TELECOM ParisTech <sup>[ <a href="https://link.springer.com/article/10.1007/s10270-017-0607-8">http</a> ]</sup></li>
<li><strong>Germany:</strong>
Humboldt University Berlin <sup>[ <a href="http://www.jot.fm/contents/issue_2020_02/article3.html">http</a> ]</sup>,
Leibniz University Hannover <sup>[ <a href="https://www.sciencedirect.com/science/article/abs/pii/S0167642317301442">http</a> ]</sup>,
Philipps University Marburg <sup>[ <a href="https://link.springer.com/chapter/10.1007/978-3-662-54494-5_16">http</a> ]</sup>, 
University Paderborn <sup>[ <a href="https://dl.acm.org/doi/pdf/10.1145/2737166.2737174">http</a> ]</sup>,
University of Koblenz <sup>[ <a href="https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=8101256">http</a> ]</sup>,
University of Siegen <sup>[ <a href="https://www.sciencedirect.com/science/article/abs/pii/S0164121216300437">http</a> ]</sup>, 
Universität Ulm <sup>[ <a href="https://dl.acm.org/doi/10.1145/3417990.3422000">http</a> ]</sup>
</li>
<li><strong>Greece:</strong>  Aristotle University of Thessaloniki <sup>[ <a href="https://www.sciencedirect.com/science/article/abs/pii/S0164121216300437">http</a> ]</sup></li>
<li><strong>Israel:</strong>  Weizmann Institute of Science<sup> [ <a href="https://www.sciencedirect.com/science/article/pii/S0167642317301442">http</a> ]</sup></li>
<li><strong>Luxembourg:</strong>  University of Luxembourg  <sup>[ <a href="https://arc.aiaa.org/doi/pdf/10.2514/6.2014-1658">http</a> ]</sup>,
SES Satellites <sup>[ <a href="https://link.springer.com/chapter/10.1007/978-3-642-38883-5_4">http</a> ]</sup></li>
<li><strong>Morocco:</strong>  Mohammed V University <sup>[ <a href="https://link.springer.com/chapter/10.1007/978-3-319-19237-6_29">http</a> ]</sup></li>
<li><strong>Netherlands:</strong> University Leiden <sup>[ <a href="https://openaccess.leidenuniv.nl/handle/1887/17718">http</a> ]</sup>/li>
<li><strong>Norway:</strong>  Western Norway University of Applied Sciences <sup>[ <a href="https://link.springer.com/chapter/10.1007/978-3-662-54494-5_16">http</a> ]</sup></li>
<li><strong>Spain:</strong>  Universidad de Málaga <sup>[ <a href="https://dl.acm.org/doi/pdf/10.1145/2892664.2892700">http</a> ]</sup></li>
<li><strong>Sweden:</strong>  Chalmers University of Technology | Gothenburg University <sup>[ <a href="http://ceur-ws.org/Vol-1077/amt13_submission_6.pdf">http</a> ]</sup></li>
<li><strong>UK:</strong>  University of Leicester <sup>[ <a href="https://link.springer.com/article/10.1007%2Fs10515-018-0242-9">http</a> ]</sup>, King's College London <sup>[ <a href="https://dl.acm.org/doi/10.1145/3270112.3270130">http</a> ]</sup></li>
<li><strong>US:</strong>  Standford University <sup>[ <a href="https://www.sciencedirect.com/science/article/pii/S0167642317301442">http</a> ]</sup></li>

<li><strong>International:</strong> European Space Agency <sup>[ <a href="https://arc.aiaa.org/doi/pdf/10.2514/6.2014-1658">http</a> ]</sup></li>
</ul>



<h2>SPELL</h2>
<p>
The <a href="http://wwwen.uni.lu/snt">Interdisciplinary Centre for Security, Reliability and Trust (SnT)</a>
at the University of Luxembourg uses Henshin for automatic translations of programming languages for 
satellite technology - a field that is highly relevant to Luxembourg-based SES, one of the world's 
leading satellite operators. Recently, SES has been working on developing the open-source-software 
SPELL (Satellite Procecure Execution Language and Library), a standardised satellite control language. 
The challenge is to convert all of the control procedures in existence that are being used in different 
programming languages over to SPELL. Henshin is used as underlying model transformation engine to automate this 
process and to guarantee a high-quality translation through automatic consistency testing.
<br>
<br>
For further information see the annual <a href="http://www.uni.lu/content/download/52106/624943/version/1/file/SnT_AR2011_final_web.pdf">SnT report 2011</a>, pages 14-15.
<br>
Contact: Frank Hermann, University of Luxembourg, frank.hermann[at]uni.lu.
</p>

<h2>HenshinTGG and Multi-View Henshin Editor</h2>
<p>
The multi-view Henshin editor is an alternative graphical editor and based on the Henshin SDK using a multi view environment.
HenshinTGG is a graphical multi-view editor dedicated for triple graph grammars with additional features for bidirectional 
model transformation and model synchronisation based on triple graph grammars (TGGs). Both editors are available via the 
following GitHub repository: <a href="https://github.com/de-tu-berlin-tfs/Henshin-Editor">https://github.com/de-tu-berlin-tfs/Henshin-Editor</a>.
</p>

<h2>On-The-Fly Computing</h2>
<p>
The <a href="http://is.uni-paderborn.de/">research group databases and information systems of the University of Paderborn</a> 
uses Henshin in the terms of the <a href="http://sfb901.uni-paderborn.de">collaborative research centre (CRC) "On-The-Fly Computing"</a>. 
The goal of the CRC is to develop methods to automatically configure and execute IT services. One aspect of the automatic configuration 
is the matching of service requesters and providers. As a basis for the matching, the research group created a rich service description 
language (RSDL) to specify structural and behavioral characteristics of services. In particular, so called visual contracts describe 
the service's behavior. The RSDL workbench is a tool that allows to create RSDL specifications and Henshin was integrated to specify 
visual contracts.
<br>
<br>
Contact:<br>
Simon Schwichtenberg, University of Paderborn, schwicht[at]mail[dot]upb[dot]de<br>
Christian Gerth, University of Paderborn, gerth[at]upb[dot]de<br>
Zille Huma, University of Paderborn, zille[dot]huma[at]upb[dot]de<br>
</p>
