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
|
<?xml version="1.0" encoding="iso-8859-1" ?>
<!-- $Id$ -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Deployment And Configuration Engine (DAnCE) Release Notes</title>
</head>
<body>
<h1>Deployment And Configuration Engine (DAnCE) Release Notes</h1>
<p><b>D</b>eployment <b>An</b>d <b>C</b>onfiguration <b>E</b>ngine
<b>(DAnCE)</b> is an implementation of the run-time infrastructure as
defined by the recently adopted OMG <a
href="http://www.omg.org/cgi-bin/doc?ptc/2003-07-02">Deployment &
Configuration (D&C)</a> specification, which deals with the
configuration and deployment of component-based applications. Currently
DAnCE only supports the deployment & configuration of CORBA
Component Model (CCM)-based applications, though we are interested in
generalizing it for other component models in future work. DAnCE uses
XML descriptors to drive the deployment it performs. One way to
generate these descriptors is using the <b>Co</b>mponent
<b>S</b>ynthesis using <b>M</b>odel-<b>I</b>ntegrated <b>C</b>omputing
(<a href="http://www.dre.vanderbilt.edu/cosmic">CoSMIC</a>) tool-suite.
DAnCE currently uses <b>C</b>omponent <b>I</b>ntegrated <b>A</b>CE
<b>O</b>RB (<a href="http://www.dre.vanderbilt.edu/CIAO">CIAO</a>) as
the underlying CCM implementation in the current release, though again
we are interested in generalizing it for other CCM implementations in
future work.
</p>
<h3>D&C XML Schema Handling</h3>
<p> The XML handlers shipped with DAnCE are capable of handling almost
all elements that are defined in the D&C schema. In this context,
handling refers to reading the XML tags and converting them to the
equivalent in-memory IDL-based data structures defined by the
specifications. DAnCE supports the following types of descriptors
specified in the D&C specification:</p>
<ul>
<li>
<p>
<b>CORBA Component Descriptor(.ccd)</b> –
Contains information about component interfaces including
component ports.
</p>
</li>
<li>
<p>
<b>Component Implementation Descriptor(.cid)</b>
– Contains information about component implementations
which might be either monolithic or assembly based. In the case
of assembly based implementations, this descriptor also captures
the dependencies and the connections among components
</p>
</li>
<li>
<p>
<b>Implementation Artifact Descriptor(.iad)</b>
– Contains information about implementation artifacts
in-cluding dependencies between such artifacts
</p>
</li>
<li>
<p>
<b>Component Package Descriptor(.cpd)</b> –
Contains information about grouping of multiple imple-mentations
of the same component interface into component packages
</p>
</li>
<li>
<p>
<b>Package Configuration Descriptor(.pcd)</b>
– Contains information about specific configurations of
such component packages
</p>
</li>
<li>
<p>
<b>Component Domain Descriptor(.cdd)</b> –
Contains information about the target environment in which the
component-based application will be deployed
</p>
</li>
<li>
<p>
<b>TopLevel Package Descriptor(.tpd)</b> – Contains
information identifying the top-level element in a component
package descriptor which might include information about multiple
elements
</p>
</li>
<li>
<p>
<b>Component Deployment Plan(.cdp)</b> – Contains
information that actually drives the deployment including
information about individual components that represent the
leaf-nodes in case of a hierarchical assembly, connections
between components, and assignment of components to nodes etc.
</p>
</li>
</ul>
<p> For all the above elements, DAnCE supports proxying of the elements
as defined by XMI, i.e, DAnCE supports both parsing of the elements
inline and reference through <b><code>href</code></b> attribute. Some
D&C schema elements are however not handled, including:</p>
<ul>
<li>
<p>
<b>Deployment:Any</b> – This is a complex
element that is composed of many sub-elements. Currently, DAnCE
only parses a subset of the sub-elements of
<b><code>Deployment:Any</code></b>. Specifically, DAnCE supports all the
basic data types defined as part of <b><code>Deployment:Any</code></b>,
and doesn't understand any complex types.
</p>
</li>
<li>
<p>
<b>xmi:Extension</b> – This element allows the
augmention of the standard D&C schema with user-defined
elements. Currently DAnCE doesn't support user-defined extensions
to the schema.
</p>
</li>
<li>
<p>
<b>Deployment:Requirement</b> – This element is
allows the description of requirements of component-based
applications. Since handling this description requires interaction
with the <b><code>TargetManager</code></b> interface (which is not yet
supported), support for <b><code>Deployment:Requirement</code></b> is not
present.
</p>
</li>
<li>
<p>
<b>Deployment:ComponentPropertyDescriptioncode></b> –
This element is used to specify default values for attributes of
component. DAnCE doesn't support setting the values for attributes
of components using this tag.
</p>
</li>
<li>
<p>
<b>Deployment:ComponentExternalPortEndpoint,
Deployment:ExternalReferenceEndpoint</b> – These
elements are used to specify connections between ports of
components in one assembly with ports of components in a different
assembly, or connections between component ports and external
connection endpoints. These features are needed to support
assemblies of components. DAnCE doesn't support yet hierarchical
assemblies, i.e., creation of assemblies which can themselves
contain sub-assemblies.
</p>
</li>
<li>
<p>
<b>Deployment:PlanPropertyMapping</b> – This
element is used to delegate property mapping between a component's
external properties to properties of subcomponents that actually
implement the behavior of the larger component. Since DAnCE doesn't
support hierarchical assemblies, this tag is not yet supported.
</p>
</li>
</ul>
<p> We plan to support these features in future versions of DAnCE.
</p>
<hr />
<h3> D&C Management Interfaces</h3>
<p> The D&C specification defines a set of standard CORBA
interfaces that are used to perform the deployment of component-based
applications. These interfaces depend on the in-memory IDL data
structures that are built by DAnCE's XML handlers. Below we outline the
list of interfaces defined by the specification and the level of
support for each interface in DAnCE:</p>
<ul>
<li>
<p>
<b>RepositoryManager</b> – Only the
<b><code>installPackage()</code></b> and <b><code>findPackageByName()</code></b>
operations of this interface are implemented.
</p>
</li>
<li>
<p>
<b>TargetManager</b> – This interface has not
been implemented at all. Implementation of this interface is
planned for the future.
</p>
</li>
<li>
<p>
<b>ExecutionManager</b> – All operations defined
in this interface are implemented.
</p>
</li>
<li>
<p>
<b>DomainApplicationManager, DomainApplication</b>
– All operations except <b><code>getApplications()</code></b>
operation of DomainApplicationManager are implemented.
</p>
</li>
<li>
<p>
<b>NodeManager </b>– All operations except <strong><code>joinDomain()</code></strong> and <strong><code>leaveDomain()</code></strong> operations of NodeManager are implemented. </p>
</li>
<li>
<p><b> NodeApplicationManager, NodeApplication</b> – All operations defined in these interfaces are
implemented. </p>
</li>
</ul>
<p>
We plan to finish implementing the unsupported features in future versions of DAnCE.
</p>
<p>
<a href="http://validator.w3.org/check?uri=referer">
<img src="http://www.w3.org/Icons/valid-xhtml10" alt="Valid XHTML 1.0!"
height="31" width="88" />
</a>
</p>
<address>
Last modified $Date$ by $Author$
</address>
</body>
</html>
|