forked from corlab/dslzoo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
architectural-styles-discipline.html
229 lines (207 loc) · 15.3 KB
/
architectural-styles-discipline.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="">
<meta name="author" content="">
<link rel="icon" href="images/favicon.png">
<title>Architectural Styles – Robotics DSL Zoo</title>
<link href="dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="sortable/bootstrap-sortable.css">
<link rel="stylesheet" type="text/css" href="dist/css/custom.css">
<script language="javascript" type="text/javascript" src="flot/jquery.js"></script>
<script language="javascript" type="text/javascript" src="flot/jquery.flot.js"></script>
<script language="javascript" type="text/javascript" src="flot/jquery.flot.categories.js"></script>
<script type="text/javascript" src="dist/d3-cloud/lib/d3/d3.js"></script>
<script type="text/javascript" src="dist/d3-cloud/d3.layout.cloud.js"></script>
<script type="text/javascript" src="js/main.js"></script>
</head>
<body><nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
<div class="container">
<div class="navbar-header">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="./index.html">Robotics DSL Zoo</a>
</div>
<div id="navbar" class="collapse navbar-collapse">
<ul class="nav navbar-nav">
<li><a href="./index.html">Home</a></li>
<li><a href="./subdomains.html">Subdomains</a></li>
<li class="active"><a href="./architectures-and-programming-disciplines.html">A&P Disciplines</a></li>
<li><a href="./phases.html">Development Phases</a></li>
<li><a href="./all.html">Index</a></li>
<li><a href="./contribute.html">Contribute</a></li>
<li><a href="http://www.dslrob.org">DSLRob</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</nav>
<div class="container">
<div class="starter-template">
<h1>Robotics DSL Zoo</h1>
<h2>Subdomain „Architectural Styles“</h2>
<p>Descriptions and guidance for the high-level organization of software providing "a specialization of element and relation types, together with a set of constraints on how they can be used".
This discipline corresponds to the Section 2.3.2 in the SWEBOK.</p>
<script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['phase', '#publications'], ['Scenario Building', 1], ['Functional Design', 3], ['Platform Building', 1], ['Capability Building', 15], ['System Deployment', 0], ['System Benchmarking', 0], ['Product Deployment', 0], ['Product Maintenance', 0], ]);
var options = {
title: '#publications per development phase',
legend: { position: 'none' },
};
var chart_ph = new google.visualization.ColumnChart(document.getElementById('chart_div_ph'));
chart_ph.draw(data, options);
}
</script>
<div id="chart_div_ph" style="width: 550px; height: 200px; float:left;"></div><script type="text/javascript" src="https://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("visualization", "1", {packages:["corechart"]});
google.setOnLoadCallback(drawChart);
function drawChart() {
var data = google.visualization.arrayToDataTable([
['year', '#publications'], ['1984', 0], ['1985', 0], ['1986', 0], ['1987', 0], ['1988', 0], ['1989', 0], ['1990', 0], ['1991', 1], ['1992', 0], ['1993', 0], ['1994', 1], ['1995', 1], ['1996', 0], ['1997', 0], ['1998', 0], ['1999', 1], ['2000', 1], ['2001', 0], ['2002', 1], ['2003', 1], ['2004', 0], ['2005', 1], ['2006', 0], ['2007', 0], ['2008', 0], ['2009', 0], ['2010', 1], ['2011', 3], ['2012', 1], ['2013', 1], ['2014', 1], ['2015', 0], ['2016', 0], ]);
var options = {
title: '#publications per year',
legend: { position: 'none' },
};
var chart_disc = new google.visualization.ColumnChart(document.getElementById('chart_div_year'));
chart_disc.draw(data, options);
}
</script>
<div id="chart_div_year" style="width: 550px; height: 200px; float:left;"></div><h3>Scenario Building</h3>
<p>In the Scenario Building phase, environment features, constraints and characteristics are defined. Furthermore, the robot's task is defined.
This includes the specification of customer acceptance tests to be performed in the specified and potentially generalized environment.</p>
<table class="sortable">
<thead><tr><th>Key</th><th>Title</th><th>Authors</th><th width="10%">Year</th><th>Formalism</th></tr></thead><tbody><tr style="border-top:1px solid #000;">
<td><a href="#noreils1995plan" id="noreils1995plan">noreils1995plan<a/></td><td style="font-weight:bold;">Plan execution monitoring and control architecture for mobile robots</td><td>Noreils, Fabrice R and Chatila, Raja G</td><td>1995</td>
<td>(E)BNF</td>
</tr>
</tbody></table><br />
<h3>Functional Design</h3>
<p>In the Functional Design phase, hardware requirements and top-level functionalities are derived based on the scenario definition.
Furthermore, top-level functionalities are decomposed and dependencies among them are identified.
Also an initial functional design stating which functionalities interact with each other is developed.</p>
<table class="sortable">
<thead><tr><th>Key</th><th>Title</th><th>Authors</th><th width="10%">Year</th><th>Formalism</th></tr></thead><tbody><tr style="border-top:1px solid #000;">
<td><a href="#braberman2013controller" id="braberman2013controller">braberman2013controller<a/></td><td style="font-weight:bold;">Controller synthesis: From modelling to enactment</td><td>Braberman, V\ \ictor and D Ippolito, Nicolas and Piterman, Nir and Sykes, Daniel and Uchitel, Sebastian</td><td>2013</td>
<td></td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#dittes2011intelligent" id="dittes2011intelligent">dittes2011intelligent<a/></td><td style="font-weight:bold;">Intelligent system architectures-comparison by translation</td><td>Dittes, Benjamin and Goerick, Christian</td><td>2011</td>
<td></td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#dittes2011language" id="dittes2011language">dittes2011language<a/></td><td style="font-weight:bold;">A language for formal design of embedded intelligence research systems</td><td>Dittes, Benjamin and Goerick, Christian</td><td>2011</td>
<td>other</td>
</tr>
</tbody></table><br />
<h3>Platform Building</h3>
<p>In the Platform Building phase, the robot hardware is determined. This includes the selection and potential configuration of robot's sensors and actuators meeting the requirements defined in the functional design phase.</p>
<table class="sortable">
<thead><tr><th>Key</th><th>Title</th><th>Authors</th><th width="10%">Year</th><th>Formalism</th></tr></thead><tbody><tr style="border-top:1px solid #000;">
<td><a href="#noreils1995plan" id="noreils1995plan">noreils1995plan<a/></td><td style="font-weight:bold;">Plan execution monitoring and control architecture for mobile robots</td><td>Noreils, Fabrice R and Chatila, Raja G</td><td>1995</td>
<td>(E)BNF</td>
</tr>
</tbody></table><br />
<h3>Capability Building</h3>
<p>In the Capability Building phase, basic and composite components are constructed up to the application-level and constraints for their deployment are specified.
This also includes the specification and eventually generation of additional knowledge required for component execution such as knowledge bases and training data.</p>
<table class="sortable">
<thead><tr><th>Key</th><th>Title</th><th>Authors</th><th width="10%">Year</th><th>Formalism</th></tr></thead><tbody><tr style="border-top:1px solid #000;">
<td><a href="#berenz2014targets" id="berenz2014targets">berenz2014targets<a/></td><td style="font-weight:bold;">Targets-Drives-Means: A declarative approach to dynamic behavior specification with higher usability</td><td>Berenz, Vincent and Suzuki, Kenji</td><td>2014</td>
<td>unknown</td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#braberman2013controller" id="braberman2013controller">braberman2013controller<a/></td><td style="font-weight:bold;">Controller synthesis: From modelling to enactment</td><td>Braberman, V\ \ictor and D Ippolito, Nicolas and Piterman, Nir and Sykes, Daniel and Uchitel, Sebastian</td><td>2013</td>
<td></td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#dai2002specifying" id="dai2002specifying">dai2002specifying<a/></td><td style="font-weight:bold;"><a href="http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm?arnumber=1013354">Specifying behavior in C++</a></td><td>Dai, Xiangtian and Hager, Gregory and Peterson, John</td><td>2002</td>
<td></td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#dittes2011intelligent" id="dittes2011intelligent">dittes2011intelligent<a/></td><td style="font-weight:bold;">Intelligent system architectures-comparison by translation</td><td>Dittes, Benjamin and Goerick, Christian</td><td>2011</td>
<td></td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#dittes2011language" id="dittes2011language">dittes2011language<a/></td><td style="font-weight:bold;">A language for formal design of embedded intelligence research systems</td><td>Dittes, Benjamin and Goerick, Christian</td><td>2011</td>
<td>other</td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#gat1991alfa" id="gat1991alfa">gat1991alfa<a/></td><td style="font-weight:bold;">Alfa: A language for programming reactive robotic control systems</td><td>Gat, Erann</td><td>1991</td>
<td>unknown</td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#horswill2000functional" id="horswill2000functional">horswill2000functional<a/></td><td style="font-weight:bold;">Functional programming of behavior-based systems</td><td>Horswill, Ian Douglas</td><td>2000</td>
<td></td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#joyeux2010managing" id="joyeux2010managing">joyeux2010managing<a/></td><td style="font-weight:bold;">Managing plans: Integrating deliberation and reactive execution schemes</td><td>Joyeux, Sylvain and Kirchner, Frank and Lacroix, Simon</td><td>2010</td>
<td>unknown</td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#noreils1995plan" id="noreils1995plan">noreils1995plan<a/></td><td style="font-weight:bold;">Plan execution monitoring and control architecture for mobile robots</td><td>Noreils, Fabrice R and Chatila, Raja G</td><td>1995</td>
<td>(E)BNF</td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#pembeci2003functional" id="pembeci2003functional">pembeci2003functional<a/></td><td style="font-weight:bold;">Functional reactive programming as a hybrid system framework</td><td>Pembeci, Izzet and Hager, Gregory</td><td>2003</td>
<td></td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#peterson1999language" id="peterson1999language">peterson1999language<a/></td><td style="font-weight:bold;">A language for declarative robotic programming</td><td>Peterson, John and Hager, Gregory D and Hudak, Paul</td><td>1999</td>
<td>other</td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#rugg1994formal" id="rugg1994formal">rugg1994formal<a/></td><td style="font-weight:bold;"><a href="http://ieeexplore.ieee.org/xpl/articleDetails.jsp?reload=true&arnumber=351142">A formal semantics for multiple vehicle task and motion planning</a></td><td>Rugg-Gunn, Neil and Cameron, Stephen</td><td>1994</td>
<td>other</td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#tousignant2011overview" id="tousignant2011overview">tousignant2011overview<a/></td><td style="font-weight:bold;">An overview of XRobots: A hierarchical state machine based language</td><td>Tousignant, Steve and Van Wyk, Eric and Gini, Maria</td><td>2011</td>
<td>silver</td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#tousignant2012xrobots" id="tousignant2012xrobots">tousignant2012xrobots<a/></td><td style="font-weight:bold;">XRobots: A flexible language for programming mobile robots based on hierarchical state machines</td><td>Tousignant, Steve and Van Wyk, Eric and Gini, Maria</td><td>2012</td>
<td>unknown</td>
</tr>
<tr style="border-top:1px solid #000;">
<td><a href="#utz2005hierarchical" id="utz2005hierarchical">utz2005hierarchical<a/></td><td style="font-weight:bold;">Hierarchical behavior organization</td><td>Utz, Hans and Kraetzschmar, Gerhard and Mayer, Gerd and Palm, G\ unther</td><td>2005</td>
<td>XSD</td>
</tr>
</tbody></table><br />
</div>
</div>
<div class="container">
<br />
<hr />
<p style="font-size:85%; color:#555;">An important DSL is missing? Here is how to <a href="./contribute.html">contribute</a>! When using content of the Robotics DSL Zoo or referring to it, pleace consider citing our survey paper:
<pre>
@article{nordmann2016survey,
author = {Nordmann, Arne and Hochgeschwender, Nico and Wigand, Dennis Leroy and Wrede, Sebastian},
journal = {Journal of Software Engineering in Robotics (JOSER)},
number = {1},
pages = {75--99},
title = {{A Survey on Domain-Specific Modeling and Languages in Robotics}},
volume = {7},
year = {2016},
}
</pre>
<br />
<a style="font-size:85%; color:#555;" title="A Survey on Domain-Specific Modeling and Languages in Robotics" href="http://joser.unibg.it/index.php?journal=joser&page=article&op=view&path%5B%5D=100">A. Nordmann, N. Hochgeschwender, D. Wigand and S. Wrede, “A Survey on Domain-Specific Modeling Languages in Robotics”, Journal of Software Engineering for Robotics (JOSER), 2016</a>
</p>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="dist/js/bootstrap.min.js"></script>
<script src="sortable/moment.min.js"></script>
<script src="sortable/bootstrap-sortable.js"></script>
</body>
</html>