blob: 40b16d8fac184aeb13dc84de7d3bd7e193be2dca [file] [log] [blame]
<?xml version="1.0" encoding="iso-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<!--http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd-->
<html xmlns="http://www.w3.org/1999/xhtml"
>
<head><title>eTrice Overview</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="generator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<meta name="originator" content="TeX4ht (http://www.cse.ohio-state.edu/~gurari/TeX4ht/)" />
<!-- xhtml,3,next,html -->
<meta name="src" content="etrice-doc.tex" />
<meta name="date" content="2013-10-21 12:44:00" />
<link rel="stylesheet" type="text/css" href="etrice-doc.css" />
</head><body
>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse2.html" >next</a>] [<a
href="etrice-docch1.html" >prev</a>] [<a
href="etrice-docch1.html#tailetrice-docch1.html" >prev-tail</a>] [<a
href="#tailetrice-docse1.html">tail</a>] [<a
href="etrice-docch1.html#etrice-docse1.html" >up</a>] </p></div>
<h3 class="sectionHead"><span class="titlemark">1.1 </span> <a
id="x4-30001.1"></a>eTrice Overview</h3>
<!--l. 3--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">1.1.1 </span> <a
id="x4-40001.1.1"></a>What is eTrice?</h4>
<!--l. 5--><p class="noindent" >eTrice provides an implementation of the ROOM modeling language (Real Time Object Oriented Modeling) together with
editors, code generators for Java, C++ and C code and exemplary target middleware.
</p><!--l. 8--><p class="noindent" >The model is defined in textual form (Xtext) with graphical editors (Graphiti) for the structural and behavioral (i.e. state
machine) parts.
</p><!--l. 11--><p class="noindent" >
</p>
<h4 class="subsectionHead"><span class="titlemark">1.1.2 </span> <a
id="x4-50001.1.2"></a>Reduction of Complexity</h4>
<!--l. 13--><p class="noindent" >eTrice is all about the reduction of complexity:
</p>
<ul class="itemize1">
<li class="itemize">structural complexity
<ul class="itemize2">
<li class="itemize">by explicit modeling of hierarchical Actor containment, layering and inheritance</li></ul>
</li>
<li class="itemize">behavioral complexity
<ul class="itemize2">
<li class="itemize">by hierarchical state machines with inheritance</li></ul>
</li>
<li class="itemize">team work complexity
<ul class="itemize2">
<li class="itemize">because loosely coupled Actors provide a natural way to structure team work
</li>
<li class="itemize">since textual model notation allows simple branching and merging</li></ul>
</li>
<li class="itemize">complexity of concurrent &amp; distributed systems
<ul class="itemize2">
<li class="itemize">because loosely coupled Actors are deployable to threads, processes, nodes</li></ul>
</li>
<li class="itemize">complexity of variant handling and reuse (e.g. for product lines)
<ul class="itemize2">
<li class="itemize">by composition of existing Actors to new structures
</li>
<li class="itemize">since Protocols and Ports make Actors replaceable
</li>
<li class="itemize">by inheritance for structure, behavior and Protocols
</li>
<li class="itemize">by making use of model level libraries</li></ul>
</li>
<li class="itemize">complexity of debugging
<ul class="itemize2">
<li class="itemize">model level debugging: state machine animation, data inspection and manipulation, message injection,
generated message sequence charts
</li>
<li class="itemize">model checking easier for model than for code (detect errors before they occur)</li></ul>
</li></ul>
<!--l. 1--><div class="crosslinks"><p class="noindent">[<a
href="etrice-docse2.html" >next</a>] [<a
href="etrice-docch1.html" >prev</a>] [<a
href="etrice-docch1.html#tailetrice-docch1.html" >prev-tail</a>] [<a
href="etrice-docse1.html" >front</a>] [<a
href="etrice-docch1.html#etrice-docse1.html" >up</a>] </p></div>
<!--l. 1--><p class="noindent" ><a
id="tailetrice-docse1.html"></a> </p>
</body></html>