málaga meeting, west-t4. may 22-25. pag. 1 trading for cots components in open environment...
TRANSCRIPT
![Page 1: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/1.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 1
Trading for COTS components in Open Environment
EUROMICRO’2001http://www.euromicro.org
WEST – T4. Málaga, May 22-25
![Page 2: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/2.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 2
Introduction
top-down bottom-up
- times
- costs
- efforts
+ flexibility
+ reliability
+ reusability
RepositoryOff-the-shelf components
Software development
CBSE
trader
![Page 3: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/3.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 3
A trader service
trader
exporter importer
export() 2 query()
13
4
5
![Page 4: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/4.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 4
Requirements for a COTS trader
Heterogeneous component model
Federation
Service composition and adaptation
Multiples interfaces.
Softmatchmaking
Signature information is not enough
Use of heuristics and metrics
extensible/scalable
automatic/store and forward
push/pull models
Delegation
![Page 5: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/5.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 5
Current traders
ODP model: ODP trading service, ISO/ITU-T.
• ORBacus (OOC/IONA). http://www.ooc.com
• OpenORB (Intalio). http://www.openorb.org
• AceORB (TAO). http://www.cs.wustl.edu/schmidt/ACE
• VisiBroker (Borland). http://www.borland.com/visibroker
![Page 6: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/6.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 6
ODP trader shortcomings
1. Use homogeneous object model.
2. Use direct federation.
3. Do not allow service composition or adaptation.
4. Exact matches at the signature level only.
5. Do not allow multiple interfaces.
6. They are based on a push model only.
![Page 7: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/7.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 7
Services and service types
ODP trading service specification:
“A service is a set of capabilities provided by an object at a computational level. A service is an instance of service type”
![Page 8: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/8.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 8
COTStrader
COTS XML repository
export
import
WEB
EXPORT
INTERFACE
WEB
IMPORT
INTERFACE
EXPORTER
IMPORTER
templates
![Page 9: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/9.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 9
COTStrader: spec template
Functional Non Functional
Marketing
Packaging
![Page 10: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/10.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 10
COTStrader
module OnePlaceBuffer {
// Provided interfaces
interface OnePlaceBuffer {
void write(in long x);
long read();
};
// Required interfaces
interface out {
oneway void print(in long x);
};
};
Example
CORBA IDL
![Page 11: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/11.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 11
COTStrader
COTS XML repository
export
import
WEB
EXPORT
INTERFACE
WEB
IMPORT
INTERFACE
EXPORTER
IMPORTER
templates
![Page 12: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/12.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 12
<?xml-stylesheet type="text/xsl" href="http://www.cotstrader.com/COTS-XMLStyle.xsl"?> <COTScomponent name="OnePlaceBuffer" xmlns="http://www.cotstrader.com/COTS-XMLSchema.xsd" xmlns:types="http://www.w3.org/2000/10/XMLSchema">
<functional> ... </functional>
<properties> ... </properties>
<packaging> ... </packaging>
<marketing> ... </marketing>
</COTScomponent>
COTStrader: Exporting
![Page 13: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/13.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 13
<functional>
<providedInterfaces> . . . </providedInterfaces> <requiredInterfaces>. . .</requiredInterfaces>
<serviceAccessProtocol>. . . </serviceAccessProtocol>
</functional>
COTStrader: Exporting
Functional information:
![Page 14: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/14.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 14
<providedInterfaces>
<interface name="OnePlaceBuffer"> <description notation="CORBA-IDL"> ´ interface OnePlaceBuffer { void write(in long x); long read(); }; </description> <behavior notation="Larch"> <description notation= "Java/Larch" href="http://www.cotstrader.com/samp/OPB/OnePlaceBuffer.beh" </description> <exactMatching href="http://liribarn.ual.es:8080/servlet/Larch.exactMatch"/> <softMatching href="http://liribarn.ual.es:8080/servlet/Larch.softMatch"/> </behavior> </interface>
</providedInterfaces>
COTStrader: ExportingFunctional information example: providedInterfaces.
![Page 15: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/15.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 15
<requiredInterfaces>
<interface name="out">
<description notation="CORBA-IDL"> interface out { oneway void print(in long x); } </description>
</interface>
</requiredInterfaces>
COTStrader: Exporting
Functional information example: requiredInterfaces.
![Page 16: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/16.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 16
<serviceAccessProtocol> <description notation="pi-protocols"> OnePlaceBuffer(ref,out) = ref?write(x,rep).out!print(x). rep!().Full(ref,out,x); Full(ref,out,x)=ref?read(rep).rep!(x).OnePlaceBuffer(ref,out); </description>
<exactMatching href="http://liribarn.ual.es:8080/servlet/PI.exactMatching"/>
<softMatching href="http://liribarn.ual.es:8080/servlet/PI.softMatching"/>
</serviceAccessProtocol>
COTStrader: Exporting
Functional information : serviceAccessProtocol.
![Page 17: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/17.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 17
<properties notation="W3C"> <property name="securityLevel"> <type>xsd:string</type> <value>SAFE</value> </property>
<property name="capacity"> <type>xsd:int</type> <value>1</value> </property>
<property name="isRunningNow"> <type>xsd:bool</type> <!-- dynamic property --> <value href=“...8080/servlet/OnePlaceBuffer.running"/> </property>
<property name="keywords"> <type>xsd:string</type> <value>storage,bounded</value> </property> </properties>
COTStrader: Exporting
Non Functional information example: properties.
![Page 18: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/18.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 18
<packaging> <description notation="CCM-softpkg“ href=“.../OPB/Impl_OnePlaceBuffer.csd"/> </packaging>
COTStrader: Exporting
Packaging/architectural information example: packaging.
![Page 19: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/19.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 19
<?xml version="1.0"?><softpkg name="OnePlaceBuffer_services" version="1.0"> <pkgtype>CORBA Component</pkgtype> <title>OnePlaceBuffer</title> <description>A descriptor example for cotstrader.com</description> <idl id="IDL:example/OnePlaceBuffer:1.0"> <link href="http://www.cotstrader.com/samples/OPB/OnePlaceBuffer.idl"/> </idl> <implementation> <os name="Win95"/> <os name="WinNT" version="4.0"/> <os name="AIX"/> <processor name="x86"/> <processor name="sparc"/> <runtime name="JRE" version="1.3"/> <programminglanguage name="Java"/> <code type="jar"> <fileinarchive name="services.jar"/> <entrypoint>services.OnePlaceBuffer</entrypoint> </code> <threadsafety level="instance"/> <dependency type="ORB"> <name>ORBacus</name> </dependency> </implementation></softpkg>
CCM: http://www.cotstrader.com/examples/OPB/Implement_OnePlaceBuffer.csd
![Page 20: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/20.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 20
<marketing> <license href="http://www.cotstrader.com/examples/OPB/license.html" />
<expirydate>05-10-2001</expirydate> <certificate href="http://www.cotstrader.com/examples/OPB/lcard.png"/>
<vendor> <companyname>E-Brokering corp.</companyname> <webpage>http://www.e-B.com</webpage> <mailto>[email protected]</mailto> <address> <zip>04120</zip> <street>Ctra Sacramento s/n</street> <city>Almeria</city> <country>Spain</country> <street>Campus de Teatinos</street> <city>Málaga</city> <country>Spain</country> </address> </vendor> <description>A one-place buffer</description> </marketing>
COTStrader: Exporting
Marketing information example: marketing.
![Page 21: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/21.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 21
COTStrader
COTS XML repository
export
import
WEB
EXPORT
INTERFACE
WEB
IMPORT
INTERFACE
EXPORTER
IMPORTER
templates
![Page 22: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/22.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 22
COTStrader: Importing
<?xml version='1.0'?> <COTScomponent name="Query1" xmlns="http://www.cotstrader.com/COTS-XMLSchema.xsd">
<functional> <providedInterfaces> <interface name="OnePlaceBuffer"> <description notation="CORBA-IDL"> interface OnePlaceBuffer { void write(in long x); long read(); } </description> </interface> </providedInterfaces> </functional> <properties> <property name="securityLevel"> <type>xsd:string</type> </property> <property name="isRunningNow"> <type>xsd:bool</type> </property> </properties>
</COTScomponent>
![Page 23: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/23.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 23
COTStrader: Importing
<COTSquery name="ClientQuery" xmlns="http://www.cotstrader.com/COTS-XMLSchema.xsd">
<COTSdescription href="http://www.cotstrader.com/Query1.xml" />
<functionalMatching>
<interfaceMatching>
<exactMatching
href="http://www.cotstrader.com/cgi-bin/exactMatch.cgi" />
</interfaceMatching>
<serviceAccessProtocolMatching>
<softMatching />
</serviceAccessProtocolMatching>
</functionalMatching>
...
![Page 24: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/24.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 24
COTStrader: Importing
<COTSquery name="ClientQuery" xmlns="http://www.cotstrader.com/COTS-XMLSchema.xsd">
. . .
<propertyMatching> <constraints notation="XQuery">
(securityLevel = SAFE) and (isRunningNow = TRUE) </constraints> <preferences notation="ODP">firts</preferences> </propertyMatching>
<packagingMatching notation="XQuery"> description/notation = "CCM-softpkg" and ( description/implementation/os/name = "WinNT" or description/implementation/os/name = "Solaris" ) </packagingMatching>
<marketingMatching notation="XQuery"> vendor/address/country = "Spain" </marketingMatching>
</COTSquery>
![Page 25: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/25.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 25
COTStrader
Two kinds of matchings: Exact Soft E
Functional:
Properties, packaging and marketing:
Constraints and preferences, XQuery (W3C)
Constraints : >, <, >=, <=, =, !=, not, and, or.
Preferences : first, random, min(expr), max(expr)
S
![Page 26: Málaga meeting, WEST-T4. May 22-25. Pag. 1 Trading for COTS components in Open Environment EUROMICRO’2001 WEST – T4. Málaga, May](https://reader031.vdocuments.site/reader031/viewer/2022013004/56649c7c5503460f949311f0/html5/thumbnails/26.jpg)
Málaga meeting, WEST-T4. May 22-25. Pag. 26
COTStrader
COTS XML repository
export
import
WEB
EXPORT
INTERFACE
WEB
IMPORT
INTERFACE
EXPORTER
IMPORTER
Query templates
CORBA/ORBacus
Linux/Java
Apache/ServerTomcat/Servlets
Soft/exact matching
XQueryXQEngine