blob: 74547224422e87b64a616f63abd8b623633ee8a1 (
plain)
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
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="generator" content="HTML Tidy for Mac OS X (vers 1st December 2004), see www.w3.org" />
<title>Building a Stock Quoter with TAO - A Tutorial</title>
<!-- $Id$ -->
</head>
<body style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255);" link="#000fff" vlink="#ff0f0f">
<h3>Building a Stock Quoter with CoSMIC and DAnCE - A
Tutorial<br />
</h3>
<p>This tutorial provides a step-by-step lesson on developing
component-based distributed applications using <a href="http://www.dre.vanderbilt.edu/cosmic/">CoSMIC</a> modeling
toolkit and <a href="http://www.cs.wustl.edu/%7Eschmidt/CIAO.html">CIAO/DAnCE</a>
framework. The example application used in this tutorial is a
Stock Quoter that consists of two components; the
<em>StockDistributor</em> and the <em>StockBroker</em>. The
<em>StockDistributor</em> notifies one or more stock brokers
whenever a stock price changes. Upon receiving the notification,
the <em>StockBroker</em> fetches information about a particular
stock from the <em>StockDistributor</em>. The figure bellow shows
the application diagram. This Stock Quoter application is based
on a series of <a href="http://www.cs.wustl.edu/%7Eschmidt/report-doc.html">CORBA
component model</a> columns written by <a href="http://www.cs.wustl.edu/%7Eschmidt/">Doug Schmidt</a> and
<a href="http://www.iona.com/hyplan/vinoski/">Steve Vinoski</a>
for <a href="http://www.cuj.com">C/C++ Users Journal</a> and has
consistently been used as an example for <a href="http://www.cs.wustl.edu/%7Eschmidt/TAO.html">TAO</a>.<br />
</p>
<div style="text-align: center;">
<img alt="" src="Images/fig1.jpg" style="width: 362px; height: 193px;" /><br />
<br />
Stock Quoter application Diagram<br />
</div>
<p>This tutorial will show you how to use generic modeling
techniques <a href="http://www.dre.vanderbilt.edu/cosmic/">CoSMIC</a> to assist the
development process of CIAO applications. All the necessary steps
to build a component-based application model via <a href="http://www.dre.vanderbilt.edu/cosmic/">CoSMIC</a> toolkit are
documented here.</p>
<blockquote>
<hr />
<strong>Note:</strong><br />
1. Although the descriptor files generated by CoSMIC toolkits
are portable, the modeling environment required by CoSMIC (GME)
only supports Microsoft Windows platforms.<br />
2. The CIAO/DAnCE codes used for this tutorial can be found in
<code>%CIAO_ROOT%/docs/tutorials/Quoter/Simple</code>.<br />
3. The current tutorial is tested under GME 5.9.21, and
CosMIC 0.5.2. It will be subject to change as version of GME
and CoSMIC evolves.<br />
<hr />
</blockquote>
<strong><big>Prerequisites</big></strong><br />
<br />
Before you start, you will need the following:
<ol>
<li><strong>ACE+TAO+CIAO (Component Integraated ACE
ORB).</strong> ACE + TAO + CIAO provide the CCM infrastructure
necessary to enable the CCM-based distributed component
interaction. You can click <a href="http://download.dre.vanderbilt.edu">here</a> to download
the latest ACE + TAO + CIAO and click <a href="../../../../../ACE-Install.html">
here</a> for information on how to build ACE+TAO+CIAO.</li>
<li><strong>Generic Modeling Environment (GME).</strong> GME is
a configurable toolkit for creating domain-specific modeling
and program synthesis environments. It provides the execution
environment for CoSMIC toolkits. Click <a href="http://www.isis.vanderbilt.edu/Projects/gme/download.html">here</a>
to download GME.</li>
<li><strong>CoSMIC toolkit.</strong> Click <a href="http://www.dre.vanderbilt.edu/cosmic/">here</a> to download
the latest CoSMIC release.</li>
</ol>
<blockquote>
<hr />
<strong>Note:</strong><br />
<ol>
<li>Please use only the version of GME that the CoSMIC
package you have downloaded requires. Attempts to use earlier
or later versions may result in undefined behavior.</li>
<li>Make sure you install GME before you install CoSMIC.</li>
</ol>
<hr />
</blockquote>
<strong><a href="01.html">Getting
Started</a></strong><br />
<br />
This section describes the IDL files used by the
example and shows you how to import IDL into <a href="http://www.cs.wustl.edu/%7Eschmidt/PDF/RTAS05-PICML.pdf">PICML
(Platform-Independent Component Modeling Language)</a>; a
domain-specific modeling language which is defined using GME.
PICML is designed to help to bridge the gap between design-time
verification and model-checking tools and the deployment of
component implementations.<br />
<br />
<strong><a href="02.html">Modeling StockQuoter system with
PICML</a></strong><br />
<br />
This section describes how to model the Stock
Quoter components in PICML.<br />
<br />
<a href="03.html"><strong>Implementing Quoter components with
DAnCE</strong></a><br />
<br />
This section provides codes for the Quoter
example.<br />
<br />
<strong><a href="04.html">Running the
application</a></strong><br />
<br />
After all the components and descriptors generated
by PICML are in place. You are ready to compile and run the
application.<br />
<br />
<hr />
<address>
<a href="mailto:ming.xiong@vanderbilt.edu">Ming Xiong<br />
</a>
</address>
<!-- Created: Sat Nov 27 15:25:06 CST 1999 -->
<!-- hhmts start -->
Last modified: Fri May 5 21:29:07 CDT 2006 <!-- hhmts end -->
</body>
</html>
|